@formant/data-sdk 1.80.5 → 1.80.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/data-sdk.umd.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(function(nt,rt){typeof exports=="object"&&typeof module!="undefined"?rt(exports):typeof define=="function"&&define.amd?define(["exports"],rt):(nt=typeof globalThis!="undefined"?globalThis:nt||self,rt(nt.FormantDataSDK={}))})(this,function(exports){var rt;"use strict";var Sn=Object.defineProperty;var yn=(nt,rt,et)=>rt in nt?Sn(nt,rt,{enumerable:!0,configurable:!0,writable:!0,value:et}):nt[rt]=et;var he=(nt,rt,et)=>(yn(nt,typeof rt!="symbol"?rt+"":rt,et),et);const DEFAULT_FORMANT_API_URL="https://api.formant.io";function whichFormantApiUrl(e,t,n){try{if(t.get("formant_prod"))return"https://api.formant.io";if(t.get("formant_stage"))return"https://api-stage.formant.io";if(t.get("formant_dev"))return"https://api-dev.formant.io";if(t.get("formant_local"))return"https://api.formant.local";if(t.get("formant_url")){const r=t.get("formant_url");if(r!==null)try{return new URL(r).origin}catch{console.warn(`Ignoring malformed \`formant_url\` url parameter: ${r}`)}}if(n){if(n.includes("app-dev.formant.io")||n.includes("localhost"))return"https://api-dev.formant.io";if(n.includes("app-stage.formant.io"))return"https://api-stage.formant.io";if(n.includes("app.formant.io"))return"https://api.formant.io"}}catch{}if(n){if(n.includes("app-dev.formant.io"))return"https://api-dev.formant.io";if(n.includes("app-stage.formant.io"))return"https://api-stage.formant.io";if(n.includes("app.formant.io"))return"https://api.formant.io"}return typeof e!="undefined"&&"FORMANT_API_URL"in e&&typeof e.FORMANT_API_URL=="string"?e.FORMANT_API_URL:DEFAULT_FORMANT_API_URL}exports.FORMANT_API_URL=whichFormantApiUrl(typeof window!="undefined"?window:globalThis,new URLSearchParams(typeof window!="undefined"&&window.location?window.location.search:void 0),typeof window!="undefined"&&window.location?window.location.host:void 0);const setFormantApiUrl=e=>{exports.FORMANT_API_URL=e};function addAccessTokenRefreshListener(e){function t(n){const r=n.data;r.type==="auth_token"&&e(r.token)}return window.addEventListener("message",t),()=>{window.removeEventListener("message",t)}}function getCurrentModuleContext(){return typeof window!="undefined"&&window.location?new URLSearchParams(window.location.search).get("module"):null}function sendAppMessage(e){if(!(window&&window.parent))throw new Error("cannot send message to non-existent parent");window.parent.postMessage(e,"*")}function refreshAuthToken(){const e=getCurrentModuleContext();if(!e)throw new Error("No module context");sendAppMessage({type:"refresh_auth_token",module:e})}var commonjsGlobal=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{};function getDefaultExportFromCjs(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var base64={exports:{}};/*! https://mths.be/base64 v1.0.0 by @mathias | MIT license */base64.exports,function(e,t){(function(n){var r=t,o=e&&e.exports==r&&e,s=typeof commonjsGlobal=="object"&&commonjsGlobal;(s.global===s||s.window===s)&&(n=s);var g=function(p){this.message=p};g.prototype=new Error,g.prototype.name="InvalidCharacterError";var l=function(p){throw new g(p)},u="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",c=/[\t\n\f\r ]/g,d=function(p){p=String(p).replace(c,"");var f=p.length;f%4==0&&(p=p.replace(/==?$/,""),f=p.length),(f%4==1||/[^+a-zA-Z0-9/]/.test(p))&&l("Invalid character: the string to be decoded is not correctly encoded.");for(var b=0,M,J,m="",y=-1;++y<f;)J=u.indexOf(p.charAt(y)),M=b%4?M*64+J:J,b++%4&&(m+=String.fromCharCode(255&M>>(-2*b&6)));return m},B=function(p){p=String(p),/[^\0-\xFF]/.test(p)&&l("The string to be encoded contains characters outside of the Latin1 range.");for(var f=p.length%3,b="",M=-1,J,m,y,h,T=p.length-f;++M<T;)J=p.charCodeAt(M)<<16,m=p.charCodeAt(++M)<<8,y=p.charCodeAt(++M),h=J+m+y,b+=u.charAt(h>>18&63)+u.charAt(h>>12&63)+u.charAt(h>>6&63)+u.charAt(h&63);return f==2?(J=p.charCodeAt(M)<<8,m=p.charCodeAt(++M),h=J+m,b+=u.charAt(h>>10)+u.charAt(h>>4&63)+u.charAt(h<<2&63)+"="):f==1&&(h=p.charCodeAt(M),b+=u.charAt(h>>2)+u.charAt(h<<4&63)+"=="),b},Q={encode:B,decode:d,version:"1.0.0"};if(r&&!r.nodeType)if(o)o.exports=Q;else for(var U in Q)Q.hasOwnProperty(U)&&(r[U]=Q[U]);else n.base64=Q})(commonjsGlobal)}(base64,base64.exports);var base64Exports=base64.exports;class LoginFailureError extends Error{constructor(n){super("login failed");he(this,"reason");this.reason=n,this.name="LoginFailureError",Object.setPrototypeOf(this,new.target.prototype)}}class LoginChallengedError extends Error{constructor(n){super("login challenged");he(this,"challenge");this.challenge=n,this.name="LoginChallengedError",Object.setPrototypeOf(this,new.target.prototype)}}class AuthenticationStore{constructor({apiUrl:t,refreshAuthToken:n,addAccessTokenRefreshListener:r}){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=t,this._refreshAuthToken=n,this._addAccessTokenRefreshListener=r}set apiUrl(t){this._apiUrl=t,setFormantApiUrl(t)}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(t,n,r={}){const{advanced:o=!1}=r;try{const s=await fetch(`${this._apiUrl}/v1/admin/auth/login`,{method:"POST",body:JSON.stringify({email:t,password:n}),headers:{"Content-Type":"application/json"}}),g=await s.json();if(s.status!==200)throw new LoginFailureError(g.message);if("challenge"in g)throw new LoginChallengedError(g.challenge);const{authentication:l}=g;return await this.loginWithToken(l.accessToken,l.refreshToken),o?{result:"success",authentication:l}:l}catch(s){if(o||console.error("login() failed",{err:s}),this._waitingForAuth.forEach(g=>g(!1)),this._waitingForAuth.clear(),!o)throw s;return s instanceof LoginChallengedError?{result:"challenged",challenge:s.challenge}:{result:"failure",reason:s instanceof LoginFailureError?s.reason:s instanceof Error?s.message:String(s)}}}async loginWithToken(t,n){var o;const r=JSON.parse(base64Exports.decode(t.split(".")[1]));try{let s;if(this._isShareToken=r["formant:claims"]&&r["formant:claims"].type=="share",r["formant:claims"]&&(this._currentOrganization=r["formant:claims"].organizationId),r["custom:organization_id"]&&(this._currentOrganization=r["custom:organization_id"]),this._isShareToken||(s=r.sub),r["formant:claims"]&&r["formant:claims"].userId&&(s=r["formant:claims"].userId),s&&((o=this._currentUser)==null?void 0:o.id)!==s){const g=await fetch(`${this._apiUrl}/v1/admin/users/${s}`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+t}}),l=await g.json();if(g.status===404)this._currentUser=void 0;else{if(g.status!==200)throw new Error(l.message);this._currentUser=l}}this._token=t,this._waitingForAuth.forEach(g=>g(!0))}catch(s){console.error("loginWithToken() failed",{err:s}),this._waitingForAuth.forEach(g=>g(!1))}finally{this._waitingForAuth.clear()}n&&(this._refreshToken=n,setInterval(async()=>{if(this._refreshToken){const g=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=g.authentication.accessToken}},1e3*60*60))}isAuthenticated(){return this._token!==void 0}async loginToPeer(t,n,r){if((await fetch(`${t}/login`,{method:"POST",body:JSON.stringify({username:n,password:r}),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(t=>{this._waitingForAuth.add(t)})}async listenForRefresh(){const n=()=>{this._refreshTimer=void 0,this._refreshAuthToken()};this._addAccessTokenRefreshListener(r=>{this._refreshTimer&&clearTimeout(this._refreshTimer),this._refreshTimer=setTimeout(n,36e5),this.loginWithToken(r)}),this._refreshTimer=setTimeout(n,36e5)}async forgotPassword(t){await fetch(`${this._apiUrl}/v1/admin/auth/forgot-password`,{method:"POST",body:JSON.stringify({email:t}),headers:{"Content-Type":"application/json"}})}async confirmForgotPassword(t){return(await fetch(`${this._apiUrl}/v1/admin/auth/confirm-forgot-password`,{method:"POST",body:JSON.stringify(t),headers:{"Content-Type":"application/json"}})).ok}async respondToNewPasswordRequiredChallenge(t){const n=await fetch(`${this._apiUrl}/v1/admin/auth/respond-to-new-password-required-challenge`,{method:"POST",body:JSON.stringify(t),headers:{"Content-Type":"application/json"}});if(n.ok)return await n.json();throw new Error("respond-to-new-password-required-challenge failed")}async loginWithGoogle(t){return await(await fetch(`${this._apiUrl}/v1/admin/auth/login-google`,{method:"POST",body:JSON.stringify(t),headers:{"Content-Type":"application/json"}})).json()}async refresh(t){const r=await(await fetch(`${this._apiUrl}/v1/admin/auth/refresh`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({refreshToken:t})})).json();await this.loginWithToken(r.authentication.accessToken,t)}async checkSso(t,n){return await(await fetch(`${this._apiUrl}/v1/admin/auth/check-sso`,{method:"POST",body:JSON.stringify({email:t,allowUserAutoCreation:n}),headers:{"Content-Type":"application/json"}})).json()}async loginWithSso(t,n){const o=await(await fetch(`${this._apiUrl}/v1/admin/auth/login-sso`,{method:"POST",body:JSON.stringify({token:t,refreshToken:n}),headers:{"Content-Type":"application/json"}})).json();if(!o.authentication)throw new Error("Failed to login with SSO");return await this.loginWithToken(o.authentication.accessToken,o.authentication.refreshToken)}}const Authentication=new AuthenticationStore({apiUrl:exports.FORMANT_API_URL,refreshAuthToken,addAccessTokenRefreshListener});class Account{static async listAccounts(){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${exports.FORMANT_API_URL}/v1/admin/accounts`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items}static async createAccounts(t){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${exports.FORMANT_API_URL}/v1/admin/accounts`,{method:"POST",body:JSON.stringify(t),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}static async getAccount(t){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${exports.FORMANT_API_URL}/v1/admin/accounts/${t}`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}static async patchAccount(t,n){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${exports.FORMANT_API_URL}/v1/admin/accounts/${t}`,{method:"PATCH",body:JSON.stringify(n),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}static async deleteAccount(t){if(!Authentication.token)throw new Error("Not authenticated");if(!(await fetch(`${exports.FORMANT_API_URL}/v1/admin/accounts/${t}`,{method:"DELETE",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).ok)throw new Error("Unable to delete account")}static async getAccountTree(t){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${exports.FORMANT_API_URL}/v1/admin/accounts/${t}/tree`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}}async function getModuleConfiguration(e){return(await(await fetch(`${exports.FORMANT_API_URL}/v1/admin/module-configurations/${e}`,{headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).configuration}function disableAnalyticsBottomBar(){sendAppMessage({type:"hide_analytics_date_picker"})}function goToDevice(e){sendAppMessage({type:"go_to_device",deviceId:e})}function goToTime(e){sendAppMessage({type:"go_to_time",time:e.getTime()})}function requestModuleData(){const e=getCurrentModuleContext();if(!e)throw new Error("No module context");sendAppMessage({type:"request_module_data",module:e})}function sendChannelData(e,t){const n=getCurrentModuleContext();if(!n)throw new Error("No module context");sendAppMessage({type:"send_channel_data",source:n,channel:e,data:t})}function setModuleDateTimeRange(e,t){const n=getCurrentModuleContext();if(!n)throw new Error("No module context");sendAppMessage({type:"set_module_data_time_range",module:n,before:e,after:t||0})}function setupModuleMenus(e){const t=getCurrentModuleContext();if(!t)throw new Error("No module context");sendAppMessage({type:"setup_module_menus",module:t,menus:e})}function showMessage(e){sendAppMessage({type:"show_message",message:e})}function addChannelDataListener(e,t){const n=r=>{const o=r.data;o.type==="channel_data"&&o.channel===e&&t({source:o.source,data:o.data})};return window.addEventListener("message",n),()=>window.removeEventListener("message",n)}function addMenuListener(e){const t=n=>{const r=n.data;r.type==="module_menu_item_clicked"&&e(r.menu)};return window.addEventListener("message",t),()=>window.removeEventListener("message",t)}function addModuleConfigurationListener(e){const t=n=>{const r=n.data;r.type==="module_configuration"&&e(r)};return window.addEventListener("message",t),()=>window.removeEventListener("message",t)}function addModuleDataListener(e){const t=getCurrentModuleContext();t&&sendAppMessage({type:"request_module_data",module:t});const n=r=>{const o=r.data;o.type==="module_data"&&e({streams:o.streams,time:o.time,queryRange:o.queryRange})};return window.addEventListener("message",n),()=>window.removeEventListener("message",n)}function addOverviewDeviceListener(e){sendAppMessage({type:"request_devices"});const t=n=>{const r=n.data;r.type==="overview_devices"&&e(r.data)};return window.addEventListener("message",t),()=>window.removeEventListener("message",t)}function _typeof(e){return _typeof=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},_typeof(e)}function toInteger(e){if(e===null||e===!0||e===!1)return NaN;var t=Number(e);return isNaN(t)?t:t<0?Math.ceil(t):Math.floor(t)}function requiredArgs(e,t){if(t.length<e)throw new TypeError(e+" argument"+(e>1?"s":"")+" required, but only "+t.length+" present")}function toDate(e){requiredArgs(1,arguments);var t=Object.prototype.toString.call(e);return e instanceof Date||_typeof(e)==="object"&&t==="[object Date]"?new Date(e.getTime()):typeof e=="number"||t==="[object Number]"?new Date(e):((typeof e=="string"||t==="[object String]")&&typeof console!="undefined"&&(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(e,t){requiredArgs(2,arguments);var n=toDate(e),r=toInteger(t);return isNaN(r)?new Date(NaN):(r&&n.setDate(n.getDate()+r),n)}function addMonths(e,t){requiredArgs(2,arguments);var n=toDate(e),r=toInteger(t);if(isNaN(r))return new Date(NaN);if(!r)return n;var o=n.getDate(),s=new Date(n.getTime());s.setMonth(n.getMonth()+r+1,0);var g=s.getDate();return o>=g?s:(n.setFullYear(s.getFullYear(),s.getMonth(),o),n)}function addMilliseconds(e,t){requiredArgs(2,arguments);var n=toDate(e).getTime(),r=toInteger(t);return new Date(n+r)}var MILLISECONDS_IN_HOUR=36e5;function addHours(e,t){requiredArgs(2,arguments);var n=toInteger(t);return addMilliseconds(e,n*MILLISECONDS_IN_HOUR)}var defaultOptions={};function getDefaultOptions(){return defaultOptions}function startOfWeek(e,t){var n,r,o,s,g,l,u,c;requiredArgs(1,arguments);var d=getDefaultOptions(),B=toInteger((n=(r=(o=(s=t==null?void 0:t.weekStartsOn)!==null&&s!==void 0?s:t==null||(g=t.locale)===null||g===void 0||(l=g.options)===null||l===void 0?void 0:l.weekStartsOn)!==null&&o!==void 0?o:d.weekStartsOn)!==null&&r!==void 0?r:(u=d.locale)===null||u===void 0||(c=u.options)===null||c===void 0?void 0:c.weekStartsOn)!==null&&n!==void 0?n:0);if(!(B>=0&&B<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var Q=toDate(e),U=Q.getDay(),p=(U<B?7:0)+U-B;return Q.setDate(Q.getDate()-p),Q.setHours(0,0,0,0),Q}function startOfDay(e){requiredArgs(1,arguments);var t=toDate(e);return t.setHours(0,0,0,0),t}var MILLISECONDS_IN_MINUTE=6e4;function addMinutes(e,t){requiredArgs(2,arguments);var n=toInteger(t);return addMilliseconds(e,n*MILLISECONDS_IN_MINUTE)}function addQuarters(e,t){requiredArgs(2,arguments);var n=toInteger(t),r=n*3;return addMonths(e,r)}function addSeconds(e,t){requiredArgs(2,arguments);var n=toInteger(t);return addMilliseconds(e,n*1e3)}function addWeeks(e,t){requiredArgs(2,arguments);var n=toInteger(t),r=n*7;return addDays(e,r)}function addYears(e,t){requiredArgs(2,arguments);var n=toInteger(t);return addMonths(e,n*12)}function getQuarter(e){requiredArgs(1,arguments);var t=toDate(e),n=Math.floor(t.getMonth()/3)+1;return n}var roundingMap={ceil:Math.ceil,round:Math.round,floor:Math.floor,trunc:function(t){return t<0?Math.ceil(t):Math.floor(t)}},defaultRoundingMethod="trunc";function getRoundingMethod(e){return e?roundingMap[e]:roundingMap[defaultRoundingMethod]}function endOfDay(e){requiredArgs(1,arguments);var t=toDate(e);return t.setHours(23,59,59,999),t}function endOfMonth(e){requiredArgs(1,arguments);var t=toDate(e),n=t.getMonth();return t.setFullYear(t.getFullYear(),n+1,0),t.setHours(23,59,59,999),t}function eachDayOfInterval(e,t){var n;requiredArgs(1,arguments);var r=e||{},o=toDate(r.start),s=toDate(r.end),g=s.getTime();if(!(o.getTime()<=g))throw new RangeError("Invalid interval");var l=[],u=o;u.setHours(0,0,0,0);var c=Number((n=t==null?void 0:t.step)!==null&&n!==void 0?n:1);if(c<1||isNaN(c))throw new RangeError("`options.step` must be a number greater than 1");for(;u.getTime()<=g;)l.push(toDate(u)),u.setDate(u.getDate()+c),u.setHours(0,0,0,0);return l}function eachHourOfInterval(e,t){var n;requiredArgs(1,arguments);var r=e||{},o=toDate(r.start),s=toDate(r.end),g=o.getTime(),l=s.getTime();if(!(g<=l))throw new RangeError("Invalid interval");var u=[],c=o;c.setMinutes(0,0,0);var d=Number((n=t==null?void 0:t.step)!==null&&n!==void 0?n:1);if(d<1||isNaN(d))throw new RangeError("`options.step` must be a number greater than 1");for(;c.getTime()<=l;)u.push(toDate(c)),c=addHours(c,d);return u}function startOfMinute(e){requiredArgs(1,arguments);var t=toDate(e);return t.setSeconds(0,0),t}function eachMinuteOfInterval(e,t){var n;requiredArgs(1,arguments);var r=startOfMinute(toDate(e.start)),o=toDate(e.end),s=r.getTime(),g=o.getTime();if(s>=g)throw new RangeError("Invalid interval");var l=[],u=r,c=Number((n=t==null?void 0:t.step)!==null&&n!==void 0?n:1);if(c<1||isNaN(c))throw new RangeError("`options.step` must be a number equal to or greater than 1");for(;u.getTime()<=g;)l.push(toDate(u)),u=addMinutes(u,c);return l}function eachMonthOfInterval(e){requiredArgs(1,arguments);var t=e||{},n=toDate(t.start),r=toDate(t.end),o=r.getTime(),s=[];if(!(n.getTime()<=o))throw new RangeError("Invalid interval");var g=n;for(g.setHours(0,0,0,0),g.setDate(1);g.getTime()<=o;)s.push(toDate(g)),g.setMonth(g.getMonth()+1);return s}function startOfQuarter(e){requiredArgs(1,arguments);var t=toDate(e),n=t.getMonth(),r=n-n%3;return t.setMonth(r,1),t.setHours(0,0,0,0),t}function eachQuarterOfInterval(e){requiredArgs(1,arguments);var t=e||{},n=toDate(t.start),r=toDate(t.end),o=r.getTime();if(!(n.getTime()<=o))throw new RangeError("Invalid interval");var s=startOfQuarter(n),g=startOfQuarter(r);o=g.getTime();for(var l=[],u=s;u.getTime()<=o;)l.push(toDate(u)),u=addQuarters(u,1);return l}function eachWeekOfInterval(e,t){requiredArgs(1,arguments);var n=e||{},r=toDate(n.start),o=toDate(n.end),s=o.getTime();if(!(r.getTime()<=s))throw new RangeError("Invalid interval");var g=startOfWeek(r,t),l=startOfWeek(o,t);g.setHours(15),l.setHours(15),s=l.getTime();for(var u=[],c=g;c.getTime()<=s;)c.setHours(0),u.push(toDate(c)),c=addWeeks(c,1),c.setHours(15);return u}function startOfMonth(e){requiredArgs(1,arguments);var t=toDate(e);return t.setDate(1),t.setHours(0,0,0,0),t}function endOfYear(e){requiredArgs(1,arguments);var t=toDate(e),n=t.getFullYear();return t.setFullYear(n+1,0,0),t.setHours(23,59,59,999),t}function startOfYear(e){requiredArgs(1,arguments);var t=toDate(e),n=new Date(0);return n.setFullYear(t.getFullYear(),0,1),n.setHours(0,0,0,0),n}function eachYearOfInterval(e){requiredArgs(1,arguments);var t=e||{},n=toDate(t.start),r=toDate(t.end),o=r.getTime();if(!(n.getTime()<=o))throw new RangeError("Invalid interval");var s=[],g=n;for(g.setHours(0,0,0,0),g.setMonth(0,1);g.getTime()<=o;)s.push(toDate(g)),g.setFullYear(g.getFullYear()+1);return s}function endOfHour(e){requiredArgs(1,arguments);var t=toDate(e);return t.setMinutes(59,59,999),t}function endOfWeek(e,t){var n,r,o,s,g,l,u,c;requiredArgs(1,arguments);var d=getDefaultOptions(),B=toInteger((n=(r=(o=(s=t==null?void 0:t.weekStartsOn)!==null&&s!==void 0?s:t==null||(g=t.locale)===null||g===void 0||(l=g.options)===null||l===void 0?void 0:l.weekStartsOn)!==null&&o!==void 0?o:d.weekStartsOn)!==null&&r!==void 0?r:(u=d.locale)===null||u===void 0||(c=u.options)===null||c===void 0?void 0:c.weekStartsOn)!==null&&n!==void 0?n:0);if(!(B>=0&&B<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var Q=toDate(e),U=Q.getDay(),p=(U<B?-7:0)+6-(U-B);return Q.setDate(Q.getDate()+p),Q.setHours(23,59,59,999),Q}function endOfMinute(e){requiredArgs(1,arguments);var t=toDate(e);return t.setSeconds(59,999),t}function endOfQuarter(e){requiredArgs(1,arguments);var t=toDate(e),n=t.getMonth(),r=n-n%3+3;return t.setMonth(r,0),t.setHours(23,59,59,999),t}function getDay(e){requiredArgs(1,arguments);var t=toDate(e),n=t.getDay();return n}function getHours(e){requiredArgs(1,arguments);var t=toDate(e),n=t.getHours();return n}function getMinutes(e){requiredArgs(1,arguments);var t=toDate(e),n=t.getMinutes();return n}function getMonth(e){requiredArgs(1,arguments);var t=toDate(e),n=t.getMonth();return n}function getWeekYear(e,t){var n,r,o,s,g,l,u,c;requiredArgs(1,arguments);var d=toDate(e),B=d.getFullYear(),Q=getDefaultOptions(),U=toInteger((n=(r=(o=(s=t==null?void 0:t.firstWeekContainsDate)!==null&&s!==void 0?s:t==null||(g=t.locale)===null||g===void 0||(l=g.options)===null||l===void 0?void 0:l.firstWeekContainsDate)!==null&&o!==void 0?o:Q.firstWeekContainsDate)!==null&&r!==void 0?r:(u=Q.locale)===null||u===void 0||(c=u.options)===null||c===void 0?void 0:c.firstWeekContainsDate)!==null&&n!==void 0?n:1);if(!(U>=1&&U<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var p=new Date(0);p.setFullYear(B+1,0,U),p.setHours(0,0,0,0);var f=startOfWeek(p,t),b=new Date(0);b.setFullYear(B,0,U),b.setHours(0,0,0,0);var M=startOfWeek(b,t);return d.getTime()>=f.getTime()?B+1:d.getTime()>=M.getTime()?B:B-1}function startOfWeekYear(e,t){var n,r,o,s,g,l,u,c;requiredArgs(1,arguments);var d=getDefaultOptions(),B=toInteger((n=(r=(o=(s=t==null?void 0:t.firstWeekContainsDate)!==null&&s!==void 0?s:t==null||(g=t.locale)===null||g===void 0||(l=g.options)===null||l===void 0?void 0:l.firstWeekContainsDate)!==null&&o!==void 0?o:d.firstWeekContainsDate)!==null&&r!==void 0?r:(u=d.locale)===null||u===void 0||(c=u.options)===null||c===void 0?void 0:c.firstWeekContainsDate)!==null&&n!==void 0?n:1),Q=getWeekYear(e,t),U=new Date(0);U.setFullYear(Q,0,B),U.setHours(0,0,0,0);var p=startOfWeek(U,t);return p}var MILLISECONDS_IN_WEEK=6048e5;function getWeek(e,t){requiredArgs(1,arguments);var n=toDate(e),r=startOfWeek(n,t).getTime()-startOfWeekYear(n,t).getTime();return Math.round(r/MILLISECONDS_IN_WEEK)+1}function getYear(e){return requiredArgs(1,arguments),toDate(e).getFullYear()}function startOfHour(e){requiredArgs(1,arguments);var t=toDate(e);return t.setMinutes(0,0,0),t}function subDays(e,t){requiredArgs(2,arguments);var n=toInteger(t);return addDays(e,-n)}function roundToNearestMinutes(e,t){var n;if(arguments.length<1)throw new TypeError("1 argument required, but only none provided present");var r=toInteger((n=t==null?void 0:t.nearestTo)!==null&&n!==void 0?n:1);if(r<1||r>30)throw new RangeError("`options.nearestTo` must be between 1 and 30");var o=toDate(e),s=o.getSeconds(),g=o.getMinutes()+s/60,l=getRoundingMethod(t==null?void 0:t.roundingMethod),u=l(g/r)*r,c=g%r,d=Math.round(c/r)*r;return new Date(o.getFullYear(),o.getMonth(),o.getDate(),o.getHours(),u+d)}function subMonths(e,t){requiredArgs(2,arguments);var n=toInteger(t);return addMonths(e,-n)}function subHours(e,t){requiredArgs(2,arguments);var n=toInteger(t);return addHours(e,-n)}function subMinutes(e,t){requiredArgs(2,arguments);var n=toInteger(t);return addMinutes(e,-n)}function subQuarters(e,t){requiredArgs(2,arguments);var n=toInteger(t);return addQuarters(e,-n)}function subWeeks(e,t){requiredArgs(2,arguments);var n=toInteger(t);return addWeeks(e,-n)}function subYears(e,t){requiredArgs(2,arguments);var n=toInteger(t);return addYears(e,-n)}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(e,t){return e.filter(n=>t.includes(n.type))}function filterDataByTime$1(e,t,n){const r=t.getTime(),o=n.getTime();return e.map(s=>({...s,points:s.points.filter(([g])=>g>=r&&g<o)})).filter(({points:s})=>s.length>0)}let StoreCache$1=class{constructor({capacity:t,timeout:n}={}){he(this,"entries",new Map);he(this,"metadata",new Map);he(this,"capacity");he(this,"staleIntervalMs");this.capacity=t||1e4,this.staleIntervalMs=n||duration$2.minute}get(t,n){const r=this.keyToCacheKey(t);return this.isStale(r)&&!this.isGenerating(r)&&n&&this.generate(t,n),this.entries.get(r)}set(t,n){const r=this.keyToCacheKey(t);this.metadata.set(r,{generating:!1,staleAt:performance.now()+this.staleIntervalMs});const o=this.entries.get(r);JSON.stringify(o)===JSON.stringify(n)||(this.entries.set(r,n),this.enforceMaxSize())}clear(){this.entries.clear(),[...this.metadata.values()].forEach(t=>t.generating=!1)}clearKey(t){this.metadata.delete(t),this.entries.delete(t)}keyToCacheKey(t){return JSON.stringify(t)}enforceMaxSize(){for(;this.metadata.size>this.capacity&&this.metadata.size>0;){const[t]=[...this.metadata.entries()].reduce(([n,r],[o,s])=>s.staleAt<r.staleAt?[o,s]:[n,r]);this.clearKey(t)}}isStale(t){const n=this.metadata.get(t);return n?(n==null?void 0:n.staleAt)<performance.now():!0}isGenerating(t){const n=this.metadata.get(t);return n?n.generating:!1}generate(t,n){const r=this.keyToCacheKey(t),o=this.metadata.get(r)||{},s=n().then(g=>{const l=this.metadata.get(r);return(l==null?void 0:l.generating)!==s||this.set(t,g),g}).catch(g=>{throw this.metadata.delete(r),g});this.metadata.set(r,{...o,generating:s,staleAt:performance.now()+this.staleIntervalMs})}};async function queryTelemetry(e){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${exports.FORMANT_API_URL}/v1/queries/queries`,{method:"POST",body:JSON.stringify(e),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(t,n,r,o,s,g=!1){const l={...t,names:[...n],types:[...r]},u=this.query(l,o,s,g);return u===void 0||u==="too much data"?u:filterDataByType$1(u,r)}query(t,n,r,o=!1){const s={...t,start:startOfMinute(n).toISOString(),end:o?r.toISOString():addMinutes(roundToNearestMinutes(r),1).toISOString(),latestOnly:o},g=r>addSeconds(new Date,-20);let l;return g?l=this.liveQueryCache(s):l=this.queryCache(s),!l||l==="too much data"||o?l:filterDataByTime$1(l,n,r)}queryCache(t){return this.queryStoreCache.get(t,async()=>{try{return await queryTelemetry(t)}catch(n){throw n}})}liveQueryCache(t){return this.liveQueryStoreCache.get(t,async()=>{try{return await queryTelemetry(t)}catch(n){throw n}})}};const queryStore=new QueryStore$1;function addStreamListener(e,t,n){const r=o=>{const s=o.data;if(s.type==="module_data"){const{start:g,end:l}=s.queryRange;n(queryStore.moduleQuery({},e,t,new Date(g),new Date(l),!1))}};return window.addEventListener("message",r),()=>window.removeEventListener("message",r)}async function getDate(e,t,n){return new Promise(r=>{sendAppMessage({type:"request_date",minTime:t,maxTime:n,time:e});const o=s=>{const g=s.data;g.type==="date_response"&&(window.removeEventListener("message",o),r(g.data))};window.addEventListener("message",o)})}async function prompt(e,t){return new Promise(n=>{const r=Math.random().toString();sendAppMessage({type:"prompt",promptId:r,schema:e,okText:t==null?void 0:t.okText,cancelText:t==null?void 0:t.cancelText});const o=s=>{const g=s.data;g.type==="prompt_response"&&g.promptId===r&&n(g.data),window.removeEventListener("message",o)};window.addEventListener("message",o)})}const nt=class{static isModule(){return getCurrentModuleContext()!==null}static async getCurrentModuleConfiguration(){let t=new URLSearchParams("");typeof window!="undefined"&&window.location&&(t=new URLSearchParams(window.location.search));const n=t.get("configuration");if(!(n===null||n.trim()===""))return getModuleConfiguration(n.trim())}static get isOnline(){return nt._isOnline}static listenForConnectionEvents(){const t=n=>{const{data:r}=n;r.type==="formant_online"&&(this._isOnline=r.online)};return window.addEventListener("message",t),()=>window.removeEventListener("message",t)}static checkConnection(t=1e3){return new Promise((n,r)=>{const o=setTimeout(()=>r(new Error("deadline expired: took too long")),t),s=g=>{window.removeEventListener("message",s),clearTimeout(o);const{data:l}=g;l.type==="formant_online"&&(this._isOnline=l.online,n(l.online))};window.addEventListener("message",s),sendAppMessage({type:"formant_online"})})}static waitForConnection(t=5e3){let n=!1;const r=new Promise((g,l)=>{setTimeout(()=>{n=!0,l(new Error("deadline expired: took too long"))},t)}),o=g=>new Promise(l=>setTimeout(l,g)),s=async()=>{for(await o(50);!n&&!(this.isOnline||await this.checkConnection);)await o(500)};return Promise.race([r,s()])}};let App=nt;he(App,"getCurrentModuleContext",getCurrentModuleContext),he(App,"disableAnalyticsBottomBar",disableAnalyticsBottomBar),he(App,"goToDevice",goToDevice),he(App,"goToTime",goToTime),he(App,"refreshAuthToken",refreshAuthToken),he(App,"requestModuleData",requestModuleData),he(App,"sendChannelData",sendChannelData),he(App,"setModuleDateTimeRange",setModuleDateTimeRange),he(App,"setupModuleMenus",setupModuleMenus),he(App,"showMessage",showMessage),he(App,"addAccessTokenRefreshListener",addAccessTokenRefreshListener),he(App,"addChannelDataListener",addChannelDataListener),he(App,"addMenuListener",addMenuListener),he(App,"addModuleConfigurationListener",addModuleConfigurationListener),he(App,"addModuleDataListener",addModuleDataListener),he(App,"addOverviewDeviceListener",addOverviewDeviceListener),he(App,"addStreamListener",addStreamListener),he(App,"getDate",getDate),he(App,"prompt",prompt),he(App,"_isOnline",null);function stringToArrayBuffer(e){return Uint8Array.from(base64Exports.decode(e),t=>t.charCodeAt(0))}function fork$1(e){}function browser(){const{userAgent:e}=navigator;return e?e.includes("Firefox/")?"Firefox":e.includes("Edg/")?"Edge":e.includes("Chrome/")?"Chrome":e.includes("Safari/")?"Safari":e.includes("MSIE/")||e.includes("Trident/")?"IE":"Other":"Other"}const rtcAudioChunkStreamType="audio-chunk";class AudioPlayer{constructor(t,n){he(this,"muted",!1);he(this,"hasReceivedData",!1);he(this,"audioContext");he(this,"chunks",[]);he(this,"isPlaying",!1);he(this,"startTime",0);he(this,"lastChunkOffset",0);he(this,"bufferSize",3);he(this,"receive",async t=>{var g;const n=(g=t.payload.audioChunk)==null?void 0:g.chunk_data;if(!n)return;this.hasReceivedData||(this.hasReceivedData=!0);const{audioContext:r,muted:o}=this;if(!r||t.header.stream.streamType!==rtcAudioChunkStreamType||o!==!1)return;const s=stringToArrayBuffer(n);try{await r.decodeAudioData(toArrayBuffer(s.buffer),this.scheduleChunk)}catch(l){console.warn("Error decoding audio buffer, changing audioWireFormat on agent",{error:l}),this.changeAudioWireFormat("wav")}});he(this,"scheduleChunk",t=>{const{audioContext:n}=this;if(!n)return;(this.chunks.length>this.bufferSize||this.isPlaying===!1)&&(this.chunks.forEach(o=>{o.stop()}),this.isPlaying=!1,this.chunks=[]);const r=this.createChunk(t);r&&r.buffer&&(this.isPlaying===!1&&(this.startTime=n.currentTime,this.lastChunkOffset=0,this.isPlaying=!0),r.start(this.startTime+this.lastChunkOffset,0,t.duration),this.lastChunkOffset+=r.buffer.duration,this.chunks.push(r))});this.device=t,this.stream=n,this.device.startListeningToRealtimeDataStream(n),this.device.addRealtimeListener((o,s)=>{this.receive(s)}),browser()==="Safari"||browser()==="IE"?this.changeAudioWireFormat("wav"):this.changeAudioWireFormat("opus");const r=window.AudioContext||window.webkitAudioContext;this.audioContext=new r}async play(){var t,n;((t=this.audioContext)==null?void 0:t.state)==="suspended"&&await((n=this.audioContext)==null?void 0:n.resume()),this.muted=!1}async pause(){await this.audioContext.suspend(),this.muted=!0}destroy(){this.device.stopListeningToRealtimeDataStream(this.stream)}createChunk(t){const{audioContext:n}=this;if(!n)return;const r=n.createBufferSource();return r.buffer=t,r.connect(n.destination),r.loop=!1,r.onended=o=>{this.chunks.splice(this.chunks.indexOf(r),1),this.chunks.length===0&&(this.isPlaying=!1)},r}changeAudioWireFormat(t){const{stream:n}=this;(async()=>await this.device.changeStreamAudioType(n.name,t))()}}function toArrayBuffer(e){if(e instanceof ArrayBuffer)return e;if(ArrayBuffer.isView(e)){const t=e,n=t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength);return n instanceof SharedArrayBuffer?new Uint8Array(e).slice().buffer:n}return new Uint8Array(e).slice().buffer}class CaptureStream{constructor(t){he(this,"token");this.captureSession=t}async ingestJSON(t){if(!this.token){const r=await(await fetch(`${exports.FORMANT_API_URL}/v1/admin/capture-sessions/${this.captureSession.code}/authenticate`,{method:"POST"})).json();this.token=r.token}await fetch(`${exports.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(t)]]}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+this.token}})}}class DataChannel{constructor(t){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=t,this.dataChannel.binaryType="arraybuffer",this.dataChannel.onopen=()=>{this.setReady()},this.dataChannel.onclose=()=>{this.ready=!1,this.closeListeners.forEach(n=>n())},this.dataChannel.onerror=n=>{console.error(n),this.error="An error occurred in DataChannel",this.errorListeners.forEach(r=>r(n))},this.dataChannel.onmessage=n=>{this.listeners.forEach(r=>{const o=new Uint8Array(n.data),s=this.decoder.decode(o);r(s)}),this.binaryListeners.forEach(r=>{r(new Uint8Array(n.data))})}}setReady(){this.ready=!0,this.openListeners.forEach(t=>t())}addOpenListener(t){this.openListeners.push(t)}removeOpenListener(t){this.openListeners=this.openListeners.filter(n=>n!==t)}addCloseListener(t){this.closeListeners.push(t)}removeCloseListener(t){this.closeListeners=this.closeListeners.filter(n=>n!==t)}addErrorListener(t){this.errorListeners.push(t)}removeErrorListener(t){this.errorListeners=this.errorListeners.filter(n=>n!==t)}async waitTilReady(){return this.ready?!0:new Promise((n,r)=>{let o=setInterval(()=>{this.dataChannel.readyState==="open"&&this.setReady(),this.ready&&(clearInterval(o),n(!0)),this.error&&r(this.error)},10)})}send(t){if(!this.ready)throw new Error("Connection has been closed");this.dataChannel.send(t)}sendBinary(t){if(!this.ready)throw new Error("Connection has been closed");this.dataChannel.send(t)}addListener(t){this.listeners.push(t)}removeListener(t){const n=this.listeners.indexOf(t);if(n===-1)throw new Error("Could not find data channel listener to remove");if(this.error)throw new Error(this.error);this.listeners.splice(n,1)}addBinaryListener(t){this.binaryListeners.push(t)}removeBinaryListener(t){const n=this.binaryListeners.indexOf(t);if(n===-1)throw new Error("Could not find data channel listener to remove");if(this.error)throw new Error(this.error);this.binaryListeners.splice(n,1)}}function defined$1(e,t){if(e!==void 0)return e;throw new Error(t||"Value is undefined")}function notNull(e,t){if(e!==null)return e;throw new Error(t||"Value is null")}function definedAndNotNull(e,t){return notNull(defined$1(e,t),t)}function delay$1(e){return new Promise(t=>setTimeout(t,e))}async function createDevice(e){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${exports.FORMANT_API_URL}/v1/admin/devices`,{method:"POST",body:JSON.stringify(e),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(e){let t=e.length;for(;--t>=0;)e[t]=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(e,t,n,r,o){this.static_tree=e,this.extra_bits=t,this.extra_base=n,this.elems=r,this.max_length=o,this.has_stree=e&&e.length}let static_l_desc,static_d_desc,static_bl_desc;function TreeDesc(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}const d_code=e=>e<256?_dist_code[e]:_dist_code[256+(e>>>7)],put_short=(e,t)=>{e.pending_buf[e.pending++]=t&255,e.pending_buf[e.pending++]=t>>>8&255},send_bits=(e,t,n)=>{e.bi_valid>Buf_size-n?(e.bi_buf|=t<<e.bi_valid&65535,put_short(e,e.bi_buf),e.bi_buf=t>>Buf_size-e.bi_valid,e.bi_valid+=n-Buf_size):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=n)},send_code=(e,t,n)=>{send_bits(e,n[t*2],n[t*2+1])},bi_reverse=(e,t)=>{let n=0;do n|=e&1,e>>>=1,n<<=1;while(--t>0);return n>>>1},bi_flush=e=>{e.bi_valid===16?(put_short(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=e.bi_buf&255,e.bi_buf>>=8,e.bi_valid-=8)},gen_bitlen=(e,t)=>{const n=t.dyn_tree,r=t.max_code,o=t.stat_desc.static_tree,s=t.stat_desc.has_stree,g=t.stat_desc.extra_bits,l=t.stat_desc.extra_base,u=t.stat_desc.max_length;let c,d,B,Q,U,p,f=0;for(Q=0;Q<=MAX_BITS$1;Q++)e.bl_count[Q]=0;for(n[e.heap[e.heap_max]*2+1]=0,c=e.heap_max+1;c<HEAP_SIZE$1;c++)d=e.heap[c],Q=n[n[d*2+1]*2+1]+1,Q>u&&(Q=u,f++),n[d*2+1]=Q,!(d>r)&&(e.bl_count[Q]++,U=0,d>=l&&(U=g[d-l]),p=n[d*2],e.opt_len+=p*(Q+U),s&&(e.static_len+=p*(o[d*2+1]+U)));if(f!==0){do{for(Q=u-1;e.bl_count[Q]===0;)Q--;e.bl_count[Q]--,e.bl_count[Q+1]+=2,e.bl_count[u]--,f-=2}while(f>0);for(Q=u;Q!==0;Q--)for(d=e.bl_count[Q];d!==0;)B=e.heap[--c],!(B>r)&&(n[B*2+1]!==Q&&(e.opt_len+=(Q-n[B*2+1])*n[B*2],n[B*2+1]=Q),d--)}},gen_codes=(e,t,n)=>{const r=new Array(MAX_BITS$1+1);let o=0,s,g;for(s=1;s<=MAX_BITS$1;s++)o=o+n[s-1]<<1,r[s]=o;for(g=0;g<=t;g++){let l=e[g*2+1];l!==0&&(e[g*2]=bi_reverse(r[l]++,l))}},tr_static_init=()=>{let e,t,n,r,o;const s=new Array(MAX_BITS$1+1);for(n=0,r=0;r<LENGTH_CODES$1-1;r++)for(base_length[r]=n,e=0;e<1<<extra_lbits[r];e++)_length_code[n++]=r;for(_length_code[n-1]=r,o=0,r=0;r<16;r++)for(base_dist[r]=o,e=0;e<1<<extra_dbits[r];e++)_dist_code[o++]=r;for(o>>=7;r<D_CODES$1;r++)for(base_dist[r]=o<<7,e=0;e<1<<extra_dbits[r]-7;e++)_dist_code[256+o++]=r;for(t=0;t<=MAX_BITS$1;t++)s[t]=0;for(e=0;e<=143;)static_ltree[e*2+1]=8,e++,s[8]++;for(;e<=255;)static_ltree[e*2+1]=9,e++,s[9]++;for(;e<=279;)static_ltree[e*2+1]=7,e++,s[7]++;for(;e<=287;)static_ltree[e*2+1]=8,e++,s[8]++;for(gen_codes(static_ltree,L_CODES$1+1,s),e=0;e<D_CODES$1;e++)static_dtree[e*2+1]=5,static_dtree[e*2]=bi_reverse(e,5);static_l_desc=new StaticTreeDesc(static_ltree,extra_lbits,LITERALS$1+1,L_CODES$1,MAX_BITS$1),static_d_desc=new StaticTreeDesc(static_dtree,extra_dbits,0,D_CODES$1,MAX_BITS$1),static_bl_desc=new StaticTreeDesc(new Array(0),extra_blbits,0,BL_CODES$1,MAX_BL_BITS)},init_block=e=>{let t;for(t=0;t<L_CODES$1;t++)e.dyn_ltree[t*2]=0;for(t=0;t<D_CODES$1;t++)e.dyn_dtree[t*2]=0;for(t=0;t<BL_CODES$1;t++)e.bl_tree[t*2]=0;e.dyn_ltree[END_BLOCK*2]=1,e.opt_len=e.static_len=0,e.sym_next=e.matches=0},bi_windup=e=>{e.bi_valid>8?put_short(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0},smaller=(e,t,n,r)=>{const o=t*2,s=n*2;return e[o]<e[s]||e[o]===e[s]&&r[t]<=r[n]},pqdownheap=(e,t,n)=>{const r=e.heap[n];let o=n<<1;for(;o<=e.heap_len&&(o<e.heap_len&&smaller(t,e.heap[o+1],e.heap[o],e.depth)&&o++,!smaller(t,r,e.heap[o],e.depth));)e.heap[n]=e.heap[o],n=o,o<<=1;e.heap[n]=r},compress_block=(e,t,n)=>{let r,o,s=0,g,l;if(e.sym_next!==0)do r=e.pending_buf[e.sym_buf+s++]&255,r+=(e.pending_buf[e.sym_buf+s++]&255)<<8,o=e.pending_buf[e.sym_buf+s++],r===0?send_code(e,o,t):(g=_length_code[o],send_code(e,g+LITERALS$1+1,t),l=extra_lbits[g],l!==0&&(o-=base_length[g],send_bits(e,o,l)),r--,g=d_code(r),send_code(e,g,n),l=extra_dbits[g],l!==0&&(r-=base_dist[g],send_bits(e,r,l)));while(s<e.sym_next);send_code(e,END_BLOCK,t)},build_tree=(e,t)=>{const n=t.dyn_tree,r=t.stat_desc.static_tree,o=t.stat_desc.has_stree,s=t.stat_desc.elems;let g,l,u=-1,c;for(e.heap_len=0,e.heap_max=HEAP_SIZE$1,g=0;g<s;g++)n[g*2]!==0?(e.heap[++e.heap_len]=u=g,e.depth[g]=0):n[g*2+1]=0;for(;e.heap_len<2;)c=e.heap[++e.heap_len]=u<2?++u:0,n[c*2]=1,e.depth[c]=0,e.opt_len--,o&&(e.static_len-=r[c*2+1]);for(t.max_code=u,g=e.heap_len>>1;g>=1;g--)pqdownheap(e,n,g);c=s;do g=e.heap[1],e.heap[1]=e.heap[e.heap_len--],pqdownheap(e,n,1),l=e.heap[1],e.heap[--e.heap_max]=g,e.heap[--e.heap_max]=l,n[c*2]=n[g*2]+n[l*2],e.depth[c]=(e.depth[g]>=e.depth[l]?e.depth[g]:e.depth[l])+1,n[g*2+1]=n[l*2+1]=c,e.heap[1]=c++,pqdownheap(e,n,1);while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],gen_bitlen(e,t),gen_codes(n,u,e.bl_count)},scan_tree=(e,t,n)=>{let r,o=-1,s,g=t[0*2+1],l=0,u=7,c=4;for(g===0&&(u=138,c=3),t[(n+1)*2+1]=65535,r=0;r<=n;r++)s=g,g=t[(r+1)*2+1],!(++l<u&&s===g)&&(l<c?e.bl_tree[s*2]+=l:s!==0?(s!==o&&e.bl_tree[s*2]++,e.bl_tree[REP_3_6*2]++):l<=10?e.bl_tree[REPZ_3_10*2]++:e.bl_tree[REPZ_11_138*2]++,l=0,o=s,g===0?(u=138,c=3):s===g?(u=6,c=3):(u=7,c=4))},send_tree=(e,t,n)=>{let r,o=-1,s,g=t[0*2+1],l=0,u=7,c=4;for(g===0&&(u=138,c=3),r=0;r<=n;r++)if(s=g,g=t[(r+1)*2+1],!(++l<u&&s===g)){if(l<c)do send_code(e,s,e.bl_tree);while(--l!==0);else s!==0?(s!==o&&(send_code(e,s,e.bl_tree),l--),send_code(e,REP_3_6,e.bl_tree),send_bits(e,l-3,2)):l<=10?(send_code(e,REPZ_3_10,e.bl_tree),send_bits(e,l-3,3)):(send_code(e,REPZ_11_138,e.bl_tree),send_bits(e,l-11,7));l=0,o=s,g===0?(u=138,c=3):s===g?(u=6,c=3):(u=7,c=4)}},build_bl_tree=e=>{let t;for(scan_tree(e,e.dyn_ltree,e.l_desc.max_code),scan_tree(e,e.dyn_dtree,e.d_desc.max_code),build_tree(e,e.bl_desc),t=BL_CODES$1-1;t>=3&&e.bl_tree[bl_order[t]*2+1]===0;t--);return e.opt_len+=3*(t+1)+5+5+4,t},send_all_trees=(e,t,n,r)=>{let o;for(send_bits(e,t-257,5),send_bits(e,n-1,5),send_bits(e,r-4,4),o=0;o<r;o++)send_bits(e,e.bl_tree[bl_order[o]*2+1],3);send_tree(e,e.dyn_ltree,t-1),send_tree(e,e.dyn_dtree,n-1)},detect_data_type=e=>{let t=4093624447,n;for(n=0;n<=31;n++,t>>>=1)if(t&1&&e.dyn_ltree[n*2]!==0)return Z_BINARY;if(e.dyn_ltree[9*2]!==0||e.dyn_ltree[10*2]!==0||e.dyn_ltree[13*2]!==0)return Z_TEXT;for(n=32;n<LITERALS$1;n++)if(e.dyn_ltree[n*2]!==0)return Z_TEXT;return Z_BINARY};let static_init_done=!1;const _tr_init$1=e=>{static_init_done||(tr_static_init(),static_init_done=!0),e.l_desc=new TreeDesc(e.dyn_ltree,static_l_desc),e.d_desc=new TreeDesc(e.dyn_dtree,static_d_desc),e.bl_desc=new TreeDesc(e.bl_tree,static_bl_desc),e.bi_buf=0,e.bi_valid=0,init_block(e)},_tr_stored_block$1=(e,t,n,r)=>{send_bits(e,(STORED_BLOCK<<1)+(r?1:0),3),bi_windup(e),put_short(e,n),put_short(e,~n),n&&e.pending_buf.set(e.window.subarray(t,t+n),e.pending),e.pending+=n},_tr_align$1=e=>{send_bits(e,STATIC_TREES<<1,3),send_code(e,END_BLOCK,static_ltree),bi_flush(e)},_tr_flush_block$1=(e,t,n,r)=>{let o,s,g=0;e.level>0?(e.strm.data_type===Z_UNKNOWN$1&&(e.strm.data_type=detect_data_type(e)),build_tree(e,e.l_desc),build_tree(e,e.d_desc),g=build_bl_tree(e),o=e.opt_len+3+7>>>3,s=e.static_len+3+7>>>3,s<=o&&(o=s)):o=s=n+5,n+4<=o&&t!==-1?_tr_stored_block$1(e,t,n,r):e.strategy===Z_FIXED$1||s===o?(send_bits(e,(STATIC_TREES<<1)+(r?1:0),3),compress_block(e,static_ltree,static_dtree)):(send_bits(e,(DYN_TREES<<1)+(r?1:0),3),send_all_trees(e,e.l_desc.max_code+1,e.d_desc.max_code+1,g+1),compress_block(e,e.dyn_ltree,e.dyn_dtree)),init_block(e),r&&bi_windup(e)},_tr_tally$1=(e,t,n)=>(e.pending_buf[e.sym_buf+e.sym_next++]=t,e.pending_buf[e.sym_buf+e.sym_next++]=t>>8,e.pending_buf[e.sym_buf+e.sym_next++]=n,t===0?e.dyn_ltree[n*2]++:(e.matches++,t--,e.dyn_ltree[(_length_code[n]+LITERALS$1+1)*2]++,e.dyn_dtree[d_code(t)*2]++),e.sym_next===e.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=(e,t,n,r)=>{let o=e&65535|0,s=e>>>16&65535|0,g=0;for(;n!==0;){g=n>2e3?2e3:n,n-=g;do o=o+t[r++]|0,s=s+o|0;while(--g);o%=65521,s%=65521}return o|s<<16|0};var adler32_1=adler32;const makeTable=()=>{let e,t=[];for(var n=0;n<256;n++){e=n;for(var r=0;r<8;r++)e=e&1?3988292384^e>>>1:e>>>1;t[n]=e}return t},crcTable=new Uint32Array(makeTable()),crc32=(e,t,n,r)=>{const o=crcTable,s=r+n;e^=-1;for(let g=r;g<s;g++)e=e>>>8^o[(e^t[g])&255];return e^-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=(e,t)=>(e.msg=messages[t],t),rank=e=>e*2-(e>4?9:0),zero=e=>{let t=e.length;for(;--t>=0;)e[t]=0},slide_hash=e=>{let t,n,r,o=e.w_size;t=e.hash_size,r=t;do n=e.head[--r],e.head[r]=n>=o?n-o:0;while(--t);t=o,r=t;do n=e.prev[--r],e.prev[r]=n>=o?n-o:0;while(--t)};let HASH_ZLIB=(e,t,n)=>(t<<e.hash_shift^n)&e.hash_mask,HASH=HASH_ZLIB;const flush_pending=e=>{const t=e.state;let n=t.pending;n>e.avail_out&&(n=e.avail_out),n!==0&&(e.output.set(t.pending_buf.subarray(t.pending_out,t.pending_out+n),e.next_out),e.next_out+=n,t.pending_out+=n,e.total_out+=n,e.avail_out-=n,t.pending-=n,t.pending===0&&(t.pending_out=0))},flush_block_only=(e,t)=>{_tr_flush_block(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,flush_pending(e.strm)},put_byte=(e,t)=>{e.pending_buf[e.pending++]=t},putShortMSB=(e,t)=>{e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=t&255},read_buf=(e,t,n,r)=>{let o=e.avail_in;return o>r&&(o=r),o===0?0:(e.avail_in-=o,t.set(e.input.subarray(e.next_in,e.next_in+o),n),e.state.wrap===1?e.adler=adler32_1(e.adler,t,o,n):e.state.wrap===2&&(e.adler=crc32_1(e.adler,t,o,n)),e.next_in+=o,e.total_in+=o,o)},longest_match=(e,t)=>{let n=e.max_chain_length,r=e.strstart,o,s,g=e.prev_length,l=e.nice_match;const u=e.strstart>e.w_size-MIN_LOOKAHEAD?e.strstart-(e.w_size-MIN_LOOKAHEAD):0,c=e.window,d=e.w_mask,B=e.prev,Q=e.strstart+MAX_MATCH;let U=c[r+g-1],p=c[r+g];e.prev_length>=e.good_match&&(n>>=2),l>e.lookahead&&(l=e.lookahead);do if(o=t,!(c[o+g]!==p||c[o+g-1]!==U||c[o]!==c[r]||c[++o]!==c[r+1])){r+=2,o++;do;while(c[++r]===c[++o]&&c[++r]===c[++o]&&c[++r]===c[++o]&&c[++r]===c[++o]&&c[++r]===c[++o]&&c[++r]===c[++o]&&c[++r]===c[++o]&&c[++r]===c[++o]&&r<Q);if(s=MAX_MATCH-(Q-r),r=Q-MAX_MATCH,s>g){if(e.match_start=t,g=s,s>=l)break;U=c[r+g-1],p=c[r+g]}}while((t=B[t&d])>u&&--n!==0);return g<=e.lookahead?g:e.lookahead},fill_window=e=>{const t=e.w_size;let n,r,o;do{if(r=e.window_size-e.lookahead-e.strstart,e.strstart>=t+(t-MIN_LOOKAHEAD)&&(e.window.set(e.window.subarray(t,t+t-r),0),e.match_start-=t,e.strstart-=t,e.block_start-=t,e.insert>e.strstart&&(e.insert=e.strstart),slide_hash(e),r+=t),e.strm.avail_in===0)break;if(n=read_buf(e.strm,e.window,e.strstart+e.lookahead,r),e.lookahead+=n,e.lookahead+e.insert>=MIN_MATCH)for(o=e.strstart-e.insert,e.ins_h=e.window[o],e.ins_h=HASH(e,e.ins_h,e.window[o+1]);e.insert&&(e.ins_h=HASH(e,e.ins_h,e.window[o+MIN_MATCH-1]),e.prev[o&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=o,o++,e.insert--,!(e.lookahead+e.insert<MIN_MATCH)););}while(e.lookahead<MIN_LOOKAHEAD&&e.strm.avail_in!==0)},deflate_stored=(e,t)=>{let n=e.pending_buf_size-5>e.w_size?e.w_size:e.pending_buf_size-5,r,o,s,g=0,l=e.strm.avail_in;do{if(r=65535,s=e.bi_valid+42>>3,e.strm.avail_out<s||(s=e.strm.avail_out-s,o=e.strstart-e.block_start,r>o+e.strm.avail_in&&(r=o+e.strm.avail_in),r>s&&(r=s),r<n&&(r===0&&t!==Z_FINISH$3||t===Z_NO_FLUSH$2||r!==o+e.strm.avail_in)))break;g=t===Z_FINISH$3&&r===o+e.strm.avail_in?1:0,_tr_stored_block(e,0,0,g),e.pending_buf[e.pending-4]=r,e.pending_buf[e.pending-3]=r>>8,e.pending_buf[e.pending-2]=~r,e.pending_buf[e.pending-1]=~r>>8,flush_pending(e.strm),o&&(o>r&&(o=r),e.strm.output.set(e.window.subarray(e.block_start,e.block_start+o),e.strm.next_out),e.strm.next_out+=o,e.strm.avail_out-=o,e.strm.total_out+=o,e.block_start+=o,r-=o),r&&(read_buf(e.strm,e.strm.output,e.strm.next_out,r),e.strm.next_out+=r,e.strm.avail_out-=r,e.strm.total_out+=r)}while(g===0);return l-=e.strm.avail_in,l&&(l>=e.w_size?(e.matches=2,e.window.set(e.strm.input.subarray(e.strm.next_in-e.w_size,e.strm.next_in),0),e.strstart=e.w_size,e.insert=e.strstart):(e.window_size-e.strstart<=l&&(e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,e.insert>e.strstart&&(e.insert=e.strstart)),e.window.set(e.strm.input.subarray(e.strm.next_in-l,e.strm.next_in),e.strstart),e.strstart+=l,e.insert+=l>e.w_size-e.insert?e.w_size-e.insert:l),e.block_start=e.strstart),e.high_water<e.strstart&&(e.high_water=e.strstart),g?BS_FINISH_DONE:t!==Z_NO_FLUSH$2&&t!==Z_FINISH$3&&e.strm.avail_in===0&&e.strstart===e.block_start?BS_BLOCK_DONE:(s=e.window_size-e.strstart,e.strm.avail_in>s&&e.block_start>=e.w_size&&(e.block_start-=e.w_size,e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,s+=e.w_size,e.insert>e.strstart&&(e.insert=e.strstart)),s>e.strm.avail_in&&(s=e.strm.avail_in),s&&(read_buf(e.strm,e.window,e.strstart,s),e.strstart+=s,e.insert+=s>e.w_size-e.insert?e.w_size-e.insert:s),e.high_water<e.strstart&&(e.high_water=e.strstart),s=e.bi_valid+42>>3,s=e.pending_buf_size-s>65535?65535:e.pending_buf_size-s,n=s>e.w_size?e.w_size:s,o=e.strstart-e.block_start,(o>=n||(o||t===Z_FINISH$3)&&t!==Z_NO_FLUSH$2&&e.strm.avail_in===0&&o<=s)&&(r=o>s?s:o,g=t===Z_FINISH$3&&e.strm.avail_in===0&&r===o?1:0,_tr_stored_block(e,e.block_start,r,g),e.block_start+=r,flush_pending(e.strm)),g?BS_FINISH_STARTED:BS_NEED_MORE)},deflate_fast=(e,t)=>{let n,r;for(;;){if(e.lookahead<MIN_LOOKAHEAD){if(fill_window(e),e.lookahead<MIN_LOOKAHEAD&&t===Z_NO_FLUSH$2)return BS_NEED_MORE;if(e.lookahead===0)break}if(n=0,e.lookahead>=MIN_MATCH&&(e.ins_h=HASH(e,e.ins_h,e.window[e.strstart+MIN_MATCH-1]),n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),n!==0&&e.strstart-n<=e.w_size-MIN_LOOKAHEAD&&(e.match_length=longest_match(e,n)),e.match_length>=MIN_MATCH)if(r=_tr_tally(e,e.strstart-e.match_start,e.match_length-MIN_MATCH),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=MIN_MATCH){e.match_length--;do e.strstart++,e.ins_h=HASH(e,e.ins_h,e.window[e.strstart+MIN_MATCH-1]),n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart;while(--e.match_length!==0);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=HASH(e,e.ins_h,e.window[e.strstart+1]);else r=_tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(r&&(flush_block_only(e,!1),e.strm.avail_out===0))return BS_NEED_MORE}return e.insert=e.strstart<MIN_MATCH-1?e.strstart:MIN_MATCH-1,t===Z_FINISH$3?(flush_block_only(e,!0),e.strm.avail_out===0?BS_FINISH_STARTED:BS_FINISH_DONE):e.sym_next&&(flush_block_only(e,!1),e.strm.avail_out===0)?BS_NEED_MORE:BS_BLOCK_DONE},deflate_slow=(e,t)=>{let n,r,o;for(;;){if(e.lookahead<MIN_LOOKAHEAD){if(fill_window(e),e.lookahead<MIN_LOOKAHEAD&&t===Z_NO_FLUSH$2)return BS_NEED_MORE;if(e.lookahead===0)break}if(n=0,e.lookahead>=MIN_MATCH&&(e.ins_h=HASH(e,e.ins_h,e.window[e.strstart+MIN_MATCH-1]),n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=MIN_MATCH-1,n!==0&&e.prev_length<e.max_lazy_match&&e.strstart-n<=e.w_size-MIN_LOOKAHEAD&&(e.match_length=longest_match(e,n),e.match_length<=5&&(e.strategy===Z_FILTERED||e.match_length===MIN_MATCH&&e.strstart-e.match_start>4096)&&(e.match_length=MIN_MATCH-1)),e.prev_length>=MIN_MATCH&&e.match_length<=e.prev_length){o=e.strstart+e.lookahead-MIN_MATCH,r=_tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-MIN_MATCH),e.lookahead-=e.prev_length-1,e.prev_length-=2;do++e.strstart<=o&&(e.ins_h=HASH(e,e.ins_h,e.window[e.strstart+MIN_MATCH-1]),n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart);while(--e.prev_length!==0);if(e.match_available=0,e.match_length=MIN_MATCH-1,e.strstart++,r&&(flush_block_only(e,!1),e.strm.avail_out===0))return BS_NEED_MORE}else if(e.match_available){if(r=_tr_tally(e,0,e.window[e.strstart-1]),r&&flush_block_only(e,!1),e.strstart++,e.lookahead--,e.strm.avail_out===0)return BS_NEED_MORE}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(r=_tr_tally(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<MIN_MATCH-1?e.strstart:MIN_MATCH-1,t===Z_FINISH$3?(flush_block_only(e,!0),e.strm.avail_out===0?BS_FINISH_STARTED:BS_FINISH_DONE):e.sym_next&&(flush_block_only(e,!1),e.strm.avail_out===0)?BS_NEED_MORE:BS_BLOCK_DONE},deflate_rle=(e,t)=>{let n,r,o,s;const g=e.window;for(;;){if(e.lookahead<=MAX_MATCH){if(fill_window(e),e.lookahead<=MAX_MATCH&&t===Z_NO_FLUSH$2)return BS_NEED_MORE;if(e.lookahead===0)break}if(e.match_length=0,e.lookahead>=MIN_MATCH&&e.strstart>0&&(o=e.strstart-1,r=g[o],r===g[++o]&&r===g[++o]&&r===g[++o])){s=e.strstart+MAX_MATCH;do;while(r===g[++o]&&r===g[++o]&&r===g[++o]&&r===g[++o]&&r===g[++o]&&r===g[++o]&&r===g[++o]&&r===g[++o]&&o<s);e.match_length=MAX_MATCH-(s-o),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=MIN_MATCH?(n=_tr_tally(e,1,e.match_length-MIN_MATCH),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(n=_tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),n&&(flush_block_only(e,!1),e.strm.avail_out===0))return BS_NEED_MORE}return e.insert=0,t===Z_FINISH$3?(flush_block_only(e,!0),e.strm.avail_out===0?BS_FINISH_STARTED:BS_FINISH_DONE):e.sym_next&&(flush_block_only(e,!1),e.strm.avail_out===0)?BS_NEED_MORE:BS_BLOCK_DONE},deflate_huff=(e,t)=>{let n;for(;;){if(e.lookahead===0&&(fill_window(e),e.lookahead===0)){if(t===Z_NO_FLUSH$2)return BS_NEED_MORE;break}if(e.match_length=0,n=_tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,n&&(flush_block_only(e,!1),e.strm.avail_out===0))return BS_NEED_MORE}return e.insert=0,t===Z_FINISH$3?(flush_block_only(e,!0),e.strm.avail_out===0?BS_FINISH_STARTED:BS_FINISH_DONE):e.sym_next&&(flush_block_only(e,!1),e.strm.avail_out===0)?BS_NEED_MORE:BS_BLOCK_DONE};function Config(e,t,n,r,o){this.good_length=e,this.max_lazy=t,this.nice_length=n,this.max_chain=r,this.func=o}const configuration_table=[new Config(0,0,0,0,deflate_stored),new Config(4,4,8,4,deflate_fast),new Config(4,5,16,8,deflate_fast),new Config(4,6,32,32,deflate_fast),new Config(4,4,16,16,deflate_slow),new Config(8,16,32,32,deflate_slow),new Config(8,16,128,128,deflate_slow),new Config(8,32,128,256,deflate_slow),new Config(32,128,258,1024,deflate_slow),new Config(32,258,258,4096,deflate_slow)],lm_init=e=>{e.window_size=2*e.w_size,zero(e.head),e.max_lazy_match=configuration_table[e.level].max_lazy,e.good_match=configuration_table[e.level].good_length,e.nice_match=configuration_table[e.level].nice_length,e.max_chain_length=configuration_table[e.level].max_chain,e.strstart=0,e.block_start=0,e.lookahead=0,e.insert=0,e.match_length=e.prev_length=MIN_MATCH-1,e.match_available=0,e.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=e=>{if(!e)return 1;const t=e.state;return!t||t.strm!==e||t.status!==INIT_STATE&&t.status!==GZIP_STATE&&t.status!==EXTRA_STATE&&t.status!==NAME_STATE&&t.status!==COMMENT_STATE&&t.status!==HCRC_STATE&&t.status!==BUSY_STATE&&t.status!==FINISH_STATE?1:0},deflateResetKeep=e=>{if(deflateStateCheck(e))return err(e,Z_STREAM_ERROR$2);e.total_in=e.total_out=0,e.data_type=Z_UNKNOWN;const t=e.state;return t.pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap===2?GZIP_STATE:t.wrap?INIT_STATE:BUSY_STATE,e.adler=t.wrap===2?0:1,t.last_flush=-2,_tr_init(t),Z_OK$3},deflateReset=e=>{const t=deflateResetKeep(e);return t===Z_OK$3&&lm_init(e.state),t},deflateSetHeader=(e,t)=>deflateStateCheck(e)||e.state.wrap!==2?Z_STREAM_ERROR$2:(e.state.gzhead=t,Z_OK$3),deflateInit2=(e,t,n,r,o,s)=>{if(!e)return Z_STREAM_ERROR$2;let g=1;if(t===Z_DEFAULT_COMPRESSION$1&&(t=6),r<0?(g=0,r=-r):r>15&&(g=2,r-=16),o<1||o>MAX_MEM_LEVEL||n!==Z_DEFLATED$2||r<8||r>15||t<0||t>9||s<0||s>Z_FIXED||r===8&&g!==1)return err(e,Z_STREAM_ERROR$2);r===8&&(r=9);const l=new DeflateState;return e.state=l,l.strm=e,l.status=INIT_STATE,l.wrap=g,l.gzhead=null,l.w_bits=r,l.w_size=1<<l.w_bits,l.w_mask=l.w_size-1,l.hash_bits=o+7,l.hash_size=1<<l.hash_bits,l.hash_mask=l.hash_size-1,l.hash_shift=~~((l.hash_bits+MIN_MATCH-1)/MIN_MATCH),l.window=new Uint8Array(l.w_size*2),l.head=new Uint16Array(l.hash_size),l.prev=new Uint16Array(l.w_size),l.lit_bufsize=1<<o+6,l.pending_buf_size=l.lit_bufsize*4,l.pending_buf=new Uint8Array(l.pending_buf_size),l.sym_buf=l.lit_bufsize,l.sym_end=(l.lit_bufsize-1)*3,l.level=t,l.strategy=s,l.method=n,deflateReset(e)},deflateInit=(e,t)=>deflateInit2(e,t,Z_DEFLATED$2,MAX_WBITS$1,DEF_MEM_LEVEL,Z_DEFAULT_STRATEGY$1),deflate$2=(e,t)=>{if(deflateStateCheck(e)||t>Z_BLOCK$1||t<0)return e?err(e,Z_STREAM_ERROR$2):Z_STREAM_ERROR$2;const n=e.state;if(!e.output||e.avail_in!==0&&!e.input||n.status===FINISH_STATE&&t!==Z_FINISH$3)return err(e,e.avail_out===0?Z_BUF_ERROR$1:Z_STREAM_ERROR$2);const r=n.last_flush;if(n.last_flush=t,n.pending!==0){if(flush_pending(e),e.avail_out===0)return n.last_flush=-1,Z_OK$3}else if(e.avail_in===0&&rank(t)<=rank(r)&&t!==Z_FINISH$3)return err(e,Z_BUF_ERROR$1);if(n.status===FINISH_STATE&&e.avail_in!==0)return err(e,Z_BUF_ERROR$1);if(n.status===INIT_STATE&&n.wrap===0&&(n.status=BUSY_STATE),n.status===INIT_STATE){let o=Z_DEFLATED$2+(n.w_bits-8<<4)<<8,s=-1;if(n.strategy>=Z_HUFFMAN_ONLY||n.level<2?s=0:n.level<6?s=1:n.level===6?s=2:s=3,o|=s<<6,n.strstart!==0&&(o|=PRESET_DICT),o+=31-o%31,putShortMSB(n,o),n.strstart!==0&&(putShortMSB(n,e.adler>>>16),putShortMSB(n,e.adler&65535)),e.adler=1,n.status=BUSY_STATE,flush_pending(e),n.pending!==0)return n.last_flush=-1,Z_OK$3}if(n.status===GZIP_STATE){if(e.adler=0,put_byte(n,31),put_byte(n,139),put_byte(n,8),n.gzhead)put_byte(n,(n.gzhead.text?1:0)+(n.gzhead.hcrc?2:0)+(n.gzhead.extra?4:0)+(n.gzhead.name?8:0)+(n.gzhead.comment?16:0)),put_byte(n,n.gzhead.time&255),put_byte(n,n.gzhead.time>>8&255),put_byte(n,n.gzhead.time>>16&255),put_byte(n,n.gzhead.time>>24&255),put_byte(n,n.level===9?2:n.strategy>=Z_HUFFMAN_ONLY||n.level<2?4:0),put_byte(n,n.gzhead.os&255),n.gzhead.extra&&n.gzhead.extra.length&&(put_byte(n,n.gzhead.extra.length&255),put_byte(n,n.gzhead.extra.length>>8&255)),n.gzhead.hcrc&&(e.adler=crc32_1(e.adler,n.pending_buf,n.pending,0)),n.gzindex=0,n.status=EXTRA_STATE;else if(put_byte(n,0),put_byte(n,0),put_byte(n,0),put_byte(n,0),put_byte(n,0),put_byte(n,n.level===9?2:n.strategy>=Z_HUFFMAN_ONLY||n.level<2?4:0),put_byte(n,OS_CODE),n.status=BUSY_STATE,flush_pending(e),n.pending!==0)return n.last_flush=-1,Z_OK$3}if(n.status===EXTRA_STATE){if(n.gzhead.extra){let o=n.pending,s=(n.gzhead.extra.length&65535)-n.gzindex;for(;n.pending+s>n.pending_buf_size;){let l=n.pending_buf_size-n.pending;if(n.pending_buf.set(n.gzhead.extra.subarray(n.gzindex,n.gzindex+l),n.pending),n.pending=n.pending_buf_size,n.gzhead.hcrc&&n.pending>o&&(e.adler=crc32_1(e.adler,n.pending_buf,n.pending-o,o)),n.gzindex+=l,flush_pending(e),n.pending!==0)return n.last_flush=-1,Z_OK$3;o=0,s-=l}let g=new Uint8Array(n.gzhead.extra);n.pending_buf.set(g.subarray(n.gzindex,n.gzindex+s),n.pending),n.pending+=s,n.gzhead.hcrc&&n.pending>o&&(e.adler=crc32_1(e.adler,n.pending_buf,n.pending-o,o)),n.gzindex=0}n.status=NAME_STATE}if(n.status===NAME_STATE){if(n.gzhead.name){let o=n.pending,s;do{if(n.pending===n.pending_buf_size){if(n.gzhead.hcrc&&n.pending>o&&(e.adler=crc32_1(e.adler,n.pending_buf,n.pending-o,o)),flush_pending(e),n.pending!==0)return n.last_flush=-1,Z_OK$3;o=0}n.gzindex<n.gzhead.name.length?s=n.gzhead.name.charCodeAt(n.gzindex++)&255:s=0,put_byte(n,s)}while(s!==0);n.gzhead.hcrc&&n.pending>o&&(e.adler=crc32_1(e.adler,n.pending_buf,n.pending-o,o)),n.gzindex=0}n.status=COMMENT_STATE}if(n.status===COMMENT_STATE){if(n.gzhead.comment){let o=n.pending,s;do{if(n.pending===n.pending_buf_size){if(n.gzhead.hcrc&&n.pending>o&&(e.adler=crc32_1(e.adler,n.pending_buf,n.pending-o,o)),flush_pending(e),n.pending!==0)return n.last_flush=-1,Z_OK$3;o=0}n.gzindex<n.gzhead.comment.length?s=n.gzhead.comment.charCodeAt(n.gzindex++)&255:s=0,put_byte(n,s)}while(s!==0);n.gzhead.hcrc&&n.pending>o&&(e.adler=crc32_1(e.adler,n.pending_buf,n.pending-o,o))}n.status=HCRC_STATE}if(n.status===HCRC_STATE){if(n.gzhead.hcrc){if(n.pending+2>n.pending_buf_size&&(flush_pending(e),n.pending!==0))return n.last_flush=-1,Z_OK$3;put_byte(n,e.adler&255),put_byte(n,e.adler>>8&255),e.adler=0}if(n.status=BUSY_STATE,flush_pending(e),n.pending!==0)return n.last_flush=-1,Z_OK$3}if(e.avail_in!==0||n.lookahead!==0||t!==Z_NO_FLUSH$2&&n.status!==FINISH_STATE){let o=n.level===0?deflate_stored(n,t):n.strategy===Z_HUFFMAN_ONLY?deflate_huff(n,t):n.strategy===Z_RLE?deflate_rle(n,t):configuration_table[n.level].func(n,t);if((o===BS_FINISH_STARTED||o===BS_FINISH_DONE)&&(n.status=FINISH_STATE),o===BS_NEED_MORE||o===BS_FINISH_STARTED)return e.avail_out===0&&(n.last_flush=-1),Z_OK$3;if(o===BS_BLOCK_DONE&&(t===Z_PARTIAL_FLUSH?_tr_align(n):t!==Z_BLOCK$1&&(_tr_stored_block(n,0,0,!1),t===Z_FULL_FLUSH$1&&(zero(n.head),n.lookahead===0&&(n.strstart=0,n.block_start=0,n.insert=0))),flush_pending(e),e.avail_out===0))return n.last_flush=-1,Z_OK$3}return t!==Z_FINISH$3?Z_OK$3:n.wrap<=0?Z_STREAM_END$3:(n.wrap===2?(put_byte(n,e.adler&255),put_byte(n,e.adler>>8&255),put_byte(n,e.adler>>16&255),put_byte(n,e.adler>>24&255),put_byte(n,e.total_in&255),put_byte(n,e.total_in>>8&255),put_byte(n,e.total_in>>16&255),put_byte(n,e.total_in>>24&255)):(putShortMSB(n,e.adler>>>16),putShortMSB(n,e.adler&65535)),flush_pending(e),n.wrap>0&&(n.wrap=-n.wrap),n.pending!==0?Z_OK$3:Z_STREAM_END$3)},deflateEnd=e=>{if(deflateStateCheck(e))return Z_STREAM_ERROR$2;const t=e.state.status;return e.state=null,t===BUSY_STATE?err(e,Z_DATA_ERROR$2):Z_OK$3},deflateSetDictionary=(e,t)=>{let n=t.length;if(deflateStateCheck(e))return Z_STREAM_ERROR$2;const r=e.state,o=r.wrap;if(o===2||o===1&&r.status!==INIT_STATE||r.lookahead)return Z_STREAM_ERROR$2;if(o===1&&(e.adler=adler32_1(e.adler,t,n,0)),r.wrap=0,n>=r.w_size){o===0&&(zero(r.head),r.strstart=0,r.block_start=0,r.insert=0);let u=new Uint8Array(r.w_size);u.set(t.subarray(n-r.w_size,n),0),t=u,n=r.w_size}const s=e.avail_in,g=e.next_in,l=e.input;for(e.avail_in=n,e.next_in=0,e.input=t,fill_window(r);r.lookahead>=MIN_MATCH;){let u=r.strstart,c=r.lookahead-(MIN_MATCH-1);do r.ins_h=HASH(r,r.ins_h,r.window[u+MIN_MATCH-1]),r.prev[u&r.w_mask]=r.head[r.ins_h],r.head[r.ins_h]=u,u++;while(--c);r.strstart=u,r.lookahead=MIN_MATCH-1,fill_window(r)}return r.strstart+=r.lookahead,r.block_start=r.strstart,r.insert=r.lookahead,r.lookahead=0,r.match_length=r.prev_length=MIN_MATCH-1,r.match_available=0,e.next_in=g,e.input=l,e.avail_in=s,r.wrap=o,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=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var assign=function(e){const t=Array.prototype.slice.call(arguments,1);for(;t.length;){const n=t.shift();if(n){if(typeof n!="object")throw new TypeError(n+"must be non-object");for(const r in n)_has(n,r)&&(e[r]=n[r])}}return e},flattenChunks=e=>{let t=0;for(let r=0,o=e.length;r<o;r++)t+=e[r].length;const n=new Uint8Array(t);for(let r=0,o=0,s=e.length;r<s;r++){let g=e[r];n.set(g,o),o+=g.length}return n},common={assign,flattenChunks};let STR_APPLY_UIA_OK=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(e){STR_APPLY_UIA_OK=!1}const _utf8len=new Uint8Array(256);for(let e=0;e<256;e++)_utf8len[e]=e>=252?6:e>=248?5:e>=240?4:e>=224?3:e>=192?2:1;_utf8len[254]=_utf8len[254]=1;var string2buf=e=>{if(typeof TextEncoder=="function"&&TextEncoder.prototype.encode)return new TextEncoder().encode(e);let t,n,r,o,s,g=e.length,l=0;for(o=0;o<g;o++)n=e.charCodeAt(o),(n&64512)===55296&&o+1<g&&(r=e.charCodeAt(o+1),(r&64512)===56320&&(n=65536+(n-55296<<10)+(r-56320),o++)),l+=n<128?1:n<2048?2:n<65536?3:4;for(t=new Uint8Array(l),s=0,o=0;s<l;o++)n=e.charCodeAt(o),(n&64512)===55296&&o+1<g&&(r=e.charCodeAt(o+1),(r&64512)===56320&&(n=65536+(n-55296<<10)+(r-56320),o++)),n<128?t[s++]=n:n<2048?(t[s++]=192|n>>>6,t[s++]=128|n&63):n<65536?(t[s++]=224|n>>>12,t[s++]=128|n>>>6&63,t[s++]=128|n&63):(t[s++]=240|n>>>18,t[s++]=128|n>>>12&63,t[s++]=128|n>>>6&63,t[s++]=128|n&63);return t};const buf2binstring=(e,t)=>{if(t<65534&&e.subarray&&STR_APPLY_UIA_OK)return String.fromCharCode.apply(null,e.length===t?e:e.subarray(0,t));let n="";for(let r=0;r<t;r++)n+=String.fromCharCode(e[r]);return n};var buf2string=(e,t)=>{const n=t||e.length;if(typeof TextDecoder=="function"&&TextDecoder.prototype.decode)return new TextDecoder().decode(e.subarray(0,t));let r,o;const s=new Array(n*2);for(o=0,r=0;r<n;){let g=e[r++];if(g<128){s[o++]=g;continue}let l=_utf8len[g];if(l>4){s[o++]=65533,r+=l-1;continue}for(g&=l===2?31:l===3?15:7;l>1&&r<n;)g=g<<6|e[r++]&63,l--;if(l>1){s[o++]=65533;continue}g<65536?s[o++]=g:(g-=65536,s[o++]=55296|g>>10&1023,s[o++]=56320|g&1023)}return buf2binstring(s,o)},utf8border=(e,t)=>{t=t||e.length,t>e.length&&(t=e.length);let n=t-1;for(;n>=0&&(e[n]&192)===128;)n--;return n<0||n===0?t:n+_utf8len[e[n]]>t?n:t},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(e){this.options=common.assign({level:Z_DEFAULT_COMPRESSION,method:Z_DEFLATED$1,chunkSize:16384,windowBits:15,memLevel:8,strategy:Z_DEFAULT_STRATEGY},e||{});let t=this.options;t.raw&&t.windowBits>0?t.windowBits=-t.windowBits:t.gzip&&t.windowBits>0&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new zstream,this.strm.avail_out=0;let n=deflate_1$2.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(n!==Z_OK$2)throw new Error(messages[n]);if(t.header&&deflate_1$2.deflateSetHeader(this.strm,t.header),t.dictionary){let r;if(typeof t.dictionary=="string"?r=strings.string2buf(t.dictionary):toString$1.call(t.dictionary)==="[object ArrayBuffer]"?r=new Uint8Array(t.dictionary):r=t.dictionary,n=deflate_1$2.deflateSetDictionary(this.strm,r),n!==Z_OK$2)throw new Error(messages[n]);this._dict_set=!0}}Deflate$1.prototype.push=function(e,t){const n=this.strm,r=this.options.chunkSize;let o,s;if(this.ended)return!1;for(t===~~t?s=t:s=t===!0?Z_FINISH$2:Z_NO_FLUSH$1,typeof e=="string"?n.input=strings.string2buf(e):toString$1.call(e)==="[object ArrayBuffer]"?n.input=new Uint8Array(e):n.input=e,n.next_in=0,n.avail_in=n.input.length;;){if(n.avail_out===0&&(n.output=new Uint8Array(r),n.next_out=0,n.avail_out=r),(s===Z_SYNC_FLUSH||s===Z_FULL_FLUSH)&&n.avail_out<=6){this.onData(n.output.subarray(0,n.next_out)),n.avail_out=0;continue}if(o=deflate_1$2.deflate(n,s),o===Z_STREAM_END$2)return n.next_out>0&&this.onData(n.output.subarray(0,n.next_out)),o=deflate_1$2.deflateEnd(this.strm),this.onEnd(o),this.ended=!0,o===Z_OK$2;if(n.avail_out===0){this.onData(n.output);continue}if(s>0&&n.next_out>0){this.onData(n.output.subarray(0,n.next_out)),n.avail_out=0;continue}if(n.avail_in===0)break}return!0},Deflate$1.prototype.onData=function(e){this.chunks.push(e)},Deflate$1.prototype.onEnd=function(e){e===Z_OK$2&&(this.result=common.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};function deflate$1(e,t){const n=new Deflate$1(t);if(n.push(e,!0),n.err)throw n.msg||messages[n.err];return n.result}function deflateRaw$1(e,t){return t=t||{},t.raw=!0,deflate$1(e,t)}function gzip$1(e,t){return t=t||{},t.gzip=!0,deflate$1(e,t)}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(t,n){let r,o,s,g,l,u,c,d,B,Q,U,p,f,b,M,J,m,y,h,T,I,X,F,R;const x=t.state;r=t.next_in,F=t.input,o=r+(t.avail_in-5),s=t.next_out,R=t.output,g=s-(n-t.avail_out),l=s+(t.avail_out-257),u=x.dmax,c=x.wsize,d=x.whave,B=x.wnext,Q=x.window,U=x.hold,p=x.bits,f=x.lencode,b=x.distcode,M=(1<<x.lenbits)-1,J=(1<<x.distbits)-1;e:do{p<15&&(U+=F[r++]<<p,p+=8,U+=F[r++]<<p,p+=8),m=f[U&M];t:for(;;){if(y=m>>>24,U>>>=y,p-=y,y=m>>>16&255,y===0)R[s++]=m&65535;else if(y&16){h=m&65535,y&=15,y&&(p<y&&(U+=F[r++]<<p,p+=8),h+=U&(1<<y)-1,U>>>=y,p-=y),p<15&&(U+=F[r++]<<p,p+=8,U+=F[r++]<<p,p+=8),m=b[U&J];n:for(;;){if(y=m>>>24,U>>>=y,p-=y,y=m>>>16&255,y&16){if(T=m&65535,y&=15,p<y&&(U+=F[r++]<<p,p+=8,p<y&&(U+=F[r++]<<p,p+=8)),T+=U&(1<<y)-1,T>u){t.msg="invalid distance too far back",x.mode=BAD$1;break e}if(U>>>=y,p-=y,y=s-g,T>y){if(y=T-y,y>d&&x.sane){t.msg="invalid distance too far back",x.mode=BAD$1;break e}if(I=0,X=Q,B===0){if(I+=c-y,y<h){h-=y;do R[s++]=Q[I++];while(--y);I=s-T,X=R}}else if(B<y){if(I+=c+B-y,y-=B,y<h){h-=y;do R[s++]=Q[I++];while(--y);if(I=0,B<h){y=B,h-=y;do R[s++]=Q[I++];while(--y);I=s-T,X=R}}}else if(I+=B-y,y<h){h-=y;do R[s++]=Q[I++];while(--y);I=s-T,X=R}for(;h>2;)R[s++]=X[I++],R[s++]=X[I++],R[s++]=X[I++],h-=3;h&&(R[s++]=X[I++],h>1&&(R[s++]=X[I++]))}else{I=s-T;do R[s++]=R[I++],R[s++]=R[I++],R[s++]=R[I++],h-=3;while(h>2);h&&(R[s++]=R[I++],h>1&&(R[s++]=R[I++]))}}else if(y&64){t.msg="invalid distance code",x.mode=BAD$1;break e}else{m=b[(m&65535)+(U&(1<<y)-1)];continue n}break}}else if(y&64)if(y&32){x.mode=TYPE$1;break e}else{t.msg="invalid literal/length code",x.mode=BAD$1;break e}else{m=f[(m&65535)+(U&(1<<y)-1)];continue t}break}}while(r<o&&s<l);h=p>>3,r-=h,p-=h<<3,U&=(1<<p)-1,t.next_in=r,t.next_out=s,t.avail_in=r<o?5+(o-r):5-(r-o),t.avail_out=s<l?257+(l-s):257-(s-l),x.hold=U,x.bits=p};const MAXBITS=15,ENOUGH_LENS$1=852,ENOUGH_DISTS$1=592,CODES$1=0,LENS$1=1,DISTS$1=2,lbase=new Uint16Array([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]),lext=new Uint8Array([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]),dbase=new Uint16Array([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]),dext=new Uint8Array([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]),inflate_table=(e,t,n,r,o,s,g,l)=>{const u=l.bits;let c=0,d=0,B=0,Q=0,U=0,p=0,f=0,b=0,M=0,J=0,m,y,h,T,I,X=null,F;const R=new Uint16Array(MAXBITS+1),x=new Uint16Array(MAXBITS+1);let w=null,_,j,C;for(c=0;c<=MAXBITS;c++)R[c]=0;for(d=0;d<r;d++)R[t[n+d]]++;for(U=u,Q=MAXBITS;Q>=1&&R[Q]===0;Q--);if(U>Q&&(U=Q),Q===0)return o[s++]=1<<24|64<<16|0,o[s++]=1<<24|64<<16|0,l.bits=1,0;for(B=1;B<Q&&R[B]===0;B++);for(U<B&&(U=B),b=1,c=1;c<=MAXBITS;c++)if(b<<=1,b-=R[c],b<0)return-1;if(b>0&&(e===CODES$1||Q!==1))return-1;for(x[1]=0,c=1;c<MAXBITS;c++)x[c+1]=x[c]+R[c];for(d=0;d<r;d++)t[n+d]!==0&&(g[x[t[n+d]]++]=d);if(e===CODES$1?(X=w=g,F=20):e===LENS$1?(X=lbase,w=lext,F=257):(X=dbase,w=dext,F=0),J=0,d=0,c=B,I=s,p=U,f=0,h=-1,M=1<<U,T=M-1,e===LENS$1&&M>ENOUGH_LENS$1||e===DISTS$1&&M>ENOUGH_DISTS$1)return 1;for(;;){_=c-f,g[d]+1<F?(j=0,C=g[d]):g[d]>=F?(j=w[g[d]-F],C=X[g[d]-F]):(j=32+64,C=0),m=1<<c-f,y=1<<p,B=y;do y-=m,o[I+(J>>f)+y]=_<<24|j<<16|C|0;while(y!==0);for(m=1<<c-1;J&m;)m>>=1;if(m!==0?(J&=m-1,J+=m):J=0,d++,--R[c]===0){if(c===Q)break;c=t[n+g[d]]}if(c>U&&(J&T)!==h){for(f===0&&(f=U),I+=B,p=c-f,b=1<<p;p+f<Q&&(b-=R[p+f],!(b<=0));)p++,b<<=1;if(M+=1<<p,e===LENS$1&&M>ENOUGH_LENS$1||e===DISTS$1&&M>ENOUGH_DISTS$1)return 1;h=J&T,o[h]=U<<24|p<<16|I-s|0}}return J!==0&&(o[I+J]=c-f<<24|64<<16|0),l.bits=U,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=e=>(e>>>24&255)+(e>>>8&65280)+((e&65280)<<8)+((e&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=e=>{if(!e)return 1;const t=e.state;return!t||t.strm!==e||t.mode<HEAD||t.mode>SYNC?1:0},inflateResetKeep=e=>{if(inflateStateCheck(e))return Z_STREAM_ERROR$1;const t=e.state;return e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=t.wrap&1),t.mode=HEAD,t.last=0,t.havedict=0,t.flags=-1,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new Int32Array(ENOUGH_LENS),t.distcode=t.distdyn=new Int32Array(ENOUGH_DISTS),t.sane=1,t.back=-1,Z_OK$1},inflateReset=e=>{if(inflateStateCheck(e))return Z_STREAM_ERROR$1;const t=e.state;return t.wsize=0,t.whave=0,t.wnext=0,inflateResetKeep(e)},inflateReset2=(e,t)=>{let n;if(inflateStateCheck(e))return Z_STREAM_ERROR$1;const r=e.state;return t<0?(n=0,t=-t):(n=(t>>4)+5,t<48&&(t&=15)),t&&(t<8||t>15)?Z_STREAM_ERROR$1:(r.window!==null&&r.wbits!==t&&(r.window=null),r.wrap=n,r.wbits=t,inflateReset(e))},inflateInit2=(e,t)=>{if(!e)return Z_STREAM_ERROR$1;const n=new InflateState;e.state=n,n.strm=e,n.window=null,n.mode=HEAD;const r=inflateReset2(e,t);return r!==Z_OK$1&&(e.state=null),r},inflateInit=e=>inflateInit2(e,DEF_WBITS);let virgin=!0,lenfix,distfix;const fixedtables=e=>{if(virgin){lenfix=new Int32Array(512),distfix=new Int32Array(32);let t=0;for(;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(inftrees(LENS,e.lens,0,288,lenfix,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;inftrees(DISTS,e.lens,0,32,distfix,0,e.work,{bits:5}),virgin=!1}e.lencode=lenfix,e.lenbits=9,e.distcode=distfix,e.distbits=5},updatewindow=(e,t,n,r)=>{let o;const s=e.state;return s.window===null&&(s.wsize=1<<s.wbits,s.wnext=0,s.whave=0,s.window=new Uint8Array(s.wsize)),r>=s.wsize?(s.window.set(t.subarray(n-s.wsize,n),0),s.wnext=0,s.whave=s.wsize):(o=s.wsize-s.wnext,o>r&&(o=r),s.window.set(t.subarray(n-r,n-r+o),s.wnext),r-=o,r?(s.window.set(t.subarray(n-r,n),0),s.wnext=r,s.whave=s.wsize):(s.wnext+=o,s.wnext===s.wsize&&(s.wnext=0),s.whave<s.wsize&&(s.whave+=o))),0},inflate$2=(e,t)=>{let n,r,o,s,g,l,u,c,d,B,Q,U,p,f,b=0,M,J,m,y,h,T,I,X;const F=new Uint8Array(4);let R,x;const w=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(inflateStateCheck(e)||!e.output||!e.input&&e.avail_in!==0)return Z_STREAM_ERROR$1;n=e.state,n.mode===TYPE&&(n.mode=TYPEDO),g=e.next_out,o=e.output,u=e.avail_out,s=e.next_in,r=e.input,l=e.avail_in,c=n.hold,d=n.bits,B=l,Q=u,X=Z_OK$1;e:for(;;)switch(n.mode){case HEAD:if(n.wrap===0){n.mode=TYPEDO;break}for(;d<16;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}if(n.wrap&2&&c===35615){n.wbits===0&&(n.wbits=15),n.check=0,F[0]=c&255,F[1]=c>>>8&255,n.check=crc32_1(n.check,F,2,0),c=0,d=0,n.mode=FLAGS;break}if(n.head&&(n.head.done=!1),!(n.wrap&1)||(((c&255)<<8)+(c>>8))%31){e.msg="incorrect header check",n.mode=BAD;break}if((c&15)!==Z_DEFLATED){e.msg="unknown compression method",n.mode=BAD;break}if(c>>>=4,d-=4,I=(c&15)+8,n.wbits===0&&(n.wbits=I),I>15||I>n.wbits){e.msg="invalid window size",n.mode=BAD;break}n.dmax=1<<n.wbits,n.flags=0,e.adler=n.check=1,n.mode=c&512?DICTID:TYPE,c=0,d=0;break;case FLAGS:for(;d<16;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}if(n.flags=c,(n.flags&255)!==Z_DEFLATED){e.msg="unknown compression method",n.mode=BAD;break}if(n.flags&57344){e.msg="unknown header flags set",n.mode=BAD;break}n.head&&(n.head.text=c>>8&1),n.flags&512&&n.wrap&4&&(F[0]=c&255,F[1]=c>>>8&255,n.check=crc32_1(n.check,F,2,0)),c=0,d=0,n.mode=TIME;case TIME:for(;d<32;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}n.head&&(n.head.time=c),n.flags&512&&n.wrap&4&&(F[0]=c&255,F[1]=c>>>8&255,F[2]=c>>>16&255,F[3]=c>>>24&255,n.check=crc32_1(n.check,F,4,0)),c=0,d=0,n.mode=OS;case OS:for(;d<16;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}n.head&&(n.head.xflags=c&255,n.head.os=c>>8),n.flags&512&&n.wrap&4&&(F[0]=c&255,F[1]=c>>>8&255,n.check=crc32_1(n.check,F,2,0)),c=0,d=0,n.mode=EXLEN;case EXLEN:if(n.flags&1024){for(;d<16;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}n.length=c,n.head&&(n.head.extra_len=c),n.flags&512&&n.wrap&4&&(F[0]=c&255,F[1]=c>>>8&255,n.check=crc32_1(n.check,F,2,0)),c=0,d=0}else n.head&&(n.head.extra=null);n.mode=EXTRA;case EXTRA:if(n.flags&1024&&(U=n.length,U>l&&(U=l),U&&(n.head&&(I=n.head.extra_len-n.length,n.head.extra||(n.head.extra=new Uint8Array(n.head.extra_len)),n.head.extra.set(r.subarray(s,s+U),I)),n.flags&512&&n.wrap&4&&(n.check=crc32_1(n.check,r,U,s)),l-=U,s+=U,n.length-=U),n.length))break e;n.length=0,n.mode=NAME;case NAME:if(n.flags&2048){if(l===0)break e;U=0;do I=r[s+U++],n.head&&I&&n.length<65536&&(n.head.name+=String.fromCharCode(I));while(I&&U<l);if(n.flags&512&&n.wrap&4&&(n.check=crc32_1(n.check,r,U,s)),l-=U,s+=U,I)break e}else n.head&&(n.head.name=null);n.length=0,n.mode=COMMENT;case COMMENT:if(n.flags&4096){if(l===0)break e;U=0;do I=r[s+U++],n.head&&I&&n.length<65536&&(n.head.comment+=String.fromCharCode(I));while(I&&U<l);if(n.flags&512&&n.wrap&4&&(n.check=crc32_1(n.check,r,U,s)),l-=U,s+=U,I)break e}else n.head&&(n.head.comment=null);n.mode=HCRC;case HCRC:if(n.flags&512){for(;d<16;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}if(n.wrap&4&&c!==(n.check&65535)){e.msg="header crc mismatch",n.mode=BAD;break}c=0,d=0}n.head&&(n.head.hcrc=n.flags>>9&1,n.head.done=!0),e.adler=n.check=0,n.mode=TYPE;break;case DICTID:for(;d<32;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}e.adler=n.check=zswap32(c),c=0,d=0,n.mode=DICT;case DICT:if(n.havedict===0)return e.next_out=g,e.avail_out=u,e.next_in=s,e.avail_in=l,n.hold=c,n.bits=d,Z_NEED_DICT$1;e.adler=n.check=1,n.mode=TYPE;case TYPE:if(t===Z_BLOCK||t===Z_TREES)break e;case TYPEDO:if(n.last){c>>>=d&7,d-=d&7,n.mode=CHECK;break}for(;d<3;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}switch(n.last=c&1,c>>>=1,d-=1,c&3){case 0:n.mode=STORED;break;case 1:if(fixedtables(n),n.mode=LEN_,t===Z_TREES){c>>>=2,d-=2;break e}break;case 2:n.mode=TABLE;break;case 3:e.msg="invalid block type",n.mode=BAD}c>>>=2,d-=2;break;case STORED:for(c>>>=d&7,d-=d&7;d<32;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}if((c&65535)!==(c>>>16^65535)){e.msg="invalid stored block lengths",n.mode=BAD;break}if(n.length=c&65535,c=0,d=0,n.mode=COPY_,t===Z_TREES)break e;case COPY_:n.mode=COPY;case COPY:if(U=n.length,U){if(U>l&&(U=l),U>u&&(U=u),U===0)break e;o.set(r.subarray(s,s+U),g),l-=U,s+=U,u-=U,g+=U,n.length-=U;break}n.mode=TYPE;break;case TABLE:for(;d<14;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}if(n.nlen=(c&31)+257,c>>>=5,d-=5,n.ndist=(c&31)+1,c>>>=5,d-=5,n.ncode=(c&15)+4,c>>>=4,d-=4,n.nlen>286||n.ndist>30){e.msg="too many length or distance symbols",n.mode=BAD;break}n.have=0,n.mode=LENLENS;case LENLENS:for(;n.have<n.ncode;){for(;d<3;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}n.lens[w[n.have++]]=c&7,c>>>=3,d-=3}for(;n.have<19;)n.lens[w[n.have++]]=0;if(n.lencode=n.lendyn,n.lenbits=7,R={bits:n.lenbits},X=inftrees(CODES,n.lens,0,19,n.lencode,0,n.work,R),n.lenbits=R.bits,X){e.msg="invalid code lengths set",n.mode=BAD;break}n.have=0,n.mode=CODELENS;case CODELENS:for(;n.have<n.nlen+n.ndist;){for(;b=n.lencode[c&(1<<n.lenbits)-1],M=b>>>24,J=b>>>16&255,m=b&65535,!(M<=d);){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}if(m<16)c>>>=M,d-=M,n.lens[n.have++]=m;else{if(m===16){for(x=M+2;d<x;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}if(c>>>=M,d-=M,n.have===0){e.msg="invalid bit length repeat",n.mode=BAD;break}I=n.lens[n.have-1],U=3+(c&3),c>>>=2,d-=2}else if(m===17){for(x=M+3;d<x;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}c>>>=M,d-=M,I=0,U=3+(c&7),c>>>=3,d-=3}else{for(x=M+7;d<x;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}c>>>=M,d-=M,I=0,U=11+(c&127),c>>>=7,d-=7}if(n.have+U>n.nlen+n.ndist){e.msg="invalid bit length repeat",n.mode=BAD;break}for(;U--;)n.lens[n.have++]=I}}if(n.mode===BAD)break;if(n.lens[256]===0){e.msg="invalid code -- missing end-of-block",n.mode=BAD;break}if(n.lenbits=9,R={bits:n.lenbits},X=inftrees(LENS,n.lens,0,n.nlen,n.lencode,0,n.work,R),n.lenbits=R.bits,X){e.msg="invalid literal/lengths set",n.mode=BAD;break}if(n.distbits=6,n.distcode=n.distdyn,R={bits:n.distbits},X=inftrees(DISTS,n.lens,n.nlen,n.ndist,n.distcode,0,n.work,R),n.distbits=R.bits,X){e.msg="invalid distances set",n.mode=BAD;break}if(n.mode=LEN_,t===Z_TREES)break e;case LEN_:n.mode=LEN;case LEN:if(l>=6&&u>=258){e.next_out=g,e.avail_out=u,e.next_in=s,e.avail_in=l,n.hold=c,n.bits=d,inffast(e,Q),g=e.next_out,o=e.output,u=e.avail_out,s=e.next_in,r=e.input,l=e.avail_in,c=n.hold,d=n.bits,n.mode===TYPE&&(n.back=-1);break}for(n.back=0;b=n.lencode[c&(1<<n.lenbits)-1],M=b>>>24,J=b>>>16&255,m=b&65535,!(M<=d);){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}if(J&&!(J&240)){for(y=M,h=J,T=m;b=n.lencode[T+((c&(1<<y+h)-1)>>y)],M=b>>>24,J=b>>>16&255,m=b&65535,!(y+M<=d);){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}c>>>=y,d-=y,n.back+=y}if(c>>>=M,d-=M,n.back+=M,n.length=m,J===0){n.mode=LIT;break}if(J&32){n.back=-1,n.mode=TYPE;break}if(J&64){e.msg="invalid literal/length code",n.mode=BAD;break}n.extra=J&15,n.mode=LENEXT;case LENEXT:if(n.extra){for(x=n.extra;d<x;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}n.length+=c&(1<<n.extra)-1,c>>>=n.extra,d-=n.extra,n.back+=n.extra}n.was=n.length,n.mode=DIST;case DIST:for(;b=n.distcode[c&(1<<n.distbits)-1],M=b>>>24,J=b>>>16&255,m=b&65535,!(M<=d);){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}if(!(J&240)){for(y=M,h=J,T=m;b=n.distcode[T+((c&(1<<y+h)-1)>>y)],M=b>>>24,J=b>>>16&255,m=b&65535,!(y+M<=d);){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}c>>>=y,d-=y,n.back+=y}if(c>>>=M,d-=M,n.back+=M,J&64){e.msg="invalid distance code",n.mode=BAD;break}n.offset=m,n.extra=J&15,n.mode=DISTEXT;case DISTEXT:if(n.extra){for(x=n.extra;d<x;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}n.offset+=c&(1<<n.extra)-1,c>>>=n.extra,d-=n.extra,n.back+=n.extra}if(n.offset>n.dmax){e.msg="invalid distance too far back",n.mode=BAD;break}n.mode=MATCH;case MATCH:if(u===0)break e;if(U=Q-u,n.offset>U){if(U=n.offset-U,U>n.whave&&n.sane){e.msg="invalid distance too far back",n.mode=BAD;break}U>n.wnext?(U-=n.wnext,p=n.wsize-U):p=n.wnext-U,U>n.length&&(U=n.length),f=n.window}else f=o,p=g-n.offset,U=n.length;U>u&&(U=u),u-=U,n.length-=U;do o[g++]=f[p++];while(--U);n.length===0&&(n.mode=LEN);break;case LIT:if(u===0)break e;o[g++]=n.length,u--,n.mode=LEN;break;case CHECK:if(n.wrap){for(;d<32;){if(l===0)break e;l--,c|=r[s++]<<d,d+=8}if(Q-=u,e.total_out+=Q,n.total+=Q,n.wrap&4&&Q&&(e.adler=n.check=n.flags?crc32_1(n.check,o,Q,g-Q):adler32_1(n.check,o,Q,g-Q)),Q=u,n.wrap&4&&(n.flags?c:zswap32(c))!==n.check){e.msg="incorrect data check",n.mode=BAD;break}c=0,d=0}n.mode=LENGTH;case LENGTH:if(n.wrap&&n.flags){for(;d<32;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}if(n.wrap&4&&c!==(n.total&4294967295)){e.msg="incorrect length check",n.mode=BAD;break}c=0,d=0}n.mode=DONE;case DONE:X=Z_STREAM_END$1;break e;case BAD:X=Z_DATA_ERROR$1;break e;case MEM:return Z_MEM_ERROR$1;case SYNC:default:return Z_STREAM_ERROR$1}return e.next_out=g,e.avail_out=u,e.next_in=s,e.avail_in=l,n.hold=c,n.bits=d,(n.wsize||Q!==e.avail_out&&n.mode<BAD&&(n.mode<CHECK||t!==Z_FINISH$1))&&updatewindow(e,e.output,e.next_out,Q-e.avail_out),B-=e.avail_in,Q-=e.avail_out,e.total_in+=B,e.total_out+=Q,n.total+=Q,n.wrap&4&&Q&&(e.adler=n.check=n.flags?crc32_1(n.check,o,Q,e.next_out-Q):adler32_1(n.check,o,Q,e.next_out-Q)),e.data_type=n.bits+(n.last?64:0)+(n.mode===TYPE?128:0)+(n.mode===LEN_||n.mode===COPY_?256:0),(B===0&&Q===0||t===Z_FINISH$1)&&X===Z_OK$1&&(X=Z_BUF_ERROR),X},inflateEnd=e=>{if(inflateStateCheck(e))return Z_STREAM_ERROR$1;let t=e.state;return t.window&&(t.window=null),e.state=null,Z_OK$1},inflateGetHeader=(e,t)=>{if(inflateStateCheck(e))return Z_STREAM_ERROR$1;const n=e.state;return n.wrap&2?(n.head=t,t.done=!1,Z_OK$1):Z_STREAM_ERROR$1},inflateSetDictionary=(e,t)=>{const n=t.length;let r,o,s;return inflateStateCheck(e)||(r=e.state,r.wrap!==0&&r.mode!==DICT)?Z_STREAM_ERROR$1:r.mode===DICT&&(o=1,o=adler32_1(o,t,n,0),o!==r.check)?Z_DATA_ERROR$1:(s=updatewindow(e,t,n,n),s?(r.mode=MEM,Z_MEM_ERROR$1):(r.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(e){this.options=common.assign({chunkSize:1024*64,windowBits:15,to:""},e||{});const t=this.options;t.raw&&t.windowBits>=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,t.windowBits===0&&(t.windowBits=-15)),t.windowBits>=0&&t.windowBits<16&&!(e&&e.windowBits)&&(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&(t.windowBits&15||(t.windowBits|=15)),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new zstream,this.strm.avail_out=0;let n=inflate_1$2.inflateInit2(this.strm,t.windowBits);if(n!==Z_OK)throw new Error(messages[n]);if(this.header=new gzheader,inflate_1$2.inflateGetHeader(this.strm,this.header),t.dictionary&&(typeof t.dictionary=="string"?t.dictionary=strings.string2buf(t.dictionary):toString.call(t.dictionary)==="[object ArrayBuffer]"&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(n=inflate_1$2.inflateSetDictionary(this.strm,t.dictionary),n!==Z_OK)))throw new Error(messages[n])}Inflate$1.prototype.push=function(e,t){const n=this.strm,r=this.options.chunkSize,o=this.options.dictionary;let s,g,l;if(this.ended)return!1;for(t===~~t?g=t:g=t===!0?Z_FINISH:Z_NO_FLUSH,toString.call(e)==="[object ArrayBuffer]"?n.input=new Uint8Array(e):n.input=e,n.next_in=0,n.avail_in=n.input.length;;){for(n.avail_out===0&&(n.output=new Uint8Array(r),n.next_out=0,n.avail_out=r),s=inflate_1$2.inflate(n,g),s===Z_NEED_DICT&&o&&(s=inflate_1$2.inflateSetDictionary(n,o),s===Z_OK?s=inflate_1$2.inflate(n,g):s===Z_DATA_ERROR&&(s=Z_NEED_DICT));n.avail_in>0&&s===Z_STREAM_END&&n.state.wrap>0&&e[n.next_in]!==0;)inflate_1$2.inflateReset(n),s=inflate_1$2.inflate(n,g);switch(s){case Z_STREAM_ERROR:case Z_DATA_ERROR:case Z_NEED_DICT:case Z_MEM_ERROR:return this.onEnd(s),this.ended=!0,!1}if(l=n.avail_out,n.next_out&&(n.avail_out===0||s===Z_STREAM_END))if(this.options.to==="string"){let u=strings.utf8border(n.output,n.next_out),c=n.next_out-u,d=strings.buf2string(n.output,u);n.next_out=c,n.avail_out=r-c,c&&n.output.set(n.output.subarray(u,u+c),0),this.onData(d)}else this.onData(n.output.length===n.next_out?n.output:n.output.subarray(0,n.next_out));if(!(s===Z_OK&&l===0)){if(s===Z_STREAM_END)return s=inflate_1$2.inflateEnd(this.strm),this.onEnd(s),this.ended=!0,!0;if(n.avail_in===0)break}}return!0},Inflate$1.prototype.onData=function(e){this.chunks.push(e)},Inflate$1.prototype.onEnd=function(e){e===Z_OK&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=common.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};const{Deflate,deflate,deflateRaw,gzip}=deflate_1$1;for(var deflate_1=deflate,fromByteArray_1=fromByteArray,lookup=[],code="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",i=0,len=code.length;i<len;++i)lookup[i]=code[i];function tripletToBase64(e){return lookup[e>>18&63]+lookup[e>>12&63]+lookup[e>>6&63]+lookup[e&63]}function encodeChunk(e,t,n){for(var r,o=[],s=t;s<n;s+=3)r=(e[s]<<16&16711680)+(e[s+1]<<8&65280)+(e[s+2]&255),o.push(tripletToBase64(r));return o.join("")}function fromByteArray(e){for(var t,n=e.length,r=n%3,o=[],s=16383,g=0,l=n-r;g<l;g+=s)o.push(encodeChunk(e,g,g+s>l?l:g+s));return r===1?(t=e[n-1],o.push(lookup[t>>2]+lookup[t<<4&63]+"==")):r===2&&(t=(e[n-2]<<8)+e[n-1],o.push(lookup[t>>10]+lookup[t>>4&63]+lookup[t<<2&63]+"=")),o.join("")}const encoder=new TextEncoder;new TextDecoder;function serializeHash(e){const t=JSON.stringify(e),n=encoder.encode(t),r=deflate_1(n);return fromByteArray_1(r)}async function getViews(){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${exports.FORMANT_API_URL}/v1/admin/views`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items}async function createShareLink(e,t){if(!Authentication.token)throw new Error("Not authenticated");const r=(await getViews()).filter(l=>l.name===t);if(r.length===0)return console.warn("View does not exist or it is misspell"),null;const o=await fetch(`${exports.FORMANT_API_URL}/v1/admin/shares`,{method:"POST",body:JSON.stringify(e),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}}),s=exports.FORMANT_API_URL.replace("api","app"),{code:g}=await o.json();return`${s}/shares/${g}#${serializeHash({viewId:r[0].id})}`}async function disableDevice(e){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${exports.FORMANT_API_URL}/v1/admin/devices/${e}/disable`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}const vailableAggregationIntervals=["day","week","month","year","hour","minute","quarter"],aggregateFunctions=["interval","start","end","sub","get"];function getVariance(e){return e.count<2?0:e.sumOfSquares/(e.count-1)}function getStandardDeviation(e){return Math.sqrt(getVariance(e))}function getMax(e){return e.max}function getMin(e){return e.min}function getAverage(e){return e.count===0?-1:e.sum/e.count}function getSum(e){return e.sum}function getCount(e){return e.count}const aggregateFunctionMap={min:getMin,max:getMax,"standard deviation":getStandardDeviation,average:getAverage,sum:getSum,count:getCount},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=(e,t)=>e.split("/")[0]+"/"+e.split("/")[1]+"–"+t.split("/")[0]+"/"+t.split("/")[1];async function queryEvents(e){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${exports.FORMANT_API_URL}/v1/admin/events/query`,{method:"POST",body:JSON.stringify(e),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items}async function eventsCounter(e,t,n,r,o){const s=aggregateByDateFunctions[t];return await Promise.all(Array(n).fill(0).map(async(g,l)=>{const u=new Date(r),c=s.sub(s.start(u),n-l-1),d=s.sub(s.end(u),n-l-1),B=formatTimeFrameText(c.toLocaleDateString(),d.toLocaleDateString()),Q=await queryEvents({...o,eventTypes:e,start:new Date(c).toISOString(),end:new Date(d).toISOString()});return{date:B,events:Q}}))}async function getAnnotationCount(e,t){return(await queryEvents({...e,eventTypes:["annotation"]})).filter(s=>!!s.tags&&Object.keys(s.tags).includes(t)).reduce((s,g)=>{const l=g.tags[t];return l in s?(s[l]+=1,s):(s[l]=1,s)},{})}async function getAnnotationCountByIntervals(e,t,n){const{end:r,start:o}=e,g=aggregateByDateFunctions[n].interval({start:new Date(o),end:new Date(r)}),l=g.map((c,d)=>{const B=new Date(c).toISOString(),Q=d===g.length-1?new Date(Date.now()).toISOString():new Date(g[d+1]);return getAnnotationCount({...e,start:B,end:Q},t)}),u=await Promise.all(l);return g.map((c,d)=>({date:new Date(c).toISOString(),annotations:u[d]}))}async function getDevicesData(){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${exports.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(e,t){module.exports=t()})(window,function(){return function(e){function t(c){for(var d,B,Q=c[0],U=c[1],p=0,f=[];p<Q.length;p++)B=Q[p],Object.prototype.hasOwnProperty.call(r,B)&&r[B]&&f.push(r[B][0]),r[B]=0;for(d in U)Object.prototype.hasOwnProperty.call(U,d)&&(e[d]=U[d]);for(u&&u(c);f.length;)f.shift()()}var n={},r={0:0};function o(c){if(n[c])return n[c].exports;var d=n[c]={i:c,l:!1,exports:{}};return e[c].call(d.exports,d,d.exports,o),d.l=!0,d.exports}o.e=function(){return Promise.resolve()},o.m=e,o.c=n,o.d=function(c,d,B){o.o(c,d)||Object.defineProperty(c,d,{enumerable:!0,get:B})},o.r=function(c){typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(c,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(c,"__esModule",{value:!0})},o.t=function(c,d){if(1&d&&(c=o(c)),8&d||4&d&&typeof c=="object"&&c&&c.__esModule)return c;var B=Object.create(null);if(o.r(B),Object.defineProperty(B,"default",{enumerable:!0,value:c}),2&d&&typeof c!="string")for(var Q in c)o.d(B,Q,function(U){return c[U]}.bind(null,Q));return B},o.n=function(c){var d=c&&c.__esModule?function(){return c.default}:function(){return c};return o.d(d,"a",d),d},o.o=function(c,d){return Object.prototype.hasOwnProperty.call(c,d)},o.p="",o.oe=function(c){throw console.error(c),c};var s=window.webpackJsonpFormantRealtimeSDK=window.webpackJsonpFormantRealtimeSDK||[],g=s.push.bind(s);s.push=t,s=s.slice();for(var l=0;l<s.length;l++)t(s[l]);var u=g;return o(o.s=233)}([function(e,t,n){n.d(t,"a",function(){return V});var r=n(16),o=n(55),s=n(15),g=n.n(s),l=n(18);function u(K,Y){if(Y.length<K)throw new TypeError(K+" argument"+(K>1?"s":"")+" required, but only "+Y.length+" present")}function c(K){if(K===null||K===!0||K===!1)return NaN;var Y=Number(K);return isNaN(Y)?Y:Y<0?Math.ceil(Y):Math.floor(Y)}var d={dateTimeDelimiter:/[T ]/,timeZoneDelimiter:/[Z ]/i,timezone:/([Z+-].*)$/},B=/^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/,Q=/^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/,U=/^([+-])(\d{2})(?::?(\d{2}))?$/;function p(K){var Y,te={},oe=K.split(d.dateTimeDelimiter);if(oe.length>2)return te;if(/:/.test(oe[0])?Y=oe[0]:(te.date=oe[0],Y=oe[1],d.timeZoneDelimiter.test(te.date)&&(te.date=K.split(d.timeZoneDelimiter)[0],Y=K.substr(te.date.length,K.length))),Y){var ge=d.timezone.exec(Y);ge?(te.time=Y.replace(ge[1],""),te.timezone=ge[1]):te.time=Y}return te}function f(K,Y){var te=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+Y)+"})|(\\d{2}|[+-]\\d{"+(2+Y)+"})$)"),oe=K.match(te);if(!oe)return{year:NaN,restDateString:""};var ge=oe[1]?parseInt(oe[1]):null,Se=oe[2]?parseInt(oe[2]):null;return{year:Se===null?ge:100*Se,restDateString:K.slice((oe[1]||oe[2]).length)}}function b(K,Y){if(Y===null)return new Date(NaN);var te=K.match(B);if(!te)return new Date(NaN);var oe=!!te[4],ge=M(te[1]),Se=M(te[2])-1,ve=M(te[3]),ye=M(te[4]),Je=M(te[5])-1;if(oe)return function(be,we,Ze){return we>=1&&we<=53&&Ze>=0&&Ze<=6}(0,ye,Je)?function(be,we,Ze){var Oe=new Date(0);Oe.setUTCFullYear(be,0,4);var gt=Oe.getUTCDay()||7,Tt=7*(we-1)+Ze+1-gt;return Oe.setUTCDate(Oe.getUTCDate()+Tt),Oe}(Y,ye,Je):new Date(NaN);var Ee=new Date(0);return function(be,we,Ze){return we>=0&&we<=11&&Ze>=1&&Ze<=(h[we]||(T(be)?29:28))}(Y,Se,ve)&&function(be,we){return we>=1&&we<=(T(be)?366:365)}(Y,ge)?(Ee.setUTCFullYear(Y,Se,Math.max(ge,ve)),Ee):new Date(NaN)}function M(K){return K?parseInt(K):1}function J(K){var Y=K.match(Q);if(!Y)return NaN;var te=m(Y[1]),oe=m(Y[2]),ge=m(Y[3]);return function(Se,ve,ye){return Se===24?ve===0&&ye===0:ye>=0&&ye<60&&ve>=0&&ve<60&&Se>=0&&Se<25}(te,oe,ge)?36e5*te+6e4*oe+1e3*ge:NaN}function m(K){return K&&parseFloat(K.replace(",","."))||0}function y(K){if(K==="Z")return 0;var Y=K.match(U);if(!Y)return 0;var te=Y[1]==="+"?-1:1,oe=parseInt(Y[2]),ge=Y[3]&&parseInt(Y[3])||0;return function(Se,ve){return ve>=0&&ve<=59}(0,ge)?te*(36e5*oe+6e4*ge):NaN}var h=[31,null,31,30,31,30,31,31,30,31,30,31];function T(K){return K%400==0||K%4==0&&K%100!=0}var I=n(40);function X(K){return u(1,arguments),K instanceof Date||Object(I.a)(K)==="object"&&Object.prototype.toString.call(K)==="[object Date]"}function F(K){u(1,arguments);var Y=Object.prototype.toString.call(K);return K instanceof Date||Object(I.a)(K)==="object"&&Y==="[object Date]"?new Date(K.getTime()):typeof K=="number"||Y==="[object Number]"?new Date(K):(typeof K!="string"&&Y!=="[object String]"||typeof console=="undefined"||(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 R(K){const Y=function(te,oe){var ge;u(1,arguments);var Se=c((ge=oe==null?void 0:oe.additionalDigits)!==null&&ge!==void 0?ge:2);if(Se!==2&&Se!==1&&Se!==0)throw new RangeError("additionalDigits must be 0, 1 or 2");if(typeof te!="string"&&Object.prototype.toString.call(te)!=="[object String]")return new Date(NaN);var ve,ye=p(te);if(ye.date){var Je=f(ye.date,Se);ve=b(Je.restDateString,Je.year)}if(!ve||isNaN(ve.getTime()))return new Date(NaN);var Ee,be=ve.getTime(),we=0;if(ye.time&&(we=J(ye.time),isNaN(we)))return new Date(NaN);if(!ye.timezone){var Ze=new Date(be+we),Oe=new Date(0);return Oe.setFullYear(Ze.getUTCFullYear(),Ze.getUTCMonth(),Ze.getUTCDate()),Oe.setHours(Ze.getUTCHours(),Ze.getUTCMinutes(),Ze.getUTCSeconds(),Ze.getUTCMilliseconds()),Oe}return Ee=y(ye.timezone),isNaN(Ee)?new Date(NaN):new Date(be+we+Ee)}(K);if(!function(te){if(u(1,arguments),!X(te)&&typeof te!="number")return!1;var oe=F(te);return!isNaN(Number(oe))}(Y))throw new Error(`Invalid ISO 8601 date string (${K})`);return Y}const x=Math.pow(2,20),w=x;var _=n(3),j=n(28);function C(K){return g()(K,{cycles:!0})}var W=function(K,Y){var te={};for(var oe in K)Object.prototype.hasOwnProperty.call(K,oe)&&Y.indexOf(oe)<0&&(te[oe]=K[oe]);if(K!=null&&typeof Object.getOwnPropertySymbols=="function"){var ge=0;for(oe=Object.getOwnPropertySymbols(K);ge<oe.length;ge++)Y.indexOf(oe[ge])<0&&Object.prototype.propertyIsEnumerable.call(K,oe[ge])&&(te[oe[ge]]=K[oe[ge]])}return te};function v(K,Y={}){const{redacted:te=!0}=Y,oe=Je=>te?Object(j.a)(Je):Je;if(!K.stack)return{message:C(oe(K))};const{name:ge,message:Se,stack:ve}=K,ye=W(K,["name","message","stack"]);return{name:ge,message:Se!==void 0?Se:C(oe(K)),stack:ve,meta:ye&&Object.keys(ye).length===0?void 0:oe(ye)}}function D(K,Y={}){const{message:te,stack:oe,meta:ge}=v(K,Y);return`${oe||te||""}${ge&&Object.keys(ge).length>0?" -- "+C(ge):""}`}var A=n(236);const E=Object(A.a)();var P=n(14),G=n.n(P),$=function(K,Y,te,oe){return new(te||(te=Promise))(function(ge,Se){function ve(Ee){try{Je(oe.next(Ee))}catch(be){Se(be)}}function ye(Ee){try{Je(oe.throw(Ee))}catch(be){Se(be)}}function Je(Ee){var be;Ee.done?ge(Ee.value):(be=Ee.value,be instanceof te?be:new te(function(we){we(be)})).then(ve,ye)}Je((oe=oe.apply(K,Y||[])).next())})},ee=function(K,Y){var te={};for(var oe in K)Object.prototype.hasOwnProperty.call(K,oe)&&Y.indexOf(oe)<0&&(te[oe]=K[oe]);if(K!=null&&typeof Object.getOwnPropertySymbols=="function"){var ge=0;for(oe=Object.getOwnPropertySymbols(K);ge<oe.length;ge++)Y.indexOf(oe[ge])<0&&Object.prototype.propertyIsEnumerable.call(K,oe[ge])&&(te[oe[ge]]=K[oe[ge]])}return te};class re extends G.a{constructor(Y,te){super(),this.endpoint=Y,this.metadata=te,this.logClient=this.getLogClient()}getLogClient(){return $(this,void 0,void 0,function*(){const{LogClient:Y}=yield Promise.resolve().then(n.bind(null,235));return new Y(this.endpoint)})}log(Y,te){return $(this,void 0,void 0,function*(){const{level:oe,message:ge,error:Se}=Y,ve=ee(Y,["level","message","error"]);this.emit("logged");try{yield(yield this.logClient).log([{timestamp:new Date().toISOString(),level:oe,message:(""+ge).substring(0,1e3),error:Se!==void 0?v(Se):void 0,meta:Object.assign(Object.assign({},ve),this.metadata)}])}catch(ye){console.error("Failed to log to log-api: "+D(ye))}te()})}}var O=function(K,Y){var te={};for(var oe in K)Object.prototype.hasOwnProperty.call(K,oe)&&Y.indexOf(oe)<0&&(te[oe]=K[oe]);if(K!=null&&typeof Object.getOwnPropertySymbols=="function"){var ge=0;for(oe=Object.getOwnPropertySymbols(K);ge<oe.length;ge++)Y.indexOf(oe[ge])<0&&Object.prototype.propertyIsEnumerable.call(K,oe[ge])&&(te[oe[ge]]=K[oe[ge]])}return te};const k={app:_.a,namespace:_.j,buildTag:_.c,instanceId:E},S=_.f?l.format.printf(K=>{var{timestamp:Y,level:te,message:oe,error:ge}=K,Se=O(K,["timestamp","level","message","error"]);const ve=Object.assign(Object.assign({timestamp:Y?R(Y).getTime():new Date().getTime(),level:te.toUpperCase(),message:oe},ge?{error:v(ge)}:{}),{meta:Object.assign(Object.assign({},k),Se)});return g()(ve,{cycles:!0})}):l.format.printf(K=>{var{timestamp:Y,level:te,message:oe,error:ge}=K,Se=O(K,["timestamp","level","message","error"]);let ve=`${Y||new Date().toISOString()} ${te.toUpperCase()}: ${oe} `;return Object.keys(Se).length>0&&(ve+=g()(Se,{cycles:!0})),ge&&(ve+=`
|
|
1
|
+
(function(nt,rt){typeof exports=="object"&&typeof module!="undefined"?rt(exports):typeof define=="function"&&define.amd?define(["exports"],rt):(nt=typeof globalThis!="undefined"?globalThis:nt||self,rt(nt.FormantDataSDK={}))})(this,function(exports){var rt;"use strict";var Sn=Object.defineProperty;var yn=(nt,rt,et)=>rt in nt?Sn(nt,rt,{enumerable:!0,configurable:!0,writable:!0,value:et}):nt[rt]=et;var he=(nt,rt,et)=>(yn(nt,typeof rt!="symbol"?rt+"":rt,et),et);const DEFAULT_FORMANT_API_URL="https://api.formant.io";function whichFormantApiUrl(e,t,n){try{if(t.get("formant_prod"))return"https://api.formant.io";if(t.get("formant_stage"))return"https://api-stage.formant.io";if(t.get("formant_dev"))return"https://api-dev.formant.io";if(t.get("formant_local"))return"https://api.formant.local";if(t.get("formant_url")){const r=t.get("formant_url");if(r!==null)try{return new URL(r).origin}catch{console.warn(`Ignoring malformed \`formant_url\` url parameter: ${r}`)}}if(n){if(n.includes("app-dev.formant.io")||n.includes("v2-coherence-dev.vercel.app")||n.includes("localhost"))return"https://api-dev.formant.io";if(n.includes("app-stage.formant.io"))return"https://api-stage.formant.io";if(n.includes("app.formant.io")||n.includes("v2-coherence.vercel.app"))return"https://api.formant.io"}}catch{}if(n){if(n.includes("app-dev.formant.io"))return"https://api-dev.formant.io";if(n.includes("app-stage.formant.io"))return"https://api-stage.formant.io";if(n.includes("app.formant.io"))return"https://api.formant.io"}return typeof e!="undefined"&&"FORMANT_API_URL"in e&&typeof e.FORMANT_API_URL=="string"?e.FORMANT_API_URL:DEFAULT_FORMANT_API_URL}exports.FORMANT_API_URL=whichFormantApiUrl(typeof window!="undefined"?window:globalThis,new URLSearchParams(typeof window!="undefined"&&window.location?window.location.search:void 0),typeof window!="undefined"&&window.location?window.location.host:void 0);const setFormantApiUrl=e=>{exports.FORMANT_API_URL=e};function addAccessTokenRefreshListener(e){function t(n){const r=n.data;r.type==="auth_token"&&e(r.token)}return window.addEventListener("message",t),()=>{window.removeEventListener("message",t)}}function getCurrentModuleContext(){return typeof window!="undefined"&&window.location?new URLSearchParams(window.location.search).get("module"):null}function sendAppMessage(e){if(!(window&&window.parent))throw new Error("cannot send message to non-existent parent");window.parent.postMessage(e,"*")}function refreshAuthToken(){const e=getCurrentModuleContext();if(!e)throw new Error("No module context");sendAppMessage({type:"refresh_auth_token",module:e})}var commonjsGlobal=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{};function getDefaultExportFromCjs(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var base64={exports:{}};/*! https://mths.be/base64 v1.0.0 by @mathias | MIT license */base64.exports,function(e,t){(function(n){var r=t,o=e&&e.exports==r&&e,s=typeof commonjsGlobal=="object"&&commonjsGlobal;(s.global===s||s.window===s)&&(n=s);var g=function(p){this.message=p};g.prototype=new Error,g.prototype.name="InvalidCharacterError";var l=function(p){throw new g(p)},u="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",c=/[\t\n\f\r ]/g,d=function(p){p=String(p).replace(c,"");var f=p.length;f%4==0&&(p=p.replace(/==?$/,""),f=p.length),(f%4==1||/[^+a-zA-Z0-9/]/.test(p))&&l("Invalid character: the string to be decoded is not correctly encoded.");for(var b=0,M,J,m="",y=-1;++y<f;)J=u.indexOf(p.charAt(y)),M=b%4?M*64+J:J,b++%4&&(m+=String.fromCharCode(255&M>>(-2*b&6)));return m},B=function(p){p=String(p),/[^\0-\xFF]/.test(p)&&l("The string to be encoded contains characters outside of the Latin1 range.");for(var f=p.length%3,b="",M=-1,J,m,y,h,T=p.length-f;++M<T;)J=p.charCodeAt(M)<<16,m=p.charCodeAt(++M)<<8,y=p.charCodeAt(++M),h=J+m+y,b+=u.charAt(h>>18&63)+u.charAt(h>>12&63)+u.charAt(h>>6&63)+u.charAt(h&63);return f==2?(J=p.charCodeAt(M)<<8,m=p.charCodeAt(++M),h=J+m,b+=u.charAt(h>>10)+u.charAt(h>>4&63)+u.charAt(h<<2&63)+"="):f==1&&(h=p.charCodeAt(M),b+=u.charAt(h>>2)+u.charAt(h<<4&63)+"=="),b},Q={encode:B,decode:d,version:"1.0.0"};if(r&&!r.nodeType)if(o)o.exports=Q;else for(var U in Q)Q.hasOwnProperty(U)&&(r[U]=Q[U]);else n.base64=Q})(commonjsGlobal)}(base64,base64.exports);var base64Exports=base64.exports;class LoginFailureError extends Error{constructor(n){super("login failed");he(this,"reason");this.reason=n,this.name="LoginFailureError",Object.setPrototypeOf(this,new.target.prototype)}}class LoginChallengedError extends Error{constructor(n){super("login challenged");he(this,"challenge");this.challenge=n,this.name="LoginChallengedError",Object.setPrototypeOf(this,new.target.prototype)}}class AuthenticationStore{constructor({apiUrl:t,refreshAuthToken:n,addAccessTokenRefreshListener:r}){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=t,this._refreshAuthToken=n,this._addAccessTokenRefreshListener=r}set apiUrl(t){this._apiUrl=t,setFormantApiUrl(t)}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(t,n,r={}){const{advanced:o=!1}=r;try{const s=await fetch(`${this._apiUrl}/v1/admin/auth/login`,{method:"POST",body:JSON.stringify({email:t,password:n}),headers:{"Content-Type":"application/json"}}),g=await s.json();if(s.status!==200)throw new LoginFailureError(g.message);if("challenge"in g)throw new LoginChallengedError(g.challenge);const{authentication:l}=g;return await this.loginWithToken(l.accessToken,l.refreshToken),o?{result:"success",authentication:l}:l}catch(s){if(o||console.error("login() failed",{err:s}),this._waitingForAuth.forEach(g=>g(!1)),this._waitingForAuth.clear(),!o)throw s;return s instanceof LoginChallengedError?{result:"challenged",challenge:s.challenge}:{result:"failure",reason:s instanceof LoginFailureError?s.reason:s instanceof Error?s.message:String(s)}}}async loginWithToken(t,n){var o;const r=JSON.parse(base64Exports.decode(t.split(".")[1]));try{let s;if(this._isShareToken=r["formant:claims"]&&r["formant:claims"].type=="share",r["formant:claims"]&&(this._currentOrganization=r["formant:claims"].organizationId),r["custom:organization_id"]&&(this._currentOrganization=r["custom:organization_id"]),this._isShareToken||(s=r.sub),r["formant:claims"]&&r["formant:claims"].userId&&(s=r["formant:claims"].userId),s&&((o=this._currentUser)==null?void 0:o.id)!==s){const g=await fetch(`${this._apiUrl}/v1/admin/users/${s}`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+t}}),l=await g.json();if(g.status===404)this._currentUser=void 0;else{if(g.status!==200)throw new Error(l.message);this._currentUser=l}}this._token=t,this._waitingForAuth.forEach(g=>g(!0))}catch(s){console.error("loginWithToken() failed",{err:s}),this._waitingForAuth.forEach(g=>g(!1))}finally{this._waitingForAuth.clear()}n&&(this._refreshToken=n,setInterval(async()=>{if(this._refreshToken){const g=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=g.authentication.accessToken}},1e3*60*60))}isAuthenticated(){return this._token!==void 0}async loginToPeer(t,n,r){if((await fetch(`${t}/login`,{method:"POST",body:JSON.stringify({username:n,password:r}),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(t=>{this._waitingForAuth.add(t)})}async listenForRefresh(){const n=()=>{this._refreshTimer=void 0,this._refreshAuthToken()};this._addAccessTokenRefreshListener(r=>{this._refreshTimer&&clearTimeout(this._refreshTimer),this._refreshTimer=setTimeout(n,36e5),this.loginWithToken(r)}),this._refreshTimer=setTimeout(n,36e5)}async forgotPassword(t){await fetch(`${this._apiUrl}/v1/admin/auth/forgot-password`,{method:"POST",body:JSON.stringify({email:t}),headers:{"Content-Type":"application/json"}})}async confirmForgotPassword(t){return(await fetch(`${this._apiUrl}/v1/admin/auth/confirm-forgot-password`,{method:"POST",body:JSON.stringify(t),headers:{"Content-Type":"application/json"}})).ok}async respondToNewPasswordRequiredChallenge(t){const n=await fetch(`${this._apiUrl}/v1/admin/auth/respond-to-new-password-required-challenge`,{method:"POST",body:JSON.stringify(t),headers:{"Content-Type":"application/json"}});if(n.ok)return await n.json();throw new Error("respond-to-new-password-required-challenge failed")}async loginWithGoogle(t){return await(await fetch(`${this._apiUrl}/v1/admin/auth/login-google`,{method:"POST",body:JSON.stringify(t),headers:{"Content-Type":"application/json"}})).json()}async refresh(t){const r=await(await fetch(`${this._apiUrl}/v1/admin/auth/refresh`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({refreshToken:t})})).json();await this.loginWithToken(r.authentication.accessToken,t)}async checkSso(t,n){return await(await fetch(`${this._apiUrl}/v1/admin/auth/check-sso`,{method:"POST",body:JSON.stringify({email:t,allowUserAutoCreation:n}),headers:{"Content-Type":"application/json"}})).json()}async loginWithSso(t,n){const o=await(await fetch(`${this._apiUrl}/v1/admin/auth/login-sso`,{method:"POST",body:JSON.stringify({token:t,refreshToken:n}),headers:{"Content-Type":"application/json"}})).json();if(!o.authentication)throw new Error("Failed to login with SSO");return await this.loginWithToken(o.authentication.accessToken,o.authentication.refreshToken)}}const Authentication=new AuthenticationStore({apiUrl:exports.FORMANT_API_URL,refreshAuthToken,addAccessTokenRefreshListener});class Account{static async listAccounts(){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${exports.FORMANT_API_URL}/v1/admin/accounts`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items}static async createAccounts(t){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${exports.FORMANT_API_URL}/v1/admin/accounts`,{method:"POST",body:JSON.stringify(t),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}static async getAccount(t){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${exports.FORMANT_API_URL}/v1/admin/accounts/${t}`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}static async patchAccount(t,n){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${exports.FORMANT_API_URL}/v1/admin/accounts/${t}`,{method:"PATCH",body:JSON.stringify(n),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}static async deleteAccount(t){if(!Authentication.token)throw new Error("Not authenticated");if(!(await fetch(`${exports.FORMANT_API_URL}/v1/admin/accounts/${t}`,{method:"DELETE",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).ok)throw new Error("Unable to delete account")}static async getAccountTree(t){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${exports.FORMANT_API_URL}/v1/admin/accounts/${t}/tree`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}}async function getModuleConfiguration(e){return(await(await fetch(`${exports.FORMANT_API_URL}/v1/admin/module-configurations/${e}`,{headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).configuration}function disableAnalyticsBottomBar(){sendAppMessage({type:"hide_analytics_date_picker"})}function goToDevice(e){sendAppMessage({type:"go_to_device",deviceId:e})}function goToTime(e){sendAppMessage({type:"go_to_time",time:e.getTime()})}function requestModuleData(){const e=getCurrentModuleContext();if(!e)throw new Error("No module context");sendAppMessage({type:"request_module_data",module:e})}function sendChannelData(e,t){const n=getCurrentModuleContext();if(!n)throw new Error("No module context");sendAppMessage({type:"send_channel_data",source:n,channel:e,data:t})}function setModuleDateTimeRange(e,t){const n=getCurrentModuleContext();if(!n)throw new Error("No module context");sendAppMessage({type:"set_module_data_time_range",module:n,before:e,after:t||0})}function setupModuleMenus(e){const t=getCurrentModuleContext();if(!t)throw new Error("No module context");sendAppMessage({type:"setup_module_menus",module:t,menus:e})}function showMessage(e){sendAppMessage({type:"show_message",message:e})}function addChannelDataListener(e,t){const n=r=>{const o=r.data;o.type==="channel_data"&&o.channel===e&&t({source:o.source,data:o.data})};return window.addEventListener("message",n),()=>window.removeEventListener("message",n)}function addMenuListener(e){const t=n=>{const r=n.data;r.type==="module_menu_item_clicked"&&e(r.menu)};return window.addEventListener("message",t),()=>window.removeEventListener("message",t)}function addModuleConfigurationListener(e){const t=n=>{const r=n.data;r.type==="module_configuration"&&e(r)};return window.addEventListener("message",t),()=>window.removeEventListener("message",t)}function addModuleDataListener(e){const t=getCurrentModuleContext();t&&sendAppMessage({type:"request_module_data",module:t});const n=r=>{const o=r.data;o.type==="module_data"&&e({streams:o.streams,time:o.time,queryRange:o.queryRange})};return window.addEventListener("message",n),()=>window.removeEventListener("message",n)}function addOverviewDeviceListener(e){sendAppMessage({type:"request_devices"});const t=n=>{const r=n.data;r.type==="overview_devices"&&e(r.data)};return window.addEventListener("message",t),()=>window.removeEventListener("message",t)}function _typeof(e){return _typeof=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},_typeof(e)}function toInteger(e){if(e===null||e===!0||e===!1)return NaN;var t=Number(e);return isNaN(t)?t:t<0?Math.ceil(t):Math.floor(t)}function requiredArgs(e,t){if(t.length<e)throw new TypeError(e+" argument"+(e>1?"s":"")+" required, but only "+t.length+" present")}function toDate(e){requiredArgs(1,arguments);var t=Object.prototype.toString.call(e);return e instanceof Date||_typeof(e)==="object"&&t==="[object Date]"?new Date(e.getTime()):typeof e=="number"||t==="[object Number]"?new Date(e):((typeof e=="string"||t==="[object String]")&&typeof console!="undefined"&&(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(e,t){requiredArgs(2,arguments);var n=toDate(e),r=toInteger(t);return isNaN(r)?new Date(NaN):(r&&n.setDate(n.getDate()+r),n)}function addMonths(e,t){requiredArgs(2,arguments);var n=toDate(e),r=toInteger(t);if(isNaN(r))return new Date(NaN);if(!r)return n;var o=n.getDate(),s=new Date(n.getTime());s.setMonth(n.getMonth()+r+1,0);var g=s.getDate();return o>=g?s:(n.setFullYear(s.getFullYear(),s.getMonth(),o),n)}function addMilliseconds(e,t){requiredArgs(2,arguments);var n=toDate(e).getTime(),r=toInteger(t);return new Date(n+r)}var MILLISECONDS_IN_HOUR=36e5;function addHours(e,t){requiredArgs(2,arguments);var n=toInteger(t);return addMilliseconds(e,n*MILLISECONDS_IN_HOUR)}var defaultOptions={};function getDefaultOptions(){return defaultOptions}function startOfWeek(e,t){var n,r,o,s,g,l,u,c;requiredArgs(1,arguments);var d=getDefaultOptions(),B=toInteger((n=(r=(o=(s=t==null?void 0:t.weekStartsOn)!==null&&s!==void 0?s:t==null||(g=t.locale)===null||g===void 0||(l=g.options)===null||l===void 0?void 0:l.weekStartsOn)!==null&&o!==void 0?o:d.weekStartsOn)!==null&&r!==void 0?r:(u=d.locale)===null||u===void 0||(c=u.options)===null||c===void 0?void 0:c.weekStartsOn)!==null&&n!==void 0?n:0);if(!(B>=0&&B<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var Q=toDate(e),U=Q.getDay(),p=(U<B?7:0)+U-B;return Q.setDate(Q.getDate()-p),Q.setHours(0,0,0,0),Q}function startOfDay(e){requiredArgs(1,arguments);var t=toDate(e);return t.setHours(0,0,0,0),t}var MILLISECONDS_IN_MINUTE=6e4;function addMinutes(e,t){requiredArgs(2,arguments);var n=toInteger(t);return addMilliseconds(e,n*MILLISECONDS_IN_MINUTE)}function addQuarters(e,t){requiredArgs(2,arguments);var n=toInteger(t),r=n*3;return addMonths(e,r)}function addSeconds(e,t){requiredArgs(2,arguments);var n=toInteger(t);return addMilliseconds(e,n*1e3)}function addWeeks(e,t){requiredArgs(2,arguments);var n=toInteger(t),r=n*7;return addDays(e,r)}function addYears(e,t){requiredArgs(2,arguments);var n=toInteger(t);return addMonths(e,n*12)}function getQuarter(e){requiredArgs(1,arguments);var t=toDate(e),n=Math.floor(t.getMonth()/3)+1;return n}var roundingMap={ceil:Math.ceil,round:Math.round,floor:Math.floor,trunc:function(t){return t<0?Math.ceil(t):Math.floor(t)}},defaultRoundingMethod="trunc";function getRoundingMethod(e){return e?roundingMap[e]:roundingMap[defaultRoundingMethod]}function endOfDay(e){requiredArgs(1,arguments);var t=toDate(e);return t.setHours(23,59,59,999),t}function endOfMonth(e){requiredArgs(1,arguments);var t=toDate(e),n=t.getMonth();return t.setFullYear(t.getFullYear(),n+1,0),t.setHours(23,59,59,999),t}function eachDayOfInterval(e,t){var n;requiredArgs(1,arguments);var r=e||{},o=toDate(r.start),s=toDate(r.end),g=s.getTime();if(!(o.getTime()<=g))throw new RangeError("Invalid interval");var l=[],u=o;u.setHours(0,0,0,0);var c=Number((n=t==null?void 0:t.step)!==null&&n!==void 0?n:1);if(c<1||isNaN(c))throw new RangeError("`options.step` must be a number greater than 1");for(;u.getTime()<=g;)l.push(toDate(u)),u.setDate(u.getDate()+c),u.setHours(0,0,0,0);return l}function eachHourOfInterval(e,t){var n;requiredArgs(1,arguments);var r=e||{},o=toDate(r.start),s=toDate(r.end),g=o.getTime(),l=s.getTime();if(!(g<=l))throw new RangeError("Invalid interval");var u=[],c=o;c.setMinutes(0,0,0);var d=Number((n=t==null?void 0:t.step)!==null&&n!==void 0?n:1);if(d<1||isNaN(d))throw new RangeError("`options.step` must be a number greater than 1");for(;c.getTime()<=l;)u.push(toDate(c)),c=addHours(c,d);return u}function startOfMinute(e){requiredArgs(1,arguments);var t=toDate(e);return t.setSeconds(0,0),t}function eachMinuteOfInterval(e,t){var n;requiredArgs(1,arguments);var r=startOfMinute(toDate(e.start)),o=toDate(e.end),s=r.getTime(),g=o.getTime();if(s>=g)throw new RangeError("Invalid interval");var l=[],u=r,c=Number((n=t==null?void 0:t.step)!==null&&n!==void 0?n:1);if(c<1||isNaN(c))throw new RangeError("`options.step` must be a number equal to or greater than 1");for(;u.getTime()<=g;)l.push(toDate(u)),u=addMinutes(u,c);return l}function eachMonthOfInterval(e){requiredArgs(1,arguments);var t=e||{},n=toDate(t.start),r=toDate(t.end),o=r.getTime(),s=[];if(!(n.getTime()<=o))throw new RangeError("Invalid interval");var g=n;for(g.setHours(0,0,0,0),g.setDate(1);g.getTime()<=o;)s.push(toDate(g)),g.setMonth(g.getMonth()+1);return s}function startOfQuarter(e){requiredArgs(1,arguments);var t=toDate(e),n=t.getMonth(),r=n-n%3;return t.setMonth(r,1),t.setHours(0,0,0,0),t}function eachQuarterOfInterval(e){requiredArgs(1,arguments);var t=e||{},n=toDate(t.start),r=toDate(t.end),o=r.getTime();if(!(n.getTime()<=o))throw new RangeError("Invalid interval");var s=startOfQuarter(n),g=startOfQuarter(r);o=g.getTime();for(var l=[],u=s;u.getTime()<=o;)l.push(toDate(u)),u=addQuarters(u,1);return l}function eachWeekOfInterval(e,t){requiredArgs(1,arguments);var n=e||{},r=toDate(n.start),o=toDate(n.end),s=o.getTime();if(!(r.getTime()<=s))throw new RangeError("Invalid interval");var g=startOfWeek(r,t),l=startOfWeek(o,t);g.setHours(15),l.setHours(15),s=l.getTime();for(var u=[],c=g;c.getTime()<=s;)c.setHours(0),u.push(toDate(c)),c=addWeeks(c,1),c.setHours(15);return u}function startOfMonth(e){requiredArgs(1,arguments);var t=toDate(e);return t.setDate(1),t.setHours(0,0,0,0),t}function endOfYear(e){requiredArgs(1,arguments);var t=toDate(e),n=t.getFullYear();return t.setFullYear(n+1,0,0),t.setHours(23,59,59,999),t}function startOfYear(e){requiredArgs(1,arguments);var t=toDate(e),n=new Date(0);return n.setFullYear(t.getFullYear(),0,1),n.setHours(0,0,0,0),n}function eachYearOfInterval(e){requiredArgs(1,arguments);var t=e||{},n=toDate(t.start),r=toDate(t.end),o=r.getTime();if(!(n.getTime()<=o))throw new RangeError("Invalid interval");var s=[],g=n;for(g.setHours(0,0,0,0),g.setMonth(0,1);g.getTime()<=o;)s.push(toDate(g)),g.setFullYear(g.getFullYear()+1);return s}function endOfHour(e){requiredArgs(1,arguments);var t=toDate(e);return t.setMinutes(59,59,999),t}function endOfWeek(e,t){var n,r,o,s,g,l,u,c;requiredArgs(1,arguments);var d=getDefaultOptions(),B=toInteger((n=(r=(o=(s=t==null?void 0:t.weekStartsOn)!==null&&s!==void 0?s:t==null||(g=t.locale)===null||g===void 0||(l=g.options)===null||l===void 0?void 0:l.weekStartsOn)!==null&&o!==void 0?o:d.weekStartsOn)!==null&&r!==void 0?r:(u=d.locale)===null||u===void 0||(c=u.options)===null||c===void 0?void 0:c.weekStartsOn)!==null&&n!==void 0?n:0);if(!(B>=0&&B<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var Q=toDate(e),U=Q.getDay(),p=(U<B?-7:0)+6-(U-B);return Q.setDate(Q.getDate()+p),Q.setHours(23,59,59,999),Q}function endOfMinute(e){requiredArgs(1,arguments);var t=toDate(e);return t.setSeconds(59,999),t}function endOfQuarter(e){requiredArgs(1,arguments);var t=toDate(e),n=t.getMonth(),r=n-n%3+3;return t.setMonth(r,0),t.setHours(23,59,59,999),t}function getDay(e){requiredArgs(1,arguments);var t=toDate(e),n=t.getDay();return n}function getHours(e){requiredArgs(1,arguments);var t=toDate(e),n=t.getHours();return n}function getMinutes(e){requiredArgs(1,arguments);var t=toDate(e),n=t.getMinutes();return n}function getMonth(e){requiredArgs(1,arguments);var t=toDate(e),n=t.getMonth();return n}function getWeekYear(e,t){var n,r,o,s,g,l,u,c;requiredArgs(1,arguments);var d=toDate(e),B=d.getFullYear(),Q=getDefaultOptions(),U=toInteger((n=(r=(o=(s=t==null?void 0:t.firstWeekContainsDate)!==null&&s!==void 0?s:t==null||(g=t.locale)===null||g===void 0||(l=g.options)===null||l===void 0?void 0:l.firstWeekContainsDate)!==null&&o!==void 0?o:Q.firstWeekContainsDate)!==null&&r!==void 0?r:(u=Q.locale)===null||u===void 0||(c=u.options)===null||c===void 0?void 0:c.firstWeekContainsDate)!==null&&n!==void 0?n:1);if(!(U>=1&&U<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var p=new Date(0);p.setFullYear(B+1,0,U),p.setHours(0,0,0,0);var f=startOfWeek(p,t),b=new Date(0);b.setFullYear(B,0,U),b.setHours(0,0,0,0);var M=startOfWeek(b,t);return d.getTime()>=f.getTime()?B+1:d.getTime()>=M.getTime()?B:B-1}function startOfWeekYear(e,t){var n,r,o,s,g,l,u,c;requiredArgs(1,arguments);var d=getDefaultOptions(),B=toInteger((n=(r=(o=(s=t==null?void 0:t.firstWeekContainsDate)!==null&&s!==void 0?s:t==null||(g=t.locale)===null||g===void 0||(l=g.options)===null||l===void 0?void 0:l.firstWeekContainsDate)!==null&&o!==void 0?o:d.firstWeekContainsDate)!==null&&r!==void 0?r:(u=d.locale)===null||u===void 0||(c=u.options)===null||c===void 0?void 0:c.firstWeekContainsDate)!==null&&n!==void 0?n:1),Q=getWeekYear(e,t),U=new Date(0);U.setFullYear(Q,0,B),U.setHours(0,0,0,0);var p=startOfWeek(U,t);return p}var MILLISECONDS_IN_WEEK=6048e5;function getWeek(e,t){requiredArgs(1,arguments);var n=toDate(e),r=startOfWeek(n,t).getTime()-startOfWeekYear(n,t).getTime();return Math.round(r/MILLISECONDS_IN_WEEK)+1}function getYear(e){return requiredArgs(1,arguments),toDate(e).getFullYear()}function startOfHour(e){requiredArgs(1,arguments);var t=toDate(e);return t.setMinutes(0,0,0),t}function subDays(e,t){requiredArgs(2,arguments);var n=toInteger(t);return addDays(e,-n)}function roundToNearestMinutes(e,t){var n;if(arguments.length<1)throw new TypeError("1 argument required, but only none provided present");var r=toInteger((n=t==null?void 0:t.nearestTo)!==null&&n!==void 0?n:1);if(r<1||r>30)throw new RangeError("`options.nearestTo` must be between 1 and 30");var o=toDate(e),s=o.getSeconds(),g=o.getMinutes()+s/60,l=getRoundingMethod(t==null?void 0:t.roundingMethod),u=l(g/r)*r,c=g%r,d=Math.round(c/r)*r;return new Date(o.getFullYear(),o.getMonth(),o.getDate(),o.getHours(),u+d)}function subMonths(e,t){requiredArgs(2,arguments);var n=toInteger(t);return addMonths(e,-n)}function subHours(e,t){requiredArgs(2,arguments);var n=toInteger(t);return addHours(e,-n)}function subMinutes(e,t){requiredArgs(2,arguments);var n=toInteger(t);return addMinutes(e,-n)}function subQuarters(e,t){requiredArgs(2,arguments);var n=toInteger(t);return addQuarters(e,-n)}function subWeeks(e,t){requiredArgs(2,arguments);var n=toInteger(t);return addWeeks(e,-n)}function subYears(e,t){requiredArgs(2,arguments);var n=toInteger(t);return addYears(e,-n)}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(e,t){return e.filter(n=>t.includes(n.type))}function filterDataByTime$1(e,t,n){const r=t.getTime(),o=n.getTime();return e.map(s=>({...s,points:s.points.filter(([g])=>g>=r&&g<o)})).filter(({points:s})=>s.length>0)}let StoreCache$1=class{constructor({capacity:t,timeout:n}={}){he(this,"entries",new Map);he(this,"metadata",new Map);he(this,"capacity");he(this,"staleIntervalMs");this.capacity=t||1e4,this.staleIntervalMs=n||duration$2.minute}get(t,n){const r=this.keyToCacheKey(t);return this.isStale(r)&&!this.isGenerating(r)&&n&&this.generate(t,n),this.entries.get(r)}set(t,n){const r=this.keyToCacheKey(t);this.metadata.set(r,{generating:!1,staleAt:performance.now()+this.staleIntervalMs});const o=this.entries.get(r);JSON.stringify(o)===JSON.stringify(n)||(this.entries.set(r,n),this.enforceMaxSize())}clear(){this.entries.clear(),[...this.metadata.values()].forEach(t=>t.generating=!1)}clearKey(t){this.metadata.delete(t),this.entries.delete(t)}keyToCacheKey(t){return JSON.stringify(t)}enforceMaxSize(){for(;this.metadata.size>this.capacity&&this.metadata.size>0;){const[t]=[...this.metadata.entries()].reduce(([n,r],[o,s])=>s.staleAt<r.staleAt?[o,s]:[n,r]);this.clearKey(t)}}isStale(t){const n=this.metadata.get(t);return n?(n==null?void 0:n.staleAt)<performance.now():!0}isGenerating(t){const n=this.metadata.get(t);return n?n.generating:!1}generate(t,n){const r=this.keyToCacheKey(t),o=this.metadata.get(r)||{},s=n().then(g=>{const l=this.metadata.get(r);return(l==null?void 0:l.generating)!==s||this.set(t,g),g}).catch(g=>{throw this.metadata.delete(r),g});this.metadata.set(r,{...o,generating:s,staleAt:performance.now()+this.staleIntervalMs})}};async function queryTelemetry(e){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${exports.FORMANT_API_URL}/v1/queries/queries`,{method:"POST",body:JSON.stringify(e),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(t,n,r,o,s,g=!1){const l={...t,names:[...n],types:[...r]},u=this.query(l,o,s,g);return u===void 0||u==="too much data"?u:filterDataByType$1(u,r)}query(t,n,r,o=!1){const s={...t,start:startOfMinute(n).toISOString(),end:o?r.toISOString():addMinutes(roundToNearestMinutes(r),1).toISOString(),latestOnly:o},g=r>addSeconds(new Date,-20);let l;return g?l=this.liveQueryCache(s):l=this.queryCache(s),!l||l==="too much data"||o?l:filterDataByTime$1(l,n,r)}queryCache(t){return this.queryStoreCache.get(t,async()=>{try{return await queryTelemetry(t)}catch(n){throw n}})}liveQueryCache(t){return this.liveQueryStoreCache.get(t,async()=>{try{return await queryTelemetry(t)}catch(n){throw n}})}};const queryStore=new QueryStore$1;function addStreamListener(e,t,n){const r=o=>{const s=o.data;if(s.type==="module_data"){const{start:g,end:l}=s.queryRange;n(queryStore.moduleQuery({},e,t,new Date(g),new Date(l),!1))}};return window.addEventListener("message",r),()=>window.removeEventListener("message",r)}async function getDate(e,t,n){return new Promise(r=>{sendAppMessage({type:"request_date",minTime:t,maxTime:n,time:e});const o=s=>{const g=s.data;g.type==="date_response"&&(window.removeEventListener("message",o),r(g.data))};window.addEventListener("message",o)})}async function prompt(e,t){return new Promise(n=>{const r=Math.random().toString();sendAppMessage({type:"prompt",promptId:r,schema:e,okText:t==null?void 0:t.okText,cancelText:t==null?void 0:t.cancelText});const o=s=>{const g=s.data;g.type==="prompt_response"&&g.promptId===r&&n(g.data),window.removeEventListener("message",o)};window.addEventListener("message",o)})}const nt=class{static isModule(){return getCurrentModuleContext()!==null}static async getCurrentModuleConfiguration(){let t=new URLSearchParams("");typeof window!="undefined"&&window.location&&(t=new URLSearchParams(window.location.search));const n=t.get("configuration");if(!(n===null||n.trim()===""))return getModuleConfiguration(n.trim())}static get isOnline(){return nt._isOnline}static listenForConnectionEvents(){const t=n=>{const{data:r}=n;r.type==="formant_online"&&(this._isOnline=r.online)};return window.addEventListener("message",t),()=>window.removeEventListener("message",t)}static checkConnection(t=1e3){return new Promise((n,r)=>{const o=setTimeout(()=>r(new Error("deadline expired: took too long")),t),s=g=>{window.removeEventListener("message",s),clearTimeout(o);const{data:l}=g;l.type==="formant_online"&&(this._isOnline=l.online,n(l.online))};window.addEventListener("message",s),sendAppMessage({type:"formant_online"})})}static waitForConnection(t=5e3){let n=!1;const r=new Promise((g,l)=>{setTimeout(()=>{n=!0,l(new Error("deadline expired: took too long"))},t)}),o=g=>new Promise(l=>setTimeout(l,g)),s=async()=>{for(await o(50);!n&&!(this.isOnline||await this.checkConnection);)await o(500)};return Promise.race([r,s()])}};let App=nt;he(App,"getCurrentModuleContext",getCurrentModuleContext),he(App,"disableAnalyticsBottomBar",disableAnalyticsBottomBar),he(App,"goToDevice",goToDevice),he(App,"goToTime",goToTime),he(App,"refreshAuthToken",refreshAuthToken),he(App,"requestModuleData",requestModuleData),he(App,"sendChannelData",sendChannelData),he(App,"setModuleDateTimeRange",setModuleDateTimeRange),he(App,"setupModuleMenus",setupModuleMenus),he(App,"showMessage",showMessage),he(App,"addAccessTokenRefreshListener",addAccessTokenRefreshListener),he(App,"addChannelDataListener",addChannelDataListener),he(App,"addMenuListener",addMenuListener),he(App,"addModuleConfigurationListener",addModuleConfigurationListener),he(App,"addModuleDataListener",addModuleDataListener),he(App,"addOverviewDeviceListener",addOverviewDeviceListener),he(App,"addStreamListener",addStreamListener),he(App,"getDate",getDate),he(App,"prompt",prompt),he(App,"_isOnline",null);function stringToArrayBuffer(e){return Uint8Array.from(base64Exports.decode(e),t=>t.charCodeAt(0))}function fork$1(e){}function browser(){const{userAgent:e}=navigator;return e?e.includes("Firefox/")?"Firefox":e.includes("Edg/")?"Edge":e.includes("Chrome/")?"Chrome":e.includes("Safari/")?"Safari":e.includes("MSIE/")||e.includes("Trident/")?"IE":"Other":"Other"}const rtcAudioChunkStreamType="audio-chunk";class AudioPlayer{constructor(t,n){he(this,"muted",!1);he(this,"hasReceivedData",!1);he(this,"audioContext");he(this,"chunks",[]);he(this,"isPlaying",!1);he(this,"startTime",0);he(this,"lastChunkOffset",0);he(this,"bufferSize",3);he(this,"receive",async t=>{var g;const n=(g=t.payload.audioChunk)==null?void 0:g.chunk_data;if(!n)return;this.hasReceivedData||(this.hasReceivedData=!0);const{audioContext:r,muted:o}=this;if(!r||t.header.stream.streamType!==rtcAudioChunkStreamType||o!==!1)return;const s=stringToArrayBuffer(n);try{await r.decodeAudioData(toArrayBuffer(s.buffer),this.scheduleChunk)}catch(l){console.warn("Error decoding audio buffer, changing audioWireFormat on agent",{error:l}),this.changeAudioWireFormat("wav")}});he(this,"scheduleChunk",t=>{const{audioContext:n}=this;if(!n)return;(this.chunks.length>this.bufferSize||this.isPlaying===!1)&&(this.chunks.forEach(o=>{o.stop()}),this.isPlaying=!1,this.chunks=[]);const r=this.createChunk(t);r&&r.buffer&&(this.isPlaying===!1&&(this.startTime=n.currentTime,this.lastChunkOffset=0,this.isPlaying=!0),r.start(this.startTime+this.lastChunkOffset,0,t.duration),this.lastChunkOffset+=r.buffer.duration,this.chunks.push(r))});this.device=t,this.stream=n,this.device.startListeningToRealtimeDataStream(n),this.device.addRealtimeListener((o,s)=>{this.receive(s)}),browser()==="Safari"||browser()==="IE"?this.changeAudioWireFormat("wav"):this.changeAudioWireFormat("opus");const r=window.AudioContext||window.webkitAudioContext;this.audioContext=new r}async play(){var t,n;((t=this.audioContext)==null?void 0:t.state)==="suspended"&&await((n=this.audioContext)==null?void 0:n.resume()),this.muted=!1}async pause(){await this.audioContext.suspend(),this.muted=!0}destroy(){this.device.stopListeningToRealtimeDataStream(this.stream)}createChunk(t){const{audioContext:n}=this;if(!n)return;const r=n.createBufferSource();return r.buffer=t,r.connect(n.destination),r.loop=!1,r.onended=o=>{this.chunks.splice(this.chunks.indexOf(r),1),this.chunks.length===0&&(this.isPlaying=!1)},r}changeAudioWireFormat(t){const{stream:n}=this;(async()=>await this.device.changeStreamAudioType(n.name,t))()}}function toArrayBuffer(e){if(e instanceof ArrayBuffer)return e;if(ArrayBuffer.isView(e)){const t=e,n=t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength);return n instanceof SharedArrayBuffer?new Uint8Array(e).slice().buffer:n}return new Uint8Array(e).slice().buffer}class CaptureStream{constructor(t){he(this,"token");this.captureSession=t}async ingestJSON(t){if(!this.token){const r=await(await fetch(`${exports.FORMANT_API_URL}/v1/admin/capture-sessions/${this.captureSession.code}/authenticate`,{method:"POST"})).json();this.token=r.token}await fetch(`${exports.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(t)]]}),headers:{"Content-Type":"application/json",Authorization:"Bearer "+this.token}})}}class DataChannel{constructor(t){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=t,this.dataChannel.binaryType="arraybuffer",this.dataChannel.onopen=()=>{this.setReady()},this.dataChannel.onclose=()=>{this.ready=!1,this.closeListeners.forEach(n=>n())},this.dataChannel.onerror=n=>{console.error(n),this.error="An error occurred in DataChannel",this.errorListeners.forEach(r=>r(n))},this.dataChannel.onmessage=n=>{this.listeners.forEach(r=>{const o=new Uint8Array(n.data),s=this.decoder.decode(o);r(s)}),this.binaryListeners.forEach(r=>{r(new Uint8Array(n.data))})}}setReady(){this.ready=!0,this.openListeners.forEach(t=>t())}addOpenListener(t){this.openListeners.push(t)}removeOpenListener(t){this.openListeners=this.openListeners.filter(n=>n!==t)}addCloseListener(t){this.closeListeners.push(t)}removeCloseListener(t){this.closeListeners=this.closeListeners.filter(n=>n!==t)}addErrorListener(t){this.errorListeners.push(t)}removeErrorListener(t){this.errorListeners=this.errorListeners.filter(n=>n!==t)}async waitTilReady(){return this.ready?!0:new Promise((n,r)=>{let o=setInterval(()=>{this.dataChannel.readyState==="open"&&this.setReady(),this.ready&&(clearInterval(o),n(!0)),this.error&&r(this.error)},10)})}send(t){if(!this.ready)throw new Error("Connection has been closed");this.dataChannel.send(t)}sendBinary(t){if(!this.ready)throw new Error("Connection has been closed");this.dataChannel.send(t)}addListener(t){this.listeners.push(t)}removeListener(t){const n=this.listeners.indexOf(t);if(n===-1)throw new Error("Could not find data channel listener to remove");if(this.error)throw new Error(this.error);this.listeners.splice(n,1)}addBinaryListener(t){this.binaryListeners.push(t)}removeBinaryListener(t){const n=this.binaryListeners.indexOf(t);if(n===-1)throw new Error("Could not find data channel listener to remove");if(this.error)throw new Error(this.error);this.binaryListeners.splice(n,1)}}function defined$1(e,t){if(e!==void 0)return e;throw new Error(t||"Value is undefined")}function notNull(e,t){if(e!==null)return e;throw new Error(t||"Value is null")}function definedAndNotNull(e,t){return notNull(defined$1(e,t),t)}function delay$1(e){return new Promise(t=>setTimeout(t,e))}async function createDevice(e){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${exports.FORMANT_API_URL}/v1/admin/devices`,{method:"POST",body:JSON.stringify(e),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(e){let t=e.length;for(;--t>=0;)e[t]=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(e,t,n,r,o){this.static_tree=e,this.extra_bits=t,this.extra_base=n,this.elems=r,this.max_length=o,this.has_stree=e&&e.length}let static_l_desc,static_d_desc,static_bl_desc;function TreeDesc(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}const d_code=e=>e<256?_dist_code[e]:_dist_code[256+(e>>>7)],put_short=(e,t)=>{e.pending_buf[e.pending++]=t&255,e.pending_buf[e.pending++]=t>>>8&255},send_bits=(e,t,n)=>{e.bi_valid>Buf_size-n?(e.bi_buf|=t<<e.bi_valid&65535,put_short(e,e.bi_buf),e.bi_buf=t>>Buf_size-e.bi_valid,e.bi_valid+=n-Buf_size):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=n)},send_code=(e,t,n)=>{send_bits(e,n[t*2],n[t*2+1])},bi_reverse=(e,t)=>{let n=0;do n|=e&1,e>>>=1,n<<=1;while(--t>0);return n>>>1},bi_flush=e=>{e.bi_valid===16?(put_short(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=e.bi_buf&255,e.bi_buf>>=8,e.bi_valid-=8)},gen_bitlen=(e,t)=>{const n=t.dyn_tree,r=t.max_code,o=t.stat_desc.static_tree,s=t.stat_desc.has_stree,g=t.stat_desc.extra_bits,l=t.stat_desc.extra_base,u=t.stat_desc.max_length;let c,d,B,Q,U,p,f=0;for(Q=0;Q<=MAX_BITS$1;Q++)e.bl_count[Q]=0;for(n[e.heap[e.heap_max]*2+1]=0,c=e.heap_max+1;c<HEAP_SIZE$1;c++)d=e.heap[c],Q=n[n[d*2+1]*2+1]+1,Q>u&&(Q=u,f++),n[d*2+1]=Q,!(d>r)&&(e.bl_count[Q]++,U=0,d>=l&&(U=g[d-l]),p=n[d*2],e.opt_len+=p*(Q+U),s&&(e.static_len+=p*(o[d*2+1]+U)));if(f!==0){do{for(Q=u-1;e.bl_count[Q]===0;)Q--;e.bl_count[Q]--,e.bl_count[Q+1]+=2,e.bl_count[u]--,f-=2}while(f>0);for(Q=u;Q!==0;Q--)for(d=e.bl_count[Q];d!==0;)B=e.heap[--c],!(B>r)&&(n[B*2+1]!==Q&&(e.opt_len+=(Q-n[B*2+1])*n[B*2],n[B*2+1]=Q),d--)}},gen_codes=(e,t,n)=>{const r=new Array(MAX_BITS$1+1);let o=0,s,g;for(s=1;s<=MAX_BITS$1;s++)o=o+n[s-1]<<1,r[s]=o;for(g=0;g<=t;g++){let l=e[g*2+1];l!==0&&(e[g*2]=bi_reverse(r[l]++,l))}},tr_static_init=()=>{let e,t,n,r,o;const s=new Array(MAX_BITS$1+1);for(n=0,r=0;r<LENGTH_CODES$1-1;r++)for(base_length[r]=n,e=0;e<1<<extra_lbits[r];e++)_length_code[n++]=r;for(_length_code[n-1]=r,o=0,r=0;r<16;r++)for(base_dist[r]=o,e=0;e<1<<extra_dbits[r];e++)_dist_code[o++]=r;for(o>>=7;r<D_CODES$1;r++)for(base_dist[r]=o<<7,e=0;e<1<<extra_dbits[r]-7;e++)_dist_code[256+o++]=r;for(t=0;t<=MAX_BITS$1;t++)s[t]=0;for(e=0;e<=143;)static_ltree[e*2+1]=8,e++,s[8]++;for(;e<=255;)static_ltree[e*2+1]=9,e++,s[9]++;for(;e<=279;)static_ltree[e*2+1]=7,e++,s[7]++;for(;e<=287;)static_ltree[e*2+1]=8,e++,s[8]++;for(gen_codes(static_ltree,L_CODES$1+1,s),e=0;e<D_CODES$1;e++)static_dtree[e*2+1]=5,static_dtree[e*2]=bi_reverse(e,5);static_l_desc=new StaticTreeDesc(static_ltree,extra_lbits,LITERALS$1+1,L_CODES$1,MAX_BITS$1),static_d_desc=new StaticTreeDesc(static_dtree,extra_dbits,0,D_CODES$1,MAX_BITS$1),static_bl_desc=new StaticTreeDesc(new Array(0),extra_blbits,0,BL_CODES$1,MAX_BL_BITS)},init_block=e=>{let t;for(t=0;t<L_CODES$1;t++)e.dyn_ltree[t*2]=0;for(t=0;t<D_CODES$1;t++)e.dyn_dtree[t*2]=0;for(t=0;t<BL_CODES$1;t++)e.bl_tree[t*2]=0;e.dyn_ltree[END_BLOCK*2]=1,e.opt_len=e.static_len=0,e.sym_next=e.matches=0},bi_windup=e=>{e.bi_valid>8?put_short(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0},smaller=(e,t,n,r)=>{const o=t*2,s=n*2;return e[o]<e[s]||e[o]===e[s]&&r[t]<=r[n]},pqdownheap=(e,t,n)=>{const r=e.heap[n];let o=n<<1;for(;o<=e.heap_len&&(o<e.heap_len&&smaller(t,e.heap[o+1],e.heap[o],e.depth)&&o++,!smaller(t,r,e.heap[o],e.depth));)e.heap[n]=e.heap[o],n=o,o<<=1;e.heap[n]=r},compress_block=(e,t,n)=>{let r,o,s=0,g,l;if(e.sym_next!==0)do r=e.pending_buf[e.sym_buf+s++]&255,r+=(e.pending_buf[e.sym_buf+s++]&255)<<8,o=e.pending_buf[e.sym_buf+s++],r===0?send_code(e,o,t):(g=_length_code[o],send_code(e,g+LITERALS$1+1,t),l=extra_lbits[g],l!==0&&(o-=base_length[g],send_bits(e,o,l)),r--,g=d_code(r),send_code(e,g,n),l=extra_dbits[g],l!==0&&(r-=base_dist[g],send_bits(e,r,l)));while(s<e.sym_next);send_code(e,END_BLOCK,t)},build_tree=(e,t)=>{const n=t.dyn_tree,r=t.stat_desc.static_tree,o=t.stat_desc.has_stree,s=t.stat_desc.elems;let g,l,u=-1,c;for(e.heap_len=0,e.heap_max=HEAP_SIZE$1,g=0;g<s;g++)n[g*2]!==0?(e.heap[++e.heap_len]=u=g,e.depth[g]=0):n[g*2+1]=0;for(;e.heap_len<2;)c=e.heap[++e.heap_len]=u<2?++u:0,n[c*2]=1,e.depth[c]=0,e.opt_len--,o&&(e.static_len-=r[c*2+1]);for(t.max_code=u,g=e.heap_len>>1;g>=1;g--)pqdownheap(e,n,g);c=s;do g=e.heap[1],e.heap[1]=e.heap[e.heap_len--],pqdownheap(e,n,1),l=e.heap[1],e.heap[--e.heap_max]=g,e.heap[--e.heap_max]=l,n[c*2]=n[g*2]+n[l*2],e.depth[c]=(e.depth[g]>=e.depth[l]?e.depth[g]:e.depth[l])+1,n[g*2+1]=n[l*2+1]=c,e.heap[1]=c++,pqdownheap(e,n,1);while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],gen_bitlen(e,t),gen_codes(n,u,e.bl_count)},scan_tree=(e,t,n)=>{let r,o=-1,s,g=t[0*2+1],l=0,u=7,c=4;for(g===0&&(u=138,c=3),t[(n+1)*2+1]=65535,r=0;r<=n;r++)s=g,g=t[(r+1)*2+1],!(++l<u&&s===g)&&(l<c?e.bl_tree[s*2]+=l:s!==0?(s!==o&&e.bl_tree[s*2]++,e.bl_tree[REP_3_6*2]++):l<=10?e.bl_tree[REPZ_3_10*2]++:e.bl_tree[REPZ_11_138*2]++,l=0,o=s,g===0?(u=138,c=3):s===g?(u=6,c=3):(u=7,c=4))},send_tree=(e,t,n)=>{let r,o=-1,s,g=t[0*2+1],l=0,u=7,c=4;for(g===0&&(u=138,c=3),r=0;r<=n;r++)if(s=g,g=t[(r+1)*2+1],!(++l<u&&s===g)){if(l<c)do send_code(e,s,e.bl_tree);while(--l!==0);else s!==0?(s!==o&&(send_code(e,s,e.bl_tree),l--),send_code(e,REP_3_6,e.bl_tree),send_bits(e,l-3,2)):l<=10?(send_code(e,REPZ_3_10,e.bl_tree),send_bits(e,l-3,3)):(send_code(e,REPZ_11_138,e.bl_tree),send_bits(e,l-11,7));l=0,o=s,g===0?(u=138,c=3):s===g?(u=6,c=3):(u=7,c=4)}},build_bl_tree=e=>{let t;for(scan_tree(e,e.dyn_ltree,e.l_desc.max_code),scan_tree(e,e.dyn_dtree,e.d_desc.max_code),build_tree(e,e.bl_desc),t=BL_CODES$1-1;t>=3&&e.bl_tree[bl_order[t]*2+1]===0;t--);return e.opt_len+=3*(t+1)+5+5+4,t},send_all_trees=(e,t,n,r)=>{let o;for(send_bits(e,t-257,5),send_bits(e,n-1,5),send_bits(e,r-4,4),o=0;o<r;o++)send_bits(e,e.bl_tree[bl_order[o]*2+1],3);send_tree(e,e.dyn_ltree,t-1),send_tree(e,e.dyn_dtree,n-1)},detect_data_type=e=>{let t=4093624447,n;for(n=0;n<=31;n++,t>>>=1)if(t&1&&e.dyn_ltree[n*2]!==0)return Z_BINARY;if(e.dyn_ltree[9*2]!==0||e.dyn_ltree[10*2]!==0||e.dyn_ltree[13*2]!==0)return Z_TEXT;for(n=32;n<LITERALS$1;n++)if(e.dyn_ltree[n*2]!==0)return Z_TEXT;return Z_BINARY};let static_init_done=!1;const _tr_init$1=e=>{static_init_done||(tr_static_init(),static_init_done=!0),e.l_desc=new TreeDesc(e.dyn_ltree,static_l_desc),e.d_desc=new TreeDesc(e.dyn_dtree,static_d_desc),e.bl_desc=new TreeDesc(e.bl_tree,static_bl_desc),e.bi_buf=0,e.bi_valid=0,init_block(e)},_tr_stored_block$1=(e,t,n,r)=>{send_bits(e,(STORED_BLOCK<<1)+(r?1:0),3),bi_windup(e),put_short(e,n),put_short(e,~n),n&&e.pending_buf.set(e.window.subarray(t,t+n),e.pending),e.pending+=n},_tr_align$1=e=>{send_bits(e,STATIC_TREES<<1,3),send_code(e,END_BLOCK,static_ltree),bi_flush(e)},_tr_flush_block$1=(e,t,n,r)=>{let o,s,g=0;e.level>0?(e.strm.data_type===Z_UNKNOWN$1&&(e.strm.data_type=detect_data_type(e)),build_tree(e,e.l_desc),build_tree(e,e.d_desc),g=build_bl_tree(e),o=e.opt_len+3+7>>>3,s=e.static_len+3+7>>>3,s<=o&&(o=s)):o=s=n+5,n+4<=o&&t!==-1?_tr_stored_block$1(e,t,n,r):e.strategy===Z_FIXED$1||s===o?(send_bits(e,(STATIC_TREES<<1)+(r?1:0),3),compress_block(e,static_ltree,static_dtree)):(send_bits(e,(DYN_TREES<<1)+(r?1:0),3),send_all_trees(e,e.l_desc.max_code+1,e.d_desc.max_code+1,g+1),compress_block(e,e.dyn_ltree,e.dyn_dtree)),init_block(e),r&&bi_windup(e)},_tr_tally$1=(e,t,n)=>(e.pending_buf[e.sym_buf+e.sym_next++]=t,e.pending_buf[e.sym_buf+e.sym_next++]=t>>8,e.pending_buf[e.sym_buf+e.sym_next++]=n,t===0?e.dyn_ltree[n*2]++:(e.matches++,t--,e.dyn_ltree[(_length_code[n]+LITERALS$1+1)*2]++,e.dyn_dtree[d_code(t)*2]++),e.sym_next===e.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=(e,t,n,r)=>{let o=e&65535|0,s=e>>>16&65535|0,g=0;for(;n!==0;){g=n>2e3?2e3:n,n-=g;do o=o+t[r++]|0,s=s+o|0;while(--g);o%=65521,s%=65521}return o|s<<16|0};var adler32_1=adler32;const makeTable=()=>{let e,t=[];for(var n=0;n<256;n++){e=n;for(var r=0;r<8;r++)e=e&1?3988292384^e>>>1:e>>>1;t[n]=e}return t},crcTable=new Uint32Array(makeTable()),crc32=(e,t,n,r)=>{const o=crcTable,s=r+n;e^=-1;for(let g=r;g<s;g++)e=e>>>8^o[(e^t[g])&255];return e^-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=(e,t)=>(e.msg=messages[t],t),rank=e=>e*2-(e>4?9:0),zero=e=>{let t=e.length;for(;--t>=0;)e[t]=0},slide_hash=e=>{let t,n,r,o=e.w_size;t=e.hash_size,r=t;do n=e.head[--r],e.head[r]=n>=o?n-o:0;while(--t);t=o,r=t;do n=e.prev[--r],e.prev[r]=n>=o?n-o:0;while(--t)};let HASH_ZLIB=(e,t,n)=>(t<<e.hash_shift^n)&e.hash_mask,HASH=HASH_ZLIB;const flush_pending=e=>{const t=e.state;let n=t.pending;n>e.avail_out&&(n=e.avail_out),n!==0&&(e.output.set(t.pending_buf.subarray(t.pending_out,t.pending_out+n),e.next_out),e.next_out+=n,t.pending_out+=n,e.total_out+=n,e.avail_out-=n,t.pending-=n,t.pending===0&&(t.pending_out=0))},flush_block_only=(e,t)=>{_tr_flush_block(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,flush_pending(e.strm)},put_byte=(e,t)=>{e.pending_buf[e.pending++]=t},putShortMSB=(e,t)=>{e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=t&255},read_buf=(e,t,n,r)=>{let o=e.avail_in;return o>r&&(o=r),o===0?0:(e.avail_in-=o,t.set(e.input.subarray(e.next_in,e.next_in+o),n),e.state.wrap===1?e.adler=adler32_1(e.adler,t,o,n):e.state.wrap===2&&(e.adler=crc32_1(e.adler,t,o,n)),e.next_in+=o,e.total_in+=o,o)},longest_match=(e,t)=>{let n=e.max_chain_length,r=e.strstart,o,s,g=e.prev_length,l=e.nice_match;const u=e.strstart>e.w_size-MIN_LOOKAHEAD?e.strstart-(e.w_size-MIN_LOOKAHEAD):0,c=e.window,d=e.w_mask,B=e.prev,Q=e.strstart+MAX_MATCH;let U=c[r+g-1],p=c[r+g];e.prev_length>=e.good_match&&(n>>=2),l>e.lookahead&&(l=e.lookahead);do if(o=t,!(c[o+g]!==p||c[o+g-1]!==U||c[o]!==c[r]||c[++o]!==c[r+1])){r+=2,o++;do;while(c[++r]===c[++o]&&c[++r]===c[++o]&&c[++r]===c[++o]&&c[++r]===c[++o]&&c[++r]===c[++o]&&c[++r]===c[++o]&&c[++r]===c[++o]&&c[++r]===c[++o]&&r<Q);if(s=MAX_MATCH-(Q-r),r=Q-MAX_MATCH,s>g){if(e.match_start=t,g=s,s>=l)break;U=c[r+g-1],p=c[r+g]}}while((t=B[t&d])>u&&--n!==0);return g<=e.lookahead?g:e.lookahead},fill_window=e=>{const t=e.w_size;let n,r,o;do{if(r=e.window_size-e.lookahead-e.strstart,e.strstart>=t+(t-MIN_LOOKAHEAD)&&(e.window.set(e.window.subarray(t,t+t-r),0),e.match_start-=t,e.strstart-=t,e.block_start-=t,e.insert>e.strstart&&(e.insert=e.strstart),slide_hash(e),r+=t),e.strm.avail_in===0)break;if(n=read_buf(e.strm,e.window,e.strstart+e.lookahead,r),e.lookahead+=n,e.lookahead+e.insert>=MIN_MATCH)for(o=e.strstart-e.insert,e.ins_h=e.window[o],e.ins_h=HASH(e,e.ins_h,e.window[o+1]);e.insert&&(e.ins_h=HASH(e,e.ins_h,e.window[o+MIN_MATCH-1]),e.prev[o&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=o,o++,e.insert--,!(e.lookahead+e.insert<MIN_MATCH)););}while(e.lookahead<MIN_LOOKAHEAD&&e.strm.avail_in!==0)},deflate_stored=(e,t)=>{let n=e.pending_buf_size-5>e.w_size?e.w_size:e.pending_buf_size-5,r,o,s,g=0,l=e.strm.avail_in;do{if(r=65535,s=e.bi_valid+42>>3,e.strm.avail_out<s||(s=e.strm.avail_out-s,o=e.strstart-e.block_start,r>o+e.strm.avail_in&&(r=o+e.strm.avail_in),r>s&&(r=s),r<n&&(r===0&&t!==Z_FINISH$3||t===Z_NO_FLUSH$2||r!==o+e.strm.avail_in)))break;g=t===Z_FINISH$3&&r===o+e.strm.avail_in?1:0,_tr_stored_block(e,0,0,g),e.pending_buf[e.pending-4]=r,e.pending_buf[e.pending-3]=r>>8,e.pending_buf[e.pending-2]=~r,e.pending_buf[e.pending-1]=~r>>8,flush_pending(e.strm),o&&(o>r&&(o=r),e.strm.output.set(e.window.subarray(e.block_start,e.block_start+o),e.strm.next_out),e.strm.next_out+=o,e.strm.avail_out-=o,e.strm.total_out+=o,e.block_start+=o,r-=o),r&&(read_buf(e.strm,e.strm.output,e.strm.next_out,r),e.strm.next_out+=r,e.strm.avail_out-=r,e.strm.total_out+=r)}while(g===0);return l-=e.strm.avail_in,l&&(l>=e.w_size?(e.matches=2,e.window.set(e.strm.input.subarray(e.strm.next_in-e.w_size,e.strm.next_in),0),e.strstart=e.w_size,e.insert=e.strstart):(e.window_size-e.strstart<=l&&(e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,e.insert>e.strstart&&(e.insert=e.strstart)),e.window.set(e.strm.input.subarray(e.strm.next_in-l,e.strm.next_in),e.strstart),e.strstart+=l,e.insert+=l>e.w_size-e.insert?e.w_size-e.insert:l),e.block_start=e.strstart),e.high_water<e.strstart&&(e.high_water=e.strstart),g?BS_FINISH_DONE:t!==Z_NO_FLUSH$2&&t!==Z_FINISH$3&&e.strm.avail_in===0&&e.strstart===e.block_start?BS_BLOCK_DONE:(s=e.window_size-e.strstart,e.strm.avail_in>s&&e.block_start>=e.w_size&&(e.block_start-=e.w_size,e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,s+=e.w_size,e.insert>e.strstart&&(e.insert=e.strstart)),s>e.strm.avail_in&&(s=e.strm.avail_in),s&&(read_buf(e.strm,e.window,e.strstart,s),e.strstart+=s,e.insert+=s>e.w_size-e.insert?e.w_size-e.insert:s),e.high_water<e.strstart&&(e.high_water=e.strstart),s=e.bi_valid+42>>3,s=e.pending_buf_size-s>65535?65535:e.pending_buf_size-s,n=s>e.w_size?e.w_size:s,o=e.strstart-e.block_start,(o>=n||(o||t===Z_FINISH$3)&&t!==Z_NO_FLUSH$2&&e.strm.avail_in===0&&o<=s)&&(r=o>s?s:o,g=t===Z_FINISH$3&&e.strm.avail_in===0&&r===o?1:0,_tr_stored_block(e,e.block_start,r,g),e.block_start+=r,flush_pending(e.strm)),g?BS_FINISH_STARTED:BS_NEED_MORE)},deflate_fast=(e,t)=>{let n,r;for(;;){if(e.lookahead<MIN_LOOKAHEAD){if(fill_window(e),e.lookahead<MIN_LOOKAHEAD&&t===Z_NO_FLUSH$2)return BS_NEED_MORE;if(e.lookahead===0)break}if(n=0,e.lookahead>=MIN_MATCH&&(e.ins_h=HASH(e,e.ins_h,e.window[e.strstart+MIN_MATCH-1]),n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),n!==0&&e.strstart-n<=e.w_size-MIN_LOOKAHEAD&&(e.match_length=longest_match(e,n)),e.match_length>=MIN_MATCH)if(r=_tr_tally(e,e.strstart-e.match_start,e.match_length-MIN_MATCH),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=MIN_MATCH){e.match_length--;do e.strstart++,e.ins_h=HASH(e,e.ins_h,e.window[e.strstart+MIN_MATCH-1]),n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart;while(--e.match_length!==0);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=HASH(e,e.ins_h,e.window[e.strstart+1]);else r=_tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(r&&(flush_block_only(e,!1),e.strm.avail_out===0))return BS_NEED_MORE}return e.insert=e.strstart<MIN_MATCH-1?e.strstart:MIN_MATCH-1,t===Z_FINISH$3?(flush_block_only(e,!0),e.strm.avail_out===0?BS_FINISH_STARTED:BS_FINISH_DONE):e.sym_next&&(flush_block_only(e,!1),e.strm.avail_out===0)?BS_NEED_MORE:BS_BLOCK_DONE},deflate_slow=(e,t)=>{let n,r,o;for(;;){if(e.lookahead<MIN_LOOKAHEAD){if(fill_window(e),e.lookahead<MIN_LOOKAHEAD&&t===Z_NO_FLUSH$2)return BS_NEED_MORE;if(e.lookahead===0)break}if(n=0,e.lookahead>=MIN_MATCH&&(e.ins_h=HASH(e,e.ins_h,e.window[e.strstart+MIN_MATCH-1]),n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=MIN_MATCH-1,n!==0&&e.prev_length<e.max_lazy_match&&e.strstart-n<=e.w_size-MIN_LOOKAHEAD&&(e.match_length=longest_match(e,n),e.match_length<=5&&(e.strategy===Z_FILTERED||e.match_length===MIN_MATCH&&e.strstart-e.match_start>4096)&&(e.match_length=MIN_MATCH-1)),e.prev_length>=MIN_MATCH&&e.match_length<=e.prev_length){o=e.strstart+e.lookahead-MIN_MATCH,r=_tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-MIN_MATCH),e.lookahead-=e.prev_length-1,e.prev_length-=2;do++e.strstart<=o&&(e.ins_h=HASH(e,e.ins_h,e.window[e.strstart+MIN_MATCH-1]),n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart);while(--e.prev_length!==0);if(e.match_available=0,e.match_length=MIN_MATCH-1,e.strstart++,r&&(flush_block_only(e,!1),e.strm.avail_out===0))return BS_NEED_MORE}else if(e.match_available){if(r=_tr_tally(e,0,e.window[e.strstart-1]),r&&flush_block_only(e,!1),e.strstart++,e.lookahead--,e.strm.avail_out===0)return BS_NEED_MORE}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(r=_tr_tally(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<MIN_MATCH-1?e.strstart:MIN_MATCH-1,t===Z_FINISH$3?(flush_block_only(e,!0),e.strm.avail_out===0?BS_FINISH_STARTED:BS_FINISH_DONE):e.sym_next&&(flush_block_only(e,!1),e.strm.avail_out===0)?BS_NEED_MORE:BS_BLOCK_DONE},deflate_rle=(e,t)=>{let n,r,o,s;const g=e.window;for(;;){if(e.lookahead<=MAX_MATCH){if(fill_window(e),e.lookahead<=MAX_MATCH&&t===Z_NO_FLUSH$2)return BS_NEED_MORE;if(e.lookahead===0)break}if(e.match_length=0,e.lookahead>=MIN_MATCH&&e.strstart>0&&(o=e.strstart-1,r=g[o],r===g[++o]&&r===g[++o]&&r===g[++o])){s=e.strstart+MAX_MATCH;do;while(r===g[++o]&&r===g[++o]&&r===g[++o]&&r===g[++o]&&r===g[++o]&&r===g[++o]&&r===g[++o]&&r===g[++o]&&o<s);e.match_length=MAX_MATCH-(s-o),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=MIN_MATCH?(n=_tr_tally(e,1,e.match_length-MIN_MATCH),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(n=_tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),n&&(flush_block_only(e,!1),e.strm.avail_out===0))return BS_NEED_MORE}return e.insert=0,t===Z_FINISH$3?(flush_block_only(e,!0),e.strm.avail_out===0?BS_FINISH_STARTED:BS_FINISH_DONE):e.sym_next&&(flush_block_only(e,!1),e.strm.avail_out===0)?BS_NEED_MORE:BS_BLOCK_DONE},deflate_huff=(e,t)=>{let n;for(;;){if(e.lookahead===0&&(fill_window(e),e.lookahead===0)){if(t===Z_NO_FLUSH$2)return BS_NEED_MORE;break}if(e.match_length=0,n=_tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,n&&(flush_block_only(e,!1),e.strm.avail_out===0))return BS_NEED_MORE}return e.insert=0,t===Z_FINISH$3?(flush_block_only(e,!0),e.strm.avail_out===0?BS_FINISH_STARTED:BS_FINISH_DONE):e.sym_next&&(flush_block_only(e,!1),e.strm.avail_out===0)?BS_NEED_MORE:BS_BLOCK_DONE};function Config(e,t,n,r,o){this.good_length=e,this.max_lazy=t,this.nice_length=n,this.max_chain=r,this.func=o}const configuration_table=[new Config(0,0,0,0,deflate_stored),new Config(4,4,8,4,deflate_fast),new Config(4,5,16,8,deflate_fast),new Config(4,6,32,32,deflate_fast),new Config(4,4,16,16,deflate_slow),new Config(8,16,32,32,deflate_slow),new Config(8,16,128,128,deflate_slow),new Config(8,32,128,256,deflate_slow),new Config(32,128,258,1024,deflate_slow),new Config(32,258,258,4096,deflate_slow)],lm_init=e=>{e.window_size=2*e.w_size,zero(e.head),e.max_lazy_match=configuration_table[e.level].max_lazy,e.good_match=configuration_table[e.level].good_length,e.nice_match=configuration_table[e.level].nice_length,e.max_chain_length=configuration_table[e.level].max_chain,e.strstart=0,e.block_start=0,e.lookahead=0,e.insert=0,e.match_length=e.prev_length=MIN_MATCH-1,e.match_available=0,e.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=e=>{if(!e)return 1;const t=e.state;return!t||t.strm!==e||t.status!==INIT_STATE&&t.status!==GZIP_STATE&&t.status!==EXTRA_STATE&&t.status!==NAME_STATE&&t.status!==COMMENT_STATE&&t.status!==HCRC_STATE&&t.status!==BUSY_STATE&&t.status!==FINISH_STATE?1:0},deflateResetKeep=e=>{if(deflateStateCheck(e))return err(e,Z_STREAM_ERROR$2);e.total_in=e.total_out=0,e.data_type=Z_UNKNOWN;const t=e.state;return t.pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap===2?GZIP_STATE:t.wrap?INIT_STATE:BUSY_STATE,e.adler=t.wrap===2?0:1,t.last_flush=-2,_tr_init(t),Z_OK$3},deflateReset=e=>{const t=deflateResetKeep(e);return t===Z_OK$3&&lm_init(e.state),t},deflateSetHeader=(e,t)=>deflateStateCheck(e)||e.state.wrap!==2?Z_STREAM_ERROR$2:(e.state.gzhead=t,Z_OK$3),deflateInit2=(e,t,n,r,o,s)=>{if(!e)return Z_STREAM_ERROR$2;let g=1;if(t===Z_DEFAULT_COMPRESSION$1&&(t=6),r<0?(g=0,r=-r):r>15&&(g=2,r-=16),o<1||o>MAX_MEM_LEVEL||n!==Z_DEFLATED$2||r<8||r>15||t<0||t>9||s<0||s>Z_FIXED||r===8&&g!==1)return err(e,Z_STREAM_ERROR$2);r===8&&(r=9);const l=new DeflateState;return e.state=l,l.strm=e,l.status=INIT_STATE,l.wrap=g,l.gzhead=null,l.w_bits=r,l.w_size=1<<l.w_bits,l.w_mask=l.w_size-1,l.hash_bits=o+7,l.hash_size=1<<l.hash_bits,l.hash_mask=l.hash_size-1,l.hash_shift=~~((l.hash_bits+MIN_MATCH-1)/MIN_MATCH),l.window=new Uint8Array(l.w_size*2),l.head=new Uint16Array(l.hash_size),l.prev=new Uint16Array(l.w_size),l.lit_bufsize=1<<o+6,l.pending_buf_size=l.lit_bufsize*4,l.pending_buf=new Uint8Array(l.pending_buf_size),l.sym_buf=l.lit_bufsize,l.sym_end=(l.lit_bufsize-1)*3,l.level=t,l.strategy=s,l.method=n,deflateReset(e)},deflateInit=(e,t)=>deflateInit2(e,t,Z_DEFLATED$2,MAX_WBITS$1,DEF_MEM_LEVEL,Z_DEFAULT_STRATEGY$1),deflate$2=(e,t)=>{if(deflateStateCheck(e)||t>Z_BLOCK$1||t<0)return e?err(e,Z_STREAM_ERROR$2):Z_STREAM_ERROR$2;const n=e.state;if(!e.output||e.avail_in!==0&&!e.input||n.status===FINISH_STATE&&t!==Z_FINISH$3)return err(e,e.avail_out===0?Z_BUF_ERROR$1:Z_STREAM_ERROR$2);const r=n.last_flush;if(n.last_flush=t,n.pending!==0){if(flush_pending(e),e.avail_out===0)return n.last_flush=-1,Z_OK$3}else if(e.avail_in===0&&rank(t)<=rank(r)&&t!==Z_FINISH$3)return err(e,Z_BUF_ERROR$1);if(n.status===FINISH_STATE&&e.avail_in!==0)return err(e,Z_BUF_ERROR$1);if(n.status===INIT_STATE&&n.wrap===0&&(n.status=BUSY_STATE),n.status===INIT_STATE){let o=Z_DEFLATED$2+(n.w_bits-8<<4)<<8,s=-1;if(n.strategy>=Z_HUFFMAN_ONLY||n.level<2?s=0:n.level<6?s=1:n.level===6?s=2:s=3,o|=s<<6,n.strstart!==0&&(o|=PRESET_DICT),o+=31-o%31,putShortMSB(n,o),n.strstart!==0&&(putShortMSB(n,e.adler>>>16),putShortMSB(n,e.adler&65535)),e.adler=1,n.status=BUSY_STATE,flush_pending(e),n.pending!==0)return n.last_flush=-1,Z_OK$3}if(n.status===GZIP_STATE){if(e.adler=0,put_byte(n,31),put_byte(n,139),put_byte(n,8),n.gzhead)put_byte(n,(n.gzhead.text?1:0)+(n.gzhead.hcrc?2:0)+(n.gzhead.extra?4:0)+(n.gzhead.name?8:0)+(n.gzhead.comment?16:0)),put_byte(n,n.gzhead.time&255),put_byte(n,n.gzhead.time>>8&255),put_byte(n,n.gzhead.time>>16&255),put_byte(n,n.gzhead.time>>24&255),put_byte(n,n.level===9?2:n.strategy>=Z_HUFFMAN_ONLY||n.level<2?4:0),put_byte(n,n.gzhead.os&255),n.gzhead.extra&&n.gzhead.extra.length&&(put_byte(n,n.gzhead.extra.length&255),put_byte(n,n.gzhead.extra.length>>8&255)),n.gzhead.hcrc&&(e.adler=crc32_1(e.adler,n.pending_buf,n.pending,0)),n.gzindex=0,n.status=EXTRA_STATE;else if(put_byte(n,0),put_byte(n,0),put_byte(n,0),put_byte(n,0),put_byte(n,0),put_byte(n,n.level===9?2:n.strategy>=Z_HUFFMAN_ONLY||n.level<2?4:0),put_byte(n,OS_CODE),n.status=BUSY_STATE,flush_pending(e),n.pending!==0)return n.last_flush=-1,Z_OK$3}if(n.status===EXTRA_STATE){if(n.gzhead.extra){let o=n.pending,s=(n.gzhead.extra.length&65535)-n.gzindex;for(;n.pending+s>n.pending_buf_size;){let l=n.pending_buf_size-n.pending;if(n.pending_buf.set(n.gzhead.extra.subarray(n.gzindex,n.gzindex+l),n.pending),n.pending=n.pending_buf_size,n.gzhead.hcrc&&n.pending>o&&(e.adler=crc32_1(e.adler,n.pending_buf,n.pending-o,o)),n.gzindex+=l,flush_pending(e),n.pending!==0)return n.last_flush=-1,Z_OK$3;o=0,s-=l}let g=new Uint8Array(n.gzhead.extra);n.pending_buf.set(g.subarray(n.gzindex,n.gzindex+s),n.pending),n.pending+=s,n.gzhead.hcrc&&n.pending>o&&(e.adler=crc32_1(e.adler,n.pending_buf,n.pending-o,o)),n.gzindex=0}n.status=NAME_STATE}if(n.status===NAME_STATE){if(n.gzhead.name){let o=n.pending,s;do{if(n.pending===n.pending_buf_size){if(n.gzhead.hcrc&&n.pending>o&&(e.adler=crc32_1(e.adler,n.pending_buf,n.pending-o,o)),flush_pending(e),n.pending!==0)return n.last_flush=-1,Z_OK$3;o=0}n.gzindex<n.gzhead.name.length?s=n.gzhead.name.charCodeAt(n.gzindex++)&255:s=0,put_byte(n,s)}while(s!==0);n.gzhead.hcrc&&n.pending>o&&(e.adler=crc32_1(e.adler,n.pending_buf,n.pending-o,o)),n.gzindex=0}n.status=COMMENT_STATE}if(n.status===COMMENT_STATE){if(n.gzhead.comment){let o=n.pending,s;do{if(n.pending===n.pending_buf_size){if(n.gzhead.hcrc&&n.pending>o&&(e.adler=crc32_1(e.adler,n.pending_buf,n.pending-o,o)),flush_pending(e),n.pending!==0)return n.last_flush=-1,Z_OK$3;o=0}n.gzindex<n.gzhead.comment.length?s=n.gzhead.comment.charCodeAt(n.gzindex++)&255:s=0,put_byte(n,s)}while(s!==0);n.gzhead.hcrc&&n.pending>o&&(e.adler=crc32_1(e.adler,n.pending_buf,n.pending-o,o))}n.status=HCRC_STATE}if(n.status===HCRC_STATE){if(n.gzhead.hcrc){if(n.pending+2>n.pending_buf_size&&(flush_pending(e),n.pending!==0))return n.last_flush=-1,Z_OK$3;put_byte(n,e.adler&255),put_byte(n,e.adler>>8&255),e.adler=0}if(n.status=BUSY_STATE,flush_pending(e),n.pending!==0)return n.last_flush=-1,Z_OK$3}if(e.avail_in!==0||n.lookahead!==0||t!==Z_NO_FLUSH$2&&n.status!==FINISH_STATE){let o=n.level===0?deflate_stored(n,t):n.strategy===Z_HUFFMAN_ONLY?deflate_huff(n,t):n.strategy===Z_RLE?deflate_rle(n,t):configuration_table[n.level].func(n,t);if((o===BS_FINISH_STARTED||o===BS_FINISH_DONE)&&(n.status=FINISH_STATE),o===BS_NEED_MORE||o===BS_FINISH_STARTED)return e.avail_out===0&&(n.last_flush=-1),Z_OK$3;if(o===BS_BLOCK_DONE&&(t===Z_PARTIAL_FLUSH?_tr_align(n):t!==Z_BLOCK$1&&(_tr_stored_block(n,0,0,!1),t===Z_FULL_FLUSH$1&&(zero(n.head),n.lookahead===0&&(n.strstart=0,n.block_start=0,n.insert=0))),flush_pending(e),e.avail_out===0))return n.last_flush=-1,Z_OK$3}return t!==Z_FINISH$3?Z_OK$3:n.wrap<=0?Z_STREAM_END$3:(n.wrap===2?(put_byte(n,e.adler&255),put_byte(n,e.adler>>8&255),put_byte(n,e.adler>>16&255),put_byte(n,e.adler>>24&255),put_byte(n,e.total_in&255),put_byte(n,e.total_in>>8&255),put_byte(n,e.total_in>>16&255),put_byte(n,e.total_in>>24&255)):(putShortMSB(n,e.adler>>>16),putShortMSB(n,e.adler&65535)),flush_pending(e),n.wrap>0&&(n.wrap=-n.wrap),n.pending!==0?Z_OK$3:Z_STREAM_END$3)},deflateEnd=e=>{if(deflateStateCheck(e))return Z_STREAM_ERROR$2;const t=e.state.status;return e.state=null,t===BUSY_STATE?err(e,Z_DATA_ERROR$2):Z_OK$3},deflateSetDictionary=(e,t)=>{let n=t.length;if(deflateStateCheck(e))return Z_STREAM_ERROR$2;const r=e.state,o=r.wrap;if(o===2||o===1&&r.status!==INIT_STATE||r.lookahead)return Z_STREAM_ERROR$2;if(o===1&&(e.adler=adler32_1(e.adler,t,n,0)),r.wrap=0,n>=r.w_size){o===0&&(zero(r.head),r.strstart=0,r.block_start=0,r.insert=0);let u=new Uint8Array(r.w_size);u.set(t.subarray(n-r.w_size,n),0),t=u,n=r.w_size}const s=e.avail_in,g=e.next_in,l=e.input;for(e.avail_in=n,e.next_in=0,e.input=t,fill_window(r);r.lookahead>=MIN_MATCH;){let u=r.strstart,c=r.lookahead-(MIN_MATCH-1);do r.ins_h=HASH(r,r.ins_h,r.window[u+MIN_MATCH-1]),r.prev[u&r.w_mask]=r.head[r.ins_h],r.head[r.ins_h]=u,u++;while(--c);r.strstart=u,r.lookahead=MIN_MATCH-1,fill_window(r)}return r.strstart+=r.lookahead,r.block_start=r.strstart,r.insert=r.lookahead,r.lookahead=0,r.match_length=r.prev_length=MIN_MATCH-1,r.match_available=0,e.next_in=g,e.input=l,e.avail_in=s,r.wrap=o,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=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var assign=function(e){const t=Array.prototype.slice.call(arguments,1);for(;t.length;){const n=t.shift();if(n){if(typeof n!="object")throw new TypeError(n+"must be non-object");for(const r in n)_has(n,r)&&(e[r]=n[r])}}return e},flattenChunks=e=>{let t=0;for(let r=0,o=e.length;r<o;r++)t+=e[r].length;const n=new Uint8Array(t);for(let r=0,o=0,s=e.length;r<s;r++){let g=e[r];n.set(g,o),o+=g.length}return n},common={assign,flattenChunks};let STR_APPLY_UIA_OK=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(e){STR_APPLY_UIA_OK=!1}const _utf8len=new Uint8Array(256);for(let e=0;e<256;e++)_utf8len[e]=e>=252?6:e>=248?5:e>=240?4:e>=224?3:e>=192?2:1;_utf8len[254]=_utf8len[254]=1;var string2buf=e=>{if(typeof TextEncoder=="function"&&TextEncoder.prototype.encode)return new TextEncoder().encode(e);let t,n,r,o,s,g=e.length,l=0;for(o=0;o<g;o++)n=e.charCodeAt(o),(n&64512)===55296&&o+1<g&&(r=e.charCodeAt(o+1),(r&64512)===56320&&(n=65536+(n-55296<<10)+(r-56320),o++)),l+=n<128?1:n<2048?2:n<65536?3:4;for(t=new Uint8Array(l),s=0,o=0;s<l;o++)n=e.charCodeAt(o),(n&64512)===55296&&o+1<g&&(r=e.charCodeAt(o+1),(r&64512)===56320&&(n=65536+(n-55296<<10)+(r-56320),o++)),n<128?t[s++]=n:n<2048?(t[s++]=192|n>>>6,t[s++]=128|n&63):n<65536?(t[s++]=224|n>>>12,t[s++]=128|n>>>6&63,t[s++]=128|n&63):(t[s++]=240|n>>>18,t[s++]=128|n>>>12&63,t[s++]=128|n>>>6&63,t[s++]=128|n&63);return t};const buf2binstring=(e,t)=>{if(t<65534&&e.subarray&&STR_APPLY_UIA_OK)return String.fromCharCode.apply(null,e.length===t?e:e.subarray(0,t));let n="";for(let r=0;r<t;r++)n+=String.fromCharCode(e[r]);return n};var buf2string=(e,t)=>{const n=t||e.length;if(typeof TextDecoder=="function"&&TextDecoder.prototype.decode)return new TextDecoder().decode(e.subarray(0,t));let r,o;const s=new Array(n*2);for(o=0,r=0;r<n;){let g=e[r++];if(g<128){s[o++]=g;continue}let l=_utf8len[g];if(l>4){s[o++]=65533,r+=l-1;continue}for(g&=l===2?31:l===3?15:7;l>1&&r<n;)g=g<<6|e[r++]&63,l--;if(l>1){s[o++]=65533;continue}g<65536?s[o++]=g:(g-=65536,s[o++]=55296|g>>10&1023,s[o++]=56320|g&1023)}return buf2binstring(s,o)},utf8border=(e,t)=>{t=t||e.length,t>e.length&&(t=e.length);let n=t-1;for(;n>=0&&(e[n]&192)===128;)n--;return n<0||n===0?t:n+_utf8len[e[n]]>t?n:t},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(e){this.options=common.assign({level:Z_DEFAULT_COMPRESSION,method:Z_DEFLATED$1,chunkSize:16384,windowBits:15,memLevel:8,strategy:Z_DEFAULT_STRATEGY},e||{});let t=this.options;t.raw&&t.windowBits>0?t.windowBits=-t.windowBits:t.gzip&&t.windowBits>0&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new zstream,this.strm.avail_out=0;let n=deflate_1$2.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(n!==Z_OK$2)throw new Error(messages[n]);if(t.header&&deflate_1$2.deflateSetHeader(this.strm,t.header),t.dictionary){let r;if(typeof t.dictionary=="string"?r=strings.string2buf(t.dictionary):toString$1.call(t.dictionary)==="[object ArrayBuffer]"?r=new Uint8Array(t.dictionary):r=t.dictionary,n=deflate_1$2.deflateSetDictionary(this.strm,r),n!==Z_OK$2)throw new Error(messages[n]);this._dict_set=!0}}Deflate$1.prototype.push=function(e,t){const n=this.strm,r=this.options.chunkSize;let o,s;if(this.ended)return!1;for(t===~~t?s=t:s=t===!0?Z_FINISH$2:Z_NO_FLUSH$1,typeof e=="string"?n.input=strings.string2buf(e):toString$1.call(e)==="[object ArrayBuffer]"?n.input=new Uint8Array(e):n.input=e,n.next_in=0,n.avail_in=n.input.length;;){if(n.avail_out===0&&(n.output=new Uint8Array(r),n.next_out=0,n.avail_out=r),(s===Z_SYNC_FLUSH||s===Z_FULL_FLUSH)&&n.avail_out<=6){this.onData(n.output.subarray(0,n.next_out)),n.avail_out=0;continue}if(o=deflate_1$2.deflate(n,s),o===Z_STREAM_END$2)return n.next_out>0&&this.onData(n.output.subarray(0,n.next_out)),o=deflate_1$2.deflateEnd(this.strm),this.onEnd(o),this.ended=!0,o===Z_OK$2;if(n.avail_out===0){this.onData(n.output);continue}if(s>0&&n.next_out>0){this.onData(n.output.subarray(0,n.next_out)),n.avail_out=0;continue}if(n.avail_in===0)break}return!0},Deflate$1.prototype.onData=function(e){this.chunks.push(e)},Deflate$1.prototype.onEnd=function(e){e===Z_OK$2&&(this.result=common.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};function deflate$1(e,t){const n=new Deflate$1(t);if(n.push(e,!0),n.err)throw n.msg||messages[n.err];return n.result}function deflateRaw$1(e,t){return t=t||{},t.raw=!0,deflate$1(e,t)}function gzip$1(e,t){return t=t||{},t.gzip=!0,deflate$1(e,t)}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(t,n){let r,o,s,g,l,u,c,d,B,Q,U,p,f,b,M,J,m,y,h,T,I,X,F,R;const x=t.state;r=t.next_in,F=t.input,o=r+(t.avail_in-5),s=t.next_out,R=t.output,g=s-(n-t.avail_out),l=s+(t.avail_out-257),u=x.dmax,c=x.wsize,d=x.whave,B=x.wnext,Q=x.window,U=x.hold,p=x.bits,f=x.lencode,b=x.distcode,M=(1<<x.lenbits)-1,J=(1<<x.distbits)-1;e:do{p<15&&(U+=F[r++]<<p,p+=8,U+=F[r++]<<p,p+=8),m=f[U&M];t:for(;;){if(y=m>>>24,U>>>=y,p-=y,y=m>>>16&255,y===0)R[s++]=m&65535;else if(y&16){h=m&65535,y&=15,y&&(p<y&&(U+=F[r++]<<p,p+=8),h+=U&(1<<y)-1,U>>>=y,p-=y),p<15&&(U+=F[r++]<<p,p+=8,U+=F[r++]<<p,p+=8),m=b[U&J];n:for(;;){if(y=m>>>24,U>>>=y,p-=y,y=m>>>16&255,y&16){if(T=m&65535,y&=15,p<y&&(U+=F[r++]<<p,p+=8,p<y&&(U+=F[r++]<<p,p+=8)),T+=U&(1<<y)-1,T>u){t.msg="invalid distance too far back",x.mode=BAD$1;break e}if(U>>>=y,p-=y,y=s-g,T>y){if(y=T-y,y>d&&x.sane){t.msg="invalid distance too far back",x.mode=BAD$1;break e}if(I=0,X=Q,B===0){if(I+=c-y,y<h){h-=y;do R[s++]=Q[I++];while(--y);I=s-T,X=R}}else if(B<y){if(I+=c+B-y,y-=B,y<h){h-=y;do R[s++]=Q[I++];while(--y);if(I=0,B<h){y=B,h-=y;do R[s++]=Q[I++];while(--y);I=s-T,X=R}}}else if(I+=B-y,y<h){h-=y;do R[s++]=Q[I++];while(--y);I=s-T,X=R}for(;h>2;)R[s++]=X[I++],R[s++]=X[I++],R[s++]=X[I++],h-=3;h&&(R[s++]=X[I++],h>1&&(R[s++]=X[I++]))}else{I=s-T;do R[s++]=R[I++],R[s++]=R[I++],R[s++]=R[I++],h-=3;while(h>2);h&&(R[s++]=R[I++],h>1&&(R[s++]=R[I++]))}}else if(y&64){t.msg="invalid distance code",x.mode=BAD$1;break e}else{m=b[(m&65535)+(U&(1<<y)-1)];continue n}break}}else if(y&64)if(y&32){x.mode=TYPE$1;break e}else{t.msg="invalid literal/length code",x.mode=BAD$1;break e}else{m=f[(m&65535)+(U&(1<<y)-1)];continue t}break}}while(r<o&&s<l);h=p>>3,r-=h,p-=h<<3,U&=(1<<p)-1,t.next_in=r,t.next_out=s,t.avail_in=r<o?5+(o-r):5-(r-o),t.avail_out=s<l?257+(l-s):257-(s-l),x.hold=U,x.bits=p};const MAXBITS=15,ENOUGH_LENS$1=852,ENOUGH_DISTS$1=592,CODES$1=0,LENS$1=1,DISTS$1=2,lbase=new Uint16Array([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]),lext=new Uint8Array([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]),dbase=new Uint16Array([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]),dext=new Uint8Array([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]),inflate_table=(e,t,n,r,o,s,g,l)=>{const u=l.bits;let c=0,d=0,B=0,Q=0,U=0,p=0,f=0,b=0,M=0,J=0,m,y,h,T,I,X=null,F;const R=new Uint16Array(MAXBITS+1),x=new Uint16Array(MAXBITS+1);let w=null,_,j,C;for(c=0;c<=MAXBITS;c++)R[c]=0;for(d=0;d<r;d++)R[t[n+d]]++;for(U=u,Q=MAXBITS;Q>=1&&R[Q]===0;Q--);if(U>Q&&(U=Q),Q===0)return o[s++]=1<<24|64<<16|0,o[s++]=1<<24|64<<16|0,l.bits=1,0;for(B=1;B<Q&&R[B]===0;B++);for(U<B&&(U=B),b=1,c=1;c<=MAXBITS;c++)if(b<<=1,b-=R[c],b<0)return-1;if(b>0&&(e===CODES$1||Q!==1))return-1;for(x[1]=0,c=1;c<MAXBITS;c++)x[c+1]=x[c]+R[c];for(d=0;d<r;d++)t[n+d]!==0&&(g[x[t[n+d]]++]=d);if(e===CODES$1?(X=w=g,F=20):e===LENS$1?(X=lbase,w=lext,F=257):(X=dbase,w=dext,F=0),J=0,d=0,c=B,I=s,p=U,f=0,h=-1,M=1<<U,T=M-1,e===LENS$1&&M>ENOUGH_LENS$1||e===DISTS$1&&M>ENOUGH_DISTS$1)return 1;for(;;){_=c-f,g[d]+1<F?(j=0,C=g[d]):g[d]>=F?(j=w[g[d]-F],C=X[g[d]-F]):(j=32+64,C=0),m=1<<c-f,y=1<<p,B=y;do y-=m,o[I+(J>>f)+y]=_<<24|j<<16|C|0;while(y!==0);for(m=1<<c-1;J&m;)m>>=1;if(m!==0?(J&=m-1,J+=m):J=0,d++,--R[c]===0){if(c===Q)break;c=t[n+g[d]]}if(c>U&&(J&T)!==h){for(f===0&&(f=U),I+=B,p=c-f,b=1<<p;p+f<Q&&(b-=R[p+f],!(b<=0));)p++,b<<=1;if(M+=1<<p,e===LENS$1&&M>ENOUGH_LENS$1||e===DISTS$1&&M>ENOUGH_DISTS$1)return 1;h=J&T,o[h]=U<<24|p<<16|I-s|0}}return J!==0&&(o[I+J]=c-f<<24|64<<16|0),l.bits=U,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=e=>(e>>>24&255)+(e>>>8&65280)+((e&65280)<<8)+((e&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=e=>{if(!e)return 1;const t=e.state;return!t||t.strm!==e||t.mode<HEAD||t.mode>SYNC?1:0},inflateResetKeep=e=>{if(inflateStateCheck(e))return Z_STREAM_ERROR$1;const t=e.state;return e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=t.wrap&1),t.mode=HEAD,t.last=0,t.havedict=0,t.flags=-1,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new Int32Array(ENOUGH_LENS),t.distcode=t.distdyn=new Int32Array(ENOUGH_DISTS),t.sane=1,t.back=-1,Z_OK$1},inflateReset=e=>{if(inflateStateCheck(e))return Z_STREAM_ERROR$1;const t=e.state;return t.wsize=0,t.whave=0,t.wnext=0,inflateResetKeep(e)},inflateReset2=(e,t)=>{let n;if(inflateStateCheck(e))return Z_STREAM_ERROR$1;const r=e.state;return t<0?(n=0,t=-t):(n=(t>>4)+5,t<48&&(t&=15)),t&&(t<8||t>15)?Z_STREAM_ERROR$1:(r.window!==null&&r.wbits!==t&&(r.window=null),r.wrap=n,r.wbits=t,inflateReset(e))},inflateInit2=(e,t)=>{if(!e)return Z_STREAM_ERROR$1;const n=new InflateState;e.state=n,n.strm=e,n.window=null,n.mode=HEAD;const r=inflateReset2(e,t);return r!==Z_OK$1&&(e.state=null),r},inflateInit=e=>inflateInit2(e,DEF_WBITS);let virgin=!0,lenfix,distfix;const fixedtables=e=>{if(virgin){lenfix=new Int32Array(512),distfix=new Int32Array(32);let t=0;for(;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(inftrees(LENS,e.lens,0,288,lenfix,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;inftrees(DISTS,e.lens,0,32,distfix,0,e.work,{bits:5}),virgin=!1}e.lencode=lenfix,e.lenbits=9,e.distcode=distfix,e.distbits=5},updatewindow=(e,t,n,r)=>{let o;const s=e.state;return s.window===null&&(s.wsize=1<<s.wbits,s.wnext=0,s.whave=0,s.window=new Uint8Array(s.wsize)),r>=s.wsize?(s.window.set(t.subarray(n-s.wsize,n),0),s.wnext=0,s.whave=s.wsize):(o=s.wsize-s.wnext,o>r&&(o=r),s.window.set(t.subarray(n-r,n-r+o),s.wnext),r-=o,r?(s.window.set(t.subarray(n-r,n),0),s.wnext=r,s.whave=s.wsize):(s.wnext+=o,s.wnext===s.wsize&&(s.wnext=0),s.whave<s.wsize&&(s.whave+=o))),0},inflate$2=(e,t)=>{let n,r,o,s,g,l,u,c,d,B,Q,U,p,f,b=0,M,J,m,y,h,T,I,X;const F=new Uint8Array(4);let R,x;const w=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(inflateStateCheck(e)||!e.output||!e.input&&e.avail_in!==0)return Z_STREAM_ERROR$1;n=e.state,n.mode===TYPE&&(n.mode=TYPEDO),g=e.next_out,o=e.output,u=e.avail_out,s=e.next_in,r=e.input,l=e.avail_in,c=n.hold,d=n.bits,B=l,Q=u,X=Z_OK$1;e:for(;;)switch(n.mode){case HEAD:if(n.wrap===0){n.mode=TYPEDO;break}for(;d<16;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}if(n.wrap&2&&c===35615){n.wbits===0&&(n.wbits=15),n.check=0,F[0]=c&255,F[1]=c>>>8&255,n.check=crc32_1(n.check,F,2,0),c=0,d=0,n.mode=FLAGS;break}if(n.head&&(n.head.done=!1),!(n.wrap&1)||(((c&255)<<8)+(c>>8))%31){e.msg="incorrect header check",n.mode=BAD;break}if((c&15)!==Z_DEFLATED){e.msg="unknown compression method",n.mode=BAD;break}if(c>>>=4,d-=4,I=(c&15)+8,n.wbits===0&&(n.wbits=I),I>15||I>n.wbits){e.msg="invalid window size",n.mode=BAD;break}n.dmax=1<<n.wbits,n.flags=0,e.adler=n.check=1,n.mode=c&512?DICTID:TYPE,c=0,d=0;break;case FLAGS:for(;d<16;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}if(n.flags=c,(n.flags&255)!==Z_DEFLATED){e.msg="unknown compression method",n.mode=BAD;break}if(n.flags&57344){e.msg="unknown header flags set",n.mode=BAD;break}n.head&&(n.head.text=c>>8&1),n.flags&512&&n.wrap&4&&(F[0]=c&255,F[1]=c>>>8&255,n.check=crc32_1(n.check,F,2,0)),c=0,d=0,n.mode=TIME;case TIME:for(;d<32;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}n.head&&(n.head.time=c),n.flags&512&&n.wrap&4&&(F[0]=c&255,F[1]=c>>>8&255,F[2]=c>>>16&255,F[3]=c>>>24&255,n.check=crc32_1(n.check,F,4,0)),c=0,d=0,n.mode=OS;case OS:for(;d<16;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}n.head&&(n.head.xflags=c&255,n.head.os=c>>8),n.flags&512&&n.wrap&4&&(F[0]=c&255,F[1]=c>>>8&255,n.check=crc32_1(n.check,F,2,0)),c=0,d=0,n.mode=EXLEN;case EXLEN:if(n.flags&1024){for(;d<16;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}n.length=c,n.head&&(n.head.extra_len=c),n.flags&512&&n.wrap&4&&(F[0]=c&255,F[1]=c>>>8&255,n.check=crc32_1(n.check,F,2,0)),c=0,d=0}else n.head&&(n.head.extra=null);n.mode=EXTRA;case EXTRA:if(n.flags&1024&&(U=n.length,U>l&&(U=l),U&&(n.head&&(I=n.head.extra_len-n.length,n.head.extra||(n.head.extra=new Uint8Array(n.head.extra_len)),n.head.extra.set(r.subarray(s,s+U),I)),n.flags&512&&n.wrap&4&&(n.check=crc32_1(n.check,r,U,s)),l-=U,s+=U,n.length-=U),n.length))break e;n.length=0,n.mode=NAME;case NAME:if(n.flags&2048){if(l===0)break e;U=0;do I=r[s+U++],n.head&&I&&n.length<65536&&(n.head.name+=String.fromCharCode(I));while(I&&U<l);if(n.flags&512&&n.wrap&4&&(n.check=crc32_1(n.check,r,U,s)),l-=U,s+=U,I)break e}else n.head&&(n.head.name=null);n.length=0,n.mode=COMMENT;case COMMENT:if(n.flags&4096){if(l===0)break e;U=0;do I=r[s+U++],n.head&&I&&n.length<65536&&(n.head.comment+=String.fromCharCode(I));while(I&&U<l);if(n.flags&512&&n.wrap&4&&(n.check=crc32_1(n.check,r,U,s)),l-=U,s+=U,I)break e}else n.head&&(n.head.comment=null);n.mode=HCRC;case HCRC:if(n.flags&512){for(;d<16;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}if(n.wrap&4&&c!==(n.check&65535)){e.msg="header crc mismatch",n.mode=BAD;break}c=0,d=0}n.head&&(n.head.hcrc=n.flags>>9&1,n.head.done=!0),e.adler=n.check=0,n.mode=TYPE;break;case DICTID:for(;d<32;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}e.adler=n.check=zswap32(c),c=0,d=0,n.mode=DICT;case DICT:if(n.havedict===0)return e.next_out=g,e.avail_out=u,e.next_in=s,e.avail_in=l,n.hold=c,n.bits=d,Z_NEED_DICT$1;e.adler=n.check=1,n.mode=TYPE;case TYPE:if(t===Z_BLOCK||t===Z_TREES)break e;case TYPEDO:if(n.last){c>>>=d&7,d-=d&7,n.mode=CHECK;break}for(;d<3;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}switch(n.last=c&1,c>>>=1,d-=1,c&3){case 0:n.mode=STORED;break;case 1:if(fixedtables(n),n.mode=LEN_,t===Z_TREES){c>>>=2,d-=2;break e}break;case 2:n.mode=TABLE;break;case 3:e.msg="invalid block type",n.mode=BAD}c>>>=2,d-=2;break;case STORED:for(c>>>=d&7,d-=d&7;d<32;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}if((c&65535)!==(c>>>16^65535)){e.msg="invalid stored block lengths",n.mode=BAD;break}if(n.length=c&65535,c=0,d=0,n.mode=COPY_,t===Z_TREES)break e;case COPY_:n.mode=COPY;case COPY:if(U=n.length,U){if(U>l&&(U=l),U>u&&(U=u),U===0)break e;o.set(r.subarray(s,s+U),g),l-=U,s+=U,u-=U,g+=U,n.length-=U;break}n.mode=TYPE;break;case TABLE:for(;d<14;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}if(n.nlen=(c&31)+257,c>>>=5,d-=5,n.ndist=(c&31)+1,c>>>=5,d-=5,n.ncode=(c&15)+4,c>>>=4,d-=4,n.nlen>286||n.ndist>30){e.msg="too many length or distance symbols",n.mode=BAD;break}n.have=0,n.mode=LENLENS;case LENLENS:for(;n.have<n.ncode;){for(;d<3;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}n.lens[w[n.have++]]=c&7,c>>>=3,d-=3}for(;n.have<19;)n.lens[w[n.have++]]=0;if(n.lencode=n.lendyn,n.lenbits=7,R={bits:n.lenbits},X=inftrees(CODES,n.lens,0,19,n.lencode,0,n.work,R),n.lenbits=R.bits,X){e.msg="invalid code lengths set",n.mode=BAD;break}n.have=0,n.mode=CODELENS;case CODELENS:for(;n.have<n.nlen+n.ndist;){for(;b=n.lencode[c&(1<<n.lenbits)-1],M=b>>>24,J=b>>>16&255,m=b&65535,!(M<=d);){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}if(m<16)c>>>=M,d-=M,n.lens[n.have++]=m;else{if(m===16){for(x=M+2;d<x;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}if(c>>>=M,d-=M,n.have===0){e.msg="invalid bit length repeat",n.mode=BAD;break}I=n.lens[n.have-1],U=3+(c&3),c>>>=2,d-=2}else if(m===17){for(x=M+3;d<x;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}c>>>=M,d-=M,I=0,U=3+(c&7),c>>>=3,d-=3}else{for(x=M+7;d<x;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}c>>>=M,d-=M,I=0,U=11+(c&127),c>>>=7,d-=7}if(n.have+U>n.nlen+n.ndist){e.msg="invalid bit length repeat",n.mode=BAD;break}for(;U--;)n.lens[n.have++]=I}}if(n.mode===BAD)break;if(n.lens[256]===0){e.msg="invalid code -- missing end-of-block",n.mode=BAD;break}if(n.lenbits=9,R={bits:n.lenbits},X=inftrees(LENS,n.lens,0,n.nlen,n.lencode,0,n.work,R),n.lenbits=R.bits,X){e.msg="invalid literal/lengths set",n.mode=BAD;break}if(n.distbits=6,n.distcode=n.distdyn,R={bits:n.distbits},X=inftrees(DISTS,n.lens,n.nlen,n.ndist,n.distcode,0,n.work,R),n.distbits=R.bits,X){e.msg="invalid distances set",n.mode=BAD;break}if(n.mode=LEN_,t===Z_TREES)break e;case LEN_:n.mode=LEN;case LEN:if(l>=6&&u>=258){e.next_out=g,e.avail_out=u,e.next_in=s,e.avail_in=l,n.hold=c,n.bits=d,inffast(e,Q),g=e.next_out,o=e.output,u=e.avail_out,s=e.next_in,r=e.input,l=e.avail_in,c=n.hold,d=n.bits,n.mode===TYPE&&(n.back=-1);break}for(n.back=0;b=n.lencode[c&(1<<n.lenbits)-1],M=b>>>24,J=b>>>16&255,m=b&65535,!(M<=d);){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}if(J&&!(J&240)){for(y=M,h=J,T=m;b=n.lencode[T+((c&(1<<y+h)-1)>>y)],M=b>>>24,J=b>>>16&255,m=b&65535,!(y+M<=d);){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}c>>>=y,d-=y,n.back+=y}if(c>>>=M,d-=M,n.back+=M,n.length=m,J===0){n.mode=LIT;break}if(J&32){n.back=-1,n.mode=TYPE;break}if(J&64){e.msg="invalid literal/length code",n.mode=BAD;break}n.extra=J&15,n.mode=LENEXT;case LENEXT:if(n.extra){for(x=n.extra;d<x;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}n.length+=c&(1<<n.extra)-1,c>>>=n.extra,d-=n.extra,n.back+=n.extra}n.was=n.length,n.mode=DIST;case DIST:for(;b=n.distcode[c&(1<<n.distbits)-1],M=b>>>24,J=b>>>16&255,m=b&65535,!(M<=d);){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}if(!(J&240)){for(y=M,h=J,T=m;b=n.distcode[T+((c&(1<<y+h)-1)>>y)],M=b>>>24,J=b>>>16&255,m=b&65535,!(y+M<=d);){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}c>>>=y,d-=y,n.back+=y}if(c>>>=M,d-=M,n.back+=M,J&64){e.msg="invalid distance code",n.mode=BAD;break}n.offset=m,n.extra=J&15,n.mode=DISTEXT;case DISTEXT:if(n.extra){for(x=n.extra;d<x;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}n.offset+=c&(1<<n.extra)-1,c>>>=n.extra,d-=n.extra,n.back+=n.extra}if(n.offset>n.dmax){e.msg="invalid distance too far back",n.mode=BAD;break}n.mode=MATCH;case MATCH:if(u===0)break e;if(U=Q-u,n.offset>U){if(U=n.offset-U,U>n.whave&&n.sane){e.msg="invalid distance too far back",n.mode=BAD;break}U>n.wnext?(U-=n.wnext,p=n.wsize-U):p=n.wnext-U,U>n.length&&(U=n.length),f=n.window}else f=o,p=g-n.offset,U=n.length;U>u&&(U=u),u-=U,n.length-=U;do o[g++]=f[p++];while(--U);n.length===0&&(n.mode=LEN);break;case LIT:if(u===0)break e;o[g++]=n.length,u--,n.mode=LEN;break;case CHECK:if(n.wrap){for(;d<32;){if(l===0)break e;l--,c|=r[s++]<<d,d+=8}if(Q-=u,e.total_out+=Q,n.total+=Q,n.wrap&4&&Q&&(e.adler=n.check=n.flags?crc32_1(n.check,o,Q,g-Q):adler32_1(n.check,o,Q,g-Q)),Q=u,n.wrap&4&&(n.flags?c:zswap32(c))!==n.check){e.msg="incorrect data check",n.mode=BAD;break}c=0,d=0}n.mode=LENGTH;case LENGTH:if(n.wrap&&n.flags){for(;d<32;){if(l===0)break e;l--,c+=r[s++]<<d,d+=8}if(n.wrap&4&&c!==(n.total&4294967295)){e.msg="incorrect length check",n.mode=BAD;break}c=0,d=0}n.mode=DONE;case DONE:X=Z_STREAM_END$1;break e;case BAD:X=Z_DATA_ERROR$1;break e;case MEM:return Z_MEM_ERROR$1;case SYNC:default:return Z_STREAM_ERROR$1}return e.next_out=g,e.avail_out=u,e.next_in=s,e.avail_in=l,n.hold=c,n.bits=d,(n.wsize||Q!==e.avail_out&&n.mode<BAD&&(n.mode<CHECK||t!==Z_FINISH$1))&&updatewindow(e,e.output,e.next_out,Q-e.avail_out),B-=e.avail_in,Q-=e.avail_out,e.total_in+=B,e.total_out+=Q,n.total+=Q,n.wrap&4&&Q&&(e.adler=n.check=n.flags?crc32_1(n.check,o,Q,e.next_out-Q):adler32_1(n.check,o,Q,e.next_out-Q)),e.data_type=n.bits+(n.last?64:0)+(n.mode===TYPE?128:0)+(n.mode===LEN_||n.mode===COPY_?256:0),(B===0&&Q===0||t===Z_FINISH$1)&&X===Z_OK$1&&(X=Z_BUF_ERROR),X},inflateEnd=e=>{if(inflateStateCheck(e))return Z_STREAM_ERROR$1;let t=e.state;return t.window&&(t.window=null),e.state=null,Z_OK$1},inflateGetHeader=(e,t)=>{if(inflateStateCheck(e))return Z_STREAM_ERROR$1;const n=e.state;return n.wrap&2?(n.head=t,t.done=!1,Z_OK$1):Z_STREAM_ERROR$1},inflateSetDictionary=(e,t)=>{const n=t.length;let r,o,s;return inflateStateCheck(e)||(r=e.state,r.wrap!==0&&r.mode!==DICT)?Z_STREAM_ERROR$1:r.mode===DICT&&(o=1,o=adler32_1(o,t,n,0),o!==r.check)?Z_DATA_ERROR$1:(s=updatewindow(e,t,n,n),s?(r.mode=MEM,Z_MEM_ERROR$1):(r.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(e){this.options=common.assign({chunkSize:1024*64,windowBits:15,to:""},e||{});const t=this.options;t.raw&&t.windowBits>=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,t.windowBits===0&&(t.windowBits=-15)),t.windowBits>=0&&t.windowBits<16&&!(e&&e.windowBits)&&(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&(t.windowBits&15||(t.windowBits|=15)),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new zstream,this.strm.avail_out=0;let n=inflate_1$2.inflateInit2(this.strm,t.windowBits);if(n!==Z_OK)throw new Error(messages[n]);if(this.header=new gzheader,inflate_1$2.inflateGetHeader(this.strm,this.header),t.dictionary&&(typeof t.dictionary=="string"?t.dictionary=strings.string2buf(t.dictionary):toString.call(t.dictionary)==="[object ArrayBuffer]"&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(n=inflate_1$2.inflateSetDictionary(this.strm,t.dictionary),n!==Z_OK)))throw new Error(messages[n])}Inflate$1.prototype.push=function(e,t){const n=this.strm,r=this.options.chunkSize,o=this.options.dictionary;let s,g,l;if(this.ended)return!1;for(t===~~t?g=t:g=t===!0?Z_FINISH:Z_NO_FLUSH,toString.call(e)==="[object ArrayBuffer]"?n.input=new Uint8Array(e):n.input=e,n.next_in=0,n.avail_in=n.input.length;;){for(n.avail_out===0&&(n.output=new Uint8Array(r),n.next_out=0,n.avail_out=r),s=inflate_1$2.inflate(n,g),s===Z_NEED_DICT&&o&&(s=inflate_1$2.inflateSetDictionary(n,o),s===Z_OK?s=inflate_1$2.inflate(n,g):s===Z_DATA_ERROR&&(s=Z_NEED_DICT));n.avail_in>0&&s===Z_STREAM_END&&n.state.wrap>0&&e[n.next_in]!==0;)inflate_1$2.inflateReset(n),s=inflate_1$2.inflate(n,g);switch(s){case Z_STREAM_ERROR:case Z_DATA_ERROR:case Z_NEED_DICT:case Z_MEM_ERROR:return this.onEnd(s),this.ended=!0,!1}if(l=n.avail_out,n.next_out&&(n.avail_out===0||s===Z_STREAM_END))if(this.options.to==="string"){let u=strings.utf8border(n.output,n.next_out),c=n.next_out-u,d=strings.buf2string(n.output,u);n.next_out=c,n.avail_out=r-c,c&&n.output.set(n.output.subarray(u,u+c),0),this.onData(d)}else this.onData(n.output.length===n.next_out?n.output:n.output.subarray(0,n.next_out));if(!(s===Z_OK&&l===0)){if(s===Z_STREAM_END)return s=inflate_1$2.inflateEnd(this.strm),this.onEnd(s),this.ended=!0,!0;if(n.avail_in===0)break}}return!0},Inflate$1.prototype.onData=function(e){this.chunks.push(e)},Inflate$1.prototype.onEnd=function(e){e===Z_OK&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=common.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};const{Deflate,deflate,deflateRaw,gzip}=deflate_1$1;for(var deflate_1=deflate,fromByteArray_1=fromByteArray,lookup=[],code="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",i=0,len=code.length;i<len;++i)lookup[i]=code[i];function tripletToBase64(e){return lookup[e>>18&63]+lookup[e>>12&63]+lookup[e>>6&63]+lookup[e&63]}function encodeChunk(e,t,n){for(var r,o=[],s=t;s<n;s+=3)r=(e[s]<<16&16711680)+(e[s+1]<<8&65280)+(e[s+2]&255),o.push(tripletToBase64(r));return o.join("")}function fromByteArray(e){for(var t,n=e.length,r=n%3,o=[],s=16383,g=0,l=n-r;g<l;g+=s)o.push(encodeChunk(e,g,g+s>l?l:g+s));return r===1?(t=e[n-1],o.push(lookup[t>>2]+lookup[t<<4&63]+"==")):r===2&&(t=(e[n-2]<<8)+e[n-1],o.push(lookup[t>>10]+lookup[t>>4&63]+lookup[t<<2&63]+"=")),o.join("")}const encoder=new TextEncoder;new TextDecoder;function serializeHash(e){const t=JSON.stringify(e),n=encoder.encode(t),r=deflate_1(n);return fromByteArray_1(r)}async function getViews(){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${exports.FORMANT_API_URL}/v1/admin/views`,{method:"GET",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items}async function createShareLink(e,t){if(!Authentication.token)throw new Error("Not authenticated");const r=(await getViews()).filter(l=>l.name===t);if(r.length===0)return console.warn("View does not exist or it is misspell"),null;const o=await fetch(`${exports.FORMANT_API_URL}/v1/admin/shares`,{method:"POST",body:JSON.stringify(e),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}}),s=exports.FORMANT_API_URL.replace("api","app"),{code:g}=await o.json();return`${s}/shares/${g}#${serializeHash({viewId:r[0].id})}`}async function disableDevice(e){if(!Authentication.token)throw new Error("Not authenticated");return await(await fetch(`${exports.FORMANT_API_URL}/v1/admin/devices/${e}/disable`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()}const vailableAggregationIntervals=["day","week","month","year","hour","minute","quarter"],aggregateFunctions=["interval","start","end","sub","get"];function getVariance(e){return e.count<2?0:e.sumOfSquares/(e.count-1)}function getStandardDeviation(e){return Math.sqrt(getVariance(e))}function getMax(e){return e.max}function getMin(e){return e.min}function getAverage(e){return e.count===0?-1:e.sum/e.count}function getSum(e){return e.sum}function getCount(e){return e.count}const aggregateFunctionMap={min:getMin,max:getMax,"standard deviation":getStandardDeviation,average:getAverage,sum:getSum,count:getCount},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=(e,t)=>e.split("/")[0]+"/"+e.split("/")[1]+"–"+t.split("/")[0]+"/"+t.split("/")[1];async function queryEvents(e){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${exports.FORMANT_API_URL}/v1/admin/events/query`,{method:"POST",body:JSON.stringify(e),headers:{"Content-Type":"application/json",Authorization:"Bearer "+Authentication.token}})).json()).items}async function eventsCounter(e,t,n,r,o){const s=aggregateByDateFunctions[t];return await Promise.all(Array(n).fill(0).map(async(g,l)=>{const u=new Date(r),c=s.sub(s.start(u),n-l-1),d=s.sub(s.end(u),n-l-1),B=formatTimeFrameText(c.toLocaleDateString(),d.toLocaleDateString()),Q=await queryEvents({...o,eventTypes:e,start:new Date(c).toISOString(),end:new Date(d).toISOString()});return{date:B,events:Q}}))}async function getAnnotationCount(e,t){return(await queryEvents({...e,eventTypes:["annotation"]})).filter(s=>!!s.tags&&Object.keys(s.tags).includes(t)).reduce((s,g)=>{const l=g.tags[t];return l in s?(s[l]+=1,s):(s[l]=1,s)},{})}async function getAnnotationCountByIntervals(e,t,n){const{end:r,start:o}=e,g=aggregateByDateFunctions[n].interval({start:new Date(o),end:new Date(r)}),l=g.map((c,d)=>{const B=new Date(c).toISOString(),Q=d===g.length-1?new Date(Date.now()).toISOString():new Date(g[d+1]);return getAnnotationCount({...e,start:B,end:Q},t)}),u=await Promise.all(l);return g.map((c,d)=>({date:new Date(c).toISOString(),annotations:u[d]}))}async function getDevicesData(){if(!Authentication.token)throw new Error("Not authenticated");return(await(await fetch(`${exports.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(e,t){module.exports=t()})(window,function(){return function(e){function t(c){for(var d,B,Q=c[0],U=c[1],p=0,f=[];p<Q.length;p++)B=Q[p],Object.prototype.hasOwnProperty.call(r,B)&&r[B]&&f.push(r[B][0]),r[B]=0;for(d in U)Object.prototype.hasOwnProperty.call(U,d)&&(e[d]=U[d]);for(u&&u(c);f.length;)f.shift()()}var n={},r={0:0};function o(c){if(n[c])return n[c].exports;var d=n[c]={i:c,l:!1,exports:{}};return e[c].call(d.exports,d,d.exports,o),d.l=!0,d.exports}o.e=function(){return Promise.resolve()},o.m=e,o.c=n,o.d=function(c,d,B){o.o(c,d)||Object.defineProperty(c,d,{enumerable:!0,get:B})},o.r=function(c){typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(c,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(c,"__esModule",{value:!0})},o.t=function(c,d){if(1&d&&(c=o(c)),8&d||4&d&&typeof c=="object"&&c&&c.__esModule)return c;var B=Object.create(null);if(o.r(B),Object.defineProperty(B,"default",{enumerable:!0,value:c}),2&d&&typeof c!="string")for(var Q in c)o.d(B,Q,function(U){return c[U]}.bind(null,Q));return B},o.n=function(c){var d=c&&c.__esModule?function(){return c.default}:function(){return c};return o.d(d,"a",d),d},o.o=function(c,d){return Object.prototype.hasOwnProperty.call(c,d)},o.p="",o.oe=function(c){throw console.error(c),c};var s=window.webpackJsonpFormantRealtimeSDK=window.webpackJsonpFormantRealtimeSDK||[],g=s.push.bind(s);s.push=t,s=s.slice();for(var l=0;l<s.length;l++)t(s[l]);var u=g;return o(o.s=233)}([function(e,t,n){n.d(t,"a",function(){return V});var r=n(16),o=n(55),s=n(15),g=n.n(s),l=n(18);function u(K,Y){if(Y.length<K)throw new TypeError(K+" argument"+(K>1?"s":"")+" required, but only "+Y.length+" present")}function c(K){if(K===null||K===!0||K===!1)return NaN;var Y=Number(K);return isNaN(Y)?Y:Y<0?Math.ceil(Y):Math.floor(Y)}var d={dateTimeDelimiter:/[T ]/,timeZoneDelimiter:/[Z ]/i,timezone:/([Z+-].*)$/},B=/^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/,Q=/^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/,U=/^([+-])(\d{2})(?::?(\d{2}))?$/;function p(K){var Y,te={},oe=K.split(d.dateTimeDelimiter);if(oe.length>2)return te;if(/:/.test(oe[0])?Y=oe[0]:(te.date=oe[0],Y=oe[1],d.timeZoneDelimiter.test(te.date)&&(te.date=K.split(d.timeZoneDelimiter)[0],Y=K.substr(te.date.length,K.length))),Y){var ge=d.timezone.exec(Y);ge?(te.time=Y.replace(ge[1],""),te.timezone=ge[1]):te.time=Y}return te}function f(K,Y){var te=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+Y)+"})|(\\d{2}|[+-]\\d{"+(2+Y)+"})$)"),oe=K.match(te);if(!oe)return{year:NaN,restDateString:""};var ge=oe[1]?parseInt(oe[1]):null,Se=oe[2]?parseInt(oe[2]):null;return{year:Se===null?ge:100*Se,restDateString:K.slice((oe[1]||oe[2]).length)}}function b(K,Y){if(Y===null)return new Date(NaN);var te=K.match(B);if(!te)return new Date(NaN);var oe=!!te[4],ge=M(te[1]),Se=M(te[2])-1,ve=M(te[3]),ye=M(te[4]),Je=M(te[5])-1;if(oe)return function(be,we,Ze){return we>=1&&we<=53&&Ze>=0&&Ze<=6}(0,ye,Je)?function(be,we,Ze){var Oe=new Date(0);Oe.setUTCFullYear(be,0,4);var gt=Oe.getUTCDay()||7,Tt=7*(we-1)+Ze+1-gt;return Oe.setUTCDate(Oe.getUTCDate()+Tt),Oe}(Y,ye,Je):new Date(NaN);var Ee=new Date(0);return function(be,we,Ze){return we>=0&&we<=11&&Ze>=1&&Ze<=(h[we]||(T(be)?29:28))}(Y,Se,ve)&&function(be,we){return we>=1&&we<=(T(be)?366:365)}(Y,ge)?(Ee.setUTCFullYear(Y,Se,Math.max(ge,ve)),Ee):new Date(NaN)}function M(K){return K?parseInt(K):1}function J(K){var Y=K.match(Q);if(!Y)return NaN;var te=m(Y[1]),oe=m(Y[2]),ge=m(Y[3]);return function(Se,ve,ye){return Se===24?ve===0&&ye===0:ye>=0&&ye<60&&ve>=0&&ve<60&&Se>=0&&Se<25}(te,oe,ge)?36e5*te+6e4*oe+1e3*ge:NaN}function m(K){return K&&parseFloat(K.replace(",","."))||0}function y(K){if(K==="Z")return 0;var Y=K.match(U);if(!Y)return 0;var te=Y[1]==="+"?-1:1,oe=parseInt(Y[2]),ge=Y[3]&&parseInt(Y[3])||0;return function(Se,ve){return ve>=0&&ve<=59}(0,ge)?te*(36e5*oe+6e4*ge):NaN}var h=[31,null,31,30,31,30,31,31,30,31,30,31];function T(K){return K%400==0||K%4==0&&K%100!=0}var I=n(40);function X(K){return u(1,arguments),K instanceof Date||Object(I.a)(K)==="object"&&Object.prototype.toString.call(K)==="[object Date]"}function F(K){u(1,arguments);var Y=Object.prototype.toString.call(K);return K instanceof Date||Object(I.a)(K)==="object"&&Y==="[object Date]"?new Date(K.getTime()):typeof K=="number"||Y==="[object Number]"?new Date(K):(typeof K!="string"&&Y!=="[object String]"||typeof console=="undefined"||(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 R(K){const Y=function(te,oe){var ge;u(1,arguments);var Se=c((ge=oe==null?void 0:oe.additionalDigits)!==null&&ge!==void 0?ge:2);if(Se!==2&&Se!==1&&Se!==0)throw new RangeError("additionalDigits must be 0, 1 or 2");if(typeof te!="string"&&Object.prototype.toString.call(te)!=="[object String]")return new Date(NaN);var ve,ye=p(te);if(ye.date){var Je=f(ye.date,Se);ve=b(Je.restDateString,Je.year)}if(!ve||isNaN(ve.getTime()))return new Date(NaN);var Ee,be=ve.getTime(),we=0;if(ye.time&&(we=J(ye.time),isNaN(we)))return new Date(NaN);if(!ye.timezone){var Ze=new Date(be+we),Oe=new Date(0);return Oe.setFullYear(Ze.getUTCFullYear(),Ze.getUTCMonth(),Ze.getUTCDate()),Oe.setHours(Ze.getUTCHours(),Ze.getUTCMinutes(),Ze.getUTCSeconds(),Ze.getUTCMilliseconds()),Oe}return Ee=y(ye.timezone),isNaN(Ee)?new Date(NaN):new Date(be+we+Ee)}(K);if(!function(te){if(u(1,arguments),!X(te)&&typeof te!="number")return!1;var oe=F(te);return!isNaN(Number(oe))}(Y))throw new Error(`Invalid ISO 8601 date string (${K})`);return Y}const x=Math.pow(2,20),w=x;var _=n(3),j=n(28);function C(K){return g()(K,{cycles:!0})}var W=function(K,Y){var te={};for(var oe in K)Object.prototype.hasOwnProperty.call(K,oe)&&Y.indexOf(oe)<0&&(te[oe]=K[oe]);if(K!=null&&typeof Object.getOwnPropertySymbols=="function"){var ge=0;for(oe=Object.getOwnPropertySymbols(K);ge<oe.length;ge++)Y.indexOf(oe[ge])<0&&Object.prototype.propertyIsEnumerable.call(K,oe[ge])&&(te[oe[ge]]=K[oe[ge]])}return te};function v(K,Y={}){const{redacted:te=!0}=Y,oe=Je=>te?Object(j.a)(Je):Je;if(!K.stack)return{message:C(oe(K))};const{name:ge,message:Se,stack:ve}=K,ye=W(K,["name","message","stack"]);return{name:ge,message:Se!==void 0?Se:C(oe(K)),stack:ve,meta:ye&&Object.keys(ye).length===0?void 0:oe(ye)}}function D(K,Y={}){const{message:te,stack:oe,meta:ge}=v(K,Y);return`${oe||te||""}${ge&&Object.keys(ge).length>0?" -- "+C(ge):""}`}var A=n(236);const E=Object(A.a)();var P=n(14),G=n.n(P),$=function(K,Y,te,oe){return new(te||(te=Promise))(function(ge,Se){function ve(Ee){try{Je(oe.next(Ee))}catch(be){Se(be)}}function ye(Ee){try{Je(oe.throw(Ee))}catch(be){Se(be)}}function Je(Ee){var be;Ee.done?ge(Ee.value):(be=Ee.value,be instanceof te?be:new te(function(we){we(be)})).then(ve,ye)}Je((oe=oe.apply(K,Y||[])).next())})},ee=function(K,Y){var te={};for(var oe in K)Object.prototype.hasOwnProperty.call(K,oe)&&Y.indexOf(oe)<0&&(te[oe]=K[oe]);if(K!=null&&typeof Object.getOwnPropertySymbols=="function"){var ge=0;for(oe=Object.getOwnPropertySymbols(K);ge<oe.length;ge++)Y.indexOf(oe[ge])<0&&Object.prototype.propertyIsEnumerable.call(K,oe[ge])&&(te[oe[ge]]=K[oe[ge]])}return te};class re extends G.a{constructor(Y,te){super(),this.endpoint=Y,this.metadata=te,this.logClient=this.getLogClient()}getLogClient(){return $(this,void 0,void 0,function*(){const{LogClient:Y}=yield Promise.resolve().then(n.bind(null,235));return new Y(this.endpoint)})}log(Y,te){return $(this,void 0,void 0,function*(){const{level:oe,message:ge,error:Se}=Y,ve=ee(Y,["level","message","error"]);this.emit("logged");try{yield(yield this.logClient).log([{timestamp:new Date().toISOString(),level:oe,message:(""+ge).substring(0,1e3),error:Se!==void 0?v(Se):void 0,meta:Object.assign(Object.assign({},ve),this.metadata)}])}catch(ye){console.error("Failed to log to log-api: "+D(ye))}te()})}}var O=function(K,Y){var te={};for(var oe in K)Object.prototype.hasOwnProperty.call(K,oe)&&Y.indexOf(oe)<0&&(te[oe]=K[oe]);if(K!=null&&typeof Object.getOwnPropertySymbols=="function"){var ge=0;for(oe=Object.getOwnPropertySymbols(K);ge<oe.length;ge++)Y.indexOf(oe[ge])<0&&Object.prototype.propertyIsEnumerable.call(K,oe[ge])&&(te[oe[ge]]=K[oe[ge]])}return te};const k={app:_.a,namespace:_.j,buildTag:_.c,instanceId:E},S=_.f?l.format.printf(K=>{var{timestamp:Y,level:te,message:oe,error:ge}=K,Se=O(K,["timestamp","level","message","error"]);const ve=Object.assign(Object.assign({timestamp:Y?R(Y).getTime():new Date().getTime(),level:te.toUpperCase(),message:oe},ge?{error:v(ge)}:{}),{meta:Object.assign(Object.assign({},k),Se)});return g()(ve,{cycles:!0})}):l.format.printf(K=>{var{timestamp:Y,level:te,message:oe,error:ge}=K,Se=O(K,["timestamp","level","message","error"]);let ve=`${Y||new Date().toISOString()} ${te.toUpperCase()}: ${oe} `;return Object.keys(Se).length>0&&(ve+=g()(Se,{cycles:!0})),ge&&(ve+=`
|
|
2
2
|
`+D(ge)),ve}),V=Object(l.createLogger)({level:_.g});if(V.add(new l.transports.Console({format:S,level:"debug"})),V.transports.forEach(K=>{K.silent=!_.h}),_.e&&V.add(new re(_.e,k)),_.i){const K=o.resolve(r.tmpdir(),`silly-${_.a}.log`);V.debug("Logging silly logs to file",{filename:K}),V.add(new l.transports.File({filename:K,maxsize:1*w,maxFiles:10,format:l.format.combine((z="silly",Object(l.format)(Y=>Y.level===z&&Y)()),S),level:"silly"}))}var z},function(e,t,n){n.d(t,"a",function(){return o});const r=864e5,o={millisecond:1,second:1e3,minute:6e4,hour:36e5,day:r,week:6048e5,month:2592e6,year:31536e6}},function(e,t){var n,r,o=e.exports={};function s(){throw new Error("setTimeout has not been defined")}function g(){throw new Error("clearTimeout has not been defined")}function l(b){if(n===setTimeout)return setTimeout(b,0);if((n===s||!n)&&setTimeout)return n=setTimeout,setTimeout(b,0);try{return n(b,0)}catch{try{return n.call(null,b,0)}catch{return n.call(this,b,0)}}}(function(){try{n=typeof setTimeout=="function"?setTimeout:s}catch{n=s}try{r=typeof clearTimeout=="function"?clearTimeout:g}catch{r=g}})();var u,c=[],d=!1,B=-1;function Q(){d&&u&&(d=!1,u.length?c=u.concat(c):B=-1,c.length&&U())}function U(){if(!d){var b=l(Q);d=!0;for(var M=c.length;M;){for(u=c,c=[];++B<M;)u&&u[B].run();B=-1,M=c.length}u=null,d=!1,function(J){if(r===clearTimeout)return clearTimeout(J);if((r===g||!r)&&clearTimeout)return r=clearTimeout,clearTimeout(J);try{r(J)}catch{try{return r.call(null,J)}catch{return r.call(this,J)}}}(b)}}function p(b,M){this.fun=b,this.array=M}function f(){}o.nextTick=function(b){var M=new Array(arguments.length-1);if(arguments.length>1)for(var J=1;J<arguments.length;J++)M[J-1]=arguments[J];c.push(new p(b,M)),c.length!==1||d||l(U)},p.prototype.run=function(){this.fun.apply(null,this.array)},o.title="browser",o.browser=!0,o.env={},o.argv=[],o.version="",o.versions={},o.on=f,o.addListener=f,o.once=f,o.off=f,o.removeListener=f,o.removeAllListeners=f,o.emit=f,o.prependListener=f,o.prependOnceListener=f,o.listeners=function(b){return[]},o.binding=function(b){throw new Error("process.binding is not supported")},o.cwd=function(){return"/"},o.chdir=function(b){throw new Error("process.chdir is not supported")},o.umask=function(){return 0}},function(e,t,n){(function(r){n.d(t,"a",function(){return g}),n.d(t,"j",function(){return l}),n.d(t,"k",function(){return u}),n.d(t,"c",function(){return c}),n.d(t,"g",function(){return d}),n.d(t,"f",function(){return B}),n.d(t,"h",function(){return Q}),n.d(t,"e",function(){return U}),n.d(t,"d",function(){return p}),n.d(t,"i",function(){return f}),n.d(t,"b",function(){return b});var o=n(100);const s=o.from({ENVIRONMENT:r.env.ENV,AGGREGATE_LEVEL:r.env.AGGREGATE_LEVEL,API_ENDPOINT:r.env.API_ENDPOINT,APP:"realtime-sdk",APP_PATH:r.env.APP_PATH,BUILD_TAG:r.env.BUILD_TAG,ENABLE_SELF_SERVE:r.env.ENABLE_SELF_SERVE,ENABLE_SENTRY:r.env.ENABLE_SENTRY,ENABLE_SENTRY_PROFILING:r.env.ENABLE_SENTRY_PROFILING,GIT_COMMIT:r.env.GIT_COMMIT,JEST_WORKER_ID:r.env.JEST_WORKER_ID,LOG_API_ENDPOINT:r.env.LOG_API_ENDPOINT,LOG_JSON:"false",LOG_LEVEL:r.env.LOG_LEVEL,LOG_TO_CONSOLE:r.env.LOG_TO_CONSOLE,LOG_TO_FILE:r.env.LOG_TO_FILE,NAMESPACE:"production",SENTRY_DSN:r.env.SENTRY_DSN,SHEET_EXPORT_MAX_ROW_COUNT:r.env.SHEET_EXPORT_MAX_ROW_COUNT,STABLE_AGENT_VERSION:r.env.STABLE_AGENT_VERSION,VERSION:r.env.VERSION,AUDIT_LOGS_ENABLED:r.env.AUDIT_LOGS_ENABLED}),g=(s.get("ENVIRONMENT").default("").asString(),s.get("APP").default("").asString()),l=(s.get("APP_PATH").default("").asString(),s.get("API_ENDPOINT").default("").asString(),s.get("NAMESPACE").default("").asString()),u=s.get("VERSION").default("").asString(),c=s.get("BUILD_TAG").default("").asString(),d=(s.get("GIT_COMMIT").default("").asString(),s.get("ENABLE_SENTRY").default("false").asBool(),s.get("ENABLE_SENTRY_PROFILING").default("false").asBool(),s.get("SENTRY_DSN").default("").asString(),s.get("LOG_LEVEL").default("debug").asString()),B=s.get("LOG_JSON").default("true").asBool(),Q=s.get("LOG_TO_CONSOLE").default("true").asBool(),U=(s.get("STABLE_AGENT_VERSION").default("").asString(),s.get("LOG_API_ENDPOINT").asString()),p=s.get("JEST_WORKER_ID").asString(),f=(s.get("SHEET_EXPORT_MAX_ROW_COUNT").default("10000").asIntPositive(),s.get("LOG_TO_FILE").default("false").asBoolStrict()),b=(s.get("ENABLE_SELF_SERVE").default("true").asBoolStrict(),s.get("AGGREGATE_LEVEL").default("hour").asEnum(["day","hour","minute"]),s.get("AUDIT_LOGS_ENABLED").default("true").asBoolStrict())}).call(this,n(2))},function(e,t,n){Object.defineProperty(t,"LEVEL",{value:Symbol.for("level")}),Object.defineProperty(t,"MESSAGE",{value:Symbol.for("message")}),Object.defineProperty(t,"SPLAT",{value:Symbol.for("splat")}),Object.defineProperty(t,"configs",{value:n(115)})},function(e,t,n){(function(r){var o=n(140),s=n(141),g=n(142);function l(){return c.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function u(S,V){if(l()<V)throw new RangeError("Invalid typed array length");return c.TYPED_ARRAY_SUPPORT?(S=new Uint8Array(V)).__proto__=c.prototype:(S===null&&(S=new c(V)),S.length=V),S}function c(S,V,z){if(!(c.TYPED_ARRAY_SUPPORT||this instanceof c))return new c(S,V,z);if(typeof S=="number"){if(typeof V=="string")throw new Error("If encoding is specified then the first argument must be a string");return Q(this,S)}return d(this,S,V,z)}function d(S,V,z,K){if(typeof V=="number")throw new TypeError('"value" argument must not be a number');return typeof ArrayBuffer!="undefined"&&V instanceof ArrayBuffer?function(Y,te,oe,ge){if(te.byteLength,oe<0||te.byteLength<oe)throw new RangeError("'offset' is out of bounds");if(te.byteLength<oe+(ge||0))throw new RangeError("'length' is out of bounds");return te=oe===void 0&&ge===void 0?new Uint8Array(te):ge===void 0?new Uint8Array(te,oe):new Uint8Array(te,oe,ge),c.TYPED_ARRAY_SUPPORT?(Y=te).__proto__=c.prototype:Y=U(Y,te),Y}(S,V,z,K):typeof V=="string"?function(Y,te,oe){if(typeof oe=="string"&&oe!==""||(oe="utf8"),!c.isEncoding(oe))throw new TypeError('"encoding" must be a valid string encoding');var ge=0|f(te,oe),Se=(Y=u(Y,ge)).write(te,oe);return Se!==ge&&(Y=Y.slice(0,Se)),Y}(S,V,z):function(Y,te){if(c.isBuffer(te)){var oe=0|p(te.length);return(Y=u(Y,oe)).length===0||te.copy(Y,0,0,oe),Y}if(te){if(typeof ArrayBuffer!="undefined"&&te.buffer instanceof ArrayBuffer||"length"in te)return typeof te.length!="number"||(ge=te.length)!=ge?u(Y,0):U(Y,te);if(te.type==="Buffer"&&g(te.data))return U(Y,te.data)}var ge;throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}(S,V)}function B(S){if(typeof S!="number")throw new TypeError('"size" argument must be a number');if(S<0)throw new RangeError('"size" argument must not be negative')}function Q(S,V){if(B(V),S=u(S,V<0?0:0|p(V)),!c.TYPED_ARRAY_SUPPORT)for(var z=0;z<V;++z)S[z]=0;return S}function U(S,V){var z=V.length<0?0:0|p(V.length);S=u(S,z);for(var K=0;K<z;K+=1)S[K]=255&V[K];return S}function p(S){if(S>=l())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+l().toString(16)+" bytes");return 0|S}function f(S,V){if(c.isBuffer(S))return S.length;if(typeof ArrayBuffer!="undefined"&&typeof ArrayBuffer.isView=="function"&&(ArrayBuffer.isView(S)||S instanceof ArrayBuffer))return S.byteLength;typeof S!="string"&&(S=""+S);var z=S.length;if(z===0)return 0;for(var K=!1;;)switch(V){case"ascii":case"latin1":case"binary":return z;case"utf8":case"utf-8":case void 0:return re(S).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*z;case"hex":return z>>>1;case"base64":return O(S).length;default:if(K)return re(S).length;V=(""+V).toLowerCase(),K=!0}}function b(S,V,z){var K=!1;if((V===void 0||V<0)&&(V=0),V>this.length||((z===void 0||z>this.length)&&(z=this.length),z<=0)||(z>>>=0)<=(V>>>=0))return"";for(S||(S="utf8");;)switch(S){case"hex":return j(this,V,z);case"utf8":case"utf-8":return x(this,V,z);case"ascii":return w(this,V,z);case"latin1":case"binary":return _(this,V,z);case"base64":return R(this,V,z);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return C(this,V,z);default:if(K)throw new TypeError("Unknown encoding: "+S);S=(S+"").toLowerCase(),K=!0}}function M(S,V,z){var K=S[V];S[V]=S[z],S[z]=K}function J(S,V,z,K,Y){if(S.length===0)return-1;if(typeof z=="string"?(K=z,z=0):z>2147483647?z=2147483647:z<-2147483648&&(z=-2147483648),z=+z,isNaN(z)&&(z=Y?0:S.length-1),z<0&&(z=S.length+z),z>=S.length){if(Y)return-1;z=S.length-1}else if(z<0){if(!Y)return-1;z=0}if(typeof V=="string"&&(V=c.from(V,K)),c.isBuffer(V))return V.length===0?-1:m(S,V,z,K,Y);if(typeof V=="number")return V&=255,c.TYPED_ARRAY_SUPPORT&&typeof Uint8Array.prototype.indexOf=="function"?Y?Uint8Array.prototype.indexOf.call(S,V,z):Uint8Array.prototype.lastIndexOf.call(S,V,z):m(S,[V],z,K,Y);throw new TypeError("val must be string, number or Buffer")}function m(S,V,z,K,Y){var te,oe=1,ge=S.length,Se=V.length;if(K!==void 0&&((K=String(K).toLowerCase())==="ucs2"||K==="ucs-2"||K==="utf16le"||K==="utf-16le")){if(S.length<2||V.length<2)return-1;oe=2,ge/=2,Se/=2,z/=2}function ve(be,we){return oe===1?be[we]:be.readUInt16BE(we*oe)}if(Y){var ye=-1;for(te=z;te<ge;te++)if(ve(S,te)===ve(V,ye===-1?0:te-ye)){if(ye===-1&&(ye=te),te-ye+1===Se)return ye*oe}else ye!==-1&&(te-=te-ye),ye=-1}else for(z+Se>ge&&(z=ge-Se),te=z;te>=0;te--){for(var Je=!0,Ee=0;Ee<Se;Ee++)if(ve(S,te+Ee)!==ve(V,Ee)){Je=!1;break}if(Je)return te}return-1}function y(S,V,z,K){z=Number(z)||0;var Y=S.length-z;K?(K=Number(K))>Y&&(K=Y):K=Y;var te=V.length;if(te%2!=0)throw new TypeError("Invalid hex string");K>te/2&&(K=te/2);for(var oe=0;oe<K;++oe){var ge=parseInt(V.substr(2*oe,2),16);if(isNaN(ge))return oe;S[z+oe]=ge}return oe}function h(S,V,z,K){return k(re(V,S.length-z),S,z,K)}function T(S,V,z,K){return k(function(Y){for(var te=[],oe=0;oe<Y.length;++oe)te.push(255&Y.charCodeAt(oe));return te}(V),S,z,K)}function I(S,V,z,K){return T(S,V,z,K)}function X(S,V,z,K){return k(O(V),S,z,K)}function F(S,V,z,K){return k(function(Y,te){for(var oe,ge,Se,ve=[],ye=0;ye<Y.length&&!((te-=2)<0);++ye)oe=Y.charCodeAt(ye),ge=oe>>8,Se=oe%256,ve.push(Se),ve.push(ge);return ve}(V,S.length-z),S,z,K)}function R(S,V,z){return V===0&&z===S.length?o.fromByteArray(S):o.fromByteArray(S.slice(V,z))}function x(S,V,z){z=Math.min(S.length,z);for(var K=[],Y=V;Y<z;){var te,oe,ge,Se,ve=S[Y],ye=null,Je=ve>239?4:ve>223?3:ve>191?2:1;if(Y+Je<=z)switch(Je){case 1:ve<128&&(ye=ve);break;case 2:(192&(te=S[Y+1]))==128&&(Se=(31&ve)<<6|63&te)>127&&(ye=Se);break;case 3:te=S[Y+1],oe=S[Y+2],(192&te)==128&&(192&oe)==128&&(Se=(15&ve)<<12|(63&te)<<6|63&oe)>2047&&(Se<55296||Se>57343)&&(ye=Se);break;case 4:te=S[Y+1],oe=S[Y+2],ge=S[Y+3],(192&te)==128&&(192&oe)==128&&(192&ge)==128&&(Se=(15&ve)<<18|(63&te)<<12|(63&oe)<<6|63&ge)>65535&&Se<1114112&&(ye=Se)}ye===null?(ye=65533,Je=1):ye>65535&&(ye-=65536,K.push(ye>>>10&1023|55296),ye=56320|1023&ye),K.push(ye),Y+=Je}return function(Ee){var be=Ee.length;if(be<=4096)return String.fromCharCode.apply(String,Ee);for(var we="",Ze=0;Ze<be;)we+=String.fromCharCode.apply(String,Ee.slice(Ze,Ze+=4096));return we}(K)}t.Buffer=c,t.SlowBuffer=function(S){return+S!=S&&(S=0),c.alloc(+S)},t.INSPECT_MAX_BYTES=50,c.TYPED_ARRAY_SUPPORT=r.TYPED_ARRAY_SUPPORT!==void 0?r.TYPED_ARRAY_SUPPORT:function(){try{var S=new Uint8Array(1);return S.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},S.foo()===42&&typeof S.subarray=="function"&&S.subarray(1,1).byteLength===0}catch{return!1}}(),t.kMaxLength=l(),c.poolSize=8192,c._augment=function(S){return S.__proto__=c.prototype,S},c.from=function(S,V,z){return d(null,S,V,z)},c.TYPED_ARRAY_SUPPORT&&(c.prototype.__proto__=Uint8Array.prototype,c.__proto__=Uint8Array,typeof Symbol!="undefined"&&Symbol.species&&c[Symbol.species]===c&&Object.defineProperty(c,Symbol.species,{value:null,configurable:!0})),c.alloc=function(S,V,z){return function(K,Y,te,oe){return B(Y),Y<=0?u(K,Y):te!==void 0?typeof oe=="string"?u(K,Y).fill(te,oe):u(K,Y).fill(te):u(K,Y)}(null,S,V,z)},c.allocUnsafe=function(S){return Q(null,S)},c.allocUnsafeSlow=function(S){return Q(null,S)},c.isBuffer=function(S){return!(S==null||!S._isBuffer)},c.compare=function(S,V){if(!c.isBuffer(S)||!c.isBuffer(V))throw new TypeError("Arguments must be Buffers");if(S===V)return 0;for(var z=S.length,K=V.length,Y=0,te=Math.min(z,K);Y<te;++Y)if(S[Y]!==V[Y]){z=S[Y],K=V[Y];break}return z<K?-1:K<z?1:0},c.isEncoding=function(S){switch(String(S).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},c.concat=function(S,V){if(!g(S))throw new TypeError('"list" argument must be an Array of Buffers');if(S.length===0)return c.alloc(0);var z;if(V===void 0)for(V=0,z=0;z<S.length;++z)V+=S[z].length;var K=c.allocUnsafe(V),Y=0;for(z=0;z<S.length;++z){var te=S[z];if(!c.isBuffer(te))throw new TypeError('"list" argument must be an Array of Buffers');te.copy(K,Y),Y+=te.length}return K},c.byteLength=f,c.prototype._isBuffer=!0,c.prototype.swap16=function(){var S=this.length;if(S%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var V=0;V<S;V+=2)M(this,V,V+1);return this},c.prototype.swap32=function(){var S=this.length;if(S%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var V=0;V<S;V+=4)M(this,V,V+3),M(this,V+1,V+2);return this},c.prototype.swap64=function(){var S=this.length;if(S%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var V=0;V<S;V+=8)M(this,V,V+7),M(this,V+1,V+6),M(this,V+2,V+5),M(this,V+3,V+4);return this},c.prototype.toString=function(){var S=0|this.length;return S===0?"":arguments.length===0?x(this,0,S):b.apply(this,arguments)},c.prototype.equals=function(S){if(!c.isBuffer(S))throw new TypeError("Argument must be a Buffer");return this===S||c.compare(this,S)===0},c.prototype.inspect=function(){var S="",V=t.INSPECT_MAX_BYTES;return this.length>0&&(S=this.toString("hex",0,V).match(/.{2}/g).join(" "),this.length>V&&(S+=" ... ")),"<Buffer "+S+">"},c.prototype.compare=function(S,V,z,K,Y){if(!c.isBuffer(S))throw new TypeError("Argument must be a Buffer");if(V===void 0&&(V=0),z===void 0&&(z=S?S.length:0),K===void 0&&(K=0),Y===void 0&&(Y=this.length),V<0||z>S.length||K<0||Y>this.length)throw new RangeError("out of range index");if(K>=Y&&V>=z)return 0;if(K>=Y)return-1;if(V>=z)return 1;if(this===S)return 0;for(var te=(Y>>>=0)-(K>>>=0),oe=(z>>>=0)-(V>>>=0),ge=Math.min(te,oe),Se=this.slice(K,Y),ve=S.slice(V,z),ye=0;ye<ge;++ye)if(Se[ye]!==ve[ye]){te=Se[ye],oe=ve[ye];break}return te<oe?-1:oe<te?1:0},c.prototype.includes=function(S,V,z){return this.indexOf(S,V,z)!==-1},c.prototype.indexOf=function(S,V,z){return J(this,S,V,z,!0)},c.prototype.lastIndexOf=function(S,V,z){return J(this,S,V,z,!1)},c.prototype.write=function(S,V,z,K){if(V===void 0)K="utf8",z=this.length,V=0;else if(z===void 0&&typeof V=="string")K=V,z=this.length,V=0;else{if(!isFinite(V))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");V|=0,isFinite(z)?(z|=0,K===void 0&&(K="utf8")):(K=z,z=void 0)}var Y=this.length-V;if((z===void 0||z>Y)&&(z=Y),S.length>0&&(z<0||V<0)||V>this.length)throw new RangeError("Attempt to write outside buffer bounds");K||(K="utf8");for(var te=!1;;)switch(K){case"hex":return y(this,S,V,z);case"utf8":case"utf-8":return h(this,S,V,z);case"ascii":return T(this,S,V,z);case"latin1":case"binary":return I(this,S,V,z);case"base64":return X(this,S,V,z);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return F(this,S,V,z);default:if(te)throw new TypeError("Unknown encoding: "+K);K=(""+K).toLowerCase(),te=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function w(S,V,z){var K="";z=Math.min(S.length,z);for(var Y=V;Y<z;++Y)K+=String.fromCharCode(127&S[Y]);return K}function _(S,V,z){var K="";z=Math.min(S.length,z);for(var Y=V;Y<z;++Y)K+=String.fromCharCode(S[Y]);return K}function j(S,V,z){var K=S.length;(!V||V<0)&&(V=0),(!z||z<0||z>K)&&(z=K);for(var Y="",te=V;te<z;++te)Y+=ee(S[te]);return Y}function C(S,V,z){for(var K=S.slice(V,z),Y="",te=0;te<K.length;te+=2)Y+=String.fromCharCode(K[te]+256*K[te+1]);return Y}function W(S,V,z){if(S%1!=0||S<0)throw new RangeError("offset is not uint");if(S+V>z)throw new RangeError("Trying to access beyond buffer length")}function v(S,V,z,K,Y,te){if(!c.isBuffer(S))throw new TypeError('"buffer" argument must be a Buffer instance');if(V>Y||V<te)throw new RangeError('"value" argument is out of bounds');if(z+K>S.length)throw new RangeError("Index out of range")}function D(S,V,z,K){V<0&&(V=65535+V+1);for(var Y=0,te=Math.min(S.length-z,2);Y<te;++Y)S[z+Y]=(V&255<<8*(K?Y:1-Y))>>>8*(K?Y:1-Y)}function A(S,V,z,K){V<0&&(V=4294967295+V+1);for(var Y=0,te=Math.min(S.length-z,4);Y<te;++Y)S[z+Y]=V>>>8*(K?Y:3-Y)&255}function E(S,V,z,K,Y,te){if(z+K>S.length)throw new RangeError("Index out of range");if(z<0)throw new RangeError("Index out of range")}function P(S,V,z,K,Y){return Y||E(S,0,z,4),s.write(S,V,z,K,23,4),z+4}function G(S,V,z,K,Y){return Y||E(S,0,z,8),s.write(S,V,z,K,52,8),z+8}c.prototype.slice=function(S,V){var z,K=this.length;if((S=~~S)<0?(S+=K)<0&&(S=0):S>K&&(S=K),(V=V===void 0?K:~~V)<0?(V+=K)<0&&(V=0):V>K&&(V=K),V<S&&(V=S),c.TYPED_ARRAY_SUPPORT)(z=this.subarray(S,V)).__proto__=c.prototype;else{var Y=V-S;z=new c(Y,void 0);for(var te=0;te<Y;++te)z[te]=this[te+S]}return z},c.prototype.readUIntLE=function(S,V,z){S|=0,V|=0,z||W(S,V,this.length);for(var K=this[S],Y=1,te=0;++te<V&&(Y*=256);)K+=this[S+te]*Y;return K},c.prototype.readUIntBE=function(S,V,z){S|=0,V|=0,z||W(S,V,this.length);for(var K=this[S+--V],Y=1;V>0&&(Y*=256);)K+=this[S+--V]*Y;return K},c.prototype.readUInt8=function(S,V){return V||W(S,1,this.length),this[S]},c.prototype.readUInt16LE=function(S,V){return V||W(S,2,this.length),this[S]|this[S+1]<<8},c.prototype.readUInt16BE=function(S,V){return V||W(S,2,this.length),this[S]<<8|this[S+1]},c.prototype.readUInt32LE=function(S,V){return V||W(S,4,this.length),(this[S]|this[S+1]<<8|this[S+2]<<16)+16777216*this[S+3]},c.prototype.readUInt32BE=function(S,V){return V||W(S,4,this.length),16777216*this[S]+(this[S+1]<<16|this[S+2]<<8|this[S+3])},c.prototype.readIntLE=function(S,V,z){S|=0,V|=0,z||W(S,V,this.length);for(var K=this[S],Y=1,te=0;++te<V&&(Y*=256);)K+=this[S+te]*Y;return K>=(Y*=128)&&(K-=Math.pow(2,8*V)),K},c.prototype.readIntBE=function(S,V,z){S|=0,V|=0,z||W(S,V,this.length);for(var K=V,Y=1,te=this[S+--K];K>0&&(Y*=256);)te+=this[S+--K]*Y;return te>=(Y*=128)&&(te-=Math.pow(2,8*V)),te},c.prototype.readInt8=function(S,V){return V||W(S,1,this.length),128&this[S]?-1*(255-this[S]+1):this[S]},c.prototype.readInt16LE=function(S,V){V||W(S,2,this.length);var z=this[S]|this[S+1]<<8;return 32768&z?4294901760|z:z},c.prototype.readInt16BE=function(S,V){V||W(S,2,this.length);var z=this[S+1]|this[S]<<8;return 32768&z?4294901760|z:z},c.prototype.readInt32LE=function(S,V){return V||W(S,4,this.length),this[S]|this[S+1]<<8|this[S+2]<<16|this[S+3]<<24},c.prototype.readInt32BE=function(S,V){return V||W(S,4,this.length),this[S]<<24|this[S+1]<<16|this[S+2]<<8|this[S+3]},c.prototype.readFloatLE=function(S,V){return V||W(S,4,this.length),s.read(this,S,!0,23,4)},c.prototype.readFloatBE=function(S,V){return V||W(S,4,this.length),s.read(this,S,!1,23,4)},c.prototype.readDoubleLE=function(S,V){return V||W(S,8,this.length),s.read(this,S,!0,52,8)},c.prototype.readDoubleBE=function(S,V){return V||W(S,8,this.length),s.read(this,S,!1,52,8)},c.prototype.writeUIntLE=function(S,V,z,K){S=+S,V|=0,z|=0,K||v(this,S,V,z,Math.pow(2,8*z)-1,0);var Y=1,te=0;for(this[V]=255&S;++te<z&&(Y*=256);)this[V+te]=S/Y&255;return V+z},c.prototype.writeUIntBE=function(S,V,z,K){S=+S,V|=0,z|=0,K||v(this,S,V,z,Math.pow(2,8*z)-1,0);var Y=z-1,te=1;for(this[V+Y]=255&S;--Y>=0&&(te*=256);)this[V+Y]=S/te&255;return V+z},c.prototype.writeUInt8=function(S,V,z){return S=+S,V|=0,z||v(this,S,V,1,255,0),c.TYPED_ARRAY_SUPPORT||(S=Math.floor(S)),this[V]=255&S,V+1},c.prototype.writeUInt16LE=function(S,V,z){return S=+S,V|=0,z||v(this,S,V,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[V]=255&S,this[V+1]=S>>>8):D(this,S,V,!0),V+2},c.prototype.writeUInt16BE=function(S,V,z){return S=+S,V|=0,z||v(this,S,V,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[V]=S>>>8,this[V+1]=255&S):D(this,S,V,!1),V+2},c.prototype.writeUInt32LE=function(S,V,z){return S=+S,V|=0,z||v(this,S,V,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[V+3]=S>>>24,this[V+2]=S>>>16,this[V+1]=S>>>8,this[V]=255&S):A(this,S,V,!0),V+4},c.prototype.writeUInt32BE=function(S,V,z){return S=+S,V|=0,z||v(this,S,V,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[V]=S>>>24,this[V+1]=S>>>16,this[V+2]=S>>>8,this[V+3]=255&S):A(this,S,V,!1),V+4},c.prototype.writeIntLE=function(S,V,z,K){if(S=+S,V|=0,!K){var Y=Math.pow(2,8*z-1);v(this,S,V,z,Y-1,-Y)}var te=0,oe=1,ge=0;for(this[V]=255&S;++te<z&&(oe*=256);)S<0&&ge===0&&this[V+te-1]!==0&&(ge=1),this[V+te]=(S/oe>>0)-ge&255;return V+z},c.prototype.writeIntBE=function(S,V,z,K){if(S=+S,V|=0,!K){var Y=Math.pow(2,8*z-1);v(this,S,V,z,Y-1,-Y)}var te=z-1,oe=1,ge=0;for(this[V+te]=255&S;--te>=0&&(oe*=256);)S<0&&ge===0&&this[V+te+1]!==0&&(ge=1),this[V+te]=(S/oe>>0)-ge&255;return V+z},c.prototype.writeInt8=function(S,V,z){return S=+S,V|=0,z||v(this,S,V,1,127,-128),c.TYPED_ARRAY_SUPPORT||(S=Math.floor(S)),S<0&&(S=255+S+1),this[V]=255&S,V+1},c.prototype.writeInt16LE=function(S,V,z){return S=+S,V|=0,z||v(this,S,V,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[V]=255&S,this[V+1]=S>>>8):D(this,S,V,!0),V+2},c.prototype.writeInt16BE=function(S,V,z){return S=+S,V|=0,z||v(this,S,V,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[V]=S>>>8,this[V+1]=255&S):D(this,S,V,!1),V+2},c.prototype.writeInt32LE=function(S,V,z){return S=+S,V|=0,z||v(this,S,V,4,2147483647,-2147483648),c.TYPED_ARRAY_SUPPORT?(this[V]=255&S,this[V+1]=S>>>8,this[V+2]=S>>>16,this[V+3]=S>>>24):A(this,S,V,!0),V+4},c.prototype.writeInt32BE=function(S,V,z){return S=+S,V|=0,z||v(this,S,V,4,2147483647,-2147483648),S<0&&(S=4294967295+S+1),c.TYPED_ARRAY_SUPPORT?(this[V]=S>>>24,this[V+1]=S>>>16,this[V+2]=S>>>8,this[V+3]=255&S):A(this,S,V,!1),V+4},c.prototype.writeFloatLE=function(S,V,z){return P(this,S,V,!0,z)},c.prototype.writeFloatBE=function(S,V,z){return P(this,S,V,!1,z)},c.prototype.writeDoubleLE=function(S,V,z){return G(this,S,V,!0,z)},c.prototype.writeDoubleBE=function(S,V,z){return G(this,S,V,!1,z)},c.prototype.copy=function(S,V,z,K){if(z||(z=0),K||K===0||(K=this.length),V>=S.length&&(V=S.length),V||(V=0),K>0&&K<z&&(K=z),K===z||S.length===0||this.length===0)return 0;if(V<0)throw new RangeError("targetStart out of bounds");if(z<0||z>=this.length)throw new RangeError("sourceStart out of bounds");if(K<0)throw new RangeError("sourceEnd out of bounds");K>this.length&&(K=this.length),S.length-V<K-z&&(K=S.length-V+z);var Y,te=K-z;if(this===S&&z<V&&V<K)for(Y=te-1;Y>=0;--Y)S[Y+V]=this[Y+z];else if(te<1e3||!c.TYPED_ARRAY_SUPPORT)for(Y=0;Y<te;++Y)S[Y+V]=this[Y+z];else Uint8Array.prototype.set.call(S,this.subarray(z,z+te),V);return te},c.prototype.fill=function(S,V,z,K){if(typeof S=="string"){if(typeof V=="string"?(K=V,V=0,z=this.length):typeof z=="string"&&(K=z,z=this.length),S.length===1){var Y=S.charCodeAt(0);Y<256&&(S=Y)}if(K!==void 0&&typeof K!="string")throw new TypeError("encoding must be a string");if(typeof K=="string"&&!c.isEncoding(K))throw new TypeError("Unknown encoding: "+K)}else typeof S=="number"&&(S&=255);if(V<0||this.length<V||this.length<z)throw new RangeError("Out of range index");if(z<=V)return this;var te;if(V>>>=0,z=z===void 0?this.length:z>>>0,S||(S=0),typeof S=="number")for(te=V;te<z;++te)this[te]=S;else{var oe=c.isBuffer(S)?S:re(new c(S,K).toString()),ge=oe.length;for(te=0;te<z-V;++te)this[te+V]=oe[te%ge]}return this};var $=/[^+\/0-9A-Za-z-_]/g;function ee(S){return S<16?"0"+S.toString(16):S.toString(16)}function re(S,V){var z;V=V||1/0;for(var K=S.length,Y=null,te=[],oe=0;oe<K;++oe){if((z=S.charCodeAt(oe))>55295&&z<57344){if(!Y){if(z>56319){(V-=3)>-1&&te.push(239,191,189);continue}if(oe+1===K){(V-=3)>-1&&te.push(239,191,189);continue}Y=z;continue}if(z<56320){(V-=3)>-1&&te.push(239,191,189),Y=z;continue}z=65536+(Y-55296<<10|z-56320)}else Y&&(V-=3)>-1&&te.push(239,191,189);if(Y=null,z<128){if((V-=1)<0)break;te.push(z)}else if(z<2048){if((V-=2)<0)break;te.push(z>>6|192,63&z|128)}else if(z<65536){if((V-=3)<0)break;te.push(z>>12|224,z>>6&63|128,63&z|128)}else{if(!(z<1114112))throw new Error("Invalid code point");if((V-=4)<0)break;te.push(z>>18|240,z>>12&63|128,z>>6&63|128,63&z|128)}}return te}function O(S){return o.toByteArray(function(V){if((V=function(z){return z.trim?z.trim():z.replace(/^\s+|\s+$/g,"")}(V).replace($,"")).length<2)return"";for(;V.length%4!=0;)V+="=";return V}(S))}function k(S,V,z,K){for(var Y=0;Y<K&&!(Y+z>=V.length||Y>=S.length);++Y)V[Y+z]=S[Y];return Y}}).call(this,n(6))},function(e,t){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch{typeof window=="object"&&(n=window)}e.exports=n},function(e,t){typeof Object.create=="function"?e.exports=function(n,r){r&&(n.super_=r,n.prototype=Object.create(r.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(n,r){if(r){n.super_=r;var o=function(){};o.prototype=r.prototype,n.prototype=new o,n.prototype.constructor=n}}},function(e,t,n){function r(Q){return(r=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(U){return typeof U}:function(U){return U&&typeof Symbol=="function"&&U.constructor===Symbol&&U!==Symbol.prototype?"symbol":typeof U})(Q)}function o(Q,U){if(U&&(r(U)==="object"||typeof U=="function"))return U;if(U!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return s(Q)}function s(Q){if(Q===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Q}function g(Q){var U=typeof Map=="function"?new Map:void 0;return(g=function(p){if(p===null||(f=p,Function.toString.call(f).indexOf("[native code]")===-1))return p;var f;if(typeof p!="function")throw new TypeError("Super expression must either be null or a function");if(U!==void 0){if(U.has(p))return U.get(p);U.set(p,b)}function b(){return l(p,arguments,d(this).constructor)}return b.prototype=Object.create(p.prototype,{constructor:{value:b,enumerable:!1,writable:!0,configurable:!0}}),c(b,p)})(Q)}function l(Q,U,p){return(l=u()?Reflect.construct.bind():function(f,b,M){var J=[null];J.push.apply(J,b);var m=new(Function.bind.apply(f,J));return M&&c(m,M.prototype),m}).apply(null,arguments)}function u(){if(typeof Reflect=="undefined"||!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 c(Q,U){return(c=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(p,f){return p.__proto__=f,p})(Q,U)}function d(Q){return(d=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(U){return U.__proto__||Object.getPrototypeOf(U)})(Q)}var B=function(Q){(function(J,m){if(typeof m!="function"&&m!==null)throw new TypeError("Super expression must either be null or a function");J.prototype=Object.create(m&&m.prototype,{constructor:{value:J,writable:!0,configurable:!0}}),Object.defineProperty(J,"prototype",{writable:!1}),m&&c(J,m)})(M,Q);var U,p,f,b=(U=M,p=u(),function(){var J,m=d(U);if(p){var y=d(this).constructor;J=Reflect.construct(m,arguments,y)}else J=m.apply(this,arguments);return o(this,J)});function M(J){var m;return function(y,h){if(!(y instanceof h))throw new TypeError("Cannot call a class as a function")}(this,M),m=b.call(this,`Format functions must be synchronous taking a two arguments: (info, opts)
|
|
3
3
|
Found: `.concat(J.toString().split(`
|
|
4
4
|
`)[0],`
|