easyproctor 1.1.16 → 2.0.0

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.
@@ -1,29 +1,67 @@
1
- "use strict";(()=>{var Mu=Object.create;var T0=Object.defineProperty;var ku=Object.getOwnPropertyDescriptor;var Bu=Object.getOwnPropertyNames;var Iu=Object.getPrototypeOf,Cu=Object.prototype.hasOwnProperty;var M0=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Ou=(e,t,r,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of Bu(t))!Cu.call(e,n)&&n!==r&&T0(e,n,{get:()=>t[n],enumerable:!(i=ku(t,n))||i.enumerable});return e};var Pu=(e,t,r)=>(r=e!=null?Mu(Iu(e)):{},Ou(t||!e||!e.__esModule?T0(r,"default",{value:e,enumerable:!0}):r,e));var b1=M0((co,uo)=>{(function(e,t){typeof define=="function"&&define.amd?define([],t):typeof co<"u"?t():(t(),e.FileSaver={})})(co,function(){"use strict";function e(R,k){return typeof k>"u"?k={autoBom:!1}:typeof k!="object"&&(console.warn("Deprecated: Expected third argument to be a object"),k={autoBom:!k}),k.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(R.type)?new Blob(["\uFEFF",R],{type:R.type}):R}function t(R,k,F){var Q=new XMLHttpRequest;Q.open("GET",R),Q.responseType="blob",Q.onload=function(){f(Q.response,k,F)},Q.onerror=function(){console.error("could not download file")},Q.send()}function r(R){var k=new XMLHttpRequest;k.open("HEAD",R,!1);try{k.send()}catch{}return 200<=k.status&&299>=k.status}function i(R){try{R.dispatchEvent(new MouseEvent("click"))}catch{var k=document.createEvent("MouseEvents");k.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),R.dispatchEvent(k)}}var n=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof global=="object"&&global.global===global?global:void 0,o=n.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),f=n.saveAs||(typeof window!="object"||window!==n?function(){}:"download"in HTMLAnchorElement.prototype&&!o?function(R,k,F){var Q=n.URL||n.webkitURL,ee=document.createElement("a");k=k||R.name||"download",ee.download=k,ee.rel="noopener",typeof R=="string"?(ee.href=R,ee.origin===location.origin?i(ee):r(ee.href)?t(R,k,F):i(ee,ee.target="_blank")):(ee.href=Q.createObjectURL(R),setTimeout(function(){Q.revokeObjectURL(ee.href)},4e4),setTimeout(function(){i(ee)},0))}:"msSaveOrOpenBlob"in navigator?function(R,k,F){if(k=k||R.name||"download",typeof R!="string")navigator.msSaveOrOpenBlob(e(R,F),k);else if(r(R))t(R,k,F);else{var Q=document.createElement("a");Q.href=R,Q.target="_blank",setTimeout(function(){i(Q)})}}:function(R,k,F,Q){if(Q=Q||open("","_blank"),Q&&(Q.document.title=Q.document.body.innerText="downloading..."),typeof R=="string")return t(R,k,F);var ee=R.type==="application/octet-stream",Ee=/constructor/i.test(n.HTMLElement)||n.safari,Ie=/CriOS\/[\d]+/.test(navigator.userAgent);if((Ie||ee&&Ee||o)&&typeof FileReader<"u"){var pe=new FileReader;pe.onloadend=function(){var Ue=pe.result;Ue=Ie?Ue:Ue.replace(/^data:[^;]*;/,"data:attachment/file;"),Q?Q.location.href=Ue:location=Ue,Q=null},pe.readAsDataURL(R)}else{var Te=n.URL||n.webkitURL,te=Te.createObjectURL(R);Q?Q.location=te:location.href=te,Q=null,setTimeout(function(){Te.revokeObjectURL(te)},4e4)}});n.saveAs=f.saveAs=f,typeof uo<"u"&&(uo.exports=f)})});var S1=M0((ho,fo)=>{"use strict";(function(e,t){typeof ho=="object"&&typeof fo<"u"?fo.exports=t():typeof define=="function"&&define.amd?define(t):e.MicRecorder=t()})(ho,function(){function e(T){return new Int8Array(T)}function t(T){return new Int16Array(T)}function r(T){return new Int32Array(T)}function i(T){return new Float32Array(T)}function n(T){return new Float64Array(T)}function o(T){if(T.length==1)return i(T[0]);var G=T[0];T=T.slice(1);for(var J=[],$=0;$<G;$++)J.push(o(T));return J}function f(T){if(T.length==1)return r(T[0]);var G=T[0];T=T.slice(1);for(var J=[],$=0;$<G;$++)J.push(f(T));return J}function R(T){if(T.length==1)return t(T[0]);var G=T[0];T=T.slice(1);for(var J=[],$=0;$<G;$++)J.push(R(T));return J}function k(T){if(T.length==1)return new Array(T[0]);var G=T[0];T=T.slice(1);for(var J=[],$=0;$<G;$++)J.push(k(T));return J}var F={};F.fill=function(T,G,J,$){if(arguments.length==2)for(var he=0;he<T.length;he++)T[he]=arguments[1];else for(var he=G;he<J;he++)T[he]=$};var Q={};Q.arraycopy=function(T,G,J,$,he){for(var Y=G+he;G<Y;)J[$++]=T[G++]};var ee={};ee.SQRT2=1.4142135623730951,ee.FAST_LOG10=function(T){return Math.log10(T)},ee.FAST_LOG10_X=function(T,G){return Math.log10(T)*G};function Ee(T){this.ordinal=T}Ee.short_block_allowed=new Ee(0),Ee.short_block_coupled=new Ee(1),Ee.short_block_dispensed=new Ee(2),Ee.short_block_forced=new Ee(3);var Ie={};Ie.MAX_VALUE=34028235e31;function pe(T){this.ordinal=T}pe.vbr_off=new pe(0),pe.vbr_mt=new pe(1),pe.vbr_rh=new pe(2),pe.vbr_abr=new pe(3),pe.vbr_mtrh=new pe(4),pe.vbr_default=pe.vbr_mtrh;var Te=function(T){},te={System:Q,VbrMode:pe,Float:Ie,ShortBlock:Ee,Util:ee,Arrays:F,new_array_n:k,new_byte:e,new_double:n,new_float:i,new_float_n:o,new_int:r,new_int_n:f,new_short:t,new_short_n:R,assert:Te},Ue=te.System,De=te.Util,tt=te.Arrays,gt=te.new_float;function Rt(){var T=[-.1482523854003001,32.308141959636465,296.40344946382766,883.1344870032432,11113.947376231741,1057.2713659324597,305.7402417275812,30.825928907280012,3.8533188138216365,59.42900443849514,709.5899960123345,5281.91112291017,-5829.66483675846,-817.6293103748613,-76.91656988279972,-4.594269939176596,.9063471690191471,.1960342806591213,-.15466694054279598,34.324387823855965,301.8067566458425,817.599602898885,11573.795901679885,1181.2520595540152,321.59731579894424,31.232021761053772,3.7107095756221318,53.650946155329365,684.167428119626,5224.56624370173,-6366.391851890084,-908.9766368219582,-89.83068876699639,-5.411397422890401,.8206787908286602,.3901806440322567,-.16070888947830023,36.147034243915876,304.11815768187864,732.7429163887613,11989.60988270091,1300.012278487897,335.28490093152146,31.48816102859945,3.373875931311736,47.232241542899175,652.7371796173471,5132.414255594984,-6909.087078780055,-1001.9990371107289,-103.62185754286375,-6.104916304710272,.7416505462720353,.5805693545089249,-.16636367662261495,37.751650073343995,303.01103387567713,627.9747488785183,12358.763425278165,1412.2779918482834,346.7496836825721,31.598286663170416,3.1598635433980946,40.57878626349686,616.1671130880391,5007.833007176154,-7454.040671756168,-1095.7960341867115,-118.24411666465777,-6.818469345853504,.6681786379192989,.7653668647301797,-.1716176790982088,39.11551877123304,298.3413246578966,503.5259106886539,12679.589408408976,1516.5821921214542,355.9850766329023,31.395241710249053,2.9164211881972335,33.79716964664243,574.8943997801362,4853.234992253242,-7997.57021486075,-1189.7624067269965,-133.6444792601766,-7.7202770609839915,.5993769336819237,.9427934736519954,-.17645823955292173,40.21879108166477,289.9982036694474,359.3226160751053,12950.259102786438,1612.1013903507662,362.85067106591504,31.045922092242872,2.822222032597987,26.988862316190684,529.8996541764288,4671.371946949588,-8535.899136645805,-1282.5898586244496,-149.58553632943463,-8.643494270763135,.5345111359507916,1.111140466039205,-.36174739330527045,41.04429910497807,277.5463268268618,195.6386023135583,13169.43812144731,1697.6433561479398,367.40983966190305,30.557037410382826,2.531473372857427,20.070154905927314,481.50208566532336,4464.970341588308,-9065.36882077239,-1373.62841526722,-166.1660487028118,-9.58289321133207,.4729647758913199,1.268786568327291,-.36970682634889585,41.393213350082036,261.2935935556502,12.935476055240873,13336.131683328815,1772.508612059496,369.76534388639965,29.751323653701338,2.4023193045459172,13.304795348228817,430.5615775526625,4237.0568611071185,-9581.931701634761,-1461.6913552409758,-183.12733958476446,-10.718010163869403,.41421356237309503,1.414213562373095,-.37677560326535325,41.619486213528496,241.05423794991074,-187.94665032361226,13450.063605744153,1836.153896465782,369.4908799925761,29.001847876923147,2.0714759319987186,6.779591200894186,377.7767837205709,3990.386575512536,-10081.709459700915,-1545.947424837898,-200.3762958015653,-11.864482073055006,.3578057213145241,1.546020906725474,-.3829366947518991,41.1516456456653,216.47684307105183,-406.1569483347166,13511.136535077321,1887.8076599260432,367.3025214564151,28.136213436723654,1.913880671464418,.3829366947518991,323.85365704338597,3728.1472257487526,-10561.233882199509,-1625.2025997821418,-217.62525175416,-13.015432208941645,.3033466836073424,1.66293922460509,-.5822628872992417,40.35639251440489,188.20071124269245,-640.2706748618148,13519.21490106562,1927.6022433578062,362.8197642637487,26.968821921868447,1.7463817695935329,-5.62650678237171,269.3016715297017,3453.386536448852,-11016.145278780888,-1698.6569643425091,-234.7658734267683,-14.16351421663124,.2504869601913055,1.76384252869671,-.5887180101749253,39.23429103868072,155.76096234403798,-889.2492977967378,13475.470561874661,1955.0535223723712,356.4450994756727,25.894952980042156,1.5695032905781554,-11.181939564328772,214.80884394039484,3169.1640829158237,-11443.321309975563,-1765.1588461316153,-251.68908574481912,-15.49755935939164,.198912367379658,1.847759065022573,-.7912582233652842,37.39369355329111,119.699486012458,-1151.0956593239027,13380.446257078214,1970.3952110853447,348.01959814116185,24.731487364283044,1.3850130831637748,-16.421408865300393,161.05030052864092,2878.3322807850063,-11838.991423510031,-1823.985884688674,-268.2854986386903,-16.81724543849939,.1483359875383474,1.913880671464418,-.7960642926861912,35.2322109610459,80.01928065061526,-1424.0212633405113,13235.794061869668,1973.804052543835,337.9908651258184,23.289159354463873,1.3934255946442087,-21.099669467133474,108.48348407242611,2583.700758091299,-12199.726194855148,-1874.2780658979746,-284.2467154529415,-18.11369784385905,.09849140335716425,1.961570560806461,-.998795456205172,32.56307803611191,36.958364584370486,-1706.075448829146,13043.287458812016,1965.3831106103316,326.43182772364605,22.175018750622293,1.198638339011324,-25.371248002043963,57.53505923036915,2288.41886619975,-12522.674544337233,-1914.8400385312243,-299.26241273417224,-19.37805630698734,.04912684976946725,1.990369453344394,.035780907*De.SQRT2*.5/2384e-9,.017876148*De.SQRT2*.5/2384e-9,.003134727*De.SQRT2*.5/2384e-9,.002457142*De.SQRT2*.5/2384e-9,971317e-9*De.SQRT2*.5/2384e-9,218868e-9*De.SQRT2*.5/2384e-9,101566e-9*De.SQRT2*.5/2384e-9,13828e-9*De.SQRT2*.5/2384e-9,12804.797818791945,1945.5515939597317,313.4244966442953,20.801593959731544,1995.1556208053692,9.000838926174497,-29.20218120805369],G=12,J=36,$=[[2382191739347913e-28,6423305872147834e-28,9400849094049688e-28,1122435026096556e-27,1183840321267481e-27,1122435026096556e-27,940084909404969e-27,6423305872147839e-28,2382191739347918e-28,5456116108943412e-27,4878985199565852e-27,4240448995017367e-27,3559909094758252e-27,2858043359288075e-27,2156177623817898e-27,1475637723558783e-27,8371015190102974e-28,2599706096327376e-28,-5456116108943412e-27,-4878985199565852e-27,-4240448995017367e-27,-3559909094758252e-27,-2858043359288076e-27,-2156177623817898e-27,-1475637723558783e-27,-8371015190102975e-28,-2599706096327376e-28,-2382191739347923e-28,-6423305872147843e-28,-9400849094049696e-28,-1122435026096556e-27,-1183840321267481e-27,-1122435026096556e-27,-9400849094049694e-28,-642330587214784e-27,-2382191739347918e-28],[2382191739347913e-28,6423305872147834e-28,9400849094049688e-28,1122435026096556e-27,1183840321267481e-27,1122435026096556e-27,9400849094049688e-28,6423305872147841e-28,2382191739347918e-28,5456116108943413e-27,4878985199565852e-27,4240448995017367e-27,3559909094758253e-27,2858043359288075e-27,2156177623817898e-27,1475637723558782e-27,8371015190102975e-28,2599706096327376e-28,-5461314069809755e-27,-4921085770524055e-27,-4343405037091838e-27,-3732668368707687e-27,-3093523840190885e-27,-2430835727329465e-27,-1734679010007751e-27,-974825365660928e-27,-2797435120168326e-28,0,0,0,0,0,0,-2283748241799531e-28,-4037858874020686e-28,-2146547464825323e-28],[.1316524975873958,.414213562373095,.7673269879789602,1.091308501069271,1.303225372841206,1.56968557711749,1.920982126971166,2.414213562373094,3.171594802363212,4.510708503662055,7.595754112725146,22.90376554843115,.984807753012208,.6427876096865394,.3420201433256688,.9396926207859084,-.1736481776669303,-.7660444431189779,.8660254037844387,.5,-.5144957554275265,-.4717319685649723,-.3133774542039019,-.1819131996109812,-.09457419252642064,-.04096558288530405,-.01419856857247115,-.003699974673760037,.8574929257125442,.8817419973177052,.9496286491027329,.9833145924917901,.9955178160675857,.9991605581781475,.999899195244447,.9999931550702802],[0,0,0,0,0,0,2283748241799531e-28,4037858874020686e-28,2146547464825323e-28,5461314069809755e-27,4921085770524055e-27,4343405037091838e-27,3732668368707687e-27,3093523840190885e-27,2430835727329466e-27,1734679010007751e-27,974825365660928e-27,2797435120168326e-28,-5456116108943413e-27,-4878985199565852e-27,-4240448995017367e-27,-3559909094758253e-27,-2858043359288075e-27,-2156177623817898e-27,-1475637723558782e-27,-8371015190102975e-28,-2599706096327376e-28,-2382191739347913e-28,-6423305872147834e-28,-9400849094049688e-28,-1122435026096556e-27,-1183840321267481e-27,-1122435026096556e-27,-9400849094049688e-28,-6423305872147841e-28,-2382191739347918e-28]],he=$[E.SHORT_TYPE],Y=$[E.SHORT_TYPE],se=$[E.SHORT_TYPE],be=$[E.SHORT_TYPE],ye=[0,1,16,17,8,9,24,25,4,5,20,21,12,13,28,29,2,3,18,19,10,11,26,27,6,7,22,23,14,15,30,31];function U(M,q,a){for(var g=10,N=q+238-14-286,C=-15;C<0;C++){var p,m,I;p=T[g+-10],m=M[N+-224]*p,I=M[q+224]*p,p=T[g+-9],m+=M[N+-160]*p,I+=M[q+160]*p,p=T[g+-8],m+=M[N+-96]*p,I+=M[q+96]*p,p=T[g+-7],m+=M[N+-32]*p,I+=M[q+32]*p,p=T[g+-6],m+=M[N+32]*p,I+=M[q+-32]*p,p=T[g+-5],m+=M[N+96]*p,I+=M[q+-96]*p,p=T[g+-4],m+=M[N+160]*p,I+=M[q+-160]*p,p=T[g+-3],m+=M[N+224]*p,I+=M[q+-224]*p,p=T[g+-2],m+=M[q+-256]*p,I-=M[N+256]*p,p=T[g+-1],m+=M[q+-192]*p,I-=M[N+192]*p,p=T[g+0],m+=M[q+-128]*p,I-=M[N+128]*p,p=T[g+1],m+=M[q+-64]*p,I-=M[N+64]*p,p=T[g+2],m+=M[q+0]*p,I-=M[N+0]*p,p=T[g+3],m+=M[q+64]*p,I-=M[N+-64]*p,p=T[g+4],m+=M[q+128]*p,I-=M[N+-128]*p,p=T[g+5],m+=M[q+192]*p,I-=M[N+-192]*p,m*=T[g+6],p=I-m,a[30+C*2]=I+m,a[31+C*2]=T[g+7]*p,g+=18,q--,N++}{var m,I,V,A;I=M[q+-16]*T[g+-10],m=M[q+-32]*T[g+-2],I+=(M[q+-48]-M[q+16])*T[g+-9],m+=M[q+-96]*T[g+-1],I+=(M[q+-80]+M[q+48])*T[g+-8],m+=M[q+-160]*T[g+0],I+=(M[q+-112]-M[q+80])*T[g+-7],m+=M[q+-224]*T[g+1],I+=(M[q+-144]+M[q+112])*T[g+-6],m-=M[q+32]*T[g+2],I+=(M[q+-176]-M[q+144])*T[g+-5],m-=M[q+96]*T[g+3],I+=(M[q+-208]+M[q+176])*T[g+-4],m-=M[q+160]*T[g+4],I+=(M[q+-240]-M[q+208])*T[g+-3],m-=M[q+224],V=m-I,A=m+I,I=a[14],m=a[15]-I,a[31]=A+I,a[30]=V+m,a[15]=V-m,a[14]=A-I}{var l;l=a[28]-a[0],a[0]+=a[28],a[28]=l*T[g+-2*18+7],l=a[29]-a[1],a[1]+=a[29],a[29]=l*T[g+-2*18+7],l=a[26]-a[2],a[2]+=a[26],a[26]=l*T[g+-4*18+7],l=a[27]-a[3],a[3]+=a[27],a[27]=l*T[g+-4*18+7],l=a[24]-a[4],a[4]+=a[24],a[24]=l*T[g+-6*18+7],l=a[25]-a[5],a[5]+=a[25],a[25]=l*T[g+-6*18+7],l=a[22]-a[6],a[6]+=a[22],a[22]=l*De.SQRT2,l=a[23]-a[7],a[7]+=a[23],a[23]=l*De.SQRT2-a[7],a[7]-=a[6],a[22]-=a[7],a[23]-=a[22],l=a[6],a[6]=a[31]-l,a[31]=a[31]+l,l=a[7],a[7]=a[30]-l,a[30]=a[30]+l,l=a[22],a[22]=a[15]-l,a[15]=a[15]+l,l=a[23],a[23]=a[14]-l,a[14]=a[14]+l,l=a[20]-a[8],a[8]+=a[20],a[20]=l*T[g+-10*18+7],l=a[21]-a[9],a[9]+=a[21],a[21]=l*T[g+-10*18+7],l=a[18]-a[10],a[10]+=a[18],a[18]=l*T[g+-12*18+7],l=a[19]-a[11],a[11]+=a[19],a[19]=l*T[g+-12*18+7],l=a[16]-a[12],a[12]+=a[16],a[16]=l*T[g+-14*18+7],l=a[17]-a[13],a[13]+=a[17],a[17]=l*T[g+-14*18+7],l=-a[20]+a[24],a[20]+=a[24],a[24]=l*T[g+-12*18+7],l=-a[21]+a[25],a[21]+=a[25],a[25]=l*T[g+-12*18+7],l=a[4]-a[8],a[4]+=a[8],a[8]=l*T[g+-12*18+7],l=a[5]-a[9],a[5]+=a[9],a[9]=l*T[g+-12*18+7],l=a[0]-a[12],a[0]+=a[12],a[12]=l*T[g+-4*18+7],l=a[1]-a[13],a[1]+=a[13],a[13]=l*T[g+-4*18+7],l=a[16]-a[28],a[16]+=a[28],a[28]=l*T[g+-4*18+7],l=-a[17]+a[29],a[17]+=a[29],a[29]=l*T[g+-4*18+7],l=De.SQRT2*(a[2]-a[10]),a[2]+=a[10],a[10]=l,l=De.SQRT2*(a[3]-a[11]),a[3]+=a[11],a[11]=l,l=De.SQRT2*(-a[18]+a[26]),a[18]+=a[26],a[26]=l-a[18],l=De.SQRT2*(-a[19]+a[27]),a[19]+=a[27],a[27]=l-a[19],l=a[2],a[19]-=a[3],a[3]-=l,a[2]=a[31]-l,a[31]+=l,l=a[3],a[11]-=a[19],a[18]-=l,a[3]=a[30]-l,a[30]+=l,l=a[18],a[27]-=a[11],a[19]-=l,a[18]=a[15]-l,a[15]+=l,l=a[19],a[10]-=l,a[19]=a[14]-l,a[14]+=l,l=a[10],a[11]-=l,a[10]=a[23]-l,a[23]+=l,l=a[11],a[26]-=l,a[11]=a[22]-l,a[22]+=l,l=a[26],a[27]-=l,a[26]=a[7]-l,a[7]+=l,l=a[27],a[27]=a[6]-l,a[6]+=l,l=De.SQRT2*(a[0]-a[4]),a[0]+=a[4],a[4]=l,l=De.SQRT2*(a[1]-a[5]),a[1]+=a[5],a[5]=l,l=De.SQRT2*(a[16]-a[20]),a[16]+=a[20],a[20]=l,l=De.SQRT2*(a[17]-a[21]),a[17]+=a[21],a[21]=l,l=-De.SQRT2*(a[8]-a[12]),a[8]+=a[12],a[12]=l-a[8],l=-De.SQRT2*(a[9]-a[13]),a[9]+=a[13],a[13]=l-a[9],l=-De.SQRT2*(a[25]-a[29]),a[25]+=a[29],a[29]=l-a[25],l=-De.SQRT2*(a[24]+a[28]),a[24]-=a[28],a[28]=l-a[24],l=a[24]-a[16],a[24]=l,l=a[20]-l,a[20]=l,l=a[28]-l,a[28]=l,l=a[25]-a[17],a[25]=l,l=a[21]-l,a[21]=l,l=a[29]-l,a[29]=l,l=a[17]-a[1],a[17]=l,l=a[9]-l,a[9]=l,l=a[25]-l,a[25]=l,l=a[5]-l,a[5]=l,l=a[21]-l,a[21]=l,l=a[13]-l,a[13]=l,l=a[29]-l,a[29]=l,l=a[1]-a[0],a[1]=l,l=a[16]-l,a[16]=l,l=a[17]-l,a[17]=l,l=a[8]-l,a[8]=l,l=a[9]-l,a[9]=l,l=a[24]-l,a[24]=l,l=a[25]-l,a[25]=l,l=a[4]-l,a[4]=l,l=a[5]-l,a[5]=l,l=a[20]-l,a[20]=l,l=a[21]-l,a[21]=l,l=a[12]-l,a[12]=l,l=a[13]-l,a[13]=l,l=a[28]-l,a[28]=l,l=a[29]-l,a[29]=l,l=a[0],a[0]+=a[31],a[31]-=l,l=a[1],a[1]+=a[30],a[30]-=l,l=a[16],a[16]+=a[15],a[15]-=l,l=a[17],a[17]+=a[14],a[14]-=l,l=a[8],a[8]+=a[23],a[23]-=l,l=a[9],a[9]+=a[22],a[22]-=l,l=a[24],a[24]+=a[7],a[7]-=l,l=a[25],a[25]+=a[6],a[6]-=l,l=a[4],a[4]+=a[27],a[27]-=l,l=a[5],a[5]+=a[26],a[26]-=l,l=a[20],a[20]+=a[11],a[11]-=l,l=a[21],a[21]+=a[10],a[10]-=l,l=a[12],a[12]+=a[19],a[19]-=l,l=a[13],a[13]+=a[18],a[18]-=l,l=a[28],a[28]+=a[3],a[3]-=l,l=a[29],a[29]+=a[2],a[2]-=l}}function ae(M,q){for(var a=0;a<3;a++){var g,N,C,p,m,I;p=M[q+2*3]*$[E.SHORT_TYPE][0]-M[q+5*3],g=M[q+0*3]*$[E.SHORT_TYPE][2]-M[q+3*3],N=p+g,C=p-g,p=M[q+5*3]*$[E.SHORT_TYPE][0]+M[q+2*3],g=M[q+3*3]*$[E.SHORT_TYPE][2]+M[q+0*3],m=p+g,I=-p+g,g=(M[q+1*3]*$[E.SHORT_TYPE][1]-M[q+4*3])*2069978111953089e-26,p=(M[q+4*3]*$[E.SHORT_TYPE][1]+M[q+1*3])*2069978111953089e-26,M[q+3*0]=N*190752519173728e-25+g,M[q+3*5]=-m*190752519173728e-25+p,C=C*.8660254037844387*1907525191737281e-26,m=m*.5*1907525191737281e-26+p,M[q+3*1]=C-m,M[q+3*2]=C+m,N=N*.5*1907525191737281e-26-g,I=I*.8660254037844387*1907525191737281e-26,M[q+3*3]=N+I,M[q+3*4]=N-I,q++}}function le(M,q,a){var g,N;{var C,p,m,I,V,A,l,O;C=a[17]-a[9],m=a[15]-a[11],I=a[14]-a[12],V=a[0]+a[8],A=a[1]+a[7],l=a[2]+a[6],O=a[3]+a[5],M[q+17]=V+l-O-(A-a[4]),N=(V+l-O)*Y[12+7]+(A-a[4]),g=(C-m-I)*Y[12+6],M[q+5]=g+N,M[q+6]=g-N,p=(a[16]-a[10])*Y[12+6],A=A*Y[12+7]+a[4],g=C*Y[12+0]+p+m*Y[12+1]+I*Y[12+2],N=-V*Y[12+4]+A-l*Y[12+5]+O*Y[12+3],M[q+1]=g+N,M[q+2]=g-N,g=C*Y[12+1]-p-m*Y[12+2]+I*Y[12+0],N=-V*Y[12+5]+A-l*Y[12+3]+O*Y[12+4],M[q+9]=g+N,M[q+10]=g-N,g=C*Y[12+2]-p+m*Y[12+0]-I*Y[12+1],N=V*Y[12+3]-A+l*Y[12+4]-O*Y[12+5],M[q+13]=g+N,M[q+14]=g-N}{var y,c,d,v,s,h,b,S;y=a[8]-a[0],d=a[6]-a[2],v=a[5]-a[3],s=a[17]+a[9],h=a[16]+a[10],b=a[15]+a[11],S=a[14]+a[12],M[q+0]=s+b+S+(h+a[13]),g=(s+b+S)*Y[12+7]-(h+a[13]),N=(y-d+v)*Y[12+6],M[q+11]=g+N,M[q+12]=g-N,c=(a[7]-a[1])*Y[12+6],h=a[13]-h*Y[12+7],g=s*Y[12+3]-h+b*Y[12+4]+S*Y[12+5],N=y*Y[12+2]+c+d*Y[12+0]+v*Y[12+1],M[q+3]=g+N,M[q+4]=g-N,g=-s*Y[12+5]+h-b*Y[12+3]-S*Y[12+4],N=y*Y[12+1]+c-d*Y[12+2]-v*Y[12+0],M[q+7]=g+N,M[q+8]=g-N,g=-s*Y[12+4]+h-b*Y[12+5]-S*Y[12+3],N=y*Y[12+0]-c+d*Y[12+1]-v*Y[12+2],M[q+15]=g+N,M[q+16]=g-N}}this.mdct_sub48=function(M,q,a){for(var g=q,N=286,C=0;C<M.channels_out;C++){for(var p=0;p<M.mode_gr;p++){for(var m,I=M.l3_side.tt[p][C],V=I.xr,A=0,l=M.sb_sample[C][1-p],O=0,y=0;y<18/2;y++)for(U(g,N,l[O]),U(g,N+32,l[O+1]),O+=2,N+=64,m=1;m<32;m+=2)l[O-1][m]*=-1;for(m=0;m<32;m++,A+=18){var c=I.block_type,d=M.sb_sample[C][p],v=M.sb_sample[C][1-p];if(I.mixed_block_flag!=0&&m<2&&(c=0),M.amp_filter[m]<1e-12)tt.fill(V,A+0,A+18,0);else{if(M.amp_filter[m]<1)for(var y=0;y<18;y++)v[y][ye[m]]*=M.amp_filter[m];if(c==E.SHORT_TYPE){for(var y=-G/4;y<0;y++){var s=$[E.SHORT_TYPE][y+3];V[A+y*3+9]=d[9+y][ye[m]]*s-d[8-y][ye[m]],V[A+y*3+18]=d[14-y][ye[m]]*s+d[15+y][ye[m]],V[A+y*3+10]=d[15+y][ye[m]]*s-d[14-y][ye[m]],V[A+y*3+19]=v[2-y][ye[m]]*s+v[3+y][ye[m]],V[A+y*3+11]=v[3+y][ye[m]]*s-v[2-y][ye[m]],V[A+y*3+20]=v[8-y][ye[m]]*s+v[9+y][ye[m]]}ae(V,A)}else{for(var h=gt(18),y=-J/4;y<0;y++){var b,S;b=$[c][y+27]*v[y+9][ye[m]]+$[c][y+36]*v[8-y][ye[m]],S=$[c][y+9]*d[y+9][ye[m]]-$[c][y+18]*d[8-y][ye[m]],h[y+9]=b-S*he[3+y+9],h[y+18]=b*he[3+y+9]+S}le(V,A,h)}}if(c!=E.SHORT_TYPE&&m!=0)for(var y=7;y>=0;--y){var j,L;j=V[A+y]*se[20+y]+V[A+-1-y]*be[28+y],L=V[A+y]*be[28+y]-V[A+-1-y]*se[20+y],V[A+-1-y]=j,V[A+y]=L}}}if(g=a,N=286,M.mode_gr==1)for(var H=0;H<18;H++)Ue.arraycopy(M.sb_sample[C][1][H],0,M.sb_sample[C][0][H],0,32)}}}var Tt=Rt,Fi=te.System,Ja=te.new_float,en=te.new_float_n;function mi(){this.l=Ja(E.SBMAX_l),this.s=en([E.SBMAX_s,3]);var T=this;this.assign=function(G){Fi.arraycopy(G.l,0,T.l,0,E.SBMAX_l);for(var J=0;J<E.SBMAX_s;J++)for(var $=0;$<3;$++)T.s[J][$]=G.s[J][$]}}var _i=mi;function tn(){this.thm=new _i,this.en=new _i}var Di=tn,Vi=te.System,Dr=te.VbrMode,fa=te.new_array_n,ma=te.new_float,pi=te.new_float_n,Hi=te.new_int,xr=te.assert;je.ENCDELAY=576,je.POSTDELAY=1152,je.MDCTDELAY=48,je.FFTOFFSET=224+je.MDCTDELAY,je.DECDELAY=528,je.SBLIMIT=32,je.CBANDS=64,je.SBPSY_l=21,je.SBPSY_s=12,je.SBMAX_l=22,je.SBMAX_s=13,je.PSFB21=6,je.PSFB12=6,je.BLKSIZE=1024,je.HBLKSIZE=je.BLKSIZE/2+1,je.BLKSIZE_s=256,je.HBLKSIZE_s=je.BLKSIZE_s/2+1,je.NORM_TYPE=0,je.START_TYPE=1,je.SHORT_TYPE=2,je.STOP_TYPE=3,je.MPG_MD_LR_LR=0,je.MPG_MD_LR_I=1,je.MPG_MD_MS_LR=2,je.MPG_MD_MS_I=3,je.fircoef=[-.0207887*5,-.0378413*5,-.0432472*5,-.031183*5,779609e-23*5,.0467745*5,.10091*5,.151365*5,.187098*5];function je(){var T=Tt,G=Di,J=je.FFTOFFSET,$=je.MPG_MD_MS_LR,he=null;this.psy=null;var Y=null,se=null,be=null;this.setModules=function(M,q,a,g){he=M,this.psy=q,Y=q,se=g,be=a};var ye=new T;function U(M){var q,a;if(M.ATH.useAdjust==0){M.ATH.adjust=1;return}if(a=M.loudness_sq[0][0],q=M.loudness_sq[1][0],M.channels_out==2?(a+=M.loudness_sq[0][1],q+=M.loudness_sq[1][1]):(a+=a,q+=q),M.mode_gr==2&&(a=Math.max(a,q)),a*=.5,a*=M.ATH.aaSensitivityP,a>.03125)M.ATH.adjust>=1?M.ATH.adjust=1:M.ATH.adjust<M.ATH.adjustLimit&&(M.ATH.adjust=M.ATH.adjustLimit),M.ATH.adjustLimit=1;else{var g=31.98*a+625e-6;M.ATH.adjust>=g?(M.ATH.adjust*=g*.075+.925,M.ATH.adjust<g&&(M.ATH.adjust=g)):M.ATH.adjustLimit>=g?M.ATH.adjust=g:M.ATH.adjust<M.ATH.adjustLimit&&(M.ATH.adjust=M.ATH.adjustLimit),M.ATH.adjustLimit=g}}function ae(M){var q,a;for(xr(0<=M.bitrate_index&&M.bitrate_index<16),xr(0<=M.mode_ext&&M.mode_ext<4),M.bitrate_stereoMode_Hist[M.bitrate_index][4]++,M.bitrate_stereoMode_Hist[15][4]++,M.channels_out==2&&(M.bitrate_stereoMode_Hist[M.bitrate_index][M.mode_ext]++,M.bitrate_stereoMode_Hist[15][M.mode_ext]++),q=0;q<M.mode_gr;++q)for(a=0;a<M.channels_out;++a){var g=M.l3_side.tt[q][a].block_type|0;M.l3_side.tt[q][a].mixed_block_flag!=0&&(g=4),M.bitrate_blockType_Hist[M.bitrate_index][g]++,M.bitrate_blockType_Hist[M.bitrate_index][5]++,M.bitrate_blockType_Hist[15][g]++,M.bitrate_blockType_Hist[15][5]++}}function le(M,q){var a=M.internal_flags,g,N;if(a.lame_encode_frame_init==0){var C,p,m=ma(2014),I=ma(286+1152+576);for(a.lame_encode_frame_init=1,C=0,p=0;C<286+576*(1+a.mode_gr);++C)C<576*a.mode_gr?(m[C]=0,a.channels_out==2&&(I[C]=0)):(m[C]=q[0][p],a.channels_out==2&&(I[C]=q[1][p]),++p);for(N=0;N<a.mode_gr;N++)for(g=0;g<a.channels_out;g++)a.l3_side.tt[N][g].block_type=je.SHORT_TYPE;ye.mdct_sub48(a,m,I),xr(576>=je.FFTOFFSET),xr(a.mf_size>=je.BLKSIZE+M.framesize-je.FFTOFFSET),xr(a.mf_size>=512+M.framesize-32)}}this.lame_encode_mp3_frame=function(M,q,a,g,N,C){var p,m=fa([2,2]);m[0][0]=new G,m[0][1]=new G,m[1][0]=new G,m[1][1]=new G;var I=fa([2,2]);I[0][0]=new G,I[0][1]=new G,I[1][0]=new G,I[1][1]=new G;var V,A=[null,null],l=M.internal_flags,O=pi([2,4]),y=[.5,.5],c=[[0,0],[0,0]],d=[[0,0],[0,0]],v,s,h;if(A[0]=q,A[1]=a,l.lame_encode_frame_init==0&&le(M,A),l.padding=0,(l.slot_lag-=l.frac_SpF)<0&&(l.slot_lag+=M.out_samplerate,l.padding=1),l.psymodel!=0){var b,S=[null,null],j=0,L=Hi(2);for(h=0;h<l.mode_gr;h++){for(s=0;s<l.channels_out;s++)S[s]=A[s],j=576+h*576-je.FFTOFFSET;if(M.VBR==Dr.vbr_mtrh||M.VBR==Dr.vbr_mt?b=Y.L3psycho_anal_vbr(M,S,j,h,m,I,c[h],d[h],O[h],L):b=Y.L3psycho_anal_ns(M,S,j,h,m,I,c[h],d[h],O[h],L),b!=0)return-4;for(M.mode==yt.JOINT_STEREO&&(y[h]=O[h][2]+O[h][3],y[h]>0&&(y[h]=O[h][3]/y[h])),s=0;s<l.channels_out;s++){var H=l.l3_side.tt[h][s];H.block_type=L[s],H.mixed_block_flag=0}}}else for(h=0;h<l.mode_gr;h++)for(s=0;s<l.channels_out;s++)l.l3_side.tt[h][s].block_type=je.NORM_TYPE,l.l3_side.tt[h][s].mixed_block_flag=0,d[h][s]=c[h][s]=700;if(U(l),ye.mdct_sub48(l,A[0],A[1]),l.mode_ext=je.MPG_MD_LR_LR,M.force_ms)l.mode_ext=je.MPG_MD_MS_LR;else if(M.mode==yt.JOINT_STEREO){var de=0,u=0;for(h=0;h<l.mode_gr;h++)for(s=0;s<l.channels_out;s++)de+=d[h][s],u+=c[h][s];if(de<=1*u){var _=l.l3_side.tt[0],ie=l.l3_side.tt[l.mode_gr-1];_[0].block_type==_[1].block_type&&ie[0].block_type==ie[1].block_type&&(l.mode_ext=je.MPG_MD_MS_LR)}}if(l.mode_ext==$?(V=I,v=d):(V=m,v=c),M.analysis&&l.pinfo!=null)for(h=0;h<l.mode_gr;h++)for(s=0;s<l.channels_out;s++)l.pinfo.ms_ratio[h]=l.ms_ratio[h],l.pinfo.ms_ener_ratio[h]=y[h],l.pinfo.blocktype[h][s]=l.l3_side.tt[h][s].block_type,l.pinfo.pe[h][s]=v[h][s],Vi.arraycopy(l.l3_side.tt[h][s].xr,0,l.pinfo.xr[h][s],0,576),l.mode_ext==$&&(l.pinfo.ers[h][s]=l.pinfo.ers[h][s+2],Vi.arraycopy(l.pinfo.energy[h][s+2],0,l.pinfo.energy[h][s],0,l.pinfo.energy[h][s].length));if(M.VBR==Dr.vbr_off||M.VBR==Dr.vbr_abr){var ue,Se;for(ue=0;ue<18;ue++)l.nsPsy.pefirbuf[ue]=l.nsPsy.pefirbuf[ue+1];for(Se=0,h=0;h<l.mode_gr;h++)for(s=0;s<l.channels_out;s++)Se+=v[h][s];for(l.nsPsy.pefirbuf[18]=Se,Se=l.nsPsy.pefirbuf[9],ue=0;ue<9;ue++)Se+=(l.nsPsy.pefirbuf[ue]+l.nsPsy.pefirbuf[18-ue])*je.fircoef[ue];for(Se=670*5*l.mode_gr*l.channels_out/Se,h=0;h<l.mode_gr;h++)for(s=0;s<l.channels_out;s++)v[h][s]*=Se}if(l.iteration_loop.iteration_loop(M,v,y,V),he.format_bitstream(M),p=he.copy_buffer(l,g,N,C,1),M.bWriteVbrTag&&se.addVbrFrame(M),M.analysis&&l.pinfo!=null){for(s=0;s<l.channels_out;s++){var Ae;for(Ae=0;Ae<J;Ae++)l.pinfo.pcmdata[s][Ae]=l.pinfo.pcmdata[s][Ae+M.framesize];for(Ae=J;Ae<1600;Ae++)l.pinfo.pcmdata[s][Ae]=A[s][Ae-J]}be.set_frame_pinfo(M,V)}return ae(l),p}}var E=je,tr=te.Util,fr=te.new_float;function Ui(){var T=fr(E.BLKSIZE),G=fr(E.BLKSIZE_s/2),J=[.9238795325112867,.3826834323650898,.9951847266721969,.0980171403295606,.9996988186962042,.02454122852291229,.9999811752826011,.006135884649154475];function $(Y,se,be){var ye=0,U,ae,le;be<<=1;var M=se+be;U=4;do{var q,a,g,N,C,p,m;m=U>>1,N=U,C=U<<1,p=C+N,U=C<<1,ae=se,le=ae+m;do{var I,V,A,l;V=Y[ae+0]-Y[ae+N],I=Y[ae+0]+Y[ae+N],l=Y[ae+C]-Y[ae+p],A=Y[ae+C]+Y[ae+p],Y[ae+C]=I-A,Y[ae+0]=I+A,Y[ae+p]=V-l,Y[ae+N]=V+l,V=Y[le+0]-Y[le+N],I=Y[le+0]+Y[le+N],l=tr.SQRT2*Y[le+p],A=tr.SQRT2*Y[le+C],Y[le+C]=I-A,Y[le+0]=I+A,Y[le+p]=V-l,Y[le+N]=V+l,le+=U,ae+=U}while(ae<M);for(a=J[ye+0],q=J[ye+1],g=1;g<m;g++){var O,y;O=1-2*q*q,y=2*q*a,ae=se+g,le=se+N-g;do{var c,d,v,I,V,s,A,h,l,b;d=y*Y[ae+N]-O*Y[le+N],c=O*Y[ae+N]+y*Y[le+N],V=Y[ae+0]-c,I=Y[ae+0]+c,s=Y[le+0]-d,v=Y[le+0]+d,d=y*Y[ae+p]-O*Y[le+p],c=O*Y[ae+p]+y*Y[le+p],l=Y[ae+C]-c,A=Y[ae+C]+c,b=Y[le+C]-d,h=Y[le+C]+d,d=q*A-a*b,c=a*A+q*b,Y[ae+C]=I-c,Y[ae+0]=I+c,Y[le+p]=s-d,Y[le+N]=s+d,d=a*h-q*l,c=q*h+a*l,Y[le+C]=v-c,Y[le+0]=v+c,Y[ae+p]=V-d,Y[ae+N]=V+d,le+=U,ae+=U}while(ae<M);O=a,a=O*J[ye+0]-q*J[ye+1],q=O*J[ye+1]+q*J[ye+0]}ye+=2}while(U<be)}var he=[0,128,64,192,32,160,96,224,16,144,80,208,48,176,112,240,8,136,72,200,40,168,104,232,24,152,88,216,56,184,120,248,4,132,68,196,36,164,100,228,20,148,84,212,52,180,116,244,12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254];this.fft_short=function(Y,se,be,ye,U){for(var ae=0;ae<3;ae++){var le=E.BLKSIZE_s/2,M=65535&576/3*(ae+1),q=E.BLKSIZE_s/8-1;do{var a,g,N,C,p,m=he[q<<2]&255;a=G[m]*ye[be][U+m+M],p=G[127-m]*ye[be][U+m+M+128],g=a-p,a=a+p,N=G[m+64]*ye[be][U+m+M+64],p=G[63-m]*ye[be][U+m+M+192],C=N-p,N=N+p,le-=4,se[ae][le+0]=a+N,se[ae][le+2]=a-N,se[ae][le+1]=g+C,se[ae][le+3]=g-C,a=G[m+1]*ye[be][U+m+M+1],p=G[126-m]*ye[be][U+m+M+129],g=a-p,a=a+p,N=G[m+65]*ye[be][U+m+M+65],p=G[62-m]*ye[be][U+m+M+193],C=N-p,N=N+p,se[ae][le+E.BLKSIZE_s/2+0]=a+N,se[ae][le+E.BLKSIZE_s/2+2]=a-N,se[ae][le+E.BLKSIZE_s/2+1]=g+C,se[ae][le+E.BLKSIZE_s/2+3]=g-C}while(--q>=0);$(se[ae],le,E.BLKSIZE_s/2)}},this.fft_long=function(Y,se,be,ye,U){var ae=E.BLKSIZE/8-1,le=E.BLKSIZE/2;do{var M,q,a,g,N,C=he[ae]&255;M=T[C]*ye[be][U+C],N=T[C+512]*ye[be][U+C+512],q=M-N,M=M+N,a=T[C+256]*ye[be][U+C+256],N=T[C+768]*ye[be][U+C+768],g=a-N,a=a+N,le-=4,se[le+0]=M+a,se[le+2]=M-a,se[le+1]=q+g,se[le+3]=q-g,M=T[C+1]*ye[be][U+C+1],N=T[C+513]*ye[be][U+C+513],q=M-N,M=M+N,a=T[C+257]*ye[be][U+C+257],N=T[C+769]*ye[be][U+C+769],g=a-N,a=a+N,se[le+E.BLKSIZE/2+0]=M+a,se[le+E.BLKSIZE/2+2]=M-a,se[le+E.BLKSIZE/2+1]=q+g,se[le+E.BLKSIZE/2+3]=q-g}while(--ae>=0);$(se,le,E.BLKSIZE/2)},this.init_fft=function(Y){for(var se=0;se<E.BLKSIZE;se++)T[se]=.42-.5*Math.cos(2*Math.PI*(se+.5)/E.BLKSIZE)+.08*Math.cos(4*Math.PI*(se+.5)/E.BLKSIZE);for(var se=0;se<E.BLKSIZE_s/2;se++)G[se]=.5*(1-Math.cos(2*Math.PI*(se+.5)/E.BLKSIZE_s))}}var _a=Ui,rr=te.VbrMode,rn=te.Float,Kr=te.ShortBlock,Et=te.Util,Es=te.Arrays,st=te.new_float,Ft=te.new_float_n,ir=te.new_int,ke=te.assert;function xs(){var T=new _a,G=2.302585092994046,J=2,$=16,he=2,Y=16,se=.34,be=1/(14752*14752)/(E.BLKSIZE/2),ye=.01,U=.8,ae=.6,le=.3,M=3.5,q=4.4,a=25,g=21,N=.2302585093;function C(w){return w}function p(w,x){for(var P=0,D=0;D<E.BLKSIZE/2;++D)P+=w[D]*x.ATH.eql_w[D];return P*=be,P}function m(w,x,P,D,W,B,z,K,X,ne,Z){var oe=w.internal_flags;if(X<2)T.fft_long(oe,D[W],X,ne,Z),T.fft_short(oe,B[z],X,ne,Z);else if(X==2){for(var we=E.BLKSIZE-1;we>=0;--we){var Ne=D[W+0][we],fe=D[W+1][we];D[W+0][we]=(Ne+fe)*Et.SQRT2*.5,D[W+1][we]=(Ne-fe)*Et.SQRT2*.5}for(var Pe=2;Pe>=0;--Pe)for(var we=E.BLKSIZE_s-1;we>=0;--we){var Ne=B[z+0][Pe][we],fe=B[z+1][Pe][we];B[z+0][Pe][we]=(Ne+fe)*Et.SQRT2*.5,B[z+1][Pe][we]=(Ne-fe)*Et.SQRT2*.5}}x[0]=D[W+0][0],x[0]*=x[0];for(var we=E.BLKSIZE/2-1;we>=0;--we){var re=D[W+0][E.BLKSIZE/2-we],Be=D[W+0][E.BLKSIZE/2+we];x[E.BLKSIZE/2-we]=(re*re+Be*Be)*.5}for(var Pe=2;Pe>=0;--Pe){P[Pe][0]=B[z+0][Pe][0],P[Pe][0]*=P[Pe][0];for(var we=E.BLKSIZE_s/2-1;we>=0;--we){var re=B[z+0][Pe][E.BLKSIZE_s/2-we],Be=B[z+0][Pe][E.BLKSIZE_s/2+we];P[Pe][E.BLKSIZE_s/2-we]=(re*re+Be*Be)*.5}}{for(var Xe=0,we=11;we<E.HBLKSIZE;we++)Xe+=x[we];oe.tot_ener[X]=Xe}if(w.analysis){for(var we=0;we<E.HBLKSIZE;we++)oe.pinfo.energy[K][X][we]=oe.pinfo.energy_save[X][we],oe.pinfo.energy_save[X][we]=x[we];oe.pinfo.pe[K][X]=oe.pe[X]}w.athaa_loudapprox==2&&X<2&&(oe.loudness_sq[K][X]=oe.loudness_sq_save[X],oe.loudness_sq_save[X]=p(x,oe))}var I=8,V=23,A=15,l,O,y,c=[1,.79433,.63096,.63096,.63096,.63096,.63096,.25119,.11749];function d(){l=Math.pow(10,(I+1)/16),O=Math.pow(10,(V+1)/16),y=Math.pow(10,A/10)}var v=[3.3246*3.3246,3.23837*3.23837,3.15437*3.15437,3.00412*3.00412,2.86103*2.86103,2.65407*2.65407,2.46209*2.46209,2.284*2.284,2.11879*2.11879,1.96552*1.96552,1.82335*1.82335,1.69146*1.69146,1.56911*1.56911,1.46658*1.46658,1.37074*1.37074,1.31036*1.31036,1.25264*1.25264,1.20648*1.20648,1.16203*1.16203,1.12765*1.12765,1.09428*1.09428,1.0659*1.0659,1.03826*1.03826,1.01895*1.01895,1],s=[1.33352*1.33352,1.35879*1.35879,1.38454*1.38454,1.39497*1.39497,1.40548*1.40548,1.3537*1.3537,1.30382*1.30382,1.22321*1.22321,1.14758*1.14758,1],h=[2.35364*2.35364,2.29259*2.29259,2.23313*2.23313,2.12675*2.12675,2.02545*2.02545,1.87894*1.87894,1.74303*1.74303,1.61695*1.61695,1.49999*1.49999,1.39148*1.39148,1.29083*1.29083,1.19746*1.19746,1.11084*1.11084,1.03826*1.03826];function b(w,x,P,D,W,B){var z;if(x>w)if(x<w*O)z=x/w;else return w+x;else{if(w>=x*O)return w+x;z=w/x}if(ke(w>=0),ke(x>=0),w+=x,D+3<=3+3){if(z>=l)return w;var K=0|Et.FAST_LOG10_X(z,16);return w*s[K]}var K=0|Et.FAST_LOG10_X(z,16);if(B!=0?x=W.ATH.cb_s[P]*W.ATH.adjust:x=W.ATH.cb_l[P]*W.ATH.adjust,ke(x>=0),w<y*x){if(w>x){var X,ne;return X=1,K<=13&&(X=h[K]),ne=Et.FAST_LOG10_X(w/x,10/15),w*((v[K]-X)*ne+X)}return K>13?w:w*h[K]}return w*v[K]}var S=[1.33352*1.33352,1.35879*1.35879,1.38454*1.38454,1.39497*1.39497,1.40548*1.40548,1.3537*1.3537,1.30382*1.30382,1.22321*1.22321,1.14758*1.14758,1];function j(w,x,P){var D;if(w<0&&(w=0),x<0&&(x=0),w<=0)return x;if(x<=0)return w;if(x>w?D=x/w:D=w/x,-2<=P&&P<=2){if(D>=l)return w+x;var W=0|Et.FAST_LOG10_X(D,16);return(w+x)*S[W]}return D<O?w+x:(w<x&&(w=x),w)}function L(w,x){var P=w.internal_flags;if(P.channels_out>1){for(var D=0;D<E.SBMAX_l;D++){var W=P.thm[0].l[D],B=P.thm[1].l[D];P.thm[0].l[D]+=B*x,P.thm[1].l[D]+=W*x}for(var D=0;D<E.SBMAX_s;D++)for(var z=0;z<3;z++){var W=P.thm[0].s[D][z],B=P.thm[1].s[D][z];P.thm[0].s[D][z]+=B*x,P.thm[1].s[D][z]+=W*x}}}function H(w){for(var x=0;x<E.SBMAX_l;x++)if(!(w.thm[0].l[x]>1.58*w.thm[1].l[x]||w.thm[1].l[x]>1.58*w.thm[0].l[x])){var P=w.mld_l[x]*w.en[3].l[x],D=Math.max(w.thm[2].l[x],Math.min(w.thm[3].l[x],P));P=w.mld_l[x]*w.en[2].l[x];var W=Math.max(w.thm[3].l[x],Math.min(w.thm[2].l[x],P));w.thm[2].l[x]=D,w.thm[3].l[x]=W}for(var x=0;x<E.SBMAX_s;x++)for(var B=0;B<3;B++)if(!(w.thm[0].s[x][B]>1.58*w.thm[1].s[x][B]||w.thm[1].s[x][B]>1.58*w.thm[0].s[x][B])){var P=w.mld_s[x]*w.en[3].s[x][B],D=Math.max(w.thm[2].s[x][B],Math.min(w.thm[3].s[x][B],P));P=w.mld_s[x]*w.en[2].s[x][B];var W=Math.max(w.thm[3].s[x][B],Math.min(w.thm[2].s[x][B],P));w.thm[2].s[x][B]=D,w.thm[3].s[x][B]=W}}function de(w,x,P){var D=x,W=Math.pow(10,P);x*=2,D*=2;for(var B=0;B<E.SBMAX_l;B++){var z,K,X,ne;if(ne=w.ATH.cb_l[w.bm_l[B]]*W,z=Math.min(Math.max(w.thm[0].l[B],ne),Math.max(w.thm[1].l[B],ne)),K=Math.max(w.thm[2].l[B],ne),X=Math.max(w.thm[3].l[B],ne),z*x<K+X){var Z=z*D/(K+X);K*=Z,X*=Z,ke(K+X>0)}w.thm[2].l[B]=Math.min(K,w.thm[2].l[B]),w.thm[3].l[B]=Math.min(X,w.thm[3].l[B])}W*=E.BLKSIZE_s/E.BLKSIZE;for(var B=0;B<E.SBMAX_s;B++)for(var oe=0;oe<3;oe++){var z,K,X,ne;if(ne=w.ATH.cb_s[w.bm_s[B]]*W,z=Math.min(Math.max(w.thm[0].s[B][oe],ne),Math.max(w.thm[1].s[B][oe],ne)),K=Math.max(w.thm[2].s[B][oe],ne),X=Math.max(w.thm[3].s[B][oe],ne),z*x<K+X){var Z=z*x/(K+X);K*=Z,X*=Z,ke(K+X>0)}w.thm[2].s[B][oe]=Math.min(w.thm[2].s[B][oe],K),w.thm[3].s[B][oe]=Math.min(w.thm[3].s[B][oe],X)}}function u(w,x,P,D,W){var B,z,K=0,X=0;for(B=z=0;B<E.SBMAX_s;++z,++B){for(var ne=w.bo_s[B],Z=w.npart_s,oe=ne<Z?ne:Z;z<oe;)ke(x[z]>=0),ke(P[z]>=0),K+=x[z],X+=P[z],z++;if(w.en[D].s[B][W]=K,w.thm[D].s[B][W]=X,z>=Z){++B;break}ke(x[z]>=0),ke(P[z]>=0);{var we=w.PSY.bo_s_weight[B],Ne=1-we;K=we*x[z],X=we*P[z],w.en[D].s[B][W]+=K,w.thm[D].s[B][W]+=X,K=Ne*x[z],X=Ne*P[z]}}for(;B<E.SBMAX_s;++B)w.en[D].s[B][W]=0,w.thm[D].s[B][W]=0}function _(w,x,P,D){var W,B,z=0,K=0;for(W=B=0;W<E.SBMAX_l;++B,++W){for(var X=w.bo_l[W],ne=w.npart_l,Z=X<ne?X:ne;B<Z;)ke(x[B]>=0),ke(P[B]>=0),z+=x[B],K+=P[B],B++;if(w.en[D].l[W]=z,w.thm[D].l[W]=K,B>=ne){++W;break}ke(x[B]>=0),ke(P[B]>=0);{var oe=w.PSY.bo_l_weight[W],we=1-oe;z=oe*x[B],K=oe*P[B],w.en[D].l[W]+=z,w.thm[D].l[W]+=K,z=we*x[B],K=we*P[B]}}for(;W<E.SBMAX_l;++W)w.en[D].l[W]=0,w.thm[D].l[W]=0}function ie(w,x,P,D,W,B){var z=w.internal_flags,K,X;for(X=K=0;X<z.npart_s;++X){for(var ne=0,Z=0,oe=z.numlines_s[X],we=0;we<oe;++we,++K){var Ne=x[B][K];ne+=Ne,Z<Ne&&(Z=Ne)}P[X]=ne}for(ke(X==z.npart_s),ke(K==129),K=X=0;X<z.npart_s;X++){var fe=z.s3ind_s[X][0],Pe=z.s3_ss[K++]*P[fe];for(++fe;fe<=z.s3ind_s[X][1];)Pe+=z.s3_ss[K]*P[fe],++K,++fe;{var re=he*z.nb_s1[W][X];D[X]=Math.min(Pe,re)}if(z.blocktype_old[W&1]==E.SHORT_TYPE){var re=Y*z.nb_s2[W][X],Be=D[X];D[X]=Math.min(re,Be)}z.nb_s2[W][X]=z.nb_s1[W][X],z.nb_s1[W][X]=Pe,ke(D[X]>=0)}for(;X<=E.CBANDS;++X)P[X]=0,D[X]=0}function ue(w,x,P,D){var W=w.internal_flags;w.short_blocks==Kr.short_block_coupled&&!(x[0]!=0&&x[1]!=0)&&(x[0]=x[1]=0);for(var B=0;B<W.channels_out;B++)D[B]=E.NORM_TYPE,w.short_blocks==Kr.short_block_dispensed&&(x[B]=1),w.short_blocks==Kr.short_block_forced&&(x[B]=0),x[B]!=0?(ke(W.blocktype_old[B]!=E.START_TYPE),W.blocktype_old[B]==E.SHORT_TYPE&&(D[B]=E.STOP_TYPE)):(D[B]=E.SHORT_TYPE,W.blocktype_old[B]==E.NORM_TYPE&&(W.blocktype_old[B]=E.START_TYPE),W.blocktype_old[B]==E.STOP_TYPE&&(W.blocktype_old[B]=E.SHORT_TYPE)),P[B]=W.blocktype_old[B],W.blocktype_old[B]=D[B]}function Se(w,x,P){return P>=1?w:P<=0?x:x>0?Math.pow(w/x,P)*x:0}var Ae=[11.8,13.6,17.2,32,46.5,51.3,57.5,67.1,71.5,84.6,97.6,130];function Me(w,x){for(var P=309.07,D=0;D<E.SBMAX_s-1;D++)for(var W=0;W<3;W++){var B=w.thm.s[D][W];if(ke(D<Ae.length),B>0){var z=B*x,K=w.en.s[D][W];K>z&&(K>z*1e10?P+=Ae[D]*(10*G):(ke(z>0),P+=Ae[D]*Et.FAST_LOG10(K/z)))}}return P}var ge=[6.8,5.8,5.8,6.4,6.5,9.9,12.1,14.4,15,18.9,21.6,26.9,34.2,40.2,46.8,56.5,60.7,73.9,85.7,93.4,126.1];function Fe(w,x){for(var P=281.0575,D=0;D<E.SBMAX_l-1;D++){var W=w.thm.l[D];if(ke(D<ge.length),W>0){var B=W*x,z=w.en.l[D];z>B&&(z>B*1e10?P+=ge[D]*(10*G):(ke(B>0),P+=ge[D]*Et.FAST_LOG10(z/B)))}}return P}function Ce(w,x,P,D,W){var B,z;for(B=z=0;B<w.npart_l;++B){var K=0,X=0,ne;for(ne=0;ne<w.numlines_l[B];++ne,++z){var Z=x[z];ke(Z>=0),K+=Z,X<Z&&(X=Z)}P[B]=K,D[B]=X,W[B]=K*w.rnumlines_l[B],ke(w.rnumlines_l[B]>=0),ke(K>=0),ke(P[B]>=0),ke(D[B]>=0),ke(W[B]>=0)}}function Re(w,x,P,D){var W=c.length-1,B=0,z=P[B]+P[B+1];if(ke(z>=0),z>0){var K=x[B];K<x[B+1]&&(K=x[B+1]),ke(w.numlines_l[B]+w.numlines_l[B+1]-1>0),z=20*(K*2-z)/(z*(w.numlines_l[B]+w.numlines_l[B+1]-1));var X=0|z;X>W&&(X=W),D[B]=X}else D[B]=0;for(B=1;B<w.npart_l-1;B++)if(z=P[B-1]+P[B]+P[B+1],ke(z>=0),z>0){var K=x[B-1];K<x[B]&&(K=x[B]),K<x[B+1]&&(K=x[B+1]),ke(w.numlines_l[B-1]+w.numlines_l[B]+w.numlines_l[B+1]-1>0),z=20*(K*3-z)/(z*(w.numlines_l[B-1]+w.numlines_l[B]+w.numlines_l[B+1]-1));var X=0|z;X>W&&(X=W),D[B]=X}else D[B]=0;if(ke(B>0),ke(B==w.npart_l-1),z=P[B-1]+P[B],ke(z>=0),z>0){var K=x[B-1];K<x[B]&&(K=x[B]),ke(w.numlines_l[B-1]+w.numlines_l[B]-1>0),z=20*(K*2-z)/(z*(w.numlines_l[B-1]+w.numlines_l[B]-1));var X=0|z;X>W&&(X=W),D[B]=X}else D[B]=0;ke(B==w.npart_l-1)}var Ye=[-865163e-23*2,-.00851586*2,-674764e-23*2,.0209036*2,-336639e-22*2,-.0438162*2,-154175e-22*2,.0931738*2,-552212e-22*2,-.313819*2];this.L3psycho_anal_ns=function(w,x,P,D,W,B,z,K,X,ne){var Z=w.internal_flags,oe=Ft([2,E.BLKSIZE]),we=Ft([2,3,E.BLKSIZE_s]),Ne=st(E.CBANDS+1),fe=st(E.CBANDS+1),Pe=st(E.CBANDS+2),re=ir(2),Be=ir(2),Xe,_e,Oe,me,Le,nt,xe,Ve,ze=Ft([2,576]),ct,Kt=ir(E.CBANDS+2),pt=ir(E.CBANDS+2);for(Es.fill(pt,0),Xe=Z.channels_out,w.mode==yt.JOINT_STEREO&&(Xe=4),w.VBR==rr.vbr_off?ct=Z.ResvMax==0?0:Z.ResvSize/Z.ResvMax*.5:w.VBR==rr.vbr_rh||w.VBR==rr.vbr_mtrh||w.VBR==rr.vbr_mt?ct=.6:ct=1,_e=0;_e<Z.channels_out;_e++){var lt=x[_e],jt=P+576-350-g+192;for(ke(Ye.length==(g-1)/2),me=0;me<576;me++){var Zt,Qt;for(Zt=lt[jt+me+10],Qt=0,Le=0;Le<(g-1)/2-1;Le+=2)Zt+=Ye[Le]*(lt[jt+me+Le]+lt[jt+me+g-Le]),Qt+=Ye[Le+1]*(lt[jt+me+Le+1]+lt[jt+me+g-Le-1]);ze[_e][me]=Zt+Qt}W[D][_e].en.assign(Z.en[_e]),W[D][_e].thm.assign(Z.thm[_e]),Xe>2&&(B[D][_e].en.assign(Z.en[_e+2]),B[D][_e].thm.assign(Z.thm[_e+2]))}for(_e=0;_e<Xe;_e++){var vr,br,Ct=st(12),Br=[0,0,0,0],Yi=st(12),Fs=1,A0,w0=st(E.CBANDS),R0=st(E.CBANDS),ut=[0,0,0,0],E0=st(E.HBLKSIZE),x0=Ft([3,E.HBLKSIZE_s]);for(ke(Z.npart_s<=E.CBANDS),ke(Z.npart_l<=E.CBANDS),me=0;me<3;me++)Ct[me]=Z.nsPsy.last_en_subshort[_e][me+6],ke(Z.nsPsy.last_en_subshort[_e][me+4]>0),Yi[me]=Ct[me]/Z.nsPsy.last_en_subshort[_e][me+4],Br[0]+=Ct[me];if(_e==2)for(me=0;me<576;me++){var Ds,Vs;Ds=ze[0][me],Vs=ze[1][me],ze[0][me]=Ds+Vs,ze[1][me]=Ds-Vs}{var g0=ze[_e&1],Ra=0;for(me=0;me<9;me++){for(var Tu=Ra+64,xt=1;Ra<Tu;Ra++)xt<Math.abs(g0[Ra])&&(xt=Math.abs(g0[Ra]));Z.nsPsy.last_en_subshort[_e][me]=Ct[me+3]=xt,Br[1+me/3]+=xt,xt>Ct[me+3-2]?(ke(Ct[me+3-2]>0),xt=xt/Ct[me+3-2]):Ct[me+3-2]>xt*10?(ke(xt>0),xt=Ct[me+3-2]/(xt*10)):xt=0,Yi[me+3]=xt}}if(w.analysis){var Hs=Yi[0];for(me=1;me<12;me++)Hs<Yi[me]&&(Hs=Yi[me]);Z.pinfo.ers[D][_e]=Z.pinfo.ers_save[_e],Z.pinfo.ers_save[_e]=Hs}for(A0=_e==3?Z.nsPsy.attackthre_s:Z.nsPsy.attackthre,me=0;me<12;me++)ut[me/3]==0&&Yi[me]>A0&&(ut[me/3]=me%3+1);for(me=1;me<4;me++){var Us;Br[me-1]>Br[me]?(ke(Br[me]>0),Us=Br[me-1]/Br[me]):(ke(Br[me-1]>0),Us=Br[me]/Br[me-1]),Us<1.7&&(ut[me]=0,me==1&&(ut[0]=0))}for(ut[0]!=0&&Z.nsPsy.lastAttacks[_e]!=0&&(ut[0]=0),(Z.nsPsy.lastAttacks[_e]==3||ut[0]+ut[1]+ut[2]+ut[3]!=0)&&(Fs=0,ut[1]!=0&&ut[0]!=0&&(ut[1]=0),ut[2]!=0&&ut[1]!=0&&(ut[2]=0),ut[3]!=0&&ut[2]!=0&&(ut[3]=0)),_e<2?Be[_e]=Fs:Fs==0&&(Be[0]=Be[1]=0),X[_e]=Z.tot_ener[_e],br=we,vr=oe,m(w,E0,x0,vr,_e&1,br,_e&1,D,_e,x,P),Ce(Z,E0,Ne,w0,R0),Re(Z,w0,R0,Kt),Ve=0;Ve<3;Ve++){var js,qt;for(ie(w,x0,fe,Pe,_e,Ve),u(Z,fe,Pe,_e,Ve),xe=0;xe<E.SBMAX_s;xe++){if(qt=Z.thm[_e].s[xe][Ve],qt*=U,ut[Ve]>=2||ut[Ve+1]==1){var Ea=Ve!=0?Ve-1:2,xt=Se(Z.thm[_e].s[xe][Ea],qt,ae*ct);qt=Math.min(qt,xt)}if(ut[Ve]==1){var Ea=Ve!=0?Ve-1:2,xt=Se(Z.thm[_e].s[xe][Ea],qt,le*ct);qt=Math.min(qt,xt)}else if(Ve!=0&&ut[Ve-1]==3||Ve==0&&Z.nsPsy.lastAttacks[_e]==3){var Ea=Ve!=2?Ve+1:0,xt=Se(Z.thm[_e].s[xe][Ea],qt,le*ct);qt=Math.min(qt,xt)}js=Ct[Ve*3+3]+Ct[Ve*3+4]+Ct[Ve*3+5],Ct[Ve*3+5]*6<js&&(qt*=.5,Ct[Ve*3+4]*6<js&&(qt*=.5)),Z.thm[_e].s[xe][Ve]=qt}}for(Z.nsPsy.lastAttacks[_e]=ut[2],nt=0,Oe=0;Oe<Z.npart_l;Oe++){for(var Mi=Z.s3ind[Oe][0],qs=Ne[Mi]*c[Kt[Mi]],ki=Z.s3_ll[nt++]*qs;++Mi<=Z.s3ind[Oe][1];)qs=Ne[Mi]*c[Kt[Mi]],ki=b(ki,Z.s3_ll[nt++]*qs,Mi,Mi-Oe,Z,0);ki*=.158489319246111,Z.blocktype_old[_e&1]==E.SHORT_TYPE?Pe[Oe]=ki:Pe[Oe]=Se(Math.min(ki,Math.min(J*Z.nb_1[_e][Oe],$*Z.nb_2[_e][Oe])),ki,ct),Z.nb_2[_e][Oe]=Z.nb_1[_e][Oe],Z.nb_1[_e][Oe]=ki}for(;Oe<=E.CBANDS;++Oe)Ne[Oe]=0,Pe[Oe]=0;_(Z,Ne,Pe,_e)}if((w.mode==yt.STEREO||w.mode==yt.JOINT_STEREO)&&w.interChRatio>0&&L(w,w.interChRatio),w.mode==yt.JOINT_STEREO){var Xs;H(Z),Xs=w.msfix,Math.abs(Xs)>0&&de(Z,Xs,w.ATHlower*Z.ATH.adjust)}for(ue(w,Be,ne,re),_e=0;_e<Xe;_e++){var xa,ga=0,fn,mn;_e>1?(xa=K,ga=-2,fn=E.NORM_TYPE,(ne[0]==E.SHORT_TYPE||ne[1]==E.SHORT_TYPE)&&(fn=E.SHORT_TYPE),mn=B[D][_e-2]):(xa=z,ga=0,fn=ne[_e],mn=W[D][_e]),fn==E.SHORT_TYPE?xa[ga+_e]=Me(mn,Z.masking_lower):xa[ga+_e]=Fe(mn,Z.masking_lower),w.analysis&&(Z.pinfo.pe[D][_e]=xa[ga+_e])}return 0};function it(w,x,P,D,W,B,z,K){var X=w.internal_flags;if(D<2)T.fft_long(X,z[K],D,x,P);else if(D==2)for(var ne=E.BLKSIZE-1;ne>=0;--ne){var Z=z[K+0][ne],oe=z[K+1][ne];z[K+0][ne]=(Z+oe)*Et.SQRT2*.5,z[K+1][ne]=(Z-oe)*Et.SQRT2*.5}B[0]=z[K+0][0],B[0]*=B[0];for(var ne=E.BLKSIZE/2-1;ne>=0;--ne){var we=z[K+0][E.BLKSIZE/2-ne],Ne=z[K+0][E.BLKSIZE/2+ne];B[E.BLKSIZE/2-ne]=(we*we+Ne*Ne)*.5}{for(var fe=0,ne=11;ne<E.HBLKSIZE;ne++)fe+=B[ne];X.tot_ener[D]=fe}if(w.analysis){for(var ne=0;ne<E.HBLKSIZE;ne++)X.pinfo.energy[W][D][ne]=X.pinfo.energy_save[D][ne],X.pinfo.energy_save[D][ne]=B[ne];X.pinfo.pe[W][D]=X.pe[D]}}function Ke(w,x,P,D,W,B,z,K){var X=w.internal_flags;if(W==0&&D<2&&T.fft_short(X,z[K],D,x,P),D==2)for(var ne=E.BLKSIZE_s-1;ne>=0;--ne){var Z=z[K+0][W][ne],oe=z[K+1][W][ne];z[K+0][W][ne]=(Z+oe)*Et.SQRT2*.5,z[K+1][W][ne]=(Z-oe)*Et.SQRT2*.5}B[W][0]=z[K+0][W][0],B[W][0]*=B[W][0];for(var ne=E.BLKSIZE_s/2-1;ne>=0;--ne){var we=z[K+0][W][E.BLKSIZE_s/2-ne],Ne=z[K+0][W][E.BLKSIZE_s/2+ne];B[W][E.BLKSIZE_s/2-ne]=(we*we+Ne*Ne)*.5}}function at(w,x,P,D){var W=w.internal_flags;w.athaa_loudapprox==2&&P<2&&(W.loudness_sq[x][P]=W.loudness_sq_save[P],W.loudness_sq_save[P]=p(D,W))}var ft=[-865163e-23*2,-.00851586*2,-674764e-23*2,.0209036*2,-336639e-22*2,-.0438162*2,-154175e-22*2,.0931738*2,-552212e-22*2,-.313819*2];function mt(w,x,P,D,W,B,z,K,X,ne){for(var Z=Ft([2,576]),oe=w.internal_flags,we=oe.channels_out,Ne=w.mode==yt.JOINT_STEREO?4:we,fe=0;fe<we;fe++){firbuf=x[fe];var Pe=P+576-350-g+192;ke(ft.length==(g-1)/2);for(var re=0;re<576;re++){var Be,Xe;Be=firbuf[Pe+re+10],Xe=0;for(var _e=0;_e<(g-1)/2-1;_e+=2)Be+=ft[_e]*(firbuf[Pe+re+_e]+firbuf[Pe+re+g-_e]),Xe+=ft[_e+1]*(firbuf[Pe+re+_e+1]+firbuf[Pe+re+g-_e-1]);Z[fe][re]=Be+Xe}W[D][fe].en.assign(oe.en[fe]),W[D][fe].thm.assign(oe.thm[fe]),Ne>2&&(B[D][fe].en.assign(oe.en[fe+2]),B[D][fe].thm.assign(oe.thm[fe+2]))}for(var fe=0;fe<Ne;fe++){var Oe=st(12),me=st(12),Le=[0,0,0,0],nt=Z[fe&1],xe=0,Ve=fe==3?oe.nsPsy.attackthre_s:oe.nsPsy.attackthre,ze=1;if(fe==2)for(var re=0,_e=576;_e>0;++re,--_e){var ct=Z[0][re],Kt=Z[1][re];Z[0][re]=ct+Kt,Z[1][re]=ct-Kt}for(var re=0;re<3;re++)me[re]=oe.nsPsy.last_en_subshort[fe][re+6],ke(oe.nsPsy.last_en_subshort[fe][re+4]>0),Oe[re]=me[re]/oe.nsPsy.last_en_subshort[fe][re+4],Le[0]+=me[re];for(var re=0;re<9;re++){for(var pt=xe+64,lt=1;xe<pt;xe++)lt<Math.abs(nt[xe])&&(lt=Math.abs(nt[xe]));oe.nsPsy.last_en_subshort[fe][re]=me[re+3]=lt,Le[1+re/3]+=lt,lt>me[re+3-2]?(ke(me[re+3-2]>0),lt=lt/me[re+3-2]):me[re+3-2]>lt*10?(ke(lt>0),lt=me[re+3-2]/(lt*10)):lt=0,Oe[re+3]=lt}for(var re=0;re<3;++re){var jt=me[re*3+3]+me[re*3+4]+me[re*3+5],Zt=1;me[re*3+5]*6<jt&&(Zt*=.5,me[re*3+4]*6<jt&&(Zt*=.5)),K[fe][re]=Zt}if(w.analysis){for(var Qt=Oe[0],re=1;re<12;re++)Qt<Oe[re]&&(Qt=Oe[re]);oe.pinfo.ers[D][fe]=oe.pinfo.ers_save[fe],oe.pinfo.ers_save[fe]=Qt}for(var re=0;re<12;re++)X[fe][re/3]==0&&Oe[re]>Ve&&(X[fe][re/3]=re%3+1);for(var re=1;re<4;re++){var vr=Le[re-1],br=Le[re],Ct=Math.max(vr,br);Ct<4e4&&vr<1.7*br&&br<1.7*vr&&(re==1&&X[fe][0]<=X[fe][re]&&(X[fe][0]=0),X[fe][re]=0)}X[fe][0]<=oe.nsPsy.lastAttacks[fe]&&(X[fe][0]=0),(oe.nsPsy.lastAttacks[fe]==3||X[fe][0]+X[fe][1]+X[fe][2]+X[fe][3]!=0)&&(ze=0,X[fe][1]!=0&&X[fe][0]!=0&&(X[fe][1]=0),X[fe][2]!=0&&X[fe][1]!=0&&(X[fe][2]=0),X[fe][3]!=0&&X[fe][2]!=0&&(X[fe][3]=0)),fe<2?ne[fe]=ze:ze==0&&(ne[0]=ne[1]=0),z[fe]=oe.tot_ener[fe]}}function Mt(w,x,P){if(P==0)for(var D=0;D<w.npart_s;D++)w.nb_s2[x][D]=w.nb_s1[x][D],w.nb_s1[x][D]=0}function kr(w,x){for(var P=0;P<w.npart_l;P++)w.nb_2[x][P]=w.nb_1[x][P],w.nb_1[x][P]=0}function Ht(w,x,P,D){var W=c.length-1,B=0,z=P[B]+P[B+1];if(ke(z>=0),z>0){var K=x[B];K<x[B+1]&&(K=x[B+1]),ke(w.numlines_s[B]+w.numlines_s[B+1]-1>0),z=20*(K*2-z)/(z*(w.numlines_s[B]+w.numlines_s[B+1]-1));var X=0|z;X>W&&(X=W),D[B]=X}else D[B]=0;for(B=1;B<w.npart_s-1;B++)if(z=P[B-1]+P[B]+P[B+1],ke(B+1<w.npart_s),ke(z>=0),z>0){var K=x[B-1];K<x[B]&&(K=x[B]),K<x[B+1]&&(K=x[B+1]),ke(w.numlines_s[B-1]+w.numlines_s[B]+w.numlines_s[B+1]-1>0),z=20*(K*3-z)/(z*(w.numlines_s[B-1]+w.numlines_s[B]+w.numlines_s[B+1]-1));var X=0|z;X>W&&(X=W),D[B]=X}else D[B]=0;if(ke(B>0),ke(B==w.npart_s-1),z=P[B-1]+P[B],ke(z>=0),z>0){var K=x[B-1];K<x[B]&&(K=x[B]),ke(w.numlines_s[B-1]+w.numlines_s[B]-1>0),z=20*(K*2-z)/(z*(w.numlines_s[B-1]+w.numlines_s[B]-1));var X=0|z;X>W&&(X=W),D[B]=X}else D[B]=0;ke(B==w.npart_s-1)}function Ut(w,x,P,D,W,B){var z=w.internal_flags,K=new float[E.CBANDS],X=st(E.CBANDS),ne,Z,oe,we=new int[E.CBANDS];for(oe=Z=0;oe<z.npart_s;++oe){var Ne=0,fe=0,Pe=z.numlines_s[oe];for(ne=0;ne<Pe;++ne,++Z){var re=x[B][Z];Ne+=re,fe<re&&(fe=re)}P[oe]=Ne,ke(Ne>=0),K[oe]=fe,ke(Pe>0),X[oe]=Ne/Pe,ke(X[oe]>=0)}for(ke(oe==z.npart_s),ke(Z==129);oe<E.CBANDS;++oe)K[oe]=0,X[oe]=0;for(Ht(z,K,X,we),Z=oe=0;oe<z.npart_s;oe++){var Be=z.s3ind_s[oe][0],Xe=z.s3ind_s[oe][1],_e,Oe,me,Le,nt;for(_e=we[Be],Oe=1,Le=z.s3_ss[Z]*P[Be]*c[we[Be]],++Z,++Be;Be<=Xe;)_e+=we[Be],Oe+=1,me=z.s3_ss[Z]*P[Be]*c[we[Be]],Le=j(Le,me,Be-oe),++Z,++Be;_e=(1+2*_e)/(2*Oe),nt=c[_e]*.5,Le*=nt,D[oe]=Le,z.nb_s2[W][oe]=z.nb_s1[W][oe],z.nb_s1[W][oe]=Le,me=K[oe],me*=z.minval_s[oe],me*=nt,D[oe]>me&&(D[oe]=me),z.masking_lower>1&&(D[oe]*=z.masking_lower),D[oe]>P[oe]&&(D[oe]=P[oe]),z.masking_lower<1&&(D[oe]*=z.masking_lower),ke(D[oe]>=0)}for(;oe<E.CBANDS;++oe)P[oe]=0,D[oe]=0}function _r(w,x,P,D,W){var B=st(E.CBANDS),z=st(E.CBANDS),K=ir(E.CBANDS+2),X;Ce(w,x,P,B,z),Re(w,B,z,K);var ne=0;for(X=0;X<w.npart_l;X++){var Z,oe,we,Ne,fe=w.s3ind[X][0],Pe=w.s3ind[X][1],re=0,Be=0;for(re=K[fe],Be+=1,oe=w.s3_ll[ne]*P[fe]*c[K[fe]],++ne,++fe;fe<=Pe;)re+=K[fe],Be+=1,Z=w.s3_ll[ne]*P[fe]*c[K[fe]],Ne=j(oe,Z,fe-X),oe=Ne,++ne,++fe;if(re=(1+2*re)/(2*Be),we=c[re]*.5,oe*=we,w.blocktype_old[W&1]==E.SHORT_TYPE){var Xe=J*w.nb_1[W][X];Xe>0?D[X]=Math.min(oe,Xe):D[X]=Math.min(oe,P[X]*le)}else{var _e=$*w.nb_2[W][X],Oe=J*w.nb_1[W][X],Xe;_e<=0&&(_e=oe),Oe<=0&&(Oe=oe),w.blocktype_old[W&1]==E.NORM_TYPE?Xe=Math.min(Oe,_e):Xe=Oe,D[X]=Math.min(oe,Xe)}w.nb_2[W][X]=w.nb_1[W][X],w.nb_1[W][X]=oe,Z=B[X],Z*=w.minval_l[X],Z*=we,D[X]>Z&&(D[X]=Z),w.masking_lower>1&&(D[X]*=w.masking_lower),D[X]>P[X]&&(D[X]=P[X]),w.masking_lower<1&&(D[X]*=w.masking_lower),ke(D[X]>=0)}for(;X<E.CBANDS;++X)P[X]=0,D[X]=0}function gi(w,x){var P=w.internal_flags;w.short_blocks==Kr.short_block_coupled&&!(x[0]!=0&&x[1]!=0)&&(x[0]=x[1]=0);for(var D=0;D<P.channels_out;D++)w.short_blocks==Kr.short_block_dispensed&&(x[D]=1),w.short_blocks==Kr.short_block_forced&&(x[D]=0)}function Ti(w,x,P){for(var D=w.internal_flags,W=0;W<D.channels_out;W++){var B=E.NORM_TYPE;x[W]!=0?(ke(D.blocktype_old[W]!=E.START_TYPE),D.blocktype_old[W]==E.SHORT_TYPE&&(B=E.STOP_TYPE)):(B=E.SHORT_TYPE,D.blocktype_old[W]==E.NORM_TYPE&&(D.blocktype_old[W]=E.START_TYPE),D.blocktype_old[W]==E.STOP_TYPE&&(D.blocktype_old[W]=E.SHORT_TYPE)),P[W]=D.blocktype_old[W],D.blocktype_old[W]=B}}function pr(w,x,P,D,W,B,z){for(var K=B*2,X=B>0?Math.pow(10,W):1,ne,Z,oe=0;oe<z;++oe){var we=w[2][oe],Ne=w[3][oe],fe=x[0][oe],Pe=x[1][oe],re=x[2][oe],Be=x[3][oe];if(fe<=1.58*Pe&&Pe<=1.58*fe){var Xe=P[oe]*Ne,_e=P[oe]*we;Z=Math.max(re,Math.min(Be,Xe)),ne=Math.max(Be,Math.min(re,_e))}else Z=re,ne=Be;if(B>0){var Oe,me,Le=D[oe]*X;if(Oe=Math.min(Math.max(fe,Le),Math.max(Pe,Le)),re=Math.max(Z,Le),Be=Math.max(ne,Le),me=re+Be,me>0&&Oe*K<me){var nt=Oe*K/me;re*=nt,Be*=nt,ke(me>0)}Z=Math.min(re,Z),ne=Math.min(Be,ne)}Z>we&&(Z=we),ne>Ne&&(ne=Ne),x[2][oe]=Z,x[3][oe]=ne}}this.L3psycho_anal_vbr=function(w,x,P,D,W,B,z,K,X,ne){var Z=w.internal_flags,oe,we,Ne=st(E.HBLKSIZE),fe=Ft([3,E.HBLKSIZE_s]),Pe=Ft([2,E.BLKSIZE]),re=Ft([2,3,E.BLKSIZE_s]),Be=Ft([4,E.CBANDS]),Xe=Ft([4,E.CBANDS]),_e=Ft([4,3]),Oe=.6,me=[[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]],Le=ir(2),nt=w.mode==yt.JOINT_STEREO?4:Z.channels_out;mt(w,x,P,D,W,B,X,_e,me,Le),gi(w,Le);{for(var xe=0;xe<nt;xe++){var Ve=xe&1;oe=Pe,it(w,x,P,xe,D,Ne,oe,Ve),at(w,D,xe,Ne),Le[Ve]!=0?_r(Z,Ne,Be[xe],Xe[xe],xe):kr(Z,xe)}Le[0]+Le[1]==2&&w.mode==yt.JOINT_STEREO&&pr(Be,Xe,Z.mld_cb_l,Z.ATH.cb_l,w.ATHlower*Z.ATH.adjust,w.msfix,Z.npart_l);for(var xe=0;xe<nt;xe++){var Ve=xe&1;Le[Ve]!=0&&_(Z,Be[xe],Xe[xe],xe)}}{for(var ze=0;ze<3;ze++){for(var xe=0;xe<nt;++xe){var Ve=xe&1;Le[Ve]!=0?Mt(Z,xe,ze):(we=re,Ke(w,x,P,xe,ze,fe,we,Ve),Ut(w,fe,Be[xe],Xe[xe],xe,ze))}Le[0]+Le[1]==0&&w.mode==yt.JOINT_STEREO&&pr(Be,Xe,Z.mld_cb_s,Z.ATH.cb_s,w.ATHlower*Z.ATH.adjust,w.msfix,Z.npart_s);for(var xe=0;xe<nt;++xe){var Ve=xe&1;Le[Ve]==0&&u(Z,Be[xe],Xe[xe],xe,ze)}}for(var xe=0;xe<nt;xe++){var Ve=xe&1;if(Le[Ve]==0)for(var ct=0;ct<E.SBMAX_s;ct++){for(var Kt=st(3),ze=0;ze<3;ze++){var pt=Z.thm[xe].s[ct][ze];if(pt*=U,me[xe][ze]>=2||me[xe][ze+1]==1){var lt=ze!=0?ze-1:2,jt=Se(Z.thm[xe].s[ct][lt],pt,ae*Oe);pt=Math.min(pt,jt)}else if(me[xe][ze]==1){var lt=ze!=0?ze-1:2,jt=Se(Z.thm[xe].s[ct][lt],pt,le*Oe);pt=Math.min(pt,jt)}else if(ze!=0&&me[xe][ze-1]==3||ze==0&&Z.nsPsy.lastAttacks[xe]==3){var lt=ze!=2?ze+1:0,jt=Se(Z.thm[xe].s[ct][lt],pt,le*Oe);pt=Math.min(pt,jt)}pt*=_e[xe][ze],Kt[ze]=pt}for(var ze=0;ze<3;ze++)Z.thm[xe].s[ct][ze]=Kt[ze]}}}for(var xe=0;xe<nt;xe++)Z.nsPsy.lastAttacks[xe]=me[xe][2];Ti(w,Le,ne);for(var xe=0;xe<nt;xe++){var Zt,Qt,vr,br;xe>1?(Zt=K,Qt=-2,vr=E.NORM_TYPE,(ne[0]==E.SHORT_TYPE||ne[1]==E.SHORT_TYPE)&&(vr=E.SHORT_TYPE),br=B[D][xe-2]):(Zt=z,Qt=0,vr=ne[xe],br=W[D][xe]),vr==E.SHORT_TYPE?Zt[Qt+xe]=Me(br,Z.masking_lower):Zt[Qt+xe]=Fe(br,Z.masking_lower),w.analysis&&(Z.pinfo.pe[D][xe]=Zt[Qt+xe])}return 0};function Lt(w,x){var P=w,D;return P>=0?D=-P*27:D=P*x,D<=-72?0:Math.exp(D*N)}function ei(w){var x=0,P=0;{var D=0,W,B;for(D=0;Lt(D,w)>1e-20;D-=1);for(W=D,B=0;Math.abs(B-W)>1e-12;)D=(B+W)/2,Lt(D,w)>0?B=D:W=D;x=W}{var D=0,W,B;for(D=0;Lt(D,w)>1e-20;D+=1);for(W=0,B=D;Math.abs(B-W)>1e-12;)D=(B+W)/2,Lt(D,w)>0?W=D:B=D;P=B}{var z=0,K=1e3,X;for(X=0;X<=K;++X){var D=x+X*(P-x)/K,ne=Lt(D,w);z+=ne}{var Z=(K+1)/(z*(P-x));return Z}}}function wa(w){var x,P,D,W;return x=w,x>=0?x*=3:x*=1.5,x>=.5&&x<=2.5?(W=x-.5,P=8*(W*W-2*W)):P=0,x+=.474,D=15.811389+7.5*x-17.5*Math.sqrt(1+x*x),D<=-60?0:(x=Math.exp((P+D)*N),x/=.6609193,x)}function ti(w){return w<0&&(w=0),w=w*.001,13*Math.atan(.76*w)+3.5*Math.atan(w*w/(7.5*7.5))}function b0(w,x,P,D,W,B,z,K,X,ne,Z,oe){var we=st(E.CBANDS+1),Ne=K/(oe>15?2*576:2*192),fe=ir(E.HBLKSIZE),Pe;K/=X;var re=0,Be=0;for(Pe=0;Pe<E.CBANDS;Pe++){var Xe,_e;for(Xe=ti(K*re),we[Pe]=K*re,_e=re;ti(K*_e)-Xe<se&&_e<=X/2;_e++);for(w[Pe]=_e-re,Be=Pe+1;re<_e;)ke(re<E.HBLKSIZE),fe[re++]=Pe;if(re>X/2){re=X/2,++Pe;break}}ke(Pe<E.CBANDS),we[Pe]=K*re;for(var Oe=0;Oe<oe;Oe++){var me,Le,nt,xe,Ve;nt=ne[Oe],xe=ne[Oe+1],me=0|Math.floor(.5+Z*(nt-.5)),me<0&&(me=0),Le=0|Math.floor(.5+Z*(xe-.5)),Le>X/2&&(Le=X/2),P[Oe]=(fe[me]+fe[Le])/2,x[Oe]=fe[Le];var ze=Ne*xe;z[Oe]=(ze-we[x[Oe]])/(we[x[Oe]+1]-we[x[Oe]]),z[Oe]<0?z[Oe]=0:z[Oe]>1&&(z[Oe]=1),Ve=ti(K*ne[Oe]*Z),Ve=Math.min(Ve,15.5)/15.5,B[Oe]=Math.pow(10,1.25*(1-Math.cos(Math.PI*Ve))-2.5)}re=0;for(var ct=0;ct<Be;ct++){var Kt=w[ct],Xe,pt;Xe=ti(K*re),pt=ti(K*(re+Kt-1)),D[ct]=.5*(Xe+pt),Xe=ti(K*(re-.5)),pt=ti(K*(re+Kt-.5)),W[ct]=pt-Xe,re+=Kt}return Be}function y0(w,x,P,D,W,B){var z=Ft([E.CBANDS,E.CBANDS]),K,X=0;if(B)for(var ne=0;ne<x;ne++)for(K=0;K<x;K++){var Z=wa(P[ne]-P[K])*D[K];z[ne][K]=Z*W[ne]}else for(K=0;K<x;K++)for(var oe=15+Math.min(21/P[K],12),we=ei(oe),ne=0;ne<x;ne++){var Z=we*Lt(P[ne]-P[K],oe)*D[K];z[ne][K]=Z*W[ne]}for(var ne=0;ne<x;ne++){for(K=0;K<x&&!(z[ne][K]>0);K++);for(w[ne][0]=K,K=x-1;K>0&&!(z[ne][K]>0);K--);w[ne][1]=K,X+=w[ne][1]-w[ne][0]+1}for(var Ne=st(X),fe=0,ne=0;ne<x;ne++)for(K=w[ne][0];K<=w[ne][1];K++)Ne[fe++]=z[ne][K];return Ne}function S0(w){var x=ti(w);return x=Math.min(x,15.5)/15.5,Math.pow(10,1.25*(1-Math.cos(Math.PI*x))-2.5)}this.psymodel_init=function(w){var x=w.internal_flags,P,D=!0,W=13,B=24,z=0,K=0,X=-8.25,ne=-4.5,Z=st(E.CBANDS),oe=st(E.CBANDS),we=st(E.CBANDS),Ne=w.out_samplerate;switch(w.experimentalZ){default:case 0:D=!0;break;case 1:D=!(w.VBR==rr.vbr_mtrh||w.VBR==rr.vbr_mt);break;case 2:D=!1;break;case 3:W=8,z=-1.75,K=-.0125,X=-8.25,ne=-2.25;break}for(x.ms_ener_ratio_old=.25,x.blocktype_old[0]=x.blocktype_old[1]=E.NORM_TYPE,P=0;P<4;++P){for(var re=0;re<E.CBANDS;++re)x.nb_1[P][re]=1e20,x.nb_2[P][re]=1e20,x.nb_s1[P][re]=x.nb_s2[P][re]=1;for(var fe=0;fe<E.SBMAX_l;fe++)x.en[P].l[fe]=1e20,x.thm[P].l[fe]=1e20;for(var re=0;re<3;++re){for(var fe=0;fe<E.SBMAX_s;fe++)x.en[P].s[fe][re]=1e20,x.thm[P].s[fe][re]=1e20;x.nsPsy.lastAttacks[P]=0}for(var re=0;re<9;re++)x.nsPsy.last_en_subshort[P][re]=10}for(x.loudness_sq_save[0]=x.loudness_sq_save[1]=0,x.npart_l=b0(x.numlines_l,x.bo_l,x.bm_l,Z,oe,x.mld_l,x.PSY.bo_l_weight,Ne,E.BLKSIZE,x.scalefac_band.l,E.BLKSIZE/(2*576),E.SBMAX_l),ke(x.npart_l<E.CBANDS),P=0;P<x.npart_l;P++){var Pe=z;Z[P]>=W&&(Pe=K*(Z[P]-W)/(B-W)+z*(B-Z[P])/(B-W)),we[P]=Math.pow(10,Pe/10),x.numlines_l[P]>0?x.rnumlines_l[P]=1/x.numlines_l[P]:x.rnumlines_l[P]=0}x.s3_ll=y0(x.s3ind,x.npart_l,Z,oe,we,D);var re=0;for(P=0;P<x.npart_l;P++){var Be;Be=rn.MAX_VALUE;for(var Xe=0;Xe<x.numlines_l[P];Xe++,re++){var _e=Ne*re/(1e3*E.BLKSIZE),Oe;Oe=this.ATHformula(_e*1e3,w)-20,Oe=Math.pow(10,.1*Oe),Oe*=x.numlines_l[P],Be>Oe&&(Be=Oe)}x.ATH.cb_l[P]=Be,Be=-20+Z[P]*20/10,Be>6&&(Be=100),Be<-15&&(Be=-15),Be-=8,x.minval_l[P]=Math.pow(10,Be/10)*x.numlines_l[P]}for(x.npart_s=b0(x.numlines_s,x.bo_s,x.bm_s,Z,oe,x.mld_s,x.PSY.bo_s_weight,Ne,E.BLKSIZE_s,x.scalefac_band.s,E.BLKSIZE_s/(2*192),E.SBMAX_s),ke(x.npart_s<E.CBANDS),re=0,P=0;P<x.npart_s;P++){var Be,Pe=X;Z[P]>=W&&(Pe=ne*(Z[P]-W)/(B-W)+X*(B-Z[P])/(B-W)),we[P]=Math.pow(10,Pe/10),Be=rn.MAX_VALUE;for(var Xe=0;Xe<x.numlines_s[P];Xe++,re++){var _e=Ne*re/(1e3*E.BLKSIZE_s),Oe;Oe=this.ATHformula(_e*1e3,w)-20,Oe=Math.pow(10,.1*Oe),Oe*=x.numlines_s[P],Be>Oe&&(Be=Oe)}x.ATH.cb_s[P]=Be,Be=-7+Z[P]*7/12,Z[P]>12&&(Be*=1+Math.log(1+Be)*3.1),Z[P]<12&&(Be*=1+Math.log(1-Be)*2.3),Be<-15&&(Be=-15),Be-=8,x.minval_s[P]=Math.pow(10,Be/10)*x.numlines_s[P]}x.s3_ss=y0(x.s3ind_s,x.npart_s,Z,oe,we,D),d(),T.init_fft(x),x.decay=Math.exp(-1*G/(ye*Ne/192));{var me;me=M,(w.exp_nspsytune&2)!=0&&(me=1),Math.abs(w.msfix)>0&&(me=w.msfix),w.msfix=me;for(var Le=0;Le<x.npart_l;Le++)x.s3ind[Le][1]>x.npart_l-1&&(x.s3ind[Le][1]=x.npart_l-1)}var nt=576*x.mode_gr/Ne;if(x.ATH.decay=Math.pow(10,-12/10*nt),x.ATH.adjust=.01,x.ATH.adjustLimit=1,ke(x.bo_l[E.SBMAX_l-1]<=x.npart_l),ke(x.bo_s[E.SBMAX_s-1]<=x.npart_s),w.ATHtype!=-1){var _e,xe=w.out_samplerate/E.BLKSIZE,Ve=0;for(_e=0,P=0;P<E.BLKSIZE/2;++P)_e+=xe,x.ATH.eql_w[P]=1/Math.pow(10,this.ATHformula(_e,w)/10),Ve+=x.ATH.eql_w[P];for(Ve=1/Ve,P=E.BLKSIZE/2;--P>=0;)x.ATH.eql_w[P]*=Ve}{for(var Le=re=0;Le<x.npart_s;++Le)for(P=0;P<x.numlines_s[Le];++P)++re;ke(re==129);for(var Le=re=0;Le<x.npart_l;++Le)for(P=0;P<x.numlines_l[Le];++P)++re;ke(re==513)}for(re=0,P=0;P<x.npart_l;P++){var _e=Ne*(re+x.numlines_l[P]/2)/(1*E.BLKSIZE);x.mld_cb_l[P]=S0(_e),re+=x.numlines_l[P]}for(;P<E.CBANDS;++P)x.mld_cb_l[P]=1;for(re=0,P=0;P<x.npart_s;P++){var _e=Ne*(re+x.numlines_s[P]/2)/(1*E.BLKSIZE_s);x.mld_cb_s[P]=S0(_e),re+=x.numlines_s[P]}for(;P<E.CBANDS;++P)x.mld_cb_s[P]=1;return 0};function $i(w,x){w<-.3&&(w=3410),w/=1e3,w=Math.max(.1,w);var P=3.64*Math.pow(w,-.8)-6.8*Math.exp(-.6*Math.pow(w-3.4,2))+6*Math.exp(-.15*Math.pow(w-8.7,2))+(.6+.04*x)*.001*Math.pow(w,4);return P}this.ATHformula=function(w,x){var P;switch(x.ATHtype){case 0:P=$i(w,9);break;case 1:P=$i(w,-1);break;case 2:P=$i(w,0);break;case 3:P=$i(w,1)+6;break;case 4:P=$i(w,x.ATHcurve);break;default:P=$i(w,0);break}return P}}var Vr=xs;function Dt(T){var G=T;this.ordinal=function(){return G}}Dt.STEREO=new Dt(0),Dt.JOINT_STEREO=new Dt(1),Dt.DUAL_CHANNEL=new Dt(2),Dt.MONO=new Dt(3),Dt.NOT_SET=new Dt(4);var pa=Dt;function an(){this.class_id=0,this.num_samples=0,this.num_channels=0,this.in_samplerate=0,this.out_samplerate=0,this.scale=0,this.scale_left=0,this.scale_right=0,this.analysis=!1,this.bWriteVbrTag=!1,this.decode_only=!1,this.quality=0,this.mode=pa.STEREO,this.force_ms=!1,this.free_format=!1,this.findReplayGain=!1,this.decode_on_the_fly=!1,this.write_id3tag_automatic=!1,this.brate=0,this.compression_ratio=0,this.copyright=0,this.original=0,this.extension=0,this.emphasis=0,this.error_protection=0,this.strict_ISO=!1,this.disable_reservoir=!1,this.quant_comp=0,this.quant_comp_short=0,this.experimentalY=!1,this.experimentalZ=0,this.exp_nspsytune=0,this.preset=0,this.VBR=null,this.VBR_q_frac=0,this.VBR_q=0,this.VBR_mean_bitrate_kbps=0,this.VBR_min_bitrate_kbps=0,this.VBR_max_bitrate_kbps=0,this.VBR_hard_min=0,this.lowpassfreq=0,this.highpassfreq=0,this.lowpasswidth=0,this.highpasswidth=0,this.maskingadjust=0,this.maskingadjust_short=0,this.ATHonly=!1,this.ATHshort=!1,this.noATH=!1,this.ATHtype=0,this.ATHcurve=0,this.ATHlower=0,this.athaa_type=0,this.athaa_loudapprox=0,this.athaa_sensitivity=0,this.short_blocks=null,this.useTemporal=!1,this.interChRatio=0,this.msfix=0,this.tune=!1,this.tune_value_a=0,this.version=0,this.encoder_delay=0,this.encoder_padding=0,this.framesize=0,this.frameNum=0,this.lame_allocated_gfp=0,this.internal_flags=null}var gs=an,Hr={};Hr.SFBMAX=E.SBMAX_s*3;var Ur=Hr,ji=te.new_float,ar=te.new_int;function nn(){this.xr=ji(576),this.l3_enc=ar(576),this.scalefac=ar(Ur.SFBMAX),this.xrpow_max=0,this.part2_3_length=0,this.big_values=0,this.count1=0,this.global_gain=0,this.scalefac_compress=0,this.block_type=0,this.mixed_block_flag=0,this.table_select=ar(3),this.subblock_gain=ar(3+1),this.region0_count=0,this.region1_count=0,this.preflag=0,this.scalefac_scale=0,this.count1table_select=0,this.part2_length=0,this.sfb_lmax=0,this.sfb_smin=0,this.psy_lmax=0,this.sfbmax=0,this.psymax=0,this.sfbdivide=0,this.width=ar(Ur.SFBMAX),this.window=ar(Ur.SFBMAX),this.count1bits=0,this.sfb_partition_table=null,this.slen=ar(4),this.max_nonzero_coeff=0;var T=this;function G($){return new Int32Array($)}function J($){return new Float32Array($)}this.assign=function($){T.xr=J($.xr),T.l3_enc=G($.l3_enc),T.scalefac=G($.scalefac),T.xrpow_max=$.xrpow_max,T.part2_3_length=$.part2_3_length,T.big_values=$.big_values,T.count1=$.count1,T.global_gain=$.global_gain,T.scalefac_compress=$.scalefac_compress,T.block_type=$.block_type,T.mixed_block_flag=$.mixed_block_flag,T.table_select=G($.table_select),T.subblock_gain=G($.subblock_gain),T.region0_count=$.region0_count,T.region1_count=$.region1_count,T.preflag=$.preflag,T.scalefac_scale=$.scalefac_scale,T.count1table_select=$.count1table_select,T.part2_length=$.part2_length,T.sfb_lmax=$.sfb_lmax,T.sfb_smin=$.sfb_smin,T.psy_lmax=$.psy_lmax,T.sfbmax=$.sfbmax,T.psymax=$.psymax,T.sfbdivide=$.sfbdivide,T.width=G($.width),T.window=G($.window),T.count1bits=$.count1bits,T.sfb_partition_table=$.sfb_partition_table.slice(0),T.slen=G($.slen),T.max_nonzero_coeff=$.max_nonzero_coeff}}var vi=nn,bi=te.new_int;function Ts(){this.tt=[[null,null],[null,null]],this.main_data_begin=0,this.private_bits=0,this.resvDrain_pre=0,this.resvDrain_post=0,this.scfsi=[bi(4),bi(4)];for(var T=0;T<2;T++)for(var G=0;G<2;G++)this.tt[T][G]=new vi}var yi=Ts,qi=te.System,jr=te.new_int;function Ms(T,G,J,$){this.l=jr(1+E.SBMAX_l),this.s=jr(1+E.SBMAX_s),this.psfb21=jr(1+E.PSFB21),this.psfb12=jr(1+E.PSFB12);var he=this.l,Y=this.s;arguments.length==4&&(this.arrL=arguments[0],this.arrS=arguments[1],this.arr21=arguments[2],this.arr12=arguments[3],qi.arraycopy(this.arrL,0,he,0,Math.min(this.arrL.length,this.l.length)),qi.arraycopy(this.arrS,0,Y,0,Math.min(this.arrS.length,this.s.length)),qi.arraycopy(this.arr21,0,this.psfb21,0,Math.min(this.arr21.length,this.psfb21.length)),qi.arraycopy(this.arr12,0,this.psfb12,0,Math.min(this.arr12.length,this.psfb12.length)))}var $t=Ms,va=te.new_float,Si=te.new_float_n,ks=te.new_int;function Xi(){this.last_en_subshort=Si([4,9]),this.lastAttacks=ks(4),this.pefirbuf=va(19),this.longfact=va(E.SBMAX_l),this.shortfact=va(E.SBMAX_s),this.attackthre=0,this.attackthre_s=0}var sn=Xi;function Mc(){this.sum=0,this.seen=0,this.want=0,this.pos=0,this.size=0,this.bag=null,this.nVbrNumFrames=0,this.nBytesWritten=0,this.TotalFrameSize=0}var kc=Mc,Bc=te.new_byte,Ic=te.new_double,nr=te.new_float,Ai=te.new_float_n,mr=te.new_int,on=te.new_int_n;qr.MFSIZE=3*1152+E.ENCDELAY-E.MDCTDELAY,qr.MAX_HEADER_BUF=256,qr.MAX_BITS_PER_CHANNEL=4095,qr.MAX_BITS_PER_GRANULE=7680,qr.BPC=320;function qr(){var T=40;this.Class_ID=0,this.lame_encode_frame_init=0,this.iteration_init_init=0,this.fill_buffer_resample_init=0,this.mfbuf=Ai([2,qr.MFSIZE]),this.mode_gr=0,this.channels_in=0,this.channels_out=0,this.resample_ratio=0,this.mf_samples_to_encode=0,this.mf_size=0,this.VBR_min_bitrate=0,this.VBR_max_bitrate=0,this.bitrate_index=0,this.samplerate_index=0,this.mode_ext=0,this.lowpass1=0,this.lowpass2=0,this.highpass1=0,this.highpass2=0,this.noise_shaping=0,this.noise_shaping_amp=0,this.substep_shaping=0,this.psymodel=0,this.noise_shaping_stop=0,this.subblock_gain=0,this.use_best_huffman=0,this.full_outer_loop=0,this.l3_side=new yi,this.ms_ratio=nr(2),this.padding=0,this.frac_SpF=0,this.slot_lag=0,this.tag_spec=null,this.nMusicCRC=0,this.OldValue=mr(2),this.CurrentStep=mr(2),this.masking_lower=0,this.bv_scf=mr(576),this.pseudohalf=mr(Ur.SFBMAX),this.sfb21_extra=!1,this.inbuf_old=new Array(2),this.blackfilt=new Array(2*qr.BPC+1),this.itime=Ic(2),this.sideinfo_len=0,this.sb_sample=Ai([2,2,18,E.SBLIMIT]),this.amp_filter=nr(32);function G(){this.write_timing=0,this.ptr=0,this.buf=Bc(T)}this.header=new Array(qr.MAX_HEADER_BUF),this.h_ptr=0,this.w_ptr=0,this.ancillary_flag=0,this.ResvSize=0,this.ResvMax=0,this.scalefac_band=new $t,this.minval_l=nr(E.CBANDS),this.minval_s=nr(E.CBANDS),this.nb_1=Ai([4,E.CBANDS]),this.nb_2=Ai([4,E.CBANDS]),this.nb_s1=Ai([4,E.CBANDS]),this.nb_s2=Ai([4,E.CBANDS]),this.s3_ss=null,this.s3_ll=null,this.decay=0,this.thm=new Array(4),this.en=new Array(4),this.tot_ener=nr(4),this.loudness_sq=Ai([2,2]),this.loudness_sq_save=nr(2),this.mld_l=nr(E.SBMAX_l),this.mld_s=nr(E.SBMAX_s),this.bm_l=mr(E.SBMAX_l),this.bo_l=mr(E.SBMAX_l),this.bm_s=mr(E.SBMAX_s),this.bo_s=mr(E.SBMAX_s),this.npart_l=0,this.npart_s=0,this.s3ind=on([E.CBANDS,2]),this.s3ind_s=on([E.CBANDS,2]),this.numlines_s=mr(E.CBANDS),this.numlines_l=mr(E.CBANDS),this.rnumlines_l=nr(E.CBANDS),this.mld_cb_l=nr(E.CBANDS),this.mld_cb_s=nr(E.CBANDS),this.numlines_s_num1=0,this.numlines_l_num1=0,this.pe=nr(4),this.ms_ratio_s_old=0,this.ms_ratio_l_old=0,this.ms_ener_ratio_old=0,this.blocktype_old=mr(2),this.nsPsy=new sn,this.VBR_seek_table=new kc,this.ATH=null,this.PSY=null,this.nogap_total=0,this.nogap_current=0,this.decode_on_the_fly=!0,this.findReplayGain=!0,this.findPeakSample=!0,this.PeakSample=0,this.RadioGain=0,this.AudiophileGain=0,this.rgdata=null,this.noclipGainChange=0,this.noclipScale=0,this.bitrate_stereoMode_Hist=on([16,4+1]),this.bitrate_blockType_Hist=on([16,4+1+1]),this.pinfo=null,this.hip=null,this.in_buffer_nsamples=0,this.in_buffer_0=null,this.in_buffer_1=null,this.iteration_loop=null;for(var J=0;J<this.en.length;J++)this.en[J]=new _i;for(var J=0;J<this.thm.length;J++)this.thm[J]=new _i;for(var J=0;J<this.header.length;J++)this.header[J]=new G}var Qe=qr,wi=te.new_float;function Cc(){this.useAdjust=0,this.aaSensitivityP=0,this.adjust=0,this.adjustLimit=0,this.decay=0,this.floor=0,this.l=wi(E.SBMAX_l),this.s=wi(E.SBMAX_s),this.psfb21=wi(E.PSFB21),this.psfb12=wi(E.PSFB12),this.cb_l=wi(E.CBANDS),this.cb_s=wi(E.CBANDS),this.eql_w=wi(E.BLKSIZE/2)}var Oc=Cc,Vt=te.System,n0=te.Arrays;ot.STEPS_per_dB=100,ot.MAX_dB=120,ot.GAIN_NOT_ENOUGH_SAMPLES=-24601,ot.GAIN_ANALYSIS_ERROR=0,ot.GAIN_ANALYSIS_OK=1,ot.INIT_GAIN_ANALYSIS_ERROR=0,ot.INIT_GAIN_ANALYSIS_OK=1,ot.YULE_ORDER=10,ot.MAX_ORDER=ot.YULE_ORDER,ot.MAX_SAMP_FREQ=48e3,ot.RMS_WINDOW_TIME_NUMERATOR=1,ot.RMS_WINDOW_TIME_DENOMINATOR=20,ot.MAX_SAMPLES_PER_WINDOW=ot.MAX_SAMP_FREQ*ot.RMS_WINDOW_TIME_NUMERATOR/ot.RMS_WINDOW_TIME_DENOMINATOR+1;function ot(){var T=64.82,G=ot.YULE_ORDER,J=.95,$=ot.MAX_SAMP_FREQ,he=ot.RMS_WINDOW_TIME_NUMERATOR,Y=ot.RMS_WINDOW_TIME_DENOMINATOR,se=ot.MAX_SAMPLES_PER_WINDOW,be=[[.038575994352,-3.84664617118067,-.02160367184185,7.81501653005538,-.00123395316851,-11.34170355132042,-9291677959e-14,13.05504219327545,-.01655260341619,-12.28759895145294,.02161526843274,9.4829380631979,-.02074045215285,-5.87257861775999,.00594298065125,2.75465861874613,.00306428023191,-.86984376593551,.00012025322027,.13919314567432,.00288463683916],[.0541865640643,-3.47845948550071,-.02911007808948,6.36317777566148,-.00848709379851,-8.54751527471874,-.00851165645469,9.4769360780128,-.00834990904936,-8.81498681370155,.02245293253339,6.85401540936998,-.02596338512915,-4.39470996079559,.01624864962975,2.19611684890774,-.00240879051584,-.75104302451432,.00674613682247,.13149317958808,-.00187763777362],[.15457299681924,-2.37898834973084,-.09331049056315,2.84868151156327,-.06247880153653,-2.64577170229825,.02163541888798,2.23697657451713,-.05588393329856,-1.67148153367602,.04781476674921,1.00595954808547,.00222312597743,-.45953458054983,.03174092540049,.16378164858596,-.01390589421898,-.05032077717131,.00651420667831,.0234789740702,-.00881362733839],[.30296907319327,-1.61273165137247,-.22613988682123,1.0797749225997,-.08587323730772,-.2565625775407,.03282930172664,-.1627671912044,-.00915702933434,-.22638893773906,-.02364141202522,.39120800788284,-.00584456039913,-.22138138954925,.06276101321749,.04500235387352,-828086748e-14,.02005851806501,.00205861885564,.00302439095741,-.02950134983287],[.33642304856132,-1.49858979367799,-.2557224142557,.87350271418188,-.11828570177555,.12205022308084,.11921148675203,-.80774944671438,-.07834489609479,.47854794562326,-.0046997791438,-.12453458140019,-.0058950022444,-.04067510197014,.05724228140351,.08333755284107,.00832043980773,-.04237348025746,-.0163538138454,.02977207319925,-.0176017656815],[.4491525660845,-.62820619233671,-.14351757464547,.29661783706366,-.22784394429749,-.372563729424,-.01419140100551,.00213767857124,.04078262797139,-.42029820170918,-.12398163381748,.22199650564824,.04097565135648,.00613424350682,.10478503600251,.06747620744683,-.01863887810927,.05784820375801,-.03193428438915,.03222754072173,.00541907748707],[.56619470757641,-1.04800335126349,-.75464456939302,.29156311971249,.1624213774223,-.26806001042947,.16744243493672,.00819999645858,-.18901604199609,.45054734505008,.3093178284183,-.33032403314006,-.27562961986224,.0673936833311,.00647310677246,-.04784254229033,.08647503780351,.01639907836189,-.0378898455484,.01807364323573,-.00588215443421],[.58100494960553,-.51035327095184,-.53174909058578,-.31863563325245,-.14289799034253,-.20256413484477,.17520704835522,.1472815413433,.02377945217615,.38952639978999,.15558449135573,-.23313271880868,-.25344790059353,-.05246019024463,.01628462406333,-.02505961724053,.06920467763959,.02442357316099,-.03721611395801,.01818801111503,-.00749618797172],[.53648789255105,-.2504987195602,-.42163034350696,-.43193942311114,-.00275953611929,-.03424681017675,.04267842219415,-.04678328784242,-.10214864179676,.26408300200955,.14590772289388,.15113130533216,-.02459864859345,-.17556493366449,-.11202315195388,-.18823009262115,-.04060034127,.05477720428674,.0478866554818,.0470440968812,-.02217936801134]],ye=[[.98621192462708,-1.97223372919527,-1.97242384925416,.97261396931306,.98621192462708],[.98500175787242,-1.96977855582618,-1.97000351574484,.9702284756635,.98500175787242],[.97938932735214,-1.95835380975398,-1.95877865470428,.95920349965459,.97938932735214],[.97531843204928,-1.95002759149878,-1.95063686409857,.95124613669835,.97531843204928],[.97316523498161,-1.94561023566527,-1.94633046996323,.94705070426118,.97316523498161],[.96454515552826,-1.92783286977036,-1.92909031105652,.93034775234268,.96454515552826],[.96009142950541,-1.91858953033784,-1.92018285901082,.92177618768381,.96009142950541],[.95856916599601,-1.9154210807478,-1.91713833199203,.91885558323625,.95856916599601],[.94597685600279,-1.88903307939452,-1.89195371200558,.89487434461664,.94597685600279]];function U(a,g,N,C,p,m){for(;p--!=0;)N[C]=1e-10+a[g+0]*m[0]-N[C-1]*m[1]+a[g-1]*m[2]-N[C-2]*m[3]+a[g-2]*m[4]-N[C-3]*m[5]+a[g-3]*m[6]-N[C-4]*m[7]+a[g-4]*m[8]-N[C-5]*m[9]+a[g-5]*m[10]-N[C-6]*m[11]+a[g-6]*m[12]-N[C-7]*m[13]+a[g-7]*m[14]-N[C-8]*m[15]+a[g-8]*m[16]-N[C-9]*m[17]+a[g-9]*m[18]-N[C-10]*m[19]+a[g-10]*m[20],++C,++g}function ae(a,g,N,C,p,m){for(;p--!=0;)N[C]=a[g+0]*m[0]-N[C-1]*m[1]+a[g-1]*m[2]-N[C-2]*m[3]+a[g-2]*m[4],++C,++g}function le(a,g){for(var N=0;N<MAX_ORDER;N++)a.linprebuf[N]=a.lstepbuf[N]=a.loutbuf[N]=a.rinprebuf[N]=a.rstepbuf[N]=a.routbuf[N]=0;switch(0|g){case 48e3:a.reqindex=0;break;case 44100:a.reqindex=1;break;case 32e3:a.reqindex=2;break;case 24e3:a.reqindex=3;break;case 22050:a.reqindex=4;break;case 16e3:a.reqindex=5;break;case 12e3:a.reqindex=6;break;case 11025:a.reqindex=7;break;case 8e3:a.reqindex=8;break;default:return INIT_GAIN_ANALYSIS_ERROR}return a.sampleWindow=0|(g*he+Y-1)/Y,a.lsum=0,a.rsum=0,a.totsamp=0,n0.ill(a.A,0),INIT_GAIN_ANALYSIS_OK}this.InitGainAnalysis=function(a,g){return le(a,g)!=INIT_GAIN_ANALYSIS_OK?INIT_GAIN_ANALYSIS_ERROR:(a.linpre=MAX_ORDER,a.rinpre=MAX_ORDER,a.lstep=MAX_ORDER,a.rstep=MAX_ORDER,a.lout=MAX_ORDER,a.rout=MAX_ORDER,n0.fill(a.B,0),INIT_GAIN_ANALYSIS_OK)};function M(a){return a*a}this.AnalyzeSamples=function(a,g,N,C,p,m,I){var V,A,l,O,y,c,d;if(m==0)return GAIN_ANALYSIS_OK;switch(d=0,y=m,I){case 1:C=g,p=N;break;case 2:break;default:return GAIN_ANALYSIS_ERROR}for(m<MAX_ORDER?(Vt.arraycopy(g,N,a.linprebuf,MAX_ORDER,m),Vt.arraycopy(C,p,a.rinprebuf,MAX_ORDER,m)):(Vt.arraycopy(g,N,a.linprebuf,MAX_ORDER,MAX_ORDER),Vt.arraycopy(C,p,a.rinprebuf,MAX_ORDER,MAX_ORDER));y>0;){c=y>a.sampleWindow-a.totsamp?a.sampleWindow-a.totsamp:y,d<MAX_ORDER?(V=a.linpre+d,A=a.linprebuf,l=a.rinpre+d,O=a.rinprebuf,c>MAX_ORDER-d&&(c=MAX_ORDER-d)):(V=N+d,A=g,l=p+d,O=C),U(A,V,a.lstepbuf,a.lstep+a.totsamp,c,be[a.reqindex]),U(O,l,a.rstepbuf,a.rstep+a.totsamp,c,be[a.reqindex]),ae(a.lstepbuf,a.lstep+a.totsamp,a.loutbuf,a.lout+a.totsamp,c,ye[a.reqindex]),ae(a.rstepbuf,a.rstep+a.totsamp,a.routbuf,a.rout+a.totsamp,c,ye[a.reqindex]),V=a.lout+a.totsamp,A=a.loutbuf,l=a.rout+a.totsamp,O=a.routbuf;for(var v=c%8;v--!=0;)a.lsum+=M(A[V++]),a.rsum+=M(O[l++]);for(v=c/8;v--!=0;)a.lsum+=M(A[V+0])+M(A[V+1])+M(A[V+2])+M(A[V+3])+M(A[V+4])+M(A[V+5])+M(A[V+6])+M(A[V+7]),V+=8,a.rsum+=M(O[l+0])+M(O[l+1])+M(O[l+2])+M(O[l+3])+M(O[l+4])+M(O[l+5])+M(O[l+6])+M(O[l+7]),l+=8;if(y-=c,d+=c,a.totsamp+=c,a.totsamp==a.sampleWindow){var s=ot.STEPS_per_dB*10*Math.log10((a.lsum+a.rsum)/a.totsamp*.5+1e-37),h=s<=0?0:0|s;h>=a.A.length&&(h=a.A.length-1),a.A[h]++,a.lsum=a.rsum=0,Vt.arraycopy(a.loutbuf,a.totsamp,a.loutbuf,0,MAX_ORDER),Vt.arraycopy(a.routbuf,a.totsamp,a.routbuf,0,MAX_ORDER),Vt.arraycopy(a.lstepbuf,a.totsamp,a.lstepbuf,0,MAX_ORDER),Vt.arraycopy(a.rstepbuf,a.totsamp,a.rstepbuf,0,MAX_ORDER),a.totsamp=0}if(a.totsamp>a.sampleWindow)return GAIN_ANALYSIS_ERROR}return m<MAX_ORDER?(Vt.arraycopy(a.linprebuf,m,a.linprebuf,0,MAX_ORDER-m),Vt.arraycopy(a.rinprebuf,m,a.rinprebuf,0,MAX_ORDER-m),Vt.arraycopy(g,N,a.linprebuf,MAX_ORDER-m,m),Vt.arraycopy(C,p,a.rinprebuf,MAX_ORDER-m,m)):(Vt.arraycopy(g,N+m-MAX_ORDER,a.linprebuf,0,MAX_ORDER),Vt.arraycopy(C,p+m-MAX_ORDER,a.rinprebuf,0,MAX_ORDER)),GAIN_ANALYSIS_OK};function q(a,g){var N,C=0;for(N=0;N<g;N++)C+=a[N];if(C==0)return GAIN_NOT_ENOUGH_SAMPLES;var p=0|Math.ceil(C*(1-J));for(N=g;N-- >0&&!((p-=a[N])<=0););return T-N/ot.STEPS_per_dB}this.GetTitleGain=function(a){for(var g=q(a.A,a.A.length),N=0;N<a.A.length;N++)a.B[N]+=a.A[N],a.A[N]=0;for(var N=0;N<MAX_ORDER;N++)a.linprebuf[N]=a.lstepbuf[N]=a.loutbuf[N]=a.rinprebuf[N]=a.rstepbuf[N]=a.routbuf[N]=0;return a.totsamp=0,a.lsum=a.rsum=0,g}}var Pt=ot,zi=te.new_float,s0=te.new_int;function Pc(){this.linprebuf=zi(Pt.MAX_ORDER*2),this.linpre=0,this.lstepbuf=zi(Pt.MAX_SAMPLES_PER_WINDOW+Pt.MAX_ORDER),this.lstep=0,this.loutbuf=zi(Pt.MAX_SAMPLES_PER_WINDOW+Pt.MAX_ORDER),this.lout=0,this.rinprebuf=zi(Pt.MAX_ORDER*2),this.rinpre=0,this.rstepbuf=zi(Pt.MAX_SAMPLES_PER_WINDOW+Pt.MAX_ORDER),this.rstep=0,this.routbuf=zi(Pt.MAX_SAMPLES_PER_WINDOW+Pt.MAX_ORDER),this.rout=0,this.sampleWindow=0,this.totsamp=0,this.lsum=0,this.rsum=0,this.freqindex=0,this.first=0,this.A=s0(0|Pt.STEPS_per_dB*Pt.MAX_dB),this.B=s0(0|Pt.STEPS_per_dB*Pt.MAX_dB)}var Lc=Pc;function Nc(T){this.bits=T}var o0=Nc,l0=te.new_float,Fc=te.new_int,c0=te.assert;function Dc(T){var G=T;this.quantize=G,this.iteration_loop=function(J,$,he,Y){var se=J.internal_flags,be=l0(Ur.SFBMAX),ye=l0(576),U=Fc(2),ae=0,le,M=se.l3_side,q=new o0(ae);this.quantize.rv.ResvFrameBegin(J,q),ae=q.bits;for(var a=0;a<se.mode_gr;a++){le=this.quantize.qupvt.on_pe(J,$,U,ae,a,a),se.mode_ext==E.MPG_MD_MS_LR&&(this.quantize.ms_convert(se.l3_side,a),this.quantize.qupvt.reduce_side(U,he[a],ae,le));for(var g=0;g<se.channels_out;g++){var N,C,p=M.tt[a][g];p.block_type!=E.SHORT_TYPE?(N=0,C=se.PSY.mask_adjust-N):(N=0,C=se.PSY.mask_adjust_short-N),se.masking_lower=Math.pow(10,C*.1),this.quantize.init_outer_loop(se,p),this.quantize.init_xrpow(se,p,ye)&&(this.quantize.qupvt.calc_xmin(J,Y[a][g],p,be),this.quantize.outer_loop(J,p,be,ye,g,U[g])),this.quantize.iteration_finish_one(se,a,g),c0(p.part2_3_length<=Qe.MAX_BITS_PER_CHANNEL),c0(p.part2_3_length<=U[g])}}this.quantize.rv.ResvFrameEnd(se,ae)}}var Vc=Dc;function We(T,G,J,$){this.xlen=T,this.linmax=G,this.table=J,this.hlen=$}var ve={};ve.t1HB=[1,1,1,0],ve.t2HB=[1,2,1,3,1,1,3,2,0],ve.t3HB=[3,2,1,1,1,1,3,2,0],ve.t5HB=[1,2,6,5,3,1,4,4,7,5,7,1,6,1,1,0],ve.t6HB=[7,3,5,1,6,2,3,2,5,4,4,1,3,3,2,0],ve.t7HB=[1,2,10,19,16,10,3,3,7,10,5,3,11,4,13,17,8,4,12,11,18,15,11,2,7,6,9,14,3,1,6,4,5,3,2,0],ve.t8HB=[3,4,6,18,12,5,5,1,2,16,9,3,7,3,5,14,7,3,19,17,15,13,10,4,13,5,8,11,5,1,12,4,4,1,1,0],ve.t9HB=[7,5,9,14,15,7,6,4,5,5,6,7,7,6,8,8,8,5,15,6,9,10,5,1,11,7,9,6,4,1,14,4,6,2,6,0],ve.t10HB=[1,2,10,23,35,30,12,17,3,3,8,12,18,21,12,7,11,9,15,21,32,40,19,6,14,13,22,34,46,23,18,7,20,19,33,47,27,22,9,3,31,22,41,26,21,20,5,3,14,13,10,11,16,6,5,1,9,8,7,8,4,4,2,0],ve.t11HB=[3,4,10,24,34,33,21,15,5,3,4,10,32,17,11,10,11,7,13,18,30,31,20,5,25,11,19,59,27,18,12,5,35,33,31,58,30,16,7,5,28,26,32,19,17,15,8,14,14,12,9,13,14,9,4,1,11,4,6,6,6,3,2,0],ve.t12HB=[9,6,16,33,41,39,38,26,7,5,6,9,23,16,26,11,17,7,11,14,21,30,10,7,17,10,15,12,18,28,14,5,32,13,22,19,18,16,9,5,40,17,31,29,17,13,4,2,27,12,11,15,10,7,4,1,27,12,8,12,6,3,1,0],ve.t13HB=[1,5,14,21,34,51,46,71,42,52,68,52,67,44,43,19,3,4,12,19,31,26,44,33,31,24,32,24,31,35,22,14,15,13,23,36,59,49,77,65,29,40,30,40,27,33,42,16,22,20,37,61,56,79,73,64,43,76,56,37,26,31,25,14,35,16,60,57,97,75,114,91,54,73,55,41,48,53,23,24,58,27,50,96,76,70,93,84,77,58,79,29,74,49,41,17,47,45,78,74,115,94,90,79,69,83,71,50,59,38,36,15,72,34,56,95,92,85,91,90,86,73,77,65,51,44,43,42,43,20,30,44,55,78,72,87,78,61,46,54,37,30,20,16,53,25,41,37,44,59,54,81,66,76,57,54,37,18,39,11,35,33,31,57,42,82,72,80,47,58,55,21,22,26,38,22,53,25,23,38,70,60,51,36,55,26,34,23,27,14,9,7,34,32,28,39,49,75,30,52,48,40,52,28,18,17,9,5,45,21,34,64,56,50,49,45,31,19,12,15,10,7,6,3,48,23,20,39,36,35,53,21,16,23,13,10,6,1,4,2,16,15,17,27,25,20,29,11,17,12,16,8,1,1,0,1],ve.t15HB=[7,12,18,53,47,76,124,108,89,123,108,119,107,81,122,63,13,5,16,27,46,36,61,51,42,70,52,83,65,41,59,36,19,17,15,24,41,34,59,48,40,64,50,78,62,80,56,33,29,28,25,43,39,63,55,93,76,59,93,72,54,75,50,29,52,22,42,40,67,57,95,79,72,57,89,69,49,66,46,27,77,37,35,66,58,52,91,74,62,48,79,63,90,62,40,38,125,32,60,56,50,92,78,65,55,87,71,51,73,51,70,30,109,53,49,94,88,75,66,122,91,73,56,42,64,44,21,25,90,43,41,77,73,63,56,92,77,66,47,67,48,53,36,20,71,34,67,60,58,49,88,76,67,106,71,54,38,39,23,15,109,53,51,47,90,82,58,57,48,72,57,41,23,27,62,9,86,42,40,37,70,64,52,43,70,55,42,25,29,18,11,11,118,68,30,55,50,46,74,65,49,39,24,16,22,13,14,7,91,44,39,38,34,63,52,45,31,52,28,19,14,8,9,3,123,60,58,53,47,43,32,22,37,24,17,12,15,10,2,1,71,37,34,30,28,20,17,26,21,16,10,6,8,6,2,0],ve.t16HB=[1,5,14,44,74,63,110,93,172,149,138,242,225,195,376,17,3,4,12,20,35,62,53,47,83,75,68,119,201,107,207,9,15,13,23,38,67,58,103,90,161,72,127,117,110,209,206,16,45,21,39,69,64,114,99,87,158,140,252,212,199,387,365,26,75,36,68,65,115,101,179,164,155,264,246,226,395,382,362,9,66,30,59,56,102,185,173,265,142,253,232,400,388,378,445,16,111,54,52,100,184,178,160,133,257,244,228,217,385,366,715,10,98,48,91,88,165,157,148,261,248,407,397,372,380,889,884,8,85,84,81,159,156,143,260,249,427,401,392,383,727,713,708,7,154,76,73,141,131,256,245,426,406,394,384,735,359,710,352,11,139,129,67,125,247,233,229,219,393,743,737,720,885,882,439,4,243,120,118,115,227,223,396,746,742,736,721,712,706,223,436,6,202,224,222,218,216,389,386,381,364,888,443,707,440,437,1728,4,747,211,210,208,370,379,734,723,714,1735,883,877,876,3459,865,2,377,369,102,187,726,722,358,711,709,866,1734,871,3458,870,434,0,12,10,7,11,10,17,11,9,13,12,10,7,5,3,1,3],ve.t24HB=[15,13,46,80,146,262,248,434,426,669,653,649,621,517,1032,88,14,12,21,38,71,130,122,216,209,198,327,345,319,297,279,42,47,22,41,74,68,128,120,221,207,194,182,340,315,295,541,18,81,39,75,70,134,125,116,220,204,190,178,325,311,293,271,16,147,72,69,135,127,118,112,210,200,188,352,323,306,285,540,14,263,66,129,126,119,114,214,202,192,180,341,317,301,281,262,12,249,123,121,117,113,215,206,195,185,347,330,308,291,272,520,10,435,115,111,109,211,203,196,187,353,332,313,298,283,531,381,17,427,212,208,205,201,193,186,177,169,320,303,286,268,514,377,16,335,199,197,191,189,181,174,333,321,305,289,275,521,379,371,11,668,184,183,179,175,344,331,314,304,290,277,530,383,373,366,10,652,346,171,168,164,318,309,299,287,276,263,513,375,368,362,6,648,322,316,312,307,302,292,284,269,261,512,376,370,364,359,4,620,300,296,294,288,282,273,266,515,380,374,369,365,361,357,2,1033,280,278,274,267,264,259,382,378,372,367,363,360,358,356,0,43,20,19,17,15,13,11,9,7,6,4,7,5,3,1,3],ve.t32HB=[1<<0,5<<1,4<<1,5<<2,6<<1,5<<2,4<<2,4<<3,7<<1,3<<2,6<<2,0<<3,7<<2,2<<3,3<<3,1<<4],ve.t33HB=[15<<0,14<<1,13<<1,12<<2,11<<1,10<<2,9<<2,8<<3,7<<1,6<<2,5<<2,4<<3,3<<2,2<<3,1<<3,0<<4],ve.t1l=[1,4,3,5],ve.t2l=[1,4,7,4,5,7,6,7,8],ve.t3l=[2,3,7,4,4,7,6,7,8],ve.t5l=[1,4,7,8,4,5,8,9,7,8,9,10,8,8,9,10],ve.t6l=[3,4,6,8,4,4,6,7,5,6,7,8,7,7,8,9],ve.t7l=[1,4,7,9,9,10,4,6,8,9,9,10,7,7,9,10,10,11,8,9,10,11,11,11,8,9,10,11,11,12,9,10,11,12,12,12],ve.t8l=[2,4,7,9,9,10,4,4,6,10,10,10,7,6,8,10,10,11,9,10,10,11,11,12,9,9,10,11,12,12,10,10,11,11,13,13],ve.t9l=[3,4,6,7,9,10,4,5,6,7,8,10,5,6,7,8,9,10,7,7,8,9,9,10,8,8,9,9,10,11,9,9,10,10,11,11],ve.t10l=[1,4,7,9,10,10,10,11,4,6,8,9,10,11,10,10,7,8,9,10,11,12,11,11,8,9,10,11,12,12,11,12,9,10,11,12,12,12,12,12,10,11,12,12,13,13,12,13,9,10,11,12,12,12,13,13,10,10,11,12,12,13,13,13],ve.t11l=[2,4,6,8,9,10,9,10,4,5,6,8,10,10,9,10,6,7,8,9,10,11,10,10,8,8,9,11,10,12,10,11,9,10,10,11,11,12,11,12,9,10,11,12,12,13,12,13,9,9,9,10,11,12,12,12,9,9,10,11,12,12,12,12],ve.t12l=[4,4,6,8,9,10,10,10,4,5,6,7,9,9,10,10,6,6,7,8,9,10,9,10,7,7,8,8,9,10,10,10,8,8,9,9,10,10,10,11,9,9,10,10,10,11,10,11,9,9,9,10,10,11,11,12,10,10,10,11,11,11,11,12],ve.t13l=[1,5,7,8,9,10,10,11,10,11,12,12,13,13,14,14,4,6,8,9,10,10,11,11,11,11,12,12,13,14,14,14,7,8,9,10,11,11,12,12,11,12,12,13,13,14,15,15,8,9,10,11,11,12,12,12,12,13,13,13,13,14,15,15,9,9,11,11,12,12,13,13,12,13,13,14,14,15,15,16,10,10,11,12,12,12,13,13,13,13,14,13,15,15,16,16,10,11,12,12,13,13,13,13,13,14,14,14,15,15,16,16,11,11,12,13,13,13,14,14,14,14,15,15,15,16,18,18,10,10,11,12,12,13,13,14,14,14,14,15,15,16,17,17,11,11,12,12,13,13,13,15,14,15,15,16,16,16,18,17,11,12,12,13,13,14,14,15,14,15,16,15,16,17,18,19,12,12,12,13,14,14,14,14,15,15,15,16,17,17,17,18,12,13,13,14,14,15,14,15,16,16,17,17,17,18,18,18,13,13,14,15,15,15,16,16,16,16,16,17,18,17,18,18,14,14,14,15,15,15,17,16,16,19,17,17,17,19,18,18,13,14,15,16,16,16,17,16,17,17,18,18,21,20,21,18],ve.t15l=[3,5,6,8,8,9,10,10,10,11,11,12,12,12,13,14,5,5,7,8,9,9,10,10,10,11,11,12,12,12,13,13,6,7,7,8,9,9,10,10,10,11,11,12,12,13,13,13,7,8,8,9,9,10,10,11,11,11,12,12,12,13,13,13,8,8,9,9,10,10,11,11,11,11,12,12,12,13,13,13,9,9,9,10,10,10,11,11,11,11,12,12,13,13,13,14,10,9,10,10,10,11,11,11,11,12,12,12,13,13,14,14,10,10,10,11,11,11,11,12,12,12,12,12,13,13,13,14,10,10,10,11,11,11,11,12,12,12,12,13,13,14,14,14,10,10,11,11,11,11,12,12,12,13,13,13,13,14,14,14,11,11,11,11,12,12,12,12,12,13,13,13,13,14,15,14,11,11,11,11,12,12,12,12,13,13,13,13,14,14,14,15,12,12,11,12,12,12,13,13,13,13,13,13,14,14,15,15,12,12,12,12,12,13,13,13,13,14,14,14,14,14,15,15,13,13,13,13,13,13,13,13,14,14,14,14,15,15,14,15,13,13,13,13,13,13,13,14,14,14,14,14,15,15,15,15],ve.t16_5l=[1,5,7,9,10,10,11,11,12,12,12,13,13,13,14,11,4,6,8,9,10,11,11,11,12,12,12,13,14,13,14,11,7,8,9,10,11,11,12,12,13,12,13,13,13,14,14,12,9,9,10,11,11,12,12,12,13,13,14,14,14,15,15,13,10,10,11,11,12,12,13,13,13,14,14,14,15,15,15,12,10,10,11,11,12,13,13,14,13,14,14,15,15,15,16,13,11,11,11,12,13,13,13,13,14,14,14,14,15,15,16,13,11,11,12,12,13,13,13,14,14,15,15,15,15,17,17,13,11,12,12,13,13,13,14,14,15,15,15,15,16,16,16,13,12,12,12,13,13,14,14,15,15,15,15,16,15,16,15,14,12,13,12,13,14,14,14,14,15,16,16,16,17,17,16,13,13,13,13,13,14,14,15,16,16,16,16,16,16,15,16,14,13,14,14,14,14,15,15,15,15,17,16,16,16,16,18,14,15,14,14,14,15,15,16,16,16,18,17,17,17,19,17,14,14,15,13,14,16,16,15,16,16,17,18,17,19,17,16,14,11,11,11,12,12,13,13,13,14,14,14,14,14,14,14,12],ve.t16l=[1,5,7,9,10,10,11,11,12,12,12,13,13,13,14,10,4,6,8,9,10,11,11,11,12,12,12,13,14,13,14,10,7,8,9,10,11,11,12,12,13,12,13,13,13,14,14,11,9,9,10,11,11,12,12,12,13,13,14,14,14,15,15,12,10,10,11,11,12,12,13,13,13,14,14,14,15,15,15,11,10,10,11,11,12,13,13,14,13,14,14,15,15,15,16,12,11,11,11,12,13,13,13,13,14,14,14,14,15,15,16,12,11,11,12,12,13,13,13,14,14,15,15,15,15,17,17,12,11,12,12,13,13,13,14,14,15,15,15,15,16,16,16,12,12,12,12,13,13,14,14,15,15,15,15,16,15,16,15,13,12,13,12,13,14,14,14,14,15,16,16,16,17,17,16,12,13,13,13,13,14,14,15,16,16,16,16,16,16,15,16,13,13,14,14,14,14,15,15,15,15,17,16,16,16,16,18,13,15,14,14,14,15,15,16,16,16,18,17,17,17,19,17,13,14,15,13,14,16,16,15,16,16,17,18,17,19,17,16,13,10,10,10,11,11,12,12,12,13,13,13,13,13,13,13,10],ve.t24l=[4,5,7,8,9,10,10,11,11,12,12,12,12,12,13,10,5,6,7,8,9,10,10,11,11,11,12,12,12,12,12,10,7,7,8,9,9,10,10,11,11,11,11,12,12,12,13,9,8,8,9,9,10,10,10,11,11,11,11,12,12,12,12,9,9,9,9,10,10,10,10,11,11,11,12,12,12,12,13,9,10,9,10,10,10,10,11,11,11,11,12,12,12,12,12,9,10,10,10,10,10,11,11,11,11,12,12,12,12,12,13,9,11,10,10,10,11,11,11,11,12,12,12,12,12,13,13,10,11,11,11,11,11,11,11,11,11,12,12,12,12,13,13,10,11,11,11,11,11,11,11,12,12,12,12,12,13,13,13,10,12,11,11,11,11,12,12,12,12,12,12,13,13,13,13,10,12,12,11,11,11,12,12,12,12,12,12,13,13,13,13,10,12,12,12,12,12,12,12,12,12,12,13,13,13,13,13,10,12,12,12,12,12,12,12,12,13,13,13,13,13,13,13,10,13,12,12,12,12,12,12,13,13,13,13,13,13,13,13,10,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,6],ve.t32l=[1+0,4+1,4+1,5+2,4+1,6+2,5+2,6+3,4+1,5+2,5+2,6+3,5+2,6+3,6+3,6+4],ve.t33l=[4+0,4+1,4+1,4+2,4+1,4+2,4+2,4+3,4+1,4+2,4+2,4+3,4+2,4+3,4+3,4+4],ve.ht=[new We(0,0,null,null),new We(2,0,ve.t1HB,ve.t1l),new We(3,0,ve.t2HB,ve.t2l),new We(3,0,ve.t3HB,ve.t3l),new We(0,0,null,null),new We(4,0,ve.t5HB,ve.t5l),new We(4,0,ve.t6HB,ve.t6l),new We(6,0,ve.t7HB,ve.t7l),new We(6,0,ve.t8HB,ve.t8l),new We(6,0,ve.t9HB,ve.t9l),new We(8,0,ve.t10HB,ve.t10l),new We(8,0,ve.t11HB,ve.t11l),new We(8,0,ve.t12HB,ve.t12l),new We(16,0,ve.t13HB,ve.t13l),new We(0,0,null,ve.t16_5l),new We(16,0,ve.t15HB,ve.t15l),new We(1,1,ve.t16HB,ve.t16l),new We(2,3,ve.t16HB,ve.t16l),new We(3,7,ve.t16HB,ve.t16l),new We(4,15,ve.t16HB,ve.t16l),new We(6,63,ve.t16HB,ve.t16l),new We(8,255,ve.t16HB,ve.t16l),new We(10,1023,ve.t16HB,ve.t16l),new We(13,8191,ve.t16HB,ve.t16l),new We(4,15,ve.t24HB,ve.t24l),new We(5,31,ve.t24HB,ve.t24l),new We(6,63,ve.t24HB,ve.t24l),new We(7,127,ve.t24HB,ve.t24l),new We(8,255,ve.t24HB,ve.t24l),new We(9,511,ve.t24HB,ve.t24l),new We(11,2047,ve.t24HB,ve.t24l),new We(13,8191,ve.t24HB,ve.t24l),new We(0,0,ve.t32HB,ve.t32l),new We(0,0,ve.t33HB,ve.t33l)],ve.largetbl=[65540,327685,458759,589832,655369,655370,720906,720907,786443,786444,786444,851980,851980,851980,917517,655370,262149,393222,524295,589832,655369,720906,720906,720907,786443,786443,786444,851980,917516,851980,917516,655370,458759,524295,589832,655369,720905,720906,786442,786443,851979,786443,851979,851980,851980,917516,917517,720905,589832,589832,655369,720905,720906,786442,786442,786443,851979,851979,917515,917516,917516,983052,983052,786441,655369,655369,720905,720906,786442,786442,851978,851979,851979,917515,917516,917516,983052,983052,983053,720905,655370,655369,720906,720906,786442,851978,851979,917515,851979,917515,917516,983052,983052,983052,1048588,786441,720906,720906,720906,786442,851978,851979,851979,851979,917515,917516,917516,917516,983052,983052,1048589,786441,720907,720906,786442,786442,851979,851979,851979,917515,917516,983052,983052,983052,983052,1114125,1114125,786442,720907,786443,786443,851979,851979,851979,917515,917515,983051,983052,983052,983052,1048588,1048589,1048589,786442,786443,786443,786443,851979,851979,917515,917515,983052,983052,983052,983052,1048588,983053,1048589,983053,851978,786444,851979,786443,851979,917515,917516,917516,917516,983052,1048588,1048588,1048589,1114125,1114125,1048589,786442,851980,851980,851979,851979,917515,917516,983052,1048588,1048588,1048588,1048588,1048589,1048589,983053,1048589,851978,851980,917516,917516,917516,917516,983052,983052,983052,983052,1114124,1048589,1048589,1048589,1048589,1179661,851978,983052,917516,917516,917516,983052,983052,1048588,1048588,1048589,1179661,1114125,1114125,1114125,1245197,1114125,851978,917517,983052,851980,917516,1048588,1048588,983052,1048589,1048589,1114125,1179661,1114125,1245197,1114125,1048589,851978,655369,655369,655369,720905,720905,786441,786441,786441,851977,851977,851977,851978,851978,851978,851978,655366],ve.table23=[65538,262147,458759,262148,327684,458759,393222,458759,524296],ve.table56=[65539,262148,458758,524296,262148,327684,524294,589831,458757,524294,589831,655368,524295,524295,589832,655369],ve.bitrate_table=[[0,8,16,24,32,40,48,56,64,80,96,112,128,144,160,-1],[0,32,40,48,56,64,80,96,112,128,160,192,224,256,320,-1],[0,8,16,24,32,40,48,56,64,-1,-1,-1,-1,-1,-1,-1]],ve.samplerate_table=[[22050,24e3,16e3,-1],[44100,48e3,32e3,-1],[11025,12e3,8e3,-1]],ve.scfsi_band=[0,6,11,16,21];var Ge=ve,Ri=te.VbrMode,ln=te.Float,Bs=te.Util,Ei=te.new_float,Hc=te.new_int,Xr=te.assert;Yt.Q_MAX=256+1,Yt.Q_MAX2=116,Yt.LARGE_BITS=1e5,Yt.IXMAX_VAL=8206;function Yt(){var T=null,G=null,J=null;this.setModules=function(m,I,V){T=m,G=I,J=V};function $(m){return Xr(0<=m+Yt.Q_MAX2&&m<Yt.Q_MAX),M[m+Yt.Q_MAX2]}this.IPOW20=function(m){return Xr(0<=m&&m<Yt.Q_MAX),q[m]};var he=2220446049250313e-31,Y=Yt.IXMAX_VAL,se=Y+2,be=Yt.Q_MAX,ye=Yt.Q_MAX2,U=Yt.LARGE_BITS,ae=100;this.nr_of_sfb_block=[[[6,5,5,5],[9,9,9,9],[6,9,9,9]],[[6,5,7,3],[9,9,12,6],[6,9,12,6]],[[11,10,0,0],[18,18,0,0],[15,18,0,0]],[[7,7,7,0],[12,12,12,0],[6,15,12,0]],[[6,6,6,3],[12,9,9,6],[6,12,9,6]],[[8,8,5,0],[15,12,9,0],[6,18,9,0]]];var le=[0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,2,2,3,3,3,2,0];this.pretab=le,this.sfBandIndex=[new $t([0,6,12,18,24,30,36,44,54,66,80,96,116,140,168,200,238,284,336,396,464,522,576],[0,4,8,12,18,24,32,42,56,74,100,132,174,192],[0,0,0,0,0,0,0],[0,0,0,0,0,0,0]),new $t([0,6,12,18,24,30,36,44,54,66,80,96,114,136,162,194,232,278,332,394,464,540,576],[0,4,8,12,18,26,36,48,62,80,104,136,180,192],[0,0,0,0,0,0,0],[0,0,0,0,0,0,0]),new $t([0,6,12,18,24,30,36,44,54,66,80,96,116,140,168,200,238,284,336,396,464,522,576],[0,4,8,12,18,26,36,48,62,80,104,134,174,192],[0,0,0,0,0,0,0],[0,0,0,0,0,0,0]),new $t([0,4,8,12,16,20,24,30,36,44,52,62,74,90,110,134,162,196,238,288,342,418,576],[0,4,8,12,16,22,30,40,52,66,84,106,136,192],[0,0,0,0,0,0,0],[0,0,0,0,0,0,0]),new $t([0,4,8,12,16,20,24,30,36,42,50,60,72,88,106,128,156,190,230,276,330,384,576],[0,4,8,12,16,22,28,38,50,64,80,100,126,192],[0,0,0,0,0,0,0],[0,0,0,0,0,0,0]),new $t([0,4,8,12,16,20,24,30,36,44,54,66,82,102,126,156,194,240,296,364,448,550,576],[0,4,8,12,16,22,30,42,58,78,104,138,180,192],[0,0,0,0,0,0,0],[0,0,0,0,0,0,0]),new $t([0,6,12,18,24,30,36,44,54,66,80,96,116,140,168,200,238,284,336,396,464,522,576],[0/3,12/3,24/3,36/3,54/3,78/3,108/3,144/3,186/3,240/3,312/3,402/3,522/3,576/3],[0,0,0,0,0,0,0],[0,0,0,0,0,0,0]),new $t([0,6,12,18,24,30,36,44,54,66,80,96,116,140,168,200,238,284,336,396,464,522,576],[0/3,12/3,24/3,36/3,54/3,78/3,108/3,144/3,186/3,240/3,312/3,402/3,522/3,576/3],[0,0,0,0,0,0,0],[0,0,0,0,0,0,0]),new $t([0,12,24,36,48,60,72,88,108,132,160,192,232,280,336,400,476,566,568,570,572,574,576],[0/3,24/3,48/3,72/3,108/3,156/3,216/3,288/3,372/3,480/3,486/3,492/3,498/3,576/3],[0,0,0,0,0,0,0],[0,0,0,0,0,0,0])];var M=Ei(be+ye+1),q=Ei(be),a=Ei(se),g=Ei(se);this.adj43=g;function N(m,I){var V=J.ATHformula(I,m);return V-=ae,V=Math.pow(10,V/10+m.ATHlower),V}function C(m){for(var I=m.internal_flags.ATH.l,V=m.internal_flags.ATH.psfb21,A=m.internal_flags.ATH.s,l=m.internal_flags.ATH.psfb12,O=m.internal_flags,y=m.out_samplerate,c=0;c<E.SBMAX_l;c++){var d=O.scalefac_band.l[c],v=O.scalefac_band.l[c+1];I[c]=ln.MAX_VALUE;for(var s=d;s<v;s++){var h=s*y/1152,b=N(m,h);I[c]=Math.min(I[c],b)}}for(var c=0;c<E.PSFB21;c++){var d=O.scalefac_band.psfb21[c],v=O.scalefac_band.psfb21[c+1];V[c]=ln.MAX_VALUE;for(var s=d;s<v;s++){var h=s*y/1152,b=N(m,h);V[c]=Math.min(V[c],b)}}for(var c=0;c<E.SBMAX_s;c++){var d=O.scalefac_band.s[c],v=O.scalefac_band.s[c+1];A[c]=ln.MAX_VALUE;for(var s=d;s<v;s++){var h=s*y/384,b=N(m,h);A[c]=Math.min(A[c],b)}A[c]*=O.scalefac_band.s[c+1]-O.scalefac_band.s[c]}for(var c=0;c<E.PSFB12;c++){var d=O.scalefac_band.psfb12[c],v=O.scalefac_band.psfb12[c+1];l[c]=ln.MAX_VALUE;for(var s=d;s<v;s++){var h=s*y/384,b=N(m,h);l[c]=Math.min(l[c],b)}l[c]*=O.scalefac_band.s[13]-O.scalefac_band.s[12]}if(m.noATH){for(var c=0;c<E.SBMAX_l;c++)I[c]=1e-20;for(var c=0;c<E.PSFB21;c++)V[c]=1e-20;for(var c=0;c<E.SBMAX_s;c++)A[c]=1e-20;for(var c=0;c<E.PSFB12;c++)l[c]=1e-20}O.ATH.floor=10*Math.log10(N(m,-1))}this.iteration_init=function(m){var I=m.internal_flags,V=I.l3_side,A;if(I.iteration_init_init==0){for(I.iteration_init_init=1,V.main_data_begin=0,C(m),a[0]=0,A=1;A<se;A++)a[A]=Math.pow(A,4/3);for(A=0;A<se-1;A++)g[A]=A+1-Math.pow(.5*(a[A]+a[A+1]),.75);for(g[A]=.5,A=0;A<be;A++)q[A]=Math.pow(2,(A-210)*-.1875);for(A=0;A<=be+ye;A++)M[A]=Math.pow(2,(A-210-ye)*.25);T.huffman_init(I);{var l,O,y,c;for(A=m.exp_nspsytune>>2&63,A>=32&&(A-=64),l=Math.pow(10,A/4/10),A=m.exp_nspsytune>>8&63,A>=32&&(A-=64),O=Math.pow(10,A/4/10),A=m.exp_nspsytune>>14&63,A>=32&&(A-=64),y=Math.pow(10,A/4/10),A=m.exp_nspsytune>>20&63,A>=32&&(A-=64),c=y*Math.pow(10,A/4/10),A=0;A<E.SBMAX_l;A++){var d;A<=6?d=l:A<=13?d=O:A<=20?d=y:d=c,I.nsPsy.longfact[A]=d}for(A=0;A<E.SBMAX_s;A++){var d;A<=5?d=l:A<=10?d=O:A<=11?d=y:d=c,I.nsPsy.shortfact[A]=d}}}},this.on_pe=function(m,I,V,A,l,O){var y=m.internal_flags,c=0,d,v=Hc(2),s,h=new o0(c),b=G.ResvMaxBits(m,A,h,O);c=h.bits;var S=c+b;for(S>Qe.MAX_BITS_PER_GRANULE&&(S=Qe.MAX_BITS_PER_GRANULE),d=0,s=0;s<y.channels_out;++s)V[s]=Math.min(Qe.MAX_BITS_PER_CHANNEL,c/y.channels_out),v[s]=0|V[s]*I[l][s]/700-V[s],v[s]>A*3/4&&(v[s]=A*3/4),v[s]<0&&(v[s]=0),v[s]+V[s]>Qe.MAX_BITS_PER_CHANNEL&&(v[s]=Math.max(0,Qe.MAX_BITS_PER_CHANNEL-V[s])),d+=v[s];if(d>b)for(s=0;s<y.channels_out;++s)v[s]=b*v[s]/d;for(s=0;s<y.channels_out;++s)V[s]+=v[s],b-=v[s];for(d=0,s=0;s<y.channels_out;++s)d+=V[s];if(d>Qe.MAX_BITS_PER_GRANULE){var j=0;for(s=0;s<y.channels_out;++s)V[s]*=Qe.MAX_BITS_PER_GRANULE,V[s]/=d,j+=V[s];Xr(j<=Qe.MAX_BITS_PER_GRANULE)}return S},this.reduce_side=function(m,I,V,A){Xr(A<=Qe.MAX_BITS_PER_GRANULE),Xr(m[0]+m[1]<=Qe.MAX_BITS_PER_GRANULE);var l=.33*(.5-I)/.5;l<0&&(l=0),l>.5&&(l=.5);var O=0|l*.5*(m[0]+m[1]);O>Qe.MAX_BITS_PER_CHANNEL-m[0]&&(O=Qe.MAX_BITS_PER_CHANNEL-m[0]),O<0&&(O=0),m[1]>=125&&(m[1]-O>125?(m[0]<V&&(m[0]+=O),m[1]-=O):(m[0]+=m[1]-125,m[1]=125)),O=m[0]+m[1],O>A&&(m[0]=A*m[0]/O,m[1]=A*m[1]/O),Xr(m[0]<=Qe.MAX_BITS_PER_CHANNEL),Xr(m[1]<=Qe.MAX_BITS_PER_CHANNEL),Xr(m[0]+m[1]<=Qe.MAX_BITS_PER_GRANULE)},this.athAdjust=function(m,I,V){var A=90.30873362,l=94.82444863,O=Bs.FAST_LOG10_X(I,10),y=m*m,c=0;return O-=V,y>1e-20&&(c=1+Bs.FAST_LOG10_X(y,10/A)),c<0&&(c=0),O*=c,O+=V+A-l,Math.pow(10,.1*O)},this.calc_xmin=function(m,I,V,A){var l=0,O=m.internal_flags,y,c=0,d=0,v=O.ATH,s=V.xr,h=m.VBR==Ri.vbr_mtrh?1:0,b=O.masking_lower;for((m.VBR==Ri.vbr_mtrh||m.VBR==Ri.vbr_mt)&&(b=1),y=0;y<V.psy_lmax;y++){var S,j,L,H,de,u;m.VBR==Ri.vbr_rh||m.VBR==Ri.vbr_mtrh?j=athAdjust(v.adjust,v.l[y],v.floor):j=v.adjust*v.l[y],de=V.width[y],L=j/de,H=he,u=de>>1,S=0;do{var _,ie;_=s[c]*s[c],S+=_,H+=_<L?_:L,c++,ie=s[c]*s[c],S+=ie,H+=ie<L?ie:L,c++}while(--u>0);if(S>j&&d++,y==E.SBPSY_l){var ue=j*O.nsPsy.longfact[y];H<ue&&(H=ue)}if(h!=0&&(j=H),!m.ATHonly){var Se=I.en.l[y];if(Se>0){var ue;ue=S*I.thm.l[y]*b/Se,h!=0&&(ue*=O.nsPsy.longfact[y]),j<ue&&(j=ue)}}h!=0?A[l++]=j:A[l++]=j*O.nsPsy.longfact[y]}var Ae=575;if(V.block_type!=E.SHORT_TYPE)for(var Me=576;Me--!=0&&zr.EQ(s[Me],0);)Ae=Me;V.max_nonzero_coeff=Ae;for(var ge=V.sfb_smin;y<V.psymax;ge++,y+=3){var de,Fe,Ce;for(m.VBR==Ri.vbr_rh||m.VBR==Ri.vbr_mtrh?Ce=athAdjust(v.adjust,v.s[ge],v.floor):Ce=v.adjust*v.s[ge],de=V.width[y],Fe=0;Fe<3;Fe++){var S=0,j,L,H,u=de>>1;L=Ce/de,H=he;do{var _,ie;_=s[c]*s[c],S+=_,H+=_<L?_:L,c++,ie=s[c]*s[c],S+=ie,H+=ie<L?ie:L,c++}while(--u>0);if(S>Ce&&d++,ge==E.SBPSY_s){var ue=Ce*O.nsPsy.shortfact[ge];H<ue&&(H=ue)}if(h!=0?j=H:j=Ce,!m.ATHonly&&!m.ATHshort){var Se=I.en.s[ge][Fe];if(Se>0){var ue;ue=S*I.thm.s[ge][Fe]*b/Se,h!=0&&(ue*=O.nsPsy.shortfact[ge]),j<ue&&(j=ue)}}h!=0?A[l++]=j:A[l++]=j*O.nsPsy.shortfact[ge]}m.useTemporal&&(A[l-3]>A[l-3+1]&&(A[l-3+1]+=(A[l-3]-A[l-3+1])*O.decay),A[l-3+1]>A[l-3+2]&&(A[l-3+2]+=(A[l-3+1]-A[l-3+2])*O.decay))}return d};function p(m){this.s=m}this.calc_noise_core=function(m,I,V,A){var l=0,O=I.s,y=m.l3_enc;if(O>m.count1)for(;V--!=0;){var c;c=m.xr[O],O++,l+=c*c,c=m.xr[O],O++,l+=c*c}else if(O>m.big_values){var d=Ei(2);for(d[0]=0,d[1]=A;V--!=0;){var c;c=Math.abs(m.xr[O])-d[y[O]],O++,l+=c*c,c=Math.abs(m.xr[O])-d[y[O]],O++,l+=c*c}}else for(;V--!=0;){var c;c=Math.abs(m.xr[O])-a[y[O]]*A,O++,l+=c*c,c=Math.abs(m.xr[O])-a[y[O]]*A,O++,l+=c*c}return I.s=O,l},this.calc_noise=function(m,I,V,A,l){var O=0,y=0,c,d,v=0,s=0,h=0,b=-20,S=0,j=m.scalefac,L=0;for(A.over_SSD=0,c=0;c<m.psymax;c++){var H=m.global_gain-(j[L++]+(m.preflag!=0?le[c]:0)<<m.scalefac_scale+1)-m.subblock_gain[m.window[c]]*8,de=0;if(l!=null&&l.step[c]==H)de=l.noise[c],S+=m.width[c],V[O++]=de/I[y++],de=l.noise_log[c];else{var u=$(H);if(d=m.width[c]>>1,S+m.width[c]>m.max_nonzero_coeff){var _;_=m.max_nonzero_coeff-S+1,_>0?d=_>>1:d=0}var ie=new p(S);de=this.calc_noise_core(m,ie,d,u),S=ie.s,l!=null&&(l.step[c]=H,l.noise[c]=de),de=V[O++]=de/I[y++],de=Bs.FAST_LOG10(Math.max(de,1e-20)),l!=null&&(l.noise_log[c]=de)}if(l!=null&&(l.global_gain=m.global_gain),h+=de,de>0){var ue;ue=Math.max(0|de*10+.5,1),A.over_SSD+=ue*ue,v++,s+=de}b=Math.max(b,de)}return A.over_count=v,A.tot_noise=h,A.over_noise=s,A.max_noise=b,v},this.set_pinfo=function(m,I,V,A,l){var O=m.internal_flags,y,c,d,v,s,h=I.scalefac_scale==0?.5:1,b=I.scalefac,S=Ei(L3Side.SFBMAX),j=Ei(L3Side.SFBMAX),L=new CalcNoiseResult;calc_xmin(m,V,I,S),calc_noise(I,S,j,L,null);var H=0;for(c=I.sfb_lmax,I.block_type!=E.SHORT_TYPE&&I.mixed_block_flag==0&&(c=22),y=0;y<c;y++){var de=O.scalefac_band.l[y],u=O.scalefac_band.l[y+1],_=u-de;for(v=0;H<u;H++)v+=I.xr[H]*I.xr[H];v/=_,s=1e15,O.pinfo.en[A][l][y]=s*v,O.pinfo.xfsf[A][l][y]=s*S[y]*j[y]/_,V.en.l[y]>0&&!m.ATHonly?v=v/V.en.l[y]:v=0,O.pinfo.thr[A][l][y]=s*Math.max(v*V.thm.l[y],O.ATH.l[y]),O.pinfo.LAMEsfb[A][l][y]=0,I.preflag!=0&&y>=11&&(O.pinfo.LAMEsfb[A][l][y]=-h*le[y]),y<E.SBPSY_l&&(Xr(b[y]>=0),O.pinfo.LAMEsfb[A][l][y]-=h*b[y])}if(I.block_type==E.SHORT_TYPE)for(c=y,y=I.sfb_smin;y<E.SBMAX_s;y++)for(var de=O.scalefac_band.s[y],u=O.scalefac_band.s[y+1],_=u-de,ie=0;ie<3;ie++){for(v=0,d=de;d<u;d++)v+=I.xr[H]*I.xr[H],H++;v=Math.max(v/_,1e-20),s=1e15,O.pinfo.en_s[A][l][3*y+ie]=s*v,O.pinfo.xfsf_s[A][l][3*y+ie]=s*S[c]*j[c]/_,V.en.s[y][ie]>0?v=v/V.en.s[y][ie]:v=0,(m.ATHonly||m.ATHshort)&&(v=0),O.pinfo.thr_s[A][l][3*y+ie]=s*Math.max(v*V.thm.s[y][ie],O.ATH.s[y]),O.pinfo.LAMEsfb_s[A][l][3*y+ie]=-2*I.subblock_gain[ie],y<E.SBPSY_s&&(O.pinfo.LAMEsfb_s[A][l][3*y+ie]-=h*b[c]),c++}O.pinfo.LAMEqss[A][l]=I.global_gain,O.pinfo.LAMEmainbits[A][l]=I.part2_3_length+I.part2_length,O.pinfo.LAMEsfbits[A][l]=I.part2_length,O.pinfo.over[A][l]=L.over_count,O.pinfo.max_noise[A][l]=L.max_noise*10,O.pinfo.over_noise[A][l]=L.over_noise*10,O.pinfo.tot_noise[A][l]=L.tot_noise*10,O.pinfo.over_SSD[A][l]=L.over_SSD}}var Zr=Yt,Uc=te.System,jc=te.Arrays,ba=te.new_int,sr=te.assert;function Is(){var T=null;this.qupvt=null,this.setModules=function(c){this.qupvt=c,T=c};function G(c){this.bits=0|c}var J=[[0,0],[0,0],[0,0],[0,0],[0,0],[0,1],[1,1],[1,1],[1,2],[2,2],[2,3],[2,3],[3,4],[3,4],[3,4],[4,5],[4,5],[4,6],[5,6],[5,6],[5,7],[6,7],[6,7]];function $(c,d,v,s,h,b){var S=.5946/d;for(sr(c>0),c=c>>1;c--!=0;)h[b++]=S>v[s++]?0:1,h[b++]=S>v[s++]?0:1}function he(c,d,v,s,h,b){sr(c>0),c=c>>1;var S=c%2;for(c=c>>1;c--!=0;){var j,L,H,de,u,_,ie,ue;j=v[s++]*d,L=v[s++]*d,u=0|j,H=v[s++]*d,_=0|L,de=v[s++]*d,ie=0|H,j+=T.adj43[u],ue=0|de,L+=T.adj43[_],h[b++]=0|j,H+=T.adj43[ie],h[b++]=0|L,de+=T.adj43[ue],h[b++]=0|H,h[b++]=0|de}if(S!=0){var j,L,u,_;j=v[s++]*d,L=v[s++]*d,u=0|j,_=0|L,j+=T.adj43[u],L+=T.adj43[_],h[b++]=0|j,h[b++]=0|L}}function Y(c,d,v,s,h){var b,S,j=0,L,H=0,de=0,u=0,_=d,ie=0,ue=_,Se=0,Ae=c,Me=0;for(L=h!=null&&s.global_gain==h.global_gain,s.block_type==E.SHORT_TYPE?S=38:S=21,b=0;b<=S;b++){var ge=-1;if((L||s.block_type==E.NORM_TYPE)&&(ge=s.global_gain-(s.scalefac[b]+(s.preflag!=0?T.pretab[b]:0)<<s.scalefac_scale+1)-s.subblock_gain[s.window[b]]*8),sr(s.width[b]>=0),L&&h.step[b]==ge)H!=0&&(he(H,v,Ae,Me,ue,Se),H=0),de!=0&&($(de,v,Ae,Me,ue,Se),de=0);else{var Fe=s.width[b];if(j+s.width[b]>s.max_nonzero_coeff){var Ce;Ce=s.max_nonzero_coeff-j+1,jc.fill(d,s.max_nonzero_coeff,576,0),Fe=Ce,Fe<0&&(Fe=0),b=S+1}if(H==0&&de==0&&(ue=_,Se=ie,Ae=c,Me=u),h!=null&&h.sfb_count1>0&&b>=h.sfb_count1&&h.step[b]>0&&ge>=h.step[b]?(H!=0&&(he(H,v,Ae,Me,ue,Se),H=0,ue=_,Se=ie,Ae=c,Me=u),de+=Fe):(de!=0&&($(de,v,Ae,Me,ue,Se),de=0,ue=_,Se=ie,Ae=c,Me=u),H+=Fe),Fe<=0){de!=0&&($(de,v,Ae,Me,ue,Se),de=0),H!=0&&(he(H,v,Ae,Me,ue,Se),H=0);break}}b<=S&&(ie+=s.width[b],u+=s.width[b],j+=s.width[b])}H!=0&&(he(H,v,Ae,Me,ue,Se),H=0),de!=0&&($(de,v,Ae,Me,ue,Se),de=0)}function se(c,d,v){var s=0,h=0;do{var b=c[d++],S=c[d++];s<b&&(s=b),h<S&&(h=S)}while(d<v);return s<h&&(s=h),s}function be(c,d,v,s,h,b){var S=Ge.ht[s].xlen*65536+Ge.ht[h].xlen,j=0,L;do{var H=c[d++],de=c[d++];H!=0&&(H>14&&(H=15,j+=S),H*=16),de!=0&&(de>14&&(de=15,j+=S),H+=de),j+=Ge.largetbl[H]}while(d<v);return L=j&65535,j>>=16,j>L&&(j=L,s=h),b.bits+=j,s}function ye(c,d,v,s){var h=0,b=Ge.ht[1].hlen;do{var S=c[d+0]*2+c[d+1];d+=2,h+=b[S]}while(d<v);return s.bits+=h,1}function U(c,d,v,s,h){var b=0,S,j=Ge.ht[s].xlen,L;s==2?L=Ge.table23:L=Ge.table56;do{var H=c[d+0]*j+c[d+1];d+=2,b+=L[H]}while(d<v);return S=b&65535,b>>=16,b>S&&(b=S,s++),h.bits+=b,s}function ae(c,d,v,s,h){var b=0,S=0,j=0,L=Ge.ht[s].xlen,H=Ge.ht[s].hlen,de=Ge.ht[s+1].hlen,u=Ge.ht[s+2].hlen;do{var _=c[d+0]*L+c[d+1];d+=2,b+=H[_],S+=de[_],j+=u[_]}while(d<v);var ie=s;return b>S&&(b=S,ie++),b>j&&(b=j,ie=s+2),h.bits+=b,ie}var le=[1,2,5,7,7,10,10,13,13,13,13,13,13,13,13];function M(c,d,v,s){var h=se(c,d,v);switch(h){case 0:return h;case 1:return ye(c,d,v,s);case 2:case 3:return U(c,d,v,le[h-1],s);case 4:case 5:case 6:case 7:case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:return ae(c,d,v,le[h-1],s);default:if(h>Zr.IXMAX_VAL)return s.bits=Zr.LARGE_BITS,-1;h-=15;var b;for(b=24;b<32&&!(Ge.ht[b].linmax>=h);b++);var S;for(S=b-8;S<24&&!(Ge.ht[S].linmax>=h);S++);return be(c,d,v,S,b,s)}}this.noquant_count_bits=function(c,d,v){var s=d.l3_enc,h=Math.min(576,d.max_nonzero_coeff+2>>1<<1);for(v!=null&&(v.sfb_count1=0);h>1&&(s[h-1]|s[h-2])==0;h-=2);d.count1=h;for(var b=0,S=0;h>3;h-=4){var j;if(((s[h-1]|s[h-2]|s[h-3]|s[h-4])&2147483647)>1)break;j=((s[h-4]*2+s[h-3])*2+s[h-2])*2+s[h-1],b+=Ge.t32l[j],S+=Ge.t33l[j]}var L=b;if(d.count1table_select=0,b>S&&(L=S,d.count1table_select=1),d.count1bits=L,d.big_values=h,h==0)return L;if(d.block_type==E.SHORT_TYPE)b=3*c.scalefac_band.s[3],b>d.big_values&&(b=d.big_values),S=d.big_values;else if(d.block_type==E.NORM_TYPE){if(sr(h<=576),b=d.region0_count=c.bv_scf[h-2],S=d.region1_count=c.bv_scf[h-1],sr(b+S+2<E.SBPSY_l),S=c.scalefac_band.l[b+S+2],b=c.scalefac_band.l[b+1],S<h){var H=new G(L);d.table_select[2]=M(s,S,h,H),L=H.bits}}else d.region0_count=7,d.region1_count=E.SBMAX_l-1-7-1,b=c.scalefac_band.l[7+1],S=h,b>S&&(b=S);if(b=Math.min(b,h),S=Math.min(S,h),sr(b>=0),sr(S>=0),0<b){var H=new G(L);d.table_select[0]=M(s,0,b,H),L=H.bits}if(b<S){var H=new G(L);d.table_select[1]=M(s,b,S,H),L=H.bits}if(c.use_best_huffman==2&&(d.part2_3_length=L,best_huffman_divide(c,d),L=d.part2_3_length),v!=null&&d.block_type==E.NORM_TYPE){for(var de=0;c.scalefac_band.l[de]<d.big_values;)de++;v.sfb_count1=de}return L},this.count_bits=function(c,d,v,s){var h=v.l3_enc,b=Zr.IXMAX_VAL/T.IPOW20(v.global_gain);if(v.xrpow_max>b)return Zr.LARGE_BITS;if(Y(d,h,T.IPOW20(v.global_gain),v,s),(c.substep_shaping&2)!=0)for(var S=0,j=v.global_gain+v.scalefac_scale,L=.634521682242439/T.IPOW20(j),H=0;H<v.sfbmax;H++){var de=v.width[H];if(sr(de>=0),c.pseudohalf[H]==0)S+=de;else{var u;for(u=S,S+=de;u<S;++u)h[u]=d[u]>=L?h[u]:0}}return this.noquant_count_bits(c,v,s)};function q(c,d,v,s,h,b,S){for(var j=d.big_values,L=0;L<=7+15;L++)s[L]=Zr.LARGE_BITS;for(var L=0;L<16;L++){var H=c.scalefac_band.l[L+1];if(H>=j)break;var de=0,u=new G(de),_=M(v,0,H,u);de=u.bits;for(var ie=0;ie<8;ie++){var ue=c.scalefac_band.l[L+ie+2];if(ue>=j)break;var Se=de;u=new G(Se);var Ae=M(v,H,ue,u);Se=u.bits,s[L+ie]>Se&&(s[L+ie]=Se,h[L+ie]=L,b[L+ie]=_,S[L+ie]=Ae)}}}function a(c,d,v,s,h,b,S,j){for(var L=d.big_values,H=2;H<E.SBMAX_l+1;H++){var de=c.scalefac_band.l[H];if(de>=L)break;var u=h[H-2]+d.count1bits;if(v.part2_3_length<=u)break;var _=new G(u),ie=M(s,de,L,_);u=_.bits,!(v.part2_3_length<=u)&&(v.assign(d),v.part2_3_length=u,v.region0_count=b[H-2],v.region1_count=H-2-b[H-2],v.table_select[0]=S[H-2],v.table_select[1]=j[H-2],v.table_select[2]=ie)}}this.best_huffman_divide=function(c,d){var v=new vi,s=d.l3_enc,h=ba(7+15+1),b=ba(7+15+1),S=ba(7+15+1),j=ba(7+15+1);if(!(d.block_type==E.SHORT_TYPE&&c.mode_gr==1)){v.assign(d),d.block_type==E.NORM_TYPE&&(q(c,d,s,h,b,S,j),a(c,v,d,s,h,b,S,j));var L=v.big_values;if(!(L==0||(s[L-2]|s[L-1])>1)&&(L=d.count1+2,!(L>576))){v.assign(d),v.count1=L;var H=0,de=0;for(sr(L<=576);L>v.big_values;L-=4){var u=((s[L-4]*2+s[L-3])*2+s[L-2])*2+s[L-1];H+=Ge.t32l[u],de+=Ge.t33l[u]}if(v.big_values=L,v.count1table_select=0,H>de&&(H=de,v.count1table_select=1),v.count1bits=H,v.block_type==E.NORM_TYPE)a(c,v,d,s,h,b,S,j);else{if(v.part2_3_length=H,H=c.scalefac_band.l[7+1],H>L&&(H=L),H>0){var _=new G(v.part2_3_length);v.table_select[0]=M(s,0,H,_),v.part2_3_length=_.bits}if(L>H){var _=new G(v.part2_3_length);v.table_select[1]=M(s,H,L,_),v.part2_3_length=_.bits}d.part2_3_length>v.part2_3_length&&d.assign(v)}}}};var g=[1,1,1,1,8,2,2,2,4,4,4,8,8,8,16,16],N=[1,2,4,8,1,2,4,8,2,4,8,2,4,8,4,8],C=[0,0,0,0,3,1,1,1,2,2,2,3,3,3,4,4],p=[0,1,2,3,0,1,2,3,1,2,3,1,2,3,2,3];Is.slen1_tab=C,Is.slen2_tab=p;function m(c,d){for(var v,s=d.tt[1][c],h=d.tt[0][c],b=0;b<Ge.scfsi_band.length-1;b++){for(v=Ge.scfsi_band[b];v<Ge.scfsi_band[b+1]&&!(h.scalefac[v]!=s.scalefac[v]&&s.scalefac[v]>=0);v++);if(v==Ge.scfsi_band[b+1]){for(v=Ge.scfsi_band[b];v<Ge.scfsi_band[b+1];v++)s.scalefac[v]=-1;d.scfsi[c][b]=1}}var S=0,j=0;for(v=0;v<11;v++)s.scalefac[v]!=-1&&(j++,S<s.scalefac[v]&&(S=s.scalefac[v]));for(var L=0,H=0;v<E.SBPSY_l;v++)s.scalefac[v]!=-1&&(H++,L<s.scalefac[v]&&(L=s.scalefac[v]));for(var b=0;b<16;b++)if(S<g[b]&&L<N[b]){var de=C[b]*j+p[b]*H;s.part2_length>de&&(s.part2_length=de,s.scalefac_compress=b)}}this.best_scalefac_store=function(c,d,v,s){var h=s.tt[d][v],b,S,j,L,H=0;for(j=0,b=0;b<h.sfbmax;b++){var de=h.width[b];for(sr(de>=0),j+=de,L=-de;L<0&&h.l3_enc[L+j]==0;L++);L==0&&(h.scalefac[b]=H=-2)}if(h.scalefac_scale==0&&h.preflag==0){var u=0;for(b=0;b<h.sfbmax;b++)h.scalefac[b]>0&&(u|=h.scalefac[b]);if((u&1)==0&&u!=0){for(b=0;b<h.sfbmax;b++)h.scalefac[b]>0&&(h.scalefac[b]>>=1);h.scalefac_scale=H=1}}if(h.preflag==0&&h.block_type!=E.SHORT_TYPE&&c.mode_gr==2){for(b=11;b<E.SBPSY_l&&!(h.scalefac[b]<T.pretab[b]&&h.scalefac[b]!=-2);b++);if(b==E.SBPSY_l){for(b=11;b<E.SBPSY_l;b++)h.scalefac[b]>0&&(h.scalefac[b]-=T.pretab[b]);h.preflag=H=1}}for(S=0;S<4;S++)s.scfsi[v][S]=0;for(c.mode_gr==2&&d==1&&s.tt[0][v].block_type!=E.SHORT_TYPE&&s.tt[1][v].block_type!=E.SHORT_TYPE&&(m(v,s),H=0),b=0;b<h.sfbmax;b++)h.scalefac[b]==-2&&(h.scalefac[b]=0);H!=0&&(c.mode_gr==2?this.scale_bitcount(h):this.scale_bitcount_lsf(c,h))};function I(c,d){for(var v=0;v<d;++v)if(c[v]<0)return!1;return!0}var V=[0,18,36,54,54,36,54,72,54,72,90,72,90,108,108,126],A=[0,18,36,54,51,35,53,71,52,70,88,69,87,105,104,122],l=[0,10,20,30,33,21,31,41,32,42,52,43,53,63,64,74];this.scale_bitcount=function(c){var d,v,s=0,h=0,b,S=c.scalefac;if(sr(I(S,c.sfbmax)),c.block_type==E.SHORT_TYPE)b=V,c.mixed_block_flag!=0&&(b=A);else if(b=l,c.preflag==0){for(v=11;v<E.SBPSY_l&&!(S[v]<T.pretab[v]);v++);if(v==E.SBPSY_l)for(c.preflag=1,v=11;v<E.SBPSY_l;v++)S[v]-=T.pretab[v]}for(v=0;v<c.sfbdivide;v++)s<S[v]&&(s=S[v]);for(;v<c.sfbmax;v++)h<S[v]&&(h=S[v]);for(c.part2_length=Zr.LARGE_BITS,d=0;d<16;d++)s<g[d]&&h<N[d]&&c.part2_length>b[d]&&(c.part2_length=b[d],c.scalefac_compress=d);return c.part2_length==Zr.LARGE_BITS};var O=[[15,15,7,7],[15,15,7,0],[7,3,0,0],[15,31,31,0],[7,7,7,0],[3,3,0,0]];this.scale_bitcount_lsf=function(c,d){var v,s,h,b,S,j,L,H,de=ba(4),u=d.scalefac;for(d.preflag!=0?v=2:v=0,L=0;L<4;L++)de[L]=0;if(d.block_type==E.SHORT_TYPE){s=1;var _=T.nr_of_sfb_block[v][s];for(H=0,h=0;h<4;h++)for(b=_[h]/3,L=0;L<b;L++,H++)for(S=0;S<3;S++)u[H*3+S]>de[h]&&(de[h]=u[H*3+S])}else{s=0;var _=T.nr_of_sfb_block[v][s];for(H=0,h=0;h<4;h++)for(b=_[h],L=0;L<b;L++,H++)u[H]>de[h]&&(de[h]=u[H])}for(j=!1,h=0;h<4;h++)de[h]>O[v][h]&&(j=!0);if(!j){var ie,ue,Se,Ae;for(d.sfb_partition_table=T.nr_of_sfb_block[v][s],h=0;h<4;h++)d.slen[h]=y[de[h]];switch(ie=d.slen[0],ue=d.slen[1],Se=d.slen[2],Ae=d.slen[3],v){case 0:d.scalefac_compress=(ie*5+ue<<4)+(Se<<2)+Ae;break;case 1:d.scalefac_compress=400+(ie*5+ue<<2)+Se;break;case 2:d.scalefac_compress=500+ie*3+ue;break;default:Uc.err.printf(`intensity stereo not implemented yet
2
- `);break}}if(!j)for(sr(d.sfb_partition_table!=null),d.part2_length=0,h=0;h<4;h++)d.part2_length+=d.slen[h]*d.sfb_partition_table[h];return j};var y=[0,1,2,2,3,3,3,3,4,4,4,4,4,4,4,4];this.huffman_init=function(c){for(var d=2;d<=576;d+=2){for(var v=0,s;c.scalefac_band.l[++v]<d;);for(s=J[v][0];c.scalefac_band.l[s+1]>d;)s--;for(s<0&&(s=J[v][0]),c.bv_scf[d-2]=s,s=J[v][1];c.scalefac_band.l[s+c.bv_scf[d-2]+2]>d;)s--;s<0&&(s=J[v][1]),c.bv_scf[d-1]=s}}}var Cs=Is,gr=te.System,qc=te.Arrays,Xc=te.new_byte,zc=te.new_float_n,Gc=te.new_int,qe=te.assert;cn.EQ=function(T,G){return Math.abs(T)>Math.abs(G)?Math.abs(T-G)<=Math.abs(T)*1e-6:Math.abs(T-G)<=Math.abs(G)*1e-6},cn.NEQ=function(T,G){return!cn.EQ(T,G)};function cn(){var T=this,G=32773,J=32,$=null,he=null,Y=null,se=null;this.setModules=function(y,c,d,v){$=y,he=c,Y=d,se=v};var be=null,ye=0,U=0,ae=0;this.getframebits=function(y){var c=y.internal_flags,d;c.bitrate_index!=0?d=Ge.bitrate_table[y.version][c.bitrate_index]:d=y.brate,qe(8<=d&&d<=640);var v=0|(y.version+1)*72e3*d/y.out_samplerate+c.padding;return 8*v};function le(y){gr.arraycopy(y.header[y.w_ptr].buf,0,be,U,y.sideinfo_len),U+=y.sideinfo_len,ye+=y.sideinfo_len*8,y.w_ptr=y.w_ptr+1&Qe.MAX_HEADER_BUF-1}function M(y,c,d){for(qe(d<J-2);d>0;){var v;ae==0&&(ae=8,U++,qe(U<Ze.LAME_MAXMP3BUFFER),qe(y.header[y.w_ptr].write_timing>=ye),y.header[y.w_ptr].write_timing==ye&&le(y),be[U]=0),v=Math.min(d,ae),d-=v,ae-=v,qe(d<J),qe(ae<J),be[U]|=c>>d<<ae,ye+=v}}function q(y,c,d){for(qe(d<J-2);d>0;){var v;ae==0&&(ae=8,U++,qe(U<Ze.LAME_MAXMP3BUFFER),be[U]=0),v=Math.min(d,ae),d-=v,ae-=v,qe(d<J),qe(ae<J),be[U]|=c>>d<<ae,ye+=v}}function a(y,c){var d=y.internal_flags,v;if(qe(c>=0),c>=8&&(M(d,76,8),c-=8),c>=8&&(M(d,65,8),c-=8),c>=8&&(M(d,77,8),c-=8),c>=8&&(M(d,69,8),c-=8),c>=32){var s=Y.getLameShortVersion();if(c>=32)for(v=0;v<s.length&&c>=8;++v)c-=8,M(d,s.charAt(v),8)}for(;c>=1;c-=1)M(d,d.ancillary_flag,1),d.ancillary_flag^=y.disable_reservoir?0:1;qe(c==0)}function g(y,c,d){for(var v=y.header[y.h_ptr].ptr;d>0;){var s=Math.min(d,8-(v&7));d-=s,qe(d<J),y.header[y.h_ptr].buf[v>>3]|=c>>d<<8-(v&7)-s,v+=s}y.header[y.h_ptr].ptr=v}function N(y,c){y<<=8;for(var d=0;d<8;d++)y<<=1,c<<=1,((c^y)&65536)!=0&&(c^=G);return c}this.CRC_writeheader=function(y,c){var d=65535;d=N(c[2]&255,d),d=N(c[3]&255,d);for(var v=6;v<y.sideinfo_len;v++)d=N(c[v]&255,d);c[4]=byte(d>>8),c[5]=byte(d&255)};function C(y,c){var d=y.internal_flags,v,s,h;if(v=d.l3_side,d.header[d.h_ptr].ptr=0,qc.fill(d.header[d.h_ptr].buf,0,d.sideinfo_len,0),y.out_samplerate<16e3?g(d,4094,12):g(d,4095,12),g(d,y.version,1),g(d,4-3,2),g(d,y.error_protection?0:1,1),g(d,d.bitrate_index,4),g(d,d.samplerate_index,2),g(d,d.padding,1),g(d,y.extension,1),g(d,y.mode.ordinal(),2),g(d,d.mode_ext,2),g(d,y.copyright,1),g(d,y.original,1),g(d,y.emphasis,2),y.error_protection&&g(d,0,16),y.version==1){for(qe(v.main_data_begin>=0),g(d,v.main_data_begin,9),d.channels_out==2?g(d,v.private_bits,3):g(d,v.private_bits,5),h=0;h<d.channels_out;h++){var b;for(b=0;b<4;b++)g(d,v.scfsi[h][b],1)}for(s=0;s<2;s++)for(h=0;h<d.channels_out;h++){var S=v.tt[s][h];g(d,S.part2_3_length+S.part2_length,12),g(d,S.big_values/2,9),g(d,S.global_gain,8),g(d,S.scalefac_compress,4),S.block_type!=E.NORM_TYPE?(g(d,1,1),g(d,S.block_type,2),g(d,S.mixed_block_flag,1),S.table_select[0]==14&&(S.table_select[0]=16),g(d,S.table_select[0],5),S.table_select[1]==14&&(S.table_select[1]=16),g(d,S.table_select[1],5),g(d,S.subblock_gain[0],3),g(d,S.subblock_gain[1],3),g(d,S.subblock_gain[2],3)):(g(d,0,1),S.table_select[0]==14&&(S.table_select[0]=16),g(d,S.table_select[0],5),S.table_select[1]==14&&(S.table_select[1]=16),g(d,S.table_select[1],5),S.table_select[2]==14&&(S.table_select[2]=16),g(d,S.table_select[2],5),qe(0<=S.region0_count&&S.region0_count<16),qe(0<=S.region1_count&&S.region1_count<8),g(d,S.region0_count,4),g(d,S.region1_count,3)),g(d,S.preflag,1),g(d,S.scalefac_scale,1),g(d,S.count1table_select,1)}}else for(qe(v.main_data_begin>=0),g(d,v.main_data_begin,8),g(d,v.private_bits,d.channels_out),s=0,h=0;h<d.channels_out;h++){var S=v.tt[s][h];g(d,S.part2_3_length+S.part2_length,12),g(d,S.big_values/2,9),g(d,S.global_gain,8),g(d,S.scalefac_compress,9),S.block_type!=E.NORM_TYPE?(g(d,1,1),g(d,S.block_type,2),g(d,S.mixed_block_flag,1),S.table_select[0]==14&&(S.table_select[0]=16),g(d,S.table_select[0],5),S.table_select[1]==14&&(S.table_select[1]=16),g(d,S.table_select[1],5),g(d,S.subblock_gain[0],3),g(d,S.subblock_gain[1],3),g(d,S.subblock_gain[2],3)):(g(d,0,1),S.table_select[0]==14&&(S.table_select[0]=16),g(d,S.table_select[0],5),S.table_select[1]==14&&(S.table_select[1]=16),g(d,S.table_select[1],5),S.table_select[2]==14&&(S.table_select[2]=16),g(d,S.table_select[2],5),qe(0<=S.region0_count&&S.region0_count<16),qe(0<=S.region1_count&&S.region1_count<8),g(d,S.region0_count,4),g(d,S.region1_count,3)),g(d,S.scalefac_scale,1),g(d,S.count1table_select,1)}y.error_protection&&CRC_writeheader(d,d.header[d.h_ptr].buf);{var j=d.h_ptr;qe(d.header[j].ptr==d.sideinfo_len*8),d.h_ptr=j+1&Qe.MAX_HEADER_BUF-1,d.header[d.h_ptr].write_timing=d.header[j].write_timing+c,d.h_ptr==d.w_ptr&&gr.err.println(`Error: MAX_HEADER_BUF too small in bitstream.c
3
- `)}}function p(y,c){var d=Ge.ht[c.count1table_select+32],v,s=0,h=c.big_values,b=c.big_values;for(qe(c.count1table_select<2),v=(c.count1-c.big_values)/4;v>0;--v){var S=0,j=0,L;L=c.l3_enc[h+0],L!=0&&(j+=8,c.xr[b+0]<0&&S++,qe(L<=1)),L=c.l3_enc[h+1],L!=0&&(j+=4,S*=2,c.xr[b+1]<0&&S++,qe(L<=1)),L=c.l3_enc[h+2],L!=0&&(j+=2,S*=2,c.xr[b+2]<0&&S++,qe(L<=1)),L=c.l3_enc[h+3],L!=0&&(j++,S*=2,c.xr[b+3]<0&&S++,qe(L<=1)),h+=4,b+=4,M(y,S+d.table[j],d.hlen[j]),s+=d.hlen[j]}return s}function m(y,c,d,v,s){var h=Ge.ht[c],b=0;if(qe(c<32),c==0)return b;for(var S=d;S<v;S+=2){var j=0,L=0,H=h.xlen,de=h.xlen,u=0,_=s.l3_enc[S],ie=s.l3_enc[S+1];if(_!=0&&(s.xr[S]<0&&u++,j--),c>15){if(_>14){var ue=_-15;qe(ue<=h.linmax),u|=ue<<1,L=H,_=15}if(ie>14){var Se=ie-15;qe(Se<=h.linmax),u<<=H,u|=Se,L+=H,ie=15}de=16}ie!=0&&(u<<=1,s.xr[S+1]<0&&u++,j--),qe((_|ie)<16),_=_*de+ie,L-=j,j+=h.hlen[_],qe(j<=J),qe(L<=J),M(y,h.table[_],j),M(y,u,L),b+=j+L}return b}function I(y,c){var d=3*y.scalefac_band.s[3];d>c.big_values&&(d=c.big_values);var v=m(y,c.table_select[0],0,d,c);return v+=m(y,c.table_select[1],d,c.big_values,c),v}function V(y,c){var d,v,s,h;d=c.big_values,qe(0<=d&&d<=576);var b=c.region0_count+1;return qe(0<=b),qe(b<y.scalefac_band.l.length),s=y.scalefac_band.l[b],b+=c.region1_count+1,qe(0<=b),qe(b<y.scalefac_band.l.length),h=y.scalefac_band.l[b],s>d&&(s=d),h>d&&(h=d),v=m(y,c.table_select[0],0,s,c),v+=m(y,c.table_select[1],s,h,c),v+=m(y,c.table_select[2],h,d,c),v}function A(y){var c,d,v,s,h=0,b=y.internal_flags,S=b.l3_side;if(y.version==1)for(c=0;c<2;c++)for(d=0;d<b.channels_out;d++){var j=S.tt[c][d],L=Cs.slen1_tab[j.scalefac_compress],H=Cs.slen2_tab[j.scalefac_compress];for(s=0,v=0;v<j.sfbdivide;v++)j.scalefac[v]!=-1&&(M(b,j.scalefac[v],L),s+=L);for(;v<j.sfbmax;v++)j.scalefac[v]!=-1&&(M(b,j.scalefac[v],H),s+=H);qe(s==j.part2_length),j.block_type==E.SHORT_TYPE?s+=I(b,j):s+=V(b,j),s+=p(b,j),qe(s==j.part2_3_length+j.part2_length),h+=s}else for(c=0,d=0;d<b.channels_out;d++){var j=S.tt[c][d],de,u,_=0;if(qe(j.sfb_partition_table!=null),s=0,v=0,u=0,j.block_type==E.SHORT_TYPE){for(;u<4;u++){var ie=j.sfb_partition_table[u]/3,ue=j.slen[u];for(de=0;de<ie;de++,v++)M(b,Math.max(j.scalefac[v*3+0],0),ue),M(b,Math.max(j.scalefac[v*3+1],0),ue),M(b,Math.max(j.scalefac[v*3+2],0),ue),_+=3*ue}s+=I(b,j)}else{for(;u<4;u++){var ie=j.sfb_partition_table[u],ue=j.slen[u];for(de=0;de<ie;de++,v++)M(b,Math.max(j.scalefac[v],0),ue),_+=ue}s+=V(b,j)}s+=p(b,j),qe(s==j.part2_3_length),qe(_==j.part2_length),h+=_+s}return h}function l(){this.total=0}function O(y,c){var d=y.internal_flags,v,s,h,b,S;return S=d.w_ptr,b=d.h_ptr-1,b==-1&&(b=Qe.MAX_HEADER_BUF-1),v=d.header[b].write_timing-ye,c.total=v,v>=0&&(s=1+b-S,b<S&&(s=1+b-S+Qe.MAX_HEADER_BUF),v-=s*8*d.sideinfo_len),h=T.getframebits(y),v+=h,c.total+=h,c.total%8!=0?c.total=1+c.total/8:c.total=c.total/8,c.total+=U+1,v<0&&gr.err.println(`strange error flushing buffer ...
4
- `),v}this.flush_bitstream=function(y){var c=y.internal_flags,d,v,s=c.h_ptr-1;if(s==-1&&(s=Qe.MAX_HEADER_BUF-1),d=c.l3_side,!((v=O(y,new l))<0)){if(a(y,v),qe(c.header[s].write_timing+this.getframebits(y)==ye),c.ResvSize=0,d.main_data_begin=0,c.findReplayGain){var h=$.GetTitleGain(c.rgdata);qe(NEQ(h,Aa.GAIN_NOT_ENOUGH_SAMPLES)),c.RadioGain=Math.floor(h*10+.5)|0}c.findPeakSample&&(c.noclipGainChange=Math.ceil(Math.log10(c.PeakSample/32767)*20*10)|0,c.noclipGainChange>0&&(EQ(y.scale,1)||EQ(y.scale,0))?c.noclipScale=Math.floor(32767/c.PeakSample*100)/100:c.noclipScale=-1)}},this.add_dummy_byte=function(y,c,d){for(var v=y.internal_flags,s;d-- >0;)for(q(v,c,8),s=0;s<Qe.MAX_HEADER_BUF;++s)v.header[s].write_timing+=8},this.format_bitstream=function(y){var c=y.internal_flags,d;d=c.l3_side;var v=this.getframebits(y);a(y,d.resvDrain_pre),C(y,v);var s=8*c.sideinfo_len;if(s+=A(y),a(y,d.resvDrain_post),s+=d.resvDrain_post,d.main_data_begin+=(v-s)/8,O(y,new l)!=c.ResvSize&&gr.err.println("Internal buffer inconsistency. flushbits <> ResvSize"),d.main_data_begin*8!=c.ResvSize&&(gr.err.printf(`bit reservoir error:
5
- l3_side.main_data_begin: %d
6
- Resvoir size: %d
7
- resv drain (post) %d
8
- resv drain (pre) %d
9
- header and sideinfo: %d
10
- data bits: %d
11
- total bits: %d (remainder: %d)
12
- bitsperframe: %d
13
- `,8*d.main_data_begin,c.ResvSize,d.resvDrain_post,d.resvDrain_pre,8*c.sideinfo_len,s-d.resvDrain_post-8*c.sideinfo_len,s,s%8,v),gr.err.println("This is a fatal error. It has several possible causes:"),gr.err.println("90%% LAME compiled with buggy version of gcc using advanced optimizations"),gr.err.println(" 9%% Your system is overclocked"),gr.err.println(" 1%% bug in LAME encoding library"),c.ResvSize=d.main_data_begin*8),qe(ye%8==0),ye>1e9){var h;for(h=0;h<Qe.MAX_HEADER_BUF;++h)c.header[h].write_timing-=ye;ye=0}return 0},this.copy_buffer=function(y,c,d,v,s){var h=U+1;if(h<=0)return 0;if(v!=0&&h>v)return-1;if(gr.arraycopy(be,0,c,d,h),U=-1,ae=0,s!=0){var b=Gc(1);if(b[0]=y.nMusicCRC,se.updateMusicCRC(b,c,d,h),y.nMusicCRC=b[0],h>0&&(y.VBR_seek_table.nBytesWritten+=h),y.decode_on_the_fly){for(var S=zc([2,1152]),j=h,L=-1,H;L!=0;)if(L=he.hip_decode1_unclipped(y.hip,c,d,j,S[0],S[1]),j=0,L==-1&&(L=0),L>0){if(qe(L<=1152),y.findPeakSample){for(H=0;H<L;H++)S[0][H]>y.PeakSample?y.PeakSample=S[0][H]:-S[0][H]>y.PeakSample&&(y.PeakSample=-S[0][H]);if(y.channels_out>1)for(H=0;H<L;H++)S[1][H]>y.PeakSample?y.PeakSample=S[1][H]:-S[1][H]>y.PeakSample&&(y.PeakSample=-S[1][H])}if(y.findReplayGain&&$.AnalyzeSamples(y.rgdata,S[0],0,S[1],0,L,y.channels_out)==Aa.GAIN_ANALYSIS_ERROR)return-6}}}return h},this.init_bit_stream_w=function(y){be=Xc(Ze.LAME_MAXMP3BUFFER),y.h_ptr=y.w_ptr=0,y.header[y.h_ptr].write_timing=0,U=-1,ae=0,ye=0}}var Qr=cn,$c=te.System,rt=te.VbrMode,Os=te.ShortBlock,xi=te.new_float,u0=te.new_int_n,Yc=te.new_short_n,Wt=te.assert;function bt(){var T=this,G=128*1024;bt.V9=410,bt.V8=420,bt.V7=430,bt.V6=440,bt.V5=450,bt.V4=460,bt.V3=470,bt.V2=480,bt.V1=490,bt.V0=500,bt.R3MIX=1e3,bt.STANDARD=1001,bt.EXTREME=1002,bt.INSANE=1003,bt.STANDARD_FAST=1004,bt.EXTREME_FAST=1005,bt.MEDIUM=1006,bt.MEDIUM_FAST=1007;var J=16384+G;bt.LAME_MAXMP3BUFFER=J;var $,he,Y,se,be,ye=new Vr,U,ae,le,M;this.enc=new E,this.setModules=function(u,_,ie,ue,Se,Ae,Me,ge,Fe){$=u,he=_,Y=ie,se=ue,be=Se,U=Ae,ae=Me,le=ge,M=Fe,this.enc.setModules(he,ye,se,U)};function q(){this.mask_adjust=0,this.mask_adjust_short=0,this.bo_l_weight=xi(E.SBMAX_l),this.bo_s_weight=xi(E.SBMAX_s)}function a(){this.lowerlimit=0}function g(u,_){this.lowpass=_}var N=4294479419;function C(u){var _;return u.class_id=N,_=u.internal_flags=new Qe,u.mode=yt.NOT_SET,u.original=1,u.in_samplerate=44100,u.num_channels=2,u.num_samples=-1,u.bWriteVbrTag=!0,u.quality=-1,u.short_blocks=null,_.subblock_gain=-1,u.lowpassfreq=0,u.highpassfreq=0,u.lowpasswidth=-1,u.highpasswidth=-1,u.VBR=rt.vbr_off,u.VBR_q=4,u.ATHcurve=-1,u.VBR_mean_bitrate_kbps=128,u.VBR_min_bitrate_kbps=0,u.VBR_max_bitrate_kbps=0,u.VBR_hard_min=0,_.VBR_min_bitrate=1,_.VBR_max_bitrate=13,u.quant_comp=-1,u.quant_comp_short=-1,u.msfix=-1,_.resample_ratio=1,_.OldValue[0]=180,_.OldValue[1]=180,_.CurrentStep[0]=4,_.CurrentStep[1]=4,_.masking_lower=1,_.nsPsy.attackthre=-1,_.nsPsy.attackthre_s=-1,u.scale=-1,u.athaa_type=-1,u.ATHtype=-1,u.athaa_loudapprox=-1,u.athaa_sensitivity=0,u.useTemporal=null,u.interChRatio=-1,_.mf_samples_to_encode=E.ENCDELAY+E.POSTDELAY,u.encoder_padding=0,_.mf_size=E.ENCDELAY-E.MDCTDELAY,u.findReplayGain=!1,u.decode_on_the_fly=!1,_.decode_on_the_fly=!1,_.findReplayGain=!1,_.findPeakSample=!1,_.RadioGain=0,_.AudiophileGain=0,_.noclipGainChange=0,_.noclipScale=-1,u.preset=0,u.write_id3tag_automatic=!0,0}this.lame_init=function(){var u=new gs,_=C(u);return _!=0?null:(u.lame_allocated_gfp=1,u)};function p(u){return u>1?0:u<=0?1:Math.cos(Math.PI/2*u)}this.nearestBitrateFullIndex=function(u){var _=[8,16,24,32,40,48,56,64,80,96,112,128,160,192,224,256,320],ie=0,ue=0,Se=0,Ae=0;Ae=_[16],Se=16,ue=_[16],ie=16;for(var Me=0;Me<16;Me++)if(Math.max(u,_[Me+1])!=u){Ae=_[Me+1],Se=Me+1,ue=_[Me],ie=Me;break}return Ae-u>u-ue?ie:Se};function m(u,_){var ie=44100;return _>=48e3?ie=48e3:_>=44100?ie=44100:_>=32e3?ie=32e3:_>=24e3?ie=24e3:_>=22050?ie=22050:_>=16e3?ie=16e3:_>=12e3?ie=12e3:_>=11025?ie=11025:_>=8e3&&(ie=8e3),u==-1?ie:(u<=15960&&(ie=44100),u<=15250&&(ie=32e3),u<=11220&&(ie=24e3),u<=9970&&(ie=22050),u<=7230&&(ie=16e3),u<=5420&&(ie=12e3),u<=4510&&(ie=11025),u<=3970&&(ie=8e3),_<ie?_>44100?48e3:_>32e3?44100:_>24e3?32e3:_>22050?24e3:_>16e3?22050:_>12e3?16e3:_>11025?12e3:_>8e3?11025:8e3:ie)}function I(u,_){switch(u){case 44100:return _.version=1,0;case 48e3:return _.version=1,1;case 32e3:return _.version=1,2;case 22050:return _.version=0,0;case 24e3:return _.version=0,1;case 16e3:return _.version=0,2;case 11025:return _.version=0,0;case 12e3:return _.version=0,1;case 8e3:return _.version=0,2;default:return _.version=0,-1}}function V(u,_,ie){ie<16e3&&(_=2);for(var ue=Ge.bitrate_table[_][1],Se=2;Se<=14;Se++)Ge.bitrate_table[_][Se]>0&&Math.abs(Ge.bitrate_table[_][Se]-u)<Math.abs(ue-u)&&(ue=Ge.bitrate_table[_][Se]);return ue}function A(u,_,ie){ie<16e3&&(_=2);for(var ue=0;ue<=14;ue++)if(Ge.bitrate_table[_][ue]>0&&Ge.bitrate_table[_][ue]==u)return ue;return-1}function l(u,_){var ie=[new g(8,2e3),new g(16,3700),new g(24,3900),new g(32,5500),new g(40,7e3),new g(48,7500),new g(56,1e4),new g(64,11e3),new g(80,13500),new g(96,15100),new g(112,15600),new g(128,17e3),new g(160,17500),new g(192,18600),new g(224,19400),new g(256,19700),new g(320,20500)],ue=T.nearestBitrateFullIndex(_);u.lowerlimit=ie[ue].lowpass}function O(u){var _=u.internal_flags,ie=32,ue=-1;if(_.lowpass1>0){for(var Se=999,Ae=0;Ae<=31;Ae++){var Me=Ae/31;Me>=_.lowpass2&&(ie=Math.min(ie,Ae)),_.lowpass1<Me&&Me<_.lowpass2&&(Se=Math.min(Se,Ae))}Se==999?_.lowpass1=(ie-.75)/31:_.lowpass1=(Se-.75)/31,_.lowpass2=ie/31}if(_.highpass2>0&&_.highpass2<.9*(.75/31)&&(_.highpass1=0,_.highpass2=0,$c.err.println(`Warning: highpass filter disabled. highpass frequency too small
14
- `)),_.highpass2>0){for(var ge=-1,Ae=0;Ae<=31;Ae++){var Me=Ae/31;Me<=_.highpass1&&(ue=Math.max(ue,Ae)),_.highpass1<Me&&Me<_.highpass2&&(ge=Math.max(ge,Ae))}_.highpass1=ue/31,ge==-1?_.highpass2=(ue+.75)/31:_.highpass2=(ge+.75)/31}for(var Ae=0;Ae<32;Ae++){var Fe,Ce,Me=Ae/31;_.highpass2>_.highpass1?Fe=p((_.highpass2-Me)/(_.highpass2-_.highpass1+1e-20)):Fe=1,_.lowpass2>_.lowpass1?Ce=p((Me-_.lowpass1)/(_.lowpass2-_.lowpass1+1e-20)):Ce=1,_.amp_filter[Ae]=Fe*Ce}}function y(u){var _=u.internal_flags;switch(u.quality){default:case 9:_.psymodel=0,_.noise_shaping=0,_.noise_shaping_amp=0,_.noise_shaping_stop=0,_.use_best_huffman=0,_.full_outer_loop=0;break;case 8:u.quality=7;case 7:_.psymodel=1,_.noise_shaping=0,_.noise_shaping_amp=0,_.noise_shaping_stop=0,_.use_best_huffman=0,_.full_outer_loop=0;break;case 6:_.psymodel=1,_.noise_shaping==0&&(_.noise_shaping=1),_.noise_shaping_amp=0,_.noise_shaping_stop=0,_.subblock_gain==-1&&(_.subblock_gain=1),_.use_best_huffman=0,_.full_outer_loop=0;break;case 5:_.psymodel=1,_.noise_shaping==0&&(_.noise_shaping=1),_.noise_shaping_amp=0,_.noise_shaping_stop=0,_.subblock_gain==-1&&(_.subblock_gain=1),_.use_best_huffman=0,_.full_outer_loop=0;break;case 4:_.psymodel=1,_.noise_shaping==0&&(_.noise_shaping=1),_.noise_shaping_amp=0,_.noise_shaping_stop=0,_.subblock_gain==-1&&(_.subblock_gain=1),_.use_best_huffman=1,_.full_outer_loop=0;break;case 3:_.psymodel=1,_.noise_shaping==0&&(_.noise_shaping=1),_.noise_shaping_amp=1,_.noise_shaping_stop=1,_.subblock_gain==-1&&(_.subblock_gain=1),_.use_best_huffman=1,_.full_outer_loop=0;break;case 2:_.psymodel=1,_.noise_shaping==0&&(_.noise_shaping=1),_.substep_shaping==0&&(_.substep_shaping=2),_.noise_shaping_amp=1,_.noise_shaping_stop=1,_.subblock_gain==-1&&(_.subblock_gain=1),_.use_best_huffman=1,_.full_outer_loop=0;break;case 1:_.psymodel=1,_.noise_shaping==0&&(_.noise_shaping=1),_.substep_shaping==0&&(_.substep_shaping=2),_.noise_shaping_amp=2,_.noise_shaping_stop=1,_.subblock_gain==-1&&(_.subblock_gain=1),_.use_best_huffman=1,_.full_outer_loop=0;break;case 0:_.psymodel=1,_.noise_shaping==0&&(_.noise_shaping=1),_.substep_shaping==0&&(_.substep_shaping=2),_.noise_shaping_amp=2,_.noise_shaping_stop=1,_.subblock_gain==-1&&(_.subblock_gain=1),_.use_best_huffman=1,_.full_outer_loop=0;break}}function c(u){var _=u.internal_flags;u.frameNum=0,u.write_id3tag_automatic&&le.id3tag_write_v2(u),_.bitrate_stereoMode_Hist=u0([16,4+1]),_.bitrate_blockType_Hist=u0([16,4+1+1]),_.PeakSample=0,u.bWriteVbrTag&&U.InitVbrTag(u)}this.lame_init_params=function(u){var _=u.internal_flags;if(_.Class_ID=0,_.ATH==null&&(_.ATH=new Oc),_.PSY==null&&(_.PSY=new q),_.rgdata==null&&(_.rgdata=new Lc),_.channels_in=u.num_channels,_.channels_in==1&&(u.mode=yt.MONO),_.channels_out=u.mode==yt.MONO?1:2,_.mode_ext=E.MPG_MD_MS_LR,u.mode==yt.MONO&&(u.force_ms=!1),u.VBR==rt.vbr_off&&u.VBR_mean_bitrate_kbps!=128&&u.brate==0&&(u.brate=u.VBR_mean_bitrate_kbps),u.VBR==rt.vbr_off||u.VBR==rt.vbr_mtrh||u.VBR==rt.vbr_mt||(u.free_format=!1),u.VBR==rt.vbr_off&&u.brate==0&&Qr.EQ(u.compression_ratio,0)&&(u.compression_ratio=11.025),u.VBR==rt.vbr_off&&u.compression_ratio>0&&(u.out_samplerate==0&&(u.out_samplerate=map2MP3Frequency(int(.97*u.in_samplerate))),u.brate=0|u.out_samplerate*16*_.channels_out/(1e3*u.compression_ratio),_.samplerate_index=I(u.out_samplerate,u),u.free_format||(u.brate=V(u.brate,u.version,u.out_samplerate))),u.out_samplerate!=0&&(u.out_samplerate<16e3?(u.VBR_mean_bitrate_kbps=Math.max(u.VBR_mean_bitrate_kbps,8),u.VBR_mean_bitrate_kbps=Math.min(u.VBR_mean_bitrate_kbps,64)):u.out_samplerate<32e3?(u.VBR_mean_bitrate_kbps=Math.max(u.VBR_mean_bitrate_kbps,8),u.VBR_mean_bitrate_kbps=Math.min(u.VBR_mean_bitrate_kbps,160)):(u.VBR_mean_bitrate_kbps=Math.max(u.VBR_mean_bitrate_kbps,32),u.VBR_mean_bitrate_kbps=Math.min(u.VBR_mean_bitrate_kbps,320))),u.lowpassfreq==0){var ie=16e3;switch(u.VBR){case rt.vbr_off:{var ue=new a;l(ue,u.brate),ie=ue.lowerlimit;break}case rt.vbr_abr:{var ue=new a;l(ue,u.VBR_mean_bitrate_kbps),ie=ue.lowerlimit;break}case rt.vbr_rh:{var Se=[19500,19e3,18600,18e3,17500,16e3,15600,14900,12500,1e4,3950];if(0<=u.VBR_q&&u.VBR_q<=9){var Ae=Se[u.VBR_q],Me=Se[u.VBR_q+1],ge=u.VBR_q_frac;ie=linear_int(Ae,Me,ge)}else ie=19500;break}default:{var Se=[19500,19e3,18500,18e3,17500,16500,15500,14500,12500,9500,3950];if(0<=u.VBR_q&&u.VBR_q<=9){var Ae=Se[u.VBR_q],Me=Se[u.VBR_q+1],ge=u.VBR_q_frac;ie=linear_int(Ae,Me,ge)}else ie=19500}}u.mode==yt.MONO&&(u.VBR==rt.vbr_off||u.VBR==rt.vbr_abr)&&(ie*=1.5),u.lowpassfreq=ie|0}if(u.out_samplerate==0&&(2*u.lowpassfreq>u.in_samplerate&&(u.lowpassfreq=u.in_samplerate/2),u.out_samplerate=m(u.lowpassfreq|0,u.in_samplerate)),u.lowpassfreq=Math.min(20500,u.lowpassfreq),u.lowpassfreq=Math.min(u.out_samplerate/2,u.lowpassfreq),u.VBR==rt.vbr_off&&(u.compression_ratio=u.out_samplerate*16*_.channels_out/(1e3*u.brate)),u.VBR==rt.vbr_abr&&(u.compression_ratio=u.out_samplerate*16*_.channels_out/(1e3*u.VBR_mean_bitrate_kbps)),u.bWriteVbrTag||(u.findReplayGain=!1,u.decode_on_the_fly=!1,_.findPeakSample=!1),_.findReplayGain=u.findReplayGain,_.decode_on_the_fly=u.decode_on_the_fly,_.decode_on_the_fly&&(_.findPeakSample=!0),_.findReplayGain&&$.InitGainAnalysis(_.rgdata,u.out_samplerate)==Aa.INIT_GAIN_ANALYSIS_ERROR)return u.internal_flags=null,-6;switch(_.decode_on_the_fly&&!u.decode_only&&(_.hip!=null&&M.hip_decode_exit(_.hip),_.hip=M.hip_decode_init()),_.mode_gr=u.out_samplerate<=24e3?1:2,u.framesize=576*_.mode_gr,u.encoder_delay=E.ENCDELAY,_.resample_ratio=u.in_samplerate/u.out_samplerate,u.VBR){case rt.vbr_mt:case rt.vbr_rh:case rt.vbr_mtrh:{var Fe=[5.7,6.5,7.3,8.2,10,11.9,13,14,15,16.5];u.compression_ratio=Fe[u.VBR_q]}break;case rt.vbr_abr:u.compression_ratio=u.out_samplerate*16*_.channels_out/(1e3*u.VBR_mean_bitrate_kbps);break;default:u.compression_ratio=u.out_samplerate*16*_.channels_out/(1e3*u.brate);break}if(u.mode==yt.NOT_SET&&(u.mode=yt.JOINT_STEREO),u.highpassfreq>0?(_.highpass1=2*u.highpassfreq,u.highpasswidth>=0?_.highpass2=2*(u.highpassfreq+u.highpasswidth):_.highpass2=(1+0)*2*u.highpassfreq,_.highpass1/=u.out_samplerate,_.highpass2/=u.out_samplerate):(_.highpass1=0,_.highpass2=0),u.lowpassfreq>0?(_.lowpass2=2*u.lowpassfreq,u.lowpasswidth>=0?(_.lowpass1=2*(u.lowpassfreq-u.lowpasswidth),_.lowpass1<0&&(_.lowpass1=0)):_.lowpass1=(1-0)*2*u.lowpassfreq,_.lowpass1/=u.out_samplerate,_.lowpass2/=u.out_samplerate):(_.lowpass1=0,_.lowpass2=0),O(u),_.samplerate_index=I(u.out_samplerate,u),_.samplerate_index<0)return u.internal_flags=null,-1;if(u.VBR==rt.vbr_off){if(u.free_format)_.bitrate_index=0;else if(u.brate=V(u.brate,u.version,u.out_samplerate),_.bitrate_index=A(u.brate,u.version,u.out_samplerate),_.bitrate_index<=0)return u.internal_flags=null,-1}else _.bitrate_index=1;u.analysis&&(u.bWriteVbrTag=!1),_.pinfo!=null&&(u.bWriteVbrTag=!1),he.init_bit_stream_w(_);for(var Ce=_.samplerate_index+3*u.version+6*(u.out_samplerate<16e3?1:0),Re=0;Re<E.SBMAX_l+1;Re++)_.scalefac_band.l[Re]=se.sfBandIndex[Ce].l[Re];for(var Re=0;Re<E.PSFB21+1;Re++){var Ye=(_.scalefac_band.l[22]-_.scalefac_band.l[21])/E.PSFB21,it=_.scalefac_band.l[21]+Re*Ye;_.scalefac_band.psfb21[Re]=it}_.scalefac_band.psfb21[E.PSFB21]=576;for(var Re=0;Re<E.SBMAX_s+1;Re++)_.scalefac_band.s[Re]=se.sfBandIndex[Ce].s[Re];for(var Re=0;Re<E.PSFB12+1;Re++){var Ye=(_.scalefac_band.s[13]-_.scalefac_band.s[12])/E.PSFB12,it=_.scalefac_band.s[12]+Re*Ye;_.scalefac_band.psfb12[Re]=it}_.scalefac_band.psfb12[E.PSFB12]=192,u.version==1?_.sideinfo_len=_.channels_out==1?4+17:4+32:_.sideinfo_len=_.channels_out==1?4+9:4+17,u.error_protection&&(_.sideinfo_len+=2),c(u),_.Class_ID=N;{var Ke;for(Ke=0;Ke<19;Ke++)_.nsPsy.pefirbuf[Ke]=700*_.mode_gr*_.channels_out;u.ATHtype==-1&&(u.ATHtype=4)}switch(Wt(u.VBR_q<=9),Wt(u.VBR_q>=0),u.VBR){case rt.vbr_mt:u.VBR=rt.vbr_mtrh;case rt.vbr_mtrh:{u.useTemporal==null&&(u.useTemporal=!1),Y.apply_preset(u,500-u.VBR_q*10,0),u.quality<0&&(u.quality=LAME_DEFAULT_QUALITY),u.quality<5&&(u.quality=0),u.quality>5&&(u.quality=5),_.PSY.mask_adjust=u.maskingadjust,_.PSY.mask_adjust_short=u.maskingadjust_short,u.experimentalY?_.sfb21_extra=!1:_.sfb21_extra=u.out_samplerate>44e3,_.iteration_loop=new VBRNewIterationLoop(be);break}case rt.vbr_rh:{Y.apply_preset(u,500-u.VBR_q*10,0),_.PSY.mask_adjust=u.maskingadjust,_.PSY.mask_adjust_short=u.maskingadjust_short,u.experimentalY?_.sfb21_extra=!1:_.sfb21_extra=u.out_samplerate>44e3,u.quality>6&&(u.quality=6),u.quality<0&&(u.quality=LAME_DEFAULT_QUALITY),_.iteration_loop=new VBROldIterationLoop(be);break}default:{var at;_.sfb21_extra=!1,u.quality<0&&(u.quality=LAME_DEFAULT_QUALITY),at=u.VBR,at==rt.vbr_off&&(u.VBR_mean_bitrate_kbps=u.brate),Y.apply_preset(u,u.VBR_mean_bitrate_kbps,0),u.VBR=at,_.PSY.mask_adjust=u.maskingadjust,_.PSY.mask_adjust_short=u.maskingadjust_short,at==rt.vbr_off?_.iteration_loop=new Vc(be):_.iteration_loop=new ABRIterationLoop(be);break}}if(Wt(u.scale>=0),u.VBR!=rt.vbr_off){if(_.VBR_min_bitrate=1,_.VBR_max_bitrate=14,u.out_samplerate<16e3&&(_.VBR_max_bitrate=8),u.VBR_min_bitrate_kbps!=0&&(u.VBR_min_bitrate_kbps=V(u.VBR_min_bitrate_kbps,u.version,u.out_samplerate),_.VBR_min_bitrate=A(u.VBR_min_bitrate_kbps,u.version,u.out_samplerate),_.VBR_min_bitrate<0)||u.VBR_max_bitrate_kbps!=0&&(u.VBR_max_bitrate_kbps=V(u.VBR_max_bitrate_kbps,u.version,u.out_samplerate),_.VBR_max_bitrate=A(u.VBR_max_bitrate_kbps,u.version,u.out_samplerate),_.VBR_max_bitrate<0))return-1;u.VBR_min_bitrate_kbps=Ge.bitrate_table[u.version][_.VBR_min_bitrate],u.VBR_max_bitrate_kbps=Ge.bitrate_table[u.version][_.VBR_max_bitrate],u.VBR_mean_bitrate_kbps=Math.min(Ge.bitrate_table[u.version][_.VBR_max_bitrate],u.VBR_mean_bitrate_kbps),u.VBR_mean_bitrate_kbps=Math.max(Ge.bitrate_table[u.version][_.VBR_min_bitrate],u.VBR_mean_bitrate_kbps)}return u.tune&&(_.PSY.mask_adjust+=u.tune_value_a,_.PSY.mask_adjust_short+=u.tune_value_a),y(u),Wt(u.scale>=0),u.athaa_type<0?_.ATH.useAdjust=3:_.ATH.useAdjust=u.athaa_type,_.ATH.aaSensitivityP=Math.pow(10,u.athaa_sensitivity/-10),u.short_blocks==null&&(u.short_blocks=Os.short_block_allowed),u.short_blocks==Os.short_block_allowed&&(u.mode==yt.JOINT_STEREO||u.mode==yt.STEREO)&&(u.short_blocks=Os.short_block_coupled),u.quant_comp<0&&(u.quant_comp=1),u.quant_comp_short<0&&(u.quant_comp_short=0),u.msfix<0&&(u.msfix=0),u.exp_nspsytune=u.exp_nspsytune|1,u.internal_flags.nsPsy.attackthre<0&&(u.internal_flags.nsPsy.attackthre=Vr.NSATTACKTHRE),u.internal_flags.nsPsy.attackthre_s<0&&(u.internal_flags.nsPsy.attackthre_s=Vr.NSATTACKTHRE_S),Wt(u.scale>=0),u.scale<0&&(u.scale=1),u.ATHtype<0&&(u.ATHtype=4),u.ATHcurve<0&&(u.ATHcurve=4),u.athaa_loudapprox<0&&(u.athaa_loudapprox=2),u.interChRatio<0&&(u.interChRatio=0),u.useTemporal==null&&(u.useTemporal=!0),_.slot_lag=_.frac_SpF=0,u.VBR==rt.vbr_off&&(_.slot_lag=_.frac_SpF=(u.version+1)*72e3*u.brate%u.out_samplerate|0),se.iteration_init(u),ye.psymodel_init(u),Wt(u.scale>=0),0};function d(u,_){(u.in_buffer_0==null||u.in_buffer_nsamples<_)&&(u.in_buffer_0=xi(_),u.in_buffer_1=xi(_),u.in_buffer_nsamples=_)}this.lame_encode_flush=function(u,_,ie,ue){var Se=u.internal_flags,Ae=Yc([2,1152]),Me=0,ge,Fe,Ce,Re,Ye=Se.mf_samples_to_encode-E.POSTDELAY,it=v(u);if(Se.mf_samples_to_encode<1)return 0;for(ge=0,u.in_samplerate!=u.out_samplerate&&(Ye+=16*u.out_samplerate/u.in_samplerate),Ce=u.framesize-Ye%u.framesize,Ce<576&&(Ce+=u.framesize),u.encoder_padding=Ce,Re=(Ye+Ce)/u.framesize;Re>0&&Me>=0;){var Ke=it-Se.mf_size,at=u.frameNum;Ke*=u.in_samplerate,Ke/=u.out_samplerate,Ke>1152&&(Ke=1152),Ke<1&&(Ke=1),Fe=ue-ge,ue==0&&(Fe=0),Me=this.lame_encode_buffer(u,Ae[0],Ae[1],Ke,_,ie,Fe),ie+=Me,ge+=Me,Re-=at!=u.frameNum?1:0}if(Se.mf_samples_to_encode=0,Me<0||(Fe=ue-ge,ue==0&&(Fe=0),he.flush_bitstream(u),Me=he.copy_buffer(Se,_,ie,Fe,1),Me<0))return Me;if(ie+=Me,ge+=Me,Fe=ue-ge,ue==0&&(Fe=0),u.write_id3tag_automatic){if(le.id3tag_write_v1(u),Me=he.copy_buffer(Se,_,ie,Fe,0),Me<0)return Me;ge+=Me}return ge},this.lame_encode_buffer=function(u,_,ie,ue,Se,Ae,Me){var ge=u.internal_flags,Fe=[null,null];if(ge.Class_ID!=N)return-3;if(ue==0)return 0;d(ge,ue),Fe[0]=ge.in_buffer_0,Fe[1]=ge.in_buffer_1;for(var Ce=0;Ce<ue;Ce++)Fe[0][Ce]=_[Ce],ge.channels_in>1&&(Fe[1][Ce]=ie[Ce]);return s(u,Fe[0],Fe[1],ue,Se,Ae,Me)};function v(u){var _=E.BLKSIZE+u.framesize-E.FFTOFFSET;return _=Math.max(_,512+u.framesize-32),Wt(Qe.MFSIZE>=_),_}function s(u,_,ie,ue,Se,Ae,Me){var ge=u.internal_flags,Fe=0,Ce,Re,Ye,it,Ke,at=[null,null],ft=[null,null];if(ge.Class_ID!=N)return-3;if(ue==0)return 0;if(Ke=he.copy_buffer(ge,Se,Ae,Me,0),Ke<0)return Ke;if(Ae+=Ke,Fe+=Ke,ft[0]=_,ft[1]=ie,Qr.NEQ(u.scale,0)&&Qr.NEQ(u.scale,1))for(Re=0;Re<ue;++Re)ft[0][Re]*=u.scale,ge.channels_out==2&&(ft[1][Re]*=u.scale);if(Qr.NEQ(u.scale_left,0)&&Qr.NEQ(u.scale_left,1))for(Re=0;Re<ue;++Re)ft[0][Re]*=u.scale_left;if(Qr.NEQ(u.scale_right,0)&&Qr.NEQ(u.scale_right,1))for(Re=0;Re<ue;++Re)ft[1][Re]*=u.scale_right;if(u.num_channels==2&&ge.channels_out==1)for(Re=0;Re<ue;++Re)ft[0][Re]=.5*(ft[0][Re]+ft[1][Re]),ft[1][Re]=0;it=v(u),at[0]=ge.mfbuf[0],at[1]=ge.mfbuf[1];for(var mt=0;ue>0;){var Mt=[null,null],kr=0,Ht=0;Mt[0]=ft[0],Mt[1]=ft[1];var Ut=new b;if(de(u,at,Mt,mt,ue,Ut),kr=Ut.n_in,Ht=Ut.n_out,ge.findReplayGain&&!ge.decode_on_the_fly&&$.AnalyzeSamples(ge.rgdata,at[0],ge.mf_size,at[1],ge.mf_size,Ht,ge.channels_out)==Aa.GAIN_ANALYSIS_ERROR)return-6;if(ue-=kr,mt+=kr,ge.channels_out==2,ge.mf_size+=Ht,Wt(ge.mf_size<=Qe.MFSIZE),ge.mf_samples_to_encode<1&&(ge.mf_samples_to_encode=E.ENCDELAY+E.POSTDELAY),ge.mf_samples_to_encode+=Ht,ge.mf_size>=it){var _r=Me-Fe;if(Me==0&&(_r=0),Ce=h(u,at[0],at[1],Se,Ae,_r),Ce<0)return Ce;for(Ae+=Ce,Fe+=Ce,ge.mf_size-=u.framesize,ge.mf_samples_to_encode-=u.framesize,Ye=0;Ye<ge.channels_out;Ye++)for(Re=0;Re<ge.mf_size;Re++)at[Ye][Re]=at[Ye][Re+u.framesize]}}return Wt(ue==0),Fe}function h(u,_,ie,ue,Se,Ae){var Me=T.enc.lame_encode_mp3_frame(u,_,ie,ue,Se,Ae);return u.frameNum++,Me}function b(){this.n_in=0,this.n_out=0}function S(){this.num_used=0}function j(u,_){return _!=0?j(_,u%_):u}function L(u,_,ie){var ue=Math.PI*_;u/=ie,u<0&&(u=0),u>1&&(u=1);var Se=u-.5,Ae=.42-.5*Math.cos(2*u*Math.PI)+.08*Math.cos(4*u*Math.PI);return Math.abs(Se)<1e-9?ue/Math.PI:Ae*Math.sin(ie*ue*Se)/(Math.PI*ie*Se)}function H(u,_,ie,ue,Se,Ae,Me,ge,Fe){var Ce=u.internal_flags,Re,Ye=0,it,Ke=u.out_samplerate/j(u.out_samplerate,u.in_samplerate);Ke>Qe.BPC&&(Ke=Qe.BPC);var at=Math.abs(Ce.resample_ratio-Math.floor(.5+Ce.resample_ratio))<1e-4?1:0,ft=1/Ce.resample_ratio;ft>1&&(ft=1);var mt=31;mt%2==0&&--mt,mt+=at;var Mt=mt+1;if(Ce.fill_buffer_resample_init==0){for(Ce.inbuf_old[0]=xi(Mt),Ce.inbuf_old[1]=xi(Mt),Re=0;Re<=2*Ke;++Re)Ce.blackfilt[Re]=xi(Mt);for(Ce.itime[0]=0,Ce.itime[1]=0,Ye=0;Ye<=2*Ke;Ye++){var kr=0,Ht=(Ye-Ke)/(2*Ke);for(Re=0;Re<=mt;Re++)kr+=Ce.blackfilt[Ye][Re]=L(Re-Ht,ft,mt);for(Re=0;Re<=mt;Re++)Ce.blackfilt[Ye][Re]/=kr}Ce.fill_buffer_resample_init=1}var Ut=Ce.inbuf_old[Fe];for(it=0;it<ue;it++){var _r,gi;if(_r=it*Ce.resample_ratio,Ye=0|Math.floor(_r-Ce.itime[Fe]),mt+Ye-mt/2>=Me)break;var Ht=_r-Ce.itime[Fe]-(Ye+.5*(mt%2));Wt(Math.abs(Ht)<=.501),gi=0|Math.floor(Ht*2*Ke+Ke+.5);var Ti=0;for(Re=0;Re<=mt;++Re){var pr=Re+Ye-mt/2,Lt;Wt(pr<Me),Wt(pr+Mt>=0),Lt=pr<0?Ut[Mt+pr]:Se[Ae+pr],Ti+=Lt*Ce.blackfilt[gi][Re]}_[ie+it]=Ti}if(ge.num_used=Math.min(Me,mt+Ye-mt/2),Ce.itime[Fe]+=ge.num_used-it*Ce.resample_ratio,ge.num_used>=Mt)for(Re=0;Re<Mt;Re++)Ut[Re]=Se[Ae+ge.num_used+Re-Mt];else{var ei=Mt-ge.num_used;for(Re=0;Re<ei;++Re)Ut[Re]=Ut[Re+ge.num_used];for(Ye=0;Re<Mt;++Re,++Ye)Ut[Re]=Se[Ae+Ye];Wt(Ye==ge.num_used)}return it}function de(u,_,ie,ue,Se,Ae){var Me=u.internal_flags;if(Me.resample_ratio<.9999||Me.resample_ratio>1.0001)for(var ge=0;ge<Me.channels_out;ge++){var Fe=new S;Ae.n_out=H(u,_[ge],Me.mf_size,u.framesize,ie[ge],ue,Se,Fe,ge),Ae.n_in=Fe.num_used}else{Ae.n_out=Math.min(u.framesize,Se),Ae.n_in=Ae.n_out;for(var Ce=0;Ce<Ae.n_out;++Ce)_[0][Me.mf_size+Ce]=ie[0][ue+Ce],Me.channels_out==2&&(_[1][Me.mf_size+Ce]=ie[1][ue+Ce])}}}var Wc=bt,Tr=te.VbrMode;function Kc(){function T(U,ae,le,M,q,a,g,N,C,p,m,I,V,A,l){this.vbr_q=U,this.quant_comp=ae,this.quant_comp_s=le,this.expY=M,this.st_lrm=q,this.st_s=a,this.masking_adj=g,this.masking_adj_short=N,this.ath_lower=C,this.ath_curve=p,this.ath_sensitivity=m,this.interch=I,this.safejoint=V,this.sfb21mod=A,this.msfix=l}function G(U,ae,le,M,q,a,g,N,C,p,m,I,V,A){this.quant_comp=ae,this.quant_comp_s=le,this.safejoint=M,this.nsmsfix=q,this.st_lrm=a,this.st_s=g,this.nsbass=N,this.scale=C,this.masking_adj=p,this.ath_lower=m,this.ath_curve=I,this.interch=V,this.sfscale=A}var J;this.setModules=function(U){J=U};var $=[new T(0,9,9,0,5.2,125,-4.2,-6.3,4.8,1,0,0,2,21,.97),new T(1,9,9,0,5.3,125,-3.6,-5.6,4.5,1.5,0,0,2,21,1.35),new T(2,9,9,0,5.6,125,-2.2,-3.5,2.8,2,0,0,2,21,1.49),new T(3,9,9,1,5.8,130,-1.8,-2.8,2.6,3,-4,0,2,20,1.64),new T(4,9,9,1,6,135,-.7,-1.1,1.1,3.5,-8,0,2,0,1.79),new T(5,9,9,1,6.4,140,.5,.4,-7.5,4,-12,2e-4,0,0,1.95),new T(6,9,9,1,6.6,145,.67,.65,-14.7,6.5,-19,4e-4,0,0,2.3),new T(7,9,9,1,6.6,145,.8,.75,-19.7,8,-22,6e-4,0,0,2.7),new T(8,9,9,1,6.6,145,1.2,1.15,-27.5,10,-23,7e-4,0,0,0),new T(9,9,9,1,6.6,145,1.6,1.6,-36,11,-25,8e-4,0,0,0),new T(10,9,9,1,6.6,145,2,2,-36,12,-25,8e-4,0,0,0)],he=[new T(0,9,9,0,4.2,25,-7,-4,7.5,1,0,0,2,26,.97),new T(1,9,9,0,4.2,25,-5.6,-3.6,4.5,1.5,0,0,2,21,1.35),new T(2,9,9,0,4.2,25,-4.4,-1.8,2,2,0,0,2,18,1.49),new T(3,9,9,1,4.2,25,-3.4,-1.25,1.1,3,-4,0,2,15,1.64),new T(4,9,9,1,4.2,25,-2.2,.1,0,3.5,-8,0,2,0,1.79),new T(5,9,9,1,4.2,25,-1,1.65,-7.7,4,-12,2e-4,0,0,1.95),new T(6,9,9,1,4.2,25,-0,2.47,-7.7,6.5,-19,4e-4,0,0,2),new T(7,9,9,1,4.2,25,.5,2,-14.5,8,-22,6e-4,0,0,2),new T(8,9,9,1,4.2,25,1,2.4,-22,10,-23,7e-4,0,0,2),new T(9,9,9,1,4.2,25,1.5,2.95,-30,11,-25,8e-4,0,0,2),new T(10,9,9,1,4.2,25,2,2.95,-36,12,-30,8e-4,0,0,2)];function Y(U,ae,le){var M=U.VBR==Tr.vbr_rh?$:he,q=U.VBR_q_frac,a=M[ae],g=M[ae+1],N=a;a.st_lrm=a.st_lrm+q*(g.st_lrm-a.st_lrm),a.st_s=a.st_s+q*(g.st_s-a.st_s),a.masking_adj=a.masking_adj+q*(g.masking_adj-a.masking_adj),a.masking_adj_short=a.masking_adj_short+q*(g.masking_adj_short-a.masking_adj_short),a.ath_lower=a.ath_lower+q*(g.ath_lower-a.ath_lower),a.ath_curve=a.ath_curve+q*(g.ath_curve-a.ath_curve),a.ath_sensitivity=a.ath_sensitivity+q*(g.ath_sensitivity-a.ath_sensitivity),a.interch=a.interch+q*(g.interch-a.interch),a.msfix=a.msfix+q*(g.msfix-a.msfix),ye(U,N.vbr_q),le!=0?U.quant_comp=N.quant_comp:Math.abs(U.quant_comp- -1)>0||(U.quant_comp=N.quant_comp),le!=0?U.quant_comp_short=N.quant_comp_s:Math.abs(U.quant_comp_short- -1)>0||(U.quant_comp_short=N.quant_comp_s),N.expY!=0&&(U.experimentalY=N.expY!=0),le!=0?U.internal_flags.nsPsy.attackthre=N.st_lrm:Math.abs(U.internal_flags.nsPsy.attackthre- -1)>0||(U.internal_flags.nsPsy.attackthre=N.st_lrm),le!=0?U.internal_flags.nsPsy.attackthre_s=N.st_s:Math.abs(U.internal_flags.nsPsy.attackthre_s- -1)>0||(U.internal_flags.nsPsy.attackthre_s=N.st_s),le!=0?U.maskingadjust=N.masking_adj:Math.abs(U.maskingadjust-0)>0||(U.maskingadjust=N.masking_adj),le!=0?U.maskingadjust_short=N.masking_adj_short:Math.abs(U.maskingadjust_short-0)>0||(U.maskingadjust_short=N.masking_adj_short),le!=0?U.ATHlower=-N.ath_lower/10:Math.abs(-U.ATHlower*10-0)>0||(U.ATHlower=-N.ath_lower/10),le!=0?U.ATHcurve=N.ath_curve:Math.abs(U.ATHcurve- -1)>0||(U.ATHcurve=N.ath_curve),le!=0?U.athaa_sensitivity=N.ath_sensitivity:Math.abs(U.athaa_sensitivity- -1)>0||(U.athaa_sensitivity=N.ath_sensitivity),N.interch>0&&(le!=0?U.interChRatio=N.interch:Math.abs(U.interChRatio- -1)>0||(U.interChRatio=N.interch)),N.safejoint>0&&(U.exp_nspsytune=U.exp_nspsytune|N.safejoint),N.sfb21mod>0&&(U.exp_nspsytune=U.exp_nspsytune|N.sfb21mod<<20),le!=0?U.msfix=N.msfix:Math.abs(U.msfix- -1)>0||(U.msfix=N.msfix),le==0&&(U.VBR_q=ae,U.VBR_q_frac=q)}var se=[new G(8,9,9,0,0,6.6,145,0,.95,0,-30,11,.0012,1),new G(16,9,9,0,0,6.6,145,0,.95,0,-25,11,.001,1),new G(24,9,9,0,0,6.6,145,0,.95,0,-20,11,.001,1),new G(32,9,9,0,0,6.6,145,0,.95,0,-15,11,.001,1),new G(40,9,9,0,0,6.6,145,0,.95,0,-10,11,9e-4,1),new G(48,9,9,0,0,6.6,145,0,.95,0,-10,11,9e-4,1),new G(56,9,9,0,0,6.6,145,0,.95,0,-6,11,8e-4,1),new G(64,9,9,0,0,6.6,145,0,.95,0,-2,11,8e-4,1),new G(80,9,9,0,0,6.6,145,0,.95,0,0,8,7e-4,1),new G(96,9,9,0,2.5,6.6,145,0,.95,0,1,5.5,6e-4,1),new G(112,9,9,0,2.25,6.6,145,0,.95,0,2,4.5,5e-4,1),new G(128,9,9,0,1.95,6.4,140,0,.95,0,3,4,2e-4,1),new G(160,9,9,1,1.79,6,135,0,.95,-2,5,3.5,0,1),new G(192,9,9,1,1.49,5.6,125,0,.97,-4,7,3,0,0),new G(224,9,9,1,1.25,5.2,125,0,.98,-6,9,2,0,0),new G(256,9,9,1,.97,5.2,125,0,1,-8,10,1,0,0),new G(320,9,9,1,.9,5.2,125,0,1,-10,12,0,0,0)];function be(U,ae,le){var M=ae,q=J.nearestBitrateFullIndex(ae);if(U.VBR=Tr.vbr_abr,U.VBR_mean_bitrate_kbps=M,U.VBR_mean_bitrate_kbps=Math.min(U.VBR_mean_bitrate_kbps,320),U.VBR_mean_bitrate_kbps=Math.max(U.VBR_mean_bitrate_kbps,8),U.brate=U.VBR_mean_bitrate_kbps,U.VBR_mean_bitrate_kbps>320&&(U.disable_reservoir=!0),se[q].safejoint>0&&(U.exp_nspsytune=U.exp_nspsytune|2),se[q].sfscale>0&&(U.internal_flags.noise_shaping=2),Math.abs(se[q].nsbass)>0){var a=int(se[q].nsbass*4);a<0&&(a+=64),U.exp_nspsytune=U.exp_nspsytune|a<<2}return le!=0?U.quant_comp=se[q].quant_comp:Math.abs(U.quant_comp- -1)>0||(U.quant_comp=se[q].quant_comp),le!=0?U.quant_comp_short=se[q].quant_comp_s:Math.abs(U.quant_comp_short- -1)>0||(U.quant_comp_short=se[q].quant_comp_s),le!=0?U.msfix=se[q].nsmsfix:Math.abs(U.msfix- -1)>0||(U.msfix=se[q].nsmsfix),le!=0?U.internal_flags.nsPsy.attackthre=se[q].st_lrm:Math.abs(U.internal_flags.nsPsy.attackthre- -1)>0||(U.internal_flags.nsPsy.attackthre=se[q].st_lrm),le!=0?U.internal_flags.nsPsy.attackthre_s=se[q].st_s:Math.abs(U.internal_flags.nsPsy.attackthre_s- -1)>0||(U.internal_flags.nsPsy.attackthre_s=se[q].st_s),le!=0?U.scale=se[q].scale:Math.abs(U.scale- -1)>0||(U.scale=se[q].scale),le!=0?U.maskingadjust=se[q].masking_adj:Math.abs(U.maskingadjust-0)>0||(U.maskingadjust=se[q].masking_adj),se[q].masking_adj>0?le!=0?U.maskingadjust_short=se[q].masking_adj*.9:Math.abs(U.maskingadjust_short-0)>0||(U.maskingadjust_short=se[q].masking_adj*.9):le!=0?U.maskingadjust_short=se[q].masking_adj*1.1:Math.abs(U.maskingadjust_short-0)>0||(U.maskingadjust_short=se[q].masking_adj*1.1),le!=0?U.ATHlower=-se[q].ath_lower/10:Math.abs(-U.ATHlower*10-0)>0||(U.ATHlower=-se[q].ath_lower/10),le!=0?U.ATHcurve=se[q].ath_curve:Math.abs(U.ATHcurve- -1)>0||(U.ATHcurve=se[q].ath_curve),le!=0?U.interChRatio=se[q].interch:Math.abs(U.interChRatio- -1)>0||(U.interChRatio=se[q].interch),ae}this.apply_preset=function(U,ae,le){switch(ae){case Ze.R3MIX:{ae=Ze.V3,U.VBR=Tr.vbr_mtrh;break}case Ze.MEDIUM:{ae=Ze.V4,U.VBR=Tr.vbr_rh;break}case Ze.MEDIUM_FAST:{ae=Ze.V4,U.VBR=Tr.vbr_mtrh;break}case Ze.STANDARD:{ae=Ze.V2,U.VBR=Tr.vbr_rh;break}case Ze.STANDARD_FAST:{ae=Ze.V2,U.VBR=Tr.vbr_mtrh;break}case Ze.EXTREME:{ae=Ze.V0,U.VBR=Tr.vbr_rh;break}case Ze.EXTREME_FAST:{ae=Ze.V0,U.VBR=Tr.vbr_mtrh;break}case Ze.INSANE:return ae=320,U.preset=ae,be(U,ae,le),U.VBR=Tr.vbr_off,ae}switch(U.preset=ae,ae){case Ze.V9:return Y(U,9,le),ae;case Ze.V8:return Y(U,8,le),ae;case Ze.V7:return Y(U,7,le),ae;case Ze.V6:return Y(U,6,le),ae;case Ze.V5:return Y(U,5,le),ae;case Ze.V4:return Y(U,4,le),ae;case Ze.V3:return Y(U,3,le),ae;case Ze.V2:return Y(U,2,le),ae;case Ze.V1:return Y(U,1,le),ae;case Ze.V0:return Y(U,0,le),ae;default:break}return 8<=ae&&ae<=320?be(U,ae,le):(U.preset=0,ae)};function ye(U,ae){var le=0;return 0>ae&&(le=-1,ae=0),9<ae&&(le=-1,ae=9),U.VBR_q=ae,U.VBR_q_frac=0,le}}var Zc=Kc;function Qc(){var T,G;this.setModules=function(J,$){T=J,G=$}}var Jc=Qc;function eu(){this.over_noise=0,this.tot_noise=0,this.max_noise=0,this.over_count=0,this.over_SSD=0,this.bits=0}var Ps=eu,d0=te.new_float,tu=te.new_int;function ru(){this.global_gain=0,this.sfb_count1=0,this.step=tu(39),this.noise=d0(39),this.noise_log=d0(39)}var iu=ru,Jr=te.System,h0=te.VbrMode,Ls=te.Util,Gi=te.Arrays,ya=te.new_float,or=te.assert;function au(){var T;this.rv=null;var G;this.qupvt=null;var J,$=new Jc,he;this.setModules=function(C,p,m,I){T=C,G=p,this.rv=p,J=m,this.qupvt=m,he=I,$.setModules(J,he)},this.ms_convert=function(C,p){for(var m=0;m<576;++m){var I=C.tt[p][0].xr[m],V=C.tt[p][1].xr[m];C.tt[p][0].xr[m]=(I+V)*(Ls.SQRT2*.5),C.tt[p][1].xr[m]=(I-V)*(Ls.SQRT2*.5)}};function Y(C,p,m,I){I=0;for(var V=0;V<=m;++V){var A=Math.abs(C.xr[V]);I+=A,p[V]=Math.sqrt(A*Math.sqrt(A)),p[V]>C.xrpow_max&&(C.xrpow_max=p[V])}return I}this.init_xrpow=function(C,p,m){var I=0,V=0|p.max_nonzero_coeff;if(or(m!=null),p.xrpow_max=0,or(0<=V&&V<=575),Gi.fill(m,V,576,0),I=Y(p,m,V,I),I>1e-20){var A=0;(C.substep_shaping&2)!=0&&(A=1);for(var l=0;l<p.psymax;l++)C.pseudohalf[l]=A;return!0}return Gi.fill(p.l3_enc,0,576,0),!1};function se(C,p){var m=C.ATH,I=p.xr;if(p.block_type!=E.SHORT_TYPE)for(var V=!1,A=E.PSFB21-1;A>=0&&!V;A--){var l=C.scalefac_band.psfb21[A],O=C.scalefac_band.psfb21[A+1],y=J.athAdjust(m.adjust,m.psfb21[A],m.floor);C.nsPsy.longfact[21]>1e-12&&(y*=C.nsPsy.longfact[21]);for(var c=O-1;c>=l;c--)if(Math.abs(I[c])<y)I[c]=0;else{V=!0;break}}else for(var d=0;d<3;d++)for(var V=!1,A=E.PSFB12-1;A>=0&&!V;A--){var l=C.scalefac_band.s[12]*3+(C.scalefac_band.s[13]-C.scalefac_band.s[12])*d+(C.scalefac_band.psfb12[A]-C.scalefac_band.psfb12[0]),O=l+(C.scalefac_band.psfb12[A+1]-C.scalefac_band.psfb12[A]),v=J.athAdjust(m.adjust,m.psfb12[A],m.floor);C.nsPsy.shortfact[12]>1e-12&&(v*=C.nsPsy.shortfact[12]);for(var c=O-1;c>=l;c--)if(Math.abs(I[c])<v)I[c]=0;else{V=!0;break}}}this.init_outer_loop=function(C,p){p.part2_3_length=0,p.big_values=0,p.count1=0,p.global_gain=210,p.scalefac_compress=0,p.table_select[0]=0,p.table_select[1]=0,p.table_select[2]=0,p.subblock_gain[0]=0,p.subblock_gain[1]=0,p.subblock_gain[2]=0,p.subblock_gain[3]=0,p.region0_count=0,p.region1_count=0,p.preflag=0,p.scalefac_scale=0,p.count1table_select=0,p.part2_length=0,p.sfb_lmax=E.SBPSY_l,p.sfb_smin=E.SBPSY_s,p.psy_lmax=C.sfb21_extra?E.SBMAX_l:E.SBPSY_l,p.psymax=p.psy_lmax,p.sfbmax=p.sfb_lmax,p.sfbdivide=11;for(var m=0;m<E.SBMAX_l;m++)p.width[m]=C.scalefac_band.l[m+1]-C.scalefac_band.l[m],p.window[m]=3;if(p.block_type==E.SHORT_TYPE){var I=ya(576);p.sfb_smin=0,p.sfb_lmax=0,p.mixed_block_flag!=0&&(p.sfb_smin=3,p.sfb_lmax=C.mode_gr*2+4),p.psymax=p.sfb_lmax+3*((C.sfb21_extra?E.SBMAX_s:E.SBPSY_s)-p.sfb_smin),p.sfbmax=p.sfb_lmax+3*(E.SBPSY_s-p.sfb_smin),p.sfbdivide=p.sfbmax-18,p.psy_lmax=p.sfb_lmax;var V=C.scalefac_band.l[p.sfb_lmax];Jr.arraycopy(p.xr,0,I,0,576);for(var m=p.sfb_smin;m<E.SBMAX_s;m++)for(var A=C.scalefac_band.s[m],l=C.scalefac_band.s[m+1],O=0;O<3;O++)for(var y=A;y<l;y++)p.xr[V++]=I[3*y+O];for(var c=p.sfb_lmax,m=p.sfb_smin;m<E.SBMAX_s;m++)p.width[c]=p.width[c+1]=p.width[c+2]=C.scalefac_band.s[m+1]-C.scalefac_band.s[m],p.window[c]=0,p.window[c+1]=1,p.window[c+2]=2,c+=3}p.count1bits=0,p.sfb_partition_table=J.nr_of_sfb_block[0][0],p.slen[0]=0,p.slen[1]=0,p.slen[2]=0,p.slen[3]=0,p.max_nonzero_coeff=575,Gi.fill(p.scalefac,0),se(C,p)};function be(C){this.ordinal=C}be.BINSEARCH_NONE=new be(0),be.BINSEARCH_UP=new be(1),be.BINSEARCH_DOWN=new be(2);function ye(C,p,m,I,V){var A,l=C.CurrentStep[I],O=!1,y=C.OldValue[I],c=be.BINSEARCH_NONE;for(p.global_gain=y,m-=p.part2_length,or(l!=0);;){var d;if(A=he.count_bits(C,V,p,null),l==1||A==m)break;A>m?(c==be.BINSEARCH_DOWN&&(O=!0),O&&(l/=2),c=be.BINSEARCH_UP,d=l):(c==be.BINSEARCH_UP&&(O=!0),O&&(l/=2),c=be.BINSEARCH_DOWN,d=-l),p.global_gain+=d,p.global_gain<0&&(p.global_gain=0,O=!0),p.global_gain>255&&(p.global_gain=255,O=!0)}for(or(p.global_gain>=0),or(p.global_gain<256);A>m&&p.global_gain<255;)p.global_gain++,A=he.count_bits(C,V,p,null);return C.CurrentStep[I]=y-p.global_gain>=4?4:2,C.OldValue[I]=p.global_gain,p.part2_3_length=A,A}this.trancate_smallspectrums=function(C,p,m,I){var V=ya(Ur.SFBMAX);if(!((C.substep_shaping&4)==0&&p.block_type==E.SHORT_TYPE||(C.substep_shaping&128)!=0)){J.calc_noise(p,m,V,new Ps,null);for(var l=0;l<576;l++){var A=0;p.l3_enc[l]!=0&&(A=Math.abs(p.xr[l])),I[l]=A}var l=0,O=8;p.block_type==E.SHORT_TYPE&&(O=6);do{var y,c,d,v,s=p.width[O];if(l+=s,!(V[O]>=1)&&(Gi.sort(I,l-s,s),!zr.EQ(I[l-1],0))){y=(1-V[O])*m[O],c=0,v=0;do{var h;for(d=1;v+d<s&&!zr.NEQ(I[v+l-s],I[v+l+d-s]);d++);if(h=I[v+l-s]*I[v+l-s]*d,y<h){v!=0&&(c=I[v+l-s-1]);break}y-=h,v+=d}while(v<s);if(!zr.EQ(c,0))do Math.abs(p.xr[l-s])<=c&&(p.l3_enc[l-s]=0);while(--s>0)}}while(++O<p.psymax);p.part2_3_length=he.noquant_count_bits(C,p,null)}};function U(C){for(var p=0;p<C.sfbmax;p++)if(C.scalefac[p]+C.subblock_gain[C.window[p]]==0)return!1;return!0}function ae(C){return Ls.FAST_LOG10(.368+.632*C*C*C)}function le(C,p){for(var m=1e-37,I=0;I<p.psymax;I++)m+=ae(C[I]);return Math.max(1e-20,m)}function M(C,p,m,I,V){var A;switch(C){default:case 9:{p.over_count>0?(A=m.over_SSD<=p.over_SSD,m.over_SSD==p.over_SSD&&(A=m.bits<p.bits)):A=m.max_noise<0&&m.max_noise*10+m.bits<=p.max_noise*10+p.bits;break}case 0:A=m.over_count<p.over_count||m.over_count==p.over_count&&m.over_noise<p.over_noise||m.over_count==p.over_count&&zr.EQ(m.over_noise,p.over_noise)&&m.tot_noise<p.tot_noise;break;case 8:m.max_noise=le(V,I);case 1:A=m.max_noise<p.max_noise;break;case 2:A=m.tot_noise<p.tot_noise;break;case 3:A=m.tot_noise<p.tot_noise&&m.max_noise<p.max_noise;break;case 4:A=m.max_noise<=0&&p.max_noise>.2||m.max_noise<=0&&p.max_noise<0&&p.max_noise>m.max_noise-.2&&m.tot_noise<p.tot_noise||m.max_noise<=0&&p.max_noise>0&&p.max_noise>m.max_noise-.2&&m.tot_noise<p.tot_noise+p.over_noise||m.max_noise>0&&p.max_noise>-.05&&p.max_noise>m.max_noise-.1&&m.tot_noise+m.over_noise<p.tot_noise+p.over_noise||m.max_noise>0&&p.max_noise>-.1&&p.max_noise>m.max_noise-.15&&m.tot_noise+m.over_noise+m.over_noise<p.tot_noise+p.over_noise+p.over_noise;break;case 5:A=m.over_noise<p.over_noise||zr.EQ(m.over_noise,p.over_noise)&&m.tot_noise<p.tot_noise;break;case 6:A=m.over_noise<p.over_noise||zr.EQ(m.over_noise,p.over_noise)&&(m.max_noise<p.max_noise||zr.EQ(m.max_noise,p.max_noise)&&m.tot_noise<=p.tot_noise);break;case 7:A=m.over_count<p.over_count||m.over_noise<p.over_noise;break}return p.over_count==0&&(A=A&&m.bits<p.bits),A}function q(C,p,m,I,V){var A=C.internal_flags,l;p.scalefac_scale==0?l=1.2968395546510096:l=1.6817928305074292;for(var O=0,y=0;y<p.sfbmax;y++)O<m[y]&&(O=m[y]);var c=A.noise_shaping_amp;switch(c==3&&(V?c=2:c=1),c){case 2:break;case 1:O>1?O=Math.pow(O,.5):O*=.95;break;case 0:default:O>1?O=1:O*=.95;break}for(var d=0,y=0;y<p.sfbmax;y++){var v=p.width[y],s;if(d+=v,!(m[y]<O)){if((A.substep_shaping&2)!=0&&(A.pseudohalf[y]=A.pseudohalf[y]==0?1:0,A.pseudohalf[y]==0&&A.noise_shaping_amp==2))return;for(p.scalefac[y]++,s=-v;s<0;s++)I[d+s]*=l,I[d+s]>p.xrpow_max&&(p.xrpow_max=I[d+s]);if(A.noise_shaping_amp==2)return}}}function a(C,p){for(var m=1.2968395546510096,I=0,V=0;V<C.sfbmax;V++){var A=C.width[V],l=C.scalefac[V];if(C.preflag!=0&&(l+=J.pretab[V]),I+=A,(l&1)!=0){l++;for(var O=-A;O<0;O++)p[I+O]*=m,p[I+O]>C.xrpow_max&&(C.xrpow_max=p[I+O])}C.scalefac[V]=l>>1}C.preflag=0,C.scalefac_scale=1}function g(C,p,m){var I,V=p.scalefac;for(I=0;I<p.sfb_lmax;I++)if(V[I]>=16)return!0;for(var A=0;A<3;A++){var l=0,O=0;for(I=p.sfb_lmax+A;I<p.sfbdivide;I+=3)l<V[I]&&(l=V[I]);for(;I<p.sfbmax;I+=3)O<V[I]&&(O=V[I]);if(!(l<16&&O<8)){if(p.subblock_gain[A]>=7)return!0;p.subblock_gain[A]++;var y=C.scalefac_band.l[p.sfb_lmax];for(I=p.sfb_lmax+A;I<p.sfbmax;I+=3){var c,d=p.width[I],v=V[I];if(or(v>=0),v=v-(4>>p.scalefac_scale),v>=0){V[I]=v,y+=d*3;continue}V[I]=0;{var s=210+(v<<p.scalefac_scale+1);c=J.IPOW20(s)}y+=d*(A+1);for(var h=-d;h<0;h++)m[y+h]*=c,m[y+h]>p.xrpow_max&&(p.xrpow_max=m[y+h]);y+=d*(3-A-1)}{var c=J.IPOW20(202);y+=p.width[I]*(A+1);for(var h=-p.width[I];h<0;h++)m[y+h]*=c,m[y+h]>p.xrpow_max&&(p.xrpow_max=m[y+h])}}}return!1}function N(C,p,m,I,V){var A=C.internal_flags;q(C,p,m,I,V);var l=U(p);return l?!1:(A.mode_gr==2?l=he.scale_bitcount(p):l=he.scale_bitcount_lsf(A,p),l?(A.noise_shaping>1&&(Gi.fill(A.pseudohalf,0),p.scalefac_scale==0?(a(p,I),l=!1):p.block_type==E.SHORT_TYPE&&A.subblock_gain>0&&(l=g(A,p,I)||U(p))),l||(A.mode_gr==2?l=he.scale_bitcount(p):l=he.scale_bitcount_lsf(A,p)),!l):!0)}this.outer_loop=function(C,p,m,I,V,A){var l=C.internal_flags,O=new vi,y=ya(576),c=ya(Ur.SFBMAX),d=new Ps,v,s=new iu,h=9999999,b=!1,S=!1,j=0;if(ye(l,p,A,V,I),l.noise_shaping==0)return 100;J.calc_noise(p,m,c,d,s),d.bits=p.part2_3_length,O.assign(p);var L=0;for(Jr.arraycopy(I,0,y,0,576);!b;){do{var H=new Ps,de,u=255;if((l.substep_shaping&2)!=0?de=20:de=3,l.sfb21_extra&&(c[O.sfbmax]>1||O.block_type==E.SHORT_TYPE&&(c[O.sfbmax+1]>1||c[O.sfbmax+2]>1))||!N(C,O,c,I,S))break;O.scalefac_scale!=0&&(u=254);var _=A-O.part2_length;if(_<=0)break;for(;(O.part2_3_length=he.count_bits(l,I,O,s))>_&&O.global_gain<=u;)O.global_gain++;if(O.global_gain>u)break;if(d.over_count==0){for(;(O.part2_3_length=he.count_bits(l,I,O,s))>h&&O.global_gain<=u;)O.global_gain++;if(O.global_gain>u)break}if(J.calc_noise(O,m,c,H,s),H.bits=O.part2_3_length,p.block_type!=E.SHORT_TYPE?v=C.quant_comp:v=C.quant_comp_short,v=M(v,d,H,O,c)?1:0,v!=0)h=p.part2_3_length,d=H,p.assign(O),L=0,Jr.arraycopy(I,0,y,0,576);else if(l.full_outer_loop==0&&(++L>de&&d.over_count==0||l.noise_shaping_amp==3&&S&&L>30||l.noise_shaping_amp==3&&S&&O.global_gain-j>15))break}while(O.global_gain+O.scalefac_scale<255);l.noise_shaping_amp==3?S?b=!0:(O.assign(p),Jr.arraycopy(y,0,I,0,576),L=0,j=O.global_gain,S=!0):b=!0}return or(p.global_gain+p.scalefac_scale<=255),C.VBR==h0.vbr_rh||C.VBR==h0.vbr_mtrh?Jr.arraycopy(y,0,I,0,576):(l.substep_shaping&1)!=0&&trancate_smallspectrums(l,p,m,I),d.over_count},this.iteration_finish_one=function(C,p,m){var I=C.l3_side,V=I.tt[p][m];he.best_scalefac_store(C,p,m,I),C.use_best_huffman==1&&he.best_huffman_divide(C,V),G.ResvAdjust(C,V)},this.VBR_encode_granule=function(C,p,m,I,V,A,l){var O=C.internal_flags,y=new vi,c=ya(576),d=l,v=l+1,s=(l+A)/2,h,b,S=0,j=O.sfb21_extra;or(d<=LameInternalFlags.MAX_BITS_PER_CHANNEL),Gi.fill(y.l3_enc,0);do or(s>=A),or(s<=l),or(A<=l),s>d-42?O.sfb21_extra=!1:O.sfb21_extra=j,b=outer_loop(C,p,m,I,V,s),b<=0?(S=1,v=p.part2_3_length,y.assign(p),Jr.arraycopy(I,0,c,0,576),l=v-32,h=l-A,s=(l+A)/2):(A=s+32,h=l-A,s=(l+A)/2,S!=0&&(S=2,p.assign(y),Jr.arraycopy(c,0,I,0,576)));while(h>12);O.sfb21_extra=j,S==2&&Jr.arraycopy(y.l3_enc,0,p.l3_enc,0,576),or(p.part2_3_length<=d)},this.get_framebits=function(C,p){var m=C.internal_flags;m.bitrate_index=m.VBR_min_bitrate;var I=T.getframebits(C);m.bitrate_index=1,I=T.getframebits(C);for(var V=1;V<=m.VBR_max_bitrate;V++){m.bitrate_index=V;var A=new MeanBits(I);p[V]=G.ResvFrameBegin(C,A),I=A.bits}},this.VBR_old_prepare=function(C,p,m,I,V,A,l,O,y){var c=C.internal_flags,d,v=0,s=1,h=0;c.bitrate_index=c.VBR_max_bitrate;var b=G.ResvFrameBegin(C,new MeanBits(0))/c.mode_gr;get_framebits(C,A);for(var S=0;S<c.mode_gr;S++){var j=J.on_pe(C,p,O[S],b,S,0);c.mode_ext==E.MPG_MD_MS_LR&&(ms_convert(c.l3_side,S),J.reduce_side(O[S],m[S],b,j));for(var L=0;L<c.channels_out;++L){var H=c.l3_side.tt[S][L];H.block_type!=E.SHORT_TYPE?(v=1.28/(1+Math.exp(3.5-p[S][L]/300))-.05,d=c.PSY.mask_adjust-v):(v=2.56/(1+Math.exp(3.5-p[S][L]/300))-.14,d=c.PSY.mask_adjust_short-v),c.masking_lower=Math.pow(10,d*.1),init_outer_loop(c,H),y[S][L]=J.calc_xmin(C,I[S][L],H,V[S][L]),y[S][L]!=0&&(s=0),l[S][L]=126,h+=O[S][L]}}for(var S=0;S<c.mode_gr;S++)for(var L=0;L<c.channels_out;L++)h>A[c.VBR_max_bitrate]&&(O[S][L]*=A[c.VBR_max_bitrate],O[S][L]/=h),l[S][L]>O[S][L]&&(l[S][L]=O[S][L]);return s},this.bitpressure_strategy=function(C,p,m,I){for(var V=0;V<C.mode_gr;V++)for(var A=0;A<C.channels_out;A++){for(var l=C.l3_side.tt[V][A],O=p[V][A],y=0,c=0;c<l.psy_lmax;c++)O[y++]*=1+.029*c*c/E.SBMAX_l/E.SBMAX_l;if(l.block_type==E.SHORT_TYPE)for(var c=l.sfb_smin;c<E.SBMAX_s;c++)O[y++]*=1+.029*c*c/E.SBMAX_s/E.SBMAX_s,O[y++]*=1+.029*c*c/E.SBMAX_s/E.SBMAX_s,O[y++]*=1+.029*c*c/E.SBMAX_s/E.SBMAX_s;I[V][A]=0|Math.max(m[V][A],.9*I[V][A])}},this.VBR_new_prepare=function(C,p,m,I,V,A){var l=C.internal_flags,O=1,y=0,c=0,d;if(C.free_format){l.bitrate_index=0;var v=new MeanBits(y);d=G.ResvFrameBegin(C,v),y=v.bits,V[0]=d}else{l.bitrate_index=l.VBR_max_bitrate;var v=new MeanBits(y);G.ResvFrameBegin(C,v),y=v.bits,get_framebits(C,V),d=V[l.VBR_max_bitrate]}for(var s=0;s<l.mode_gr;s++){J.on_pe(C,p,A[s],y,s,0),l.mode_ext==E.MPG_MD_MS_LR&&ms_convert(l.l3_side,s);for(var h=0;h<l.channels_out;++h){var b=l.l3_side.tt[s][h];l.masking_lower=Math.pow(10,l.PSY.mask_adjust*.1),init_outer_loop(l,b),J.calc_xmin(C,m[s][h],b,I[s][h])!=0&&(O=0),c+=A[s][h]}}for(var s=0;s<l.mode_gr;s++)for(var h=0;h<l.channels_out;h++)c>d&&(A[s][h]*=d,A[s][h]/=c);return O},this.calc_target_bits=function(C,p,m,I,V,A){var l=C.internal_flags,O=l.l3_side,y,c,d,v,s=0;l.bitrate_index=l.VBR_max_bitrate;var h=new MeanBits(s);for(A[0]=G.ResvFrameBegin(C,h),s=h.bits,l.bitrate_index=1,s=T.getframebits(C)-l.sideinfo_len*8,V[0]=s/(l.mode_gr*l.channels_out),s=C.VBR_mean_bitrate_kbps*C.framesize*1e3,(l.substep_shaping&1)!=0&&(s*=1.09),s/=C.out_samplerate,s-=l.sideinfo_len*8,s/=l.mode_gr*l.channels_out,y=.93+.07*(11-C.compression_ratio)/(11-5.5),y<.9&&(y=.9),y>1&&(y=1),c=0;c<l.mode_gr;c++){var b=0;for(d=0;d<l.channels_out;d++){if(I[c][d]=int(y*s),p[c][d]>700){var S=int((p[c][d]-700)/1.4),j=O.tt[c][d];I[c][d]=int(y*s),j.block_type==E.SHORT_TYPE&&S<s/2&&(S=s/2),S>s*3/2?S=s*3/2:S<0&&(S=0),I[c][d]+=S}I[c][d]>LameInternalFlags.MAX_BITS_PER_CHANNEL&&(I[c][d]=LameInternalFlags.MAX_BITS_PER_CHANNEL),b+=I[c][d]}if(b>LameInternalFlags.MAX_BITS_PER_GRANULE)for(d=0;d<l.channels_out;++d)I[c][d]*=LameInternalFlags.MAX_BITS_PER_GRANULE,I[c][d]/=b}if(l.mode_ext==E.MPG_MD_MS_LR)for(c=0;c<l.mode_gr;c++)J.reduce_side(I[c],m[c],s*l.channels_out,LameInternalFlags.MAX_BITS_PER_GRANULE);for(v=0,c=0;c<l.mode_gr;c++)for(d=0;d<l.channels_out;d++)I[c][d]>LameInternalFlags.MAX_BITS_PER_CHANNEL&&(I[c][d]=LameInternalFlags.MAX_BITS_PER_CHANNEL),v+=I[c][d];if(v>A[0])for(c=0;c<l.mode_gr;c++)for(d=0;d<l.channels_out;d++)I[c][d]*=A[0],I[c][d]/=v}}var nu=au,un=te.assert;function su(){var T;this.setModules=function(G){T=G},this.ResvFrameBegin=function(G,J){var $=G.internal_flags,he,Y=$.l3_side,se=T.getframebits(G);J.bits=(se-$.sideinfo_len*8)/$.mode_gr;var be=8*256*$.mode_gr-8;G.brate>320?he=8*int(G.brate*1e3/(G.out_samplerate/1152)/8+.5):(he=8*1440,G.strict_ISO&&(he=8*int(32e4/(G.out_samplerate/1152)/8+.5))),$.ResvMax=he-se,$.ResvMax>be&&($.ResvMax=be),($.ResvMax<0||G.disable_reservoir)&&($.ResvMax=0);var ye=J.bits*$.mode_gr+Math.min($.ResvSize,$.ResvMax);return ye>he&&(ye=he),un($.ResvMax%8==0),un($.ResvMax>=0),Y.resvDrain_pre=0,$.pinfo!=null&&($.pinfo.mean_bits=J.bits/2,$.pinfo.resvsize=$.ResvSize),ye},this.ResvMaxBits=function(G,J,$,he){var Y=G.internal_flags,se,be=Y.ResvSize,ye=Y.ResvMax;he!=0&&(be+=J),(Y.substep_shaping&1)!=0&&(ye*=.9),$.bits=J,be*10>ye*9?(se=be-ye*9/10,$.bits+=se,Y.substep_shaping|=128):(se=0,Y.substep_shaping&=127,!G.disable_reservoir&&(Y.substep_shaping&1)==0&&($.bits-=.1*J));var U=be<Y.ResvMax*6/10?be:Y.ResvMax*6/10;return U-=se,U<0&&(U=0),U},this.ResvAdjust=function(G,J){G.ResvSize-=J.part2_3_length+J.part2_length},this.ResvFrameEnd=function(G,J){var $,he=G.l3_side;G.ResvSize+=J*G.mode_gr;var Y=0;he.resvDrain_post=0,he.resvDrain_pre=0,($=G.ResvSize%8)!=0&&(Y+=$),$=G.ResvSize-Y-G.ResvMax,$>0&&(un($%8==0),un($>=0),Y+=$);{var se=Math.min(he.main_data_begin*8,Y)/8;he.resvDrain_pre+=8*se,Y-=8*se,G.ResvSize-=8*se,he.main_data_begin-=se}he.resvDrain_post+=Y,G.ResvSize-=Y}}var ou=su;function lu(){var T="http://www.mp3dev.org/",G=3,J=98,$=4,he=0,Y=93;this.getLameVersion=function(){return G+"."+J+"."+$},this.getLameShortVersion=function(){return G+"."+J+"."+$},this.getLameVeryShortVersion=function(){return"LAME"+G+"."+J+"r"},this.getPsyVersion=function(){return he+"."+Y},this.getLameUrl=function(){return T},this.getLameOsBitness=function(){return"32bits"}}var cu=lu,uu=te.System,Ns=te.VbrMode,f0=te.ShortBlock,du=te.Arrays,dn=te.new_byte,hu=te.assert;Sa.NUMTOCENTRIES=100,Sa.MAXFRAMESIZE=2880;function Sa(){var T,G,J;this.setModules=function(s,h,b){T=s,G=h,J=b};var $=1,he=2,Y=4,se=8,be=Sa.NUMTOCENTRIES,ye=Sa.MAXFRAMESIZE,U=be+4+4+4+4+4,ae=U+9+1+1+8+1+1+3+1+1+2+4+2+2,le=128,M=64,q=32,a=null,g="Xing",N="Info",C=[0,49345,49537,320,49921,960,640,49729,50689,1728,1920,51009,1280,50625,50305,1088,52225,3264,3456,52545,3840,53185,52865,3648,2560,51905,52097,2880,51457,2496,2176,51265,55297,6336,6528,55617,6912,56257,55937,6720,7680,57025,57217,8e3,56577,7616,7296,56385,5120,54465,54657,5440,55041,6080,5760,54849,53761,4800,4992,54081,4352,53697,53377,4160,61441,12480,12672,61761,13056,62401,62081,12864,13824,63169,63361,14144,62721,13760,13440,62529,15360,64705,64897,15680,65281,16320,16e3,65089,64001,15040,15232,64321,14592,63937,63617,14400,10240,59585,59777,10560,60161,11200,10880,59969,60929,11968,12160,61249,11520,60865,60545,11328,58369,9408,9600,58689,9984,59329,59009,9792,8704,58049,58241,9024,57601,8640,8320,57409,40961,24768,24960,41281,25344,41921,41601,25152,26112,42689,42881,26432,42241,26048,25728,42049,27648,44225,44417,27968,44801,28608,28288,44609,43521,27328,27520,43841,26880,43457,43137,26688,30720,47297,47489,31040,47873,31680,31360,47681,48641,32448,32640,48961,32e3,48577,48257,31808,46081,29888,30080,46401,30464,47041,46721,30272,29184,45761,45953,29504,45313,29120,28800,45121,20480,37057,37249,20800,37633,21440,21120,37441,38401,22208,22400,38721,21760,38337,38017,21568,39937,23744,23936,40257,24320,40897,40577,24128,23040,39617,39809,23360,39169,22976,22656,38977,34817,18624,18816,35137,19200,35777,35457,19008,19968,36545,36737,20288,36097,19904,19584,35905,17408,33985,34177,17728,34561,18368,18048,34369,33281,17088,17280,33601,16640,33217,32897,16448];function p(s,h){if(s.nVbrNumFrames++,s.sum+=h,s.seen++,!(s.seen<s.want)&&(s.pos<s.size&&(s.bag[s.pos]=s.sum,s.pos++,s.seen=0),s.pos==s.size)){for(var b=1;b<s.size;b+=2)s.bag[b/2]=s.bag[b];s.want*=2,s.pos/=2}}function m(s,h){if(!(s.pos<=0))for(var b=1;b<be;++b){var S=b/be,j,L,H=0|Math.floor(S*s.pos);H>s.pos-1&&(H=s.pos-1),j=s.bag[H],L=s.sum;var de=0|256*j/L;de>255&&(de=255),h[b]=255&de}}this.addVbrFrame=function(s){var h=s.internal_flags,b=Tables.bitrate_table[s.version][h.bitrate_index];hu(h.VBR_seek_table.bag!=null),p(h.VBR_seek_table,b)};function I(s,h){var b=s[h+0]&255;return b<<=8,b|=s[h+1]&255,b<<=8,b|=s[h+2]&255,b<<=8,b|=s[h+3]&255,b}function V(s,h,b){s[h+0]=255&(b>>24&255),s[h+1]=255&(b>>16&255),s[h+2]=255&(b>>8&255),s[h+3]=255&(b&255)}function A(s,h,b){s[h+0]=255&(b>>8&255),s[h+1]=255&(b&255)}function l(s,h){return new String(s,h,g.length(),a).equals(g)||new String(s,h,N.length(),a).equals(N)}function O(s,h,b){return 255&(s<<h|b&~(-1<<h))}function y(s,h){var b=s.internal_flags;h[0]=O(h[0],8,255),h[1]=O(h[1],3,7),h[1]=O(h[1],1,s.out_samplerate<16e3?0:1),h[1]=O(h[1],1,s.version),h[1]=O(h[1],2,4-3),h[1]=O(h[1],1,s.error_protection?0:1),h[2]=O(h[2],4,b.bitrate_index),h[2]=O(h[2],2,b.samplerate_index),h[2]=O(h[2],1,0),h[2]=O(h[2],1,s.extension),h[3]=O(h[3],2,s.mode.ordinal()),h[3]=O(h[3],2,b.mode_ext),h[3]=O(h[3],1,s.copyright),h[3]=O(h[3],1,s.original),h[3]=O(h[3],2,s.emphasis),h[0]=255;var S=255&(h[1]&241),j;s.version==1?j=le:s.out_samplerate<16e3?j=q:j=M,s.VBR==Ns.vbr_off&&(j=s.brate);var L;s.free_format?L=0:L=255&16*T.BitrateIndex(j,s.version,s.out_samplerate),s.version==1?(h[1]=255&(S|10),S=255&(h[2]&13),h[2]=255&(L|S)):(h[1]=255&(S|2),S=255&(h[2]&13),h[2]=255&(L|S))}this.getVbrTag=function(s){var h=new VBRTagData,b=0;h.flags=0;var S=s[b+1]>>3&1,j=s[b+2]>>2&3,L=s[b+3]>>6&3,H=s[b+2]>>4&15;if(H=Tables.bitrate_table[S][H],s[b+1]>>4==14?h.samprate=Tables.samplerate_table[2][j]:h.samprate=Tables.samplerate_table[S][j],S!=0?L!=3?b+=32+4:b+=17+4:L!=3?b+=17+4:b+=9+4,!l(s,b))return null;b+=4,h.hId=S;var de=h.flags=I(s,b);if(b+=4,(de&$)!=0&&(h.frames=I(s,b),b+=4),(de&he)!=0&&(h.bytes=I(s,b),b+=4),(de&Y)!=0){if(h.toc!=null)for(var u=0;u<be;u++)h.toc[u]=s[b+u];b+=be}h.vbrScale=-1,(de&se)!=0&&(h.vbrScale=I(s,b),b+=4),h.headersize=(S+1)*72e3*H/h.samprate,b+=21;var _=s[b+0]<<4;_+=s[b+1]>>4;var ie=(s[b+1]&15)<<8;return ie+=s[b+2]&255,(_<0||_>3e3)&&(_=-1),(ie<0||ie>3e3)&&(ie=-1),h.encDelay=_,h.encPadding=ie,h},this.InitVbrTag=function(s){var h=s.internal_flags,b;s.version==1?b=le:s.out_samplerate<16e3?b=q:b=M,s.VBR==Ns.vbr_off&&(b=s.brate);var S=(s.version+1)*72e3*b/s.out_samplerate,j=h.sideinfo_len+ae;if(h.VBR_seek_table.TotalFrameSize=S,S<j||S>ye){s.bWriteVbrTag=!1;return}h.VBR_seek_table.nVbrNumFrames=0,h.VBR_seek_table.nBytesWritten=0,h.VBR_seek_table.sum=0,h.VBR_seek_table.seen=0,h.VBR_seek_table.want=1,h.VBR_seek_table.pos=0,h.VBR_seek_table.bag==null&&(h.VBR_seek_table.bag=new int[400],h.VBR_seek_table.size=400);var L=dn(ye);y(s,L);for(var H=h.VBR_seek_table.TotalFrameSize,de=0;de<H;++de)G.add_dummy_byte(s,L[de]&255,1)};function c(s,h){var b=h^s;return h=h>>8^C[b&255],h}this.updateMusicCRC=function(s,h,b,S){for(var j=0;j<S;++j)s[0]=c(h[b+j],s[0])};function d(s,h,b,S,j){var L=s.internal_flags,H=0,de=s.encoder_delay,u=s.encoder_padding,_=100-10*s.VBR_q-s.quality,ie=J.getLameVeryShortVersion(),ue,Se=0,Ae,Me=[1,5,3,2,4,0,3],ge=0|(s.lowpassfreq/100+.5>255?255:s.lowpassfreq/100+.5),Fe=0,Ce=0,Re=0,Ye=s.internal_flags.noise_shaping,it=0,Ke=0,at=0,ft=0,mt=0,Mt=(s.exp_nspsytune&1)!=0,kr=(s.exp_nspsytune&2)!=0,Ht=!1,Ut=!1,_r=s.internal_flags.nogap_total,gi=s.internal_flags.nogap_current,Ti=s.ATHtype,pr=0,Lt;switch(s.VBR){case vbr_abr:Lt=s.VBR_mean_bitrate_kbps;break;case vbr_off:Lt=s.brate;break;default:Lt=s.VBR_min_bitrate_kbps}switch(s.VBR.ordinal()<Me.length?ue=Me[s.VBR.ordinal()]:ue=0,Ae=16*Se+ue,L.findReplayGain&&(L.RadioGain>510&&(L.RadioGain=510),L.RadioGain<-510&&(L.RadioGain=-510),Ce=8192,Ce|=3072,L.RadioGain>=0?Ce|=L.RadioGain:(Ce|=512,Ce|=-L.RadioGain)),L.findPeakSample&&(Fe=Math.abs(0|L.PeakSample/32767*Math.pow(2,23)+.5)),_r!=-1&&(gi>0&&(Ut=!0),gi<_r-1&&(Ht=!0)),pr=Ti+((Mt?1:0)<<4)+((kr?1:0)<<5)+((Ht?1:0)<<6)+((Ut?1:0)<<7),_<0&&(_=0),s.mode){case MONO:it=0;break;case STEREO:it=1;break;case DUAL_CHANNEL:it=2;break;case JOINT_STEREO:s.force_ms?it=4:it=3;break;case NOT_SET:default:it=7;break}s.in_samplerate<=32e3?at=0:s.in_samplerate==48e3?at=2:s.in_samplerate>48e3?at=3:at=1,(s.short_blocks==f0.short_block_forced||s.short_blocks==f0.short_block_dispensed||s.lowpassfreq==-1&&s.highpassfreq==-1||s.scale_left<s.scale_right||s.scale_left>s.scale_right||s.disable_reservoir&&s.brate<320||s.noATH||s.ATHonly||Ti==0||s.in_samplerate<=32e3)&&(Ke=1),ft=Ye+(it<<2)+(Ke<<5)+(at<<6),mt=L.nMusicCRC,V(b,S+H,_),H+=4;for(var ei=0;ei<9;ei++)b[S+H+ei]=255&ie.charAt(ei);H+=9,b[S+H]=255&Ae,H++,b[S+H]=255&ge,H++,V(b,S+H,Fe),H+=4,A(b,S+H,Ce),H+=2,A(b,S+H,Re),H+=2,b[S+H]=255&pr,H++,Lt>=255?b[S+H]=255:b[S+H]=255&Lt,H++,b[S+H]=255&de>>4,b[S+H+1]=255&(de<<4)+(u>>8),b[S+H+2]=255&u,H+=3,b[S+H]=255&ft,H++,b[S+H++]=0,A(b,S+H,s.preset),H+=2,V(b,S+H,h),H+=4,A(b,S+H,mt),H+=2;for(var wa=0;wa<H;wa++)j=c(b[S+wa],j);return A(b,S+H,j),H+=2,H}function v(s){s.seek(0);var h=dn(10);s.readFully(h);var b;return new String(h,"ISO-8859-1").startsWith("ID3")?b=0:b=((h[6]&127)<<21|(h[7]&127)<<14|(h[8]&127)<<7|h[9]&127)+h.length,b}this.getLameTagFrame=function(s,h){var b=s.internal_flags;if(!s.bWriteVbrTag||b.Class_ID!=Ze.LAME_ID||b.VBR_seek_table.pos<=0)return 0;if(h.length<b.VBR_seek_table.TotalFrameSize)return b.VBR_seek_table.TotalFrameSize;du.fill(h,0,b.VBR_seek_table.TotalFrameSize,0),y(s,h);var S=dn(be);if(s.free_format)for(var j=1;j<be;++j)S[j]=255&255*j/100;else m(b.VBR_seek_table,S);var L=b.sideinfo_len;s.error_protection&&(L-=2),s.VBR==Ns.vbr_off?(h[L++]=255&N.charAt(0),h[L++]=255&N.charAt(1),h[L++]=255&N.charAt(2),h[L++]=255&N.charAt(3)):(h[L++]=255&g.charAt(0),h[L++]=255&g.charAt(1),h[L++]=255&g.charAt(2),h[L++]=255&g.charAt(3)),V(h,L,$+he+Y+se),L+=4,V(h,L,b.VBR_seek_table.nVbrNumFrames),L+=4;var H=b.VBR_seek_table.nBytesWritten+b.VBR_seek_table.TotalFrameSize;V(h,L,0|H),L+=4,uu.arraycopy(S,0,h,L,S.length),L+=S.length,s.error_protection&&G.CRC_writeheader(b,h);for(var de=0,j=0;j<L;j++)de=c(h[j],de);return L+=d(s,H,h,L,de),b.VBR_seek_table.TotalFrameSize},this.putVbrTag=function(s,h){var b=s.internal_flags;if(b.VBR_seek_table.pos<=0||(h.seek(h.length()),h.length()==0))return-1;var S=v(h);h.seek(S);var j=dn(ye),L=getLameTagFrame(s,j);return L>j.length?-1:(L<1||h.write(j,0,L),0)}}var fu=Sa,m0=te.new_byte,_0=te.assert,Ze=Wc,mu=Zc,Aa=Pt,_u=Zr,pu=nu,vu=Cs,bu=ou,yt=pa,zr=Qr;function yu(){var T,G;this.setModules=function(J,$){T=J,G=$}}function Su(){var T,G,J;this.setModules=function($,he,Y){T=$,G=he,J=Y}}function Au(){}function wu(){var T,G;this.setModules=function(J,$){T=J,G=$}}function Ru(T,G,J){arguments.length!=3&&(console.error("WARN: Mp3Encoder(channels, samplerate, kbps) not specified"),T=1,G=44100,J=128);var $=new Ze,he=new yu,Y=new Aa,se=new zr,be=new mu,ye=new _u,U=new pu,ae=new fu,le=new cu,M=new wu,q=new bu,a=new vu,g=new Su,N=new Au;$.setModules(Y,se,be,ye,U,ae,le,M,N),se.setModules(Y,N,le,ae),M.setModules(se,le),be.setModules($),U.setModules(se,q,ye,a),ye.setModules(a,q,$.enc.psy),q.setModules(se),a.setModules(ye),ae.setModules($,se,le),he.setModules(g,N),g.setModules(le,M,be);var C=$.lame_init();C.num_channels=T,C.in_samplerate=G,C.brate=J,C.mode=yt.STEREO,C.quality=3,C.bWriteVbrTag=!1,C.disable_reservoir=!0,C.write_id3tag_automatic=!1;var p=$.lame_init_params(C);_0(p==0);var m=1152,I=0|1.25*m+7200,V=m0(I);this.encodeBuffer=function(A,l){T==1&&(l=A),_0(A.length==l.length),A.length>m&&(m=A.length,I=0|1.25*m+7200,V=m0(I));var O=$.lame_encode_buffer(C,A,l,A.length,V,0,I);return new Int8Array(V.subarray(0,O))},this.flush=function(){var A=$.lame_encode_flush(C,V,0,I);return new Int8Array(V.subarray(0,A))}}function Mr(){this.dataOffset=0,this.dataLen=0,this.channels=0,this.sampleRate=0}function hn(T){return T.charCodeAt(0)<<24|T.charCodeAt(1)<<16|T.charCodeAt(2)<<8|T.charCodeAt(3)}Mr.RIFF=hn("RIFF"),Mr.WAVE=hn("WAVE"),Mr.fmt_=hn("fmt "),Mr.data=hn("data"),Mr.readHeader=function(T){var G=new Mr,J=T.getUint32(0,!1);if(Mr.RIFF==J){var $=T.getUint32(4,!0);if(Mr.WAVE==T.getUint32(8,!1)&&Mr.fmt_==T.getUint32(12,!1)){var he=T.getUint32(16,!0),Y=16+4;switch(he){case 16:case 18:G.channels=T.getUint16(Y+2,!0),G.sampleRate=T.getUint32(Y+4,!0);break;default:throw"extended fmt chunk not implemented"}Y+=he;for(var se=Mr.data,be=0;se!=J&&(J=T.getUint32(Y,!1),be=T.getUint32(Y+4,!0),se!=J);)Y+=be+8;return G.dataLen=be,G.dataOffset=Y+8,G}}};var Eu=Ru,p0=function(T,G){if(!(T instanceof G))throw new TypeError("Cannot call a class as a function")},v0=function(){function T(G,J){for(var $=0;$<J.length;$++){var he=J[$];he.enumerable=he.enumerable||!1,he.configurable=!0,"value"in he&&(he.writable=!0),Object.defineProperty(G,he.key,he)}}return function(G,J,$){return J&&T(G.prototype,J),$&&T(G,$),G}}(),xu=function(){function T(G){p0(this,T),this.config={sampleRate:44100,bitRate:128},Object.assign(this.config,G),this.mp3Encoder=new Eu(1,this.config.sampleRate,this.config.bitRate),this.maxSamples=1152,this.samplesMono=null,this.clearBuffer()}return v0(T,[{key:"clearBuffer",value:function(){this.dataBuffer=[]}},{key:"appendToBuffer",value:function(J){this.dataBuffer.push(new Int8Array(J))}},{key:"floatTo16BitPCM",value:function(J,$){for(var he=0;he<J.length;he++){var Y=Math.max(-1,Math.min(1,J[he]));$[he]=Y<0?Y*32768:Y*32767}}},{key:"convertBuffer",value:function(J){var $=new Float32Array(J),he=new Int16Array(J.length);return this.floatTo16BitPCM($,he),he}},{key:"encode",value:function(J){this.samplesMono=this.convertBuffer(J);for(var $=this.samplesMono.length,he=0;$>=0;he+=this.maxSamples){var Y=this.samplesMono.subarray(he,he+this.maxSamples),se=this.mp3Encoder.encodeBuffer(Y);this.appendToBuffer(se),$-=this.maxSamples}}},{key:"finish",value:function(){return this.appendToBuffer(this.mp3Encoder.flush()),this.dataBuffer}}]),T}(),gu=function(){function T(G){p0(this,T),this.config={bitRate:128,startRecordingAt:300,deviceId:null},this.activeStream=null,this.context=null,this.microphone=null,this.processor=null,this.startTime=0,Object.assign(this.config,G)}return v0(T,[{key:"addMicrophoneListener",value:function(J){var $=this;this.activeStream=J,this.timerToStart=setTimeout(function(){delete $.timerToStart},this.config.startRecordingAt),this.microphone=this.context.createMediaStreamSource(J),this.processor=this.context.createScriptProcessor(0,1,1),this.processor.onaudioprocess=function(he){$.timerToStart||$.lameEncoder.encode(he.inputBuffer.getChannelData(0))},this.microphone.connect(this.processor),this.processor.connect(this.context.destination)}},{key:"stop",value:function(){return this.processor&&this.microphone&&(this.microphone.disconnect(),this.processor.disconnect(),this.context&&this.context.state!=="closed"&&this.context.close(),this.processor.onaudioprocess=null,this.activeStream.getAudioTracks().forEach(function(J){return J.stop()})),this}},{key:"start",value:function(){var J=this,$=window.AudioContext||window.webkitAudioContext;this.context=new $,this.config.sampleRate=this.context.sampleRate,this.lameEncoder=new xu(this.config);var he=this.config.deviceId?{deviceId:{exact:this.config.deviceId}}:!0;return new Promise(function(Y,se){navigator.mediaDevices.getUserMedia({audio:he}).then(function(be){J.addMicrophoneListener(be),Y(be)}).catch(function(be){se(be)})})}},{key:"getMp3",value:function(){var J=this,$=this.lameEncoder.finish();return new Promise(function(he,Y){$.length===0?Y(new Error("No buffer to send")):(he([$,new Blob($,{type:"audio/mp3"})]),J.lameEncoder.clearBuffer())})}}]),T}();return gu})});async function _n(){try{let e={audio:!0,video:!0};return(await navigator.mediaDevices.getUserMedia(e)).getTracks().forEach(r=>{r.stop()}),!0}catch{return!1}}async function pn(){return new Promise((e,t)=>{let r=window.screen.isExtended;if(r)e(r);else if(navigator.userAgent.indexOf("Firefox")>-1)e(!1);else{let n=[];window.getScreenDetails().then(function(o){n=o,e(n.screens.length>=2)})}})}async function yr(){let e=["OBS","ManyCam","Snap Camera","Virtual"],r=(await navigator.mediaDevices.enumerateDevices()).filter(n=>!e.some(o=>n.deviceId.includes(o)||n.label.includes(o)));return{cameras:r.filter(n=>n.kind=="videoinput"&&n.deviceId).map(n=>({label:n.label||"Generic Device",id:n.deviceId})),microphones:r.filter(n=>n.kind=="audioinput"&&n.deviceId).map(n=>({label:n.label||"Generic Device",id:n.deviceId}))}}var vn=class{constructor(){this.sessionDuration=0;this.state="Created",this.startedAt=new Date,this.alerts=[],this.recordings=[]}get hasSomethingToUpload(){for(let t of this.recordings)if(!t.upload)return!0;return!1}start(){this.state="Recording",this.startedAt=new Date(Date.now())}pause(){this.state="Paused"}resume(){this.state="Recording"}stop(){this.state="Ended",this.sessionDuration=Date.now()-this.startedAt.getTime()}setProctoringId(t){this.id=t}setEndConfirmed(){this.state="EndConfirmed"}setUploaded(){this.state="Uploaded"}setUploadConfirmed(){this.state="UploadConfirmed"}addAlert(t){this.alerts.push(t)}addRecording(t){this.recordings.push(t)}};var bn,k0=e=>(bn=e,bn),Sr={START:"start",FINISH:"finish",ERROR:"error",UPLOAD_VIDEO:"upload_video",BUFFER_SIZE:"buffer_size",ANOTHER_STREAM:"another_stream",BROWSER_NOT_SUPPORTED:"browser_not_supported"},Ar=(e,t)=>bn&&bn.log(e,t),Je={registerStart:(e,t,r)=>Ar(Sr.START,{proctoringId:e,success:t,description:r}),registerFinish:(e,t,r)=>Ar(Sr.FINISH,{proctoringId:e,success:t,description:r}),registerError:(e,t)=>Ar(Sr.ERROR,{proctoringId:e,description:t}),registerBrowserNotSupported:(e,t)=>Ar(Sr.BROWSER_NOT_SUPPORTED,{proctoringId:e,description:t}),registerUpload:(e,t,r,i,n)=>Ar(Sr.UPLOAD_VIDEO,{proctoringId:e,success:t,description:r,serviceType:i,uploadTime:n}),registerUploadFile:(e,t,r)=>Ar(Sr.UPLOAD_VIDEO,{proctoringId:e,description:t,fileType:r}),registerChangeDevice:(e,t,r)=>Ar(Sr.UPLOAD_VIDEO,{proctoringId:e,inOrOut:t,devicesChanged:r}),registerStopSharingScreen:(e,t)=>Ar(Sr.UPLOAD_VIDEO,{proctoringId:e,description:t}),registerErrorRecorderRTC:(e,t)=>Ar(Sr.UPLOAD_VIDEO,{proctoringId:e,description:t}),registerOnBufferSizeError:(e,t)=>Ar(Sr.BUFFER_SIZE,{proctoringId:e,description:t}),registerAnotherStream:(e,t)=>Ar(Sr.ANOTHER_STREAM,{proctoringId:e,description:t})};function Ta(e,t,r,i=!1,n,o=!1){let f,R=!1,k,F,Q={mimeType:"video/webm",videoBitsPerSecond:128e3,audioBitsPerSecond:64*1e3};o&&(Q={mimeType:"audio/webm",audioBitsPerSecond:64*1e3});let ee=new MediaRecorder(e,Q);ee.ondataavailable=te=>{t.push(te.data),R?(te.data.size>0,o&&ee.state=="inactive"&&(t=[new Blob(t,{type:"audio/mpeg-3"})]),f&&f()):((F&&te.data.size===F.data.size||te.data.size===0)&&(n&&n(),r&&F&&te.data.size===F.data.size&&Je.registerOnBufferSizeError(r,`onBufferSizeError: Recorder size freezed: ${te.data.size} Mb`),r&&te.data.size===0&&Je.registerOnBufferSizeError(r,"onBufferSizeError: Recorder size equal 0 Mb")),F=te)};function Ee(){return new Promise(te=>{f=te,ee.start(),R=!1,i&&(k=setInterval(async()=>{await ee.requestData()},3e4))})}function Ie(){return new Promise(te=>{ee.state=="recording"?(f=te,ee.stop(),R=!0,clearInterval(k),e.getTracks().forEach(Ue=>{Ue.stop()})):te()})}function pe(){return new Promise(te=>{ee.state=="recording"&&ee.pause(),te()})}function Te(){return new Promise(te=>{ee.state=="paused"&&ee.resume(),te()})}return{startRecording:Ee,stopRecording:Ie,pauseRecording:pe,resumeRecording:Te}}function Ma(e,t){return function(){return e.apply(t,arguments)}}var{toString:Lu}=Object.prototype,{getPrototypeOf:$s}=Object,Sn=(e=>t=>{let r=Lu.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),Ir=e=>(e=e.toLowerCase(),t=>Sn(t)===e),An=e=>t=>typeof t===e,{isArray:Wi}=Array,ka=An("undefined");function Nu(e){return e!==null&&!ka(e)&&e.constructor!==null&&!ka(e.constructor)&&lr(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}var C0=Ir("ArrayBuffer");function Fu(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&C0(e.buffer),t}var Du=An("string"),lr=An("function"),O0=An("number"),wn=e=>e!==null&&typeof e=="object",Vu=e=>e===!0||e===!1,yn=e=>{if(Sn(e)!=="object")return!1;let t=$s(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},Hu=Ir("Date"),Uu=Ir("File"),ju=Ir("Blob"),qu=Ir("FileList"),Xu=e=>wn(e)&&lr(e.pipe),zu=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||lr(e.append)&&((t=Sn(e))==="formdata"||t==="object"&&lr(e.toString)&&e.toString()==="[object FormData]"))},Gu=Ir("URLSearchParams"),$u=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Ba(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let i,n;if(typeof e!="object"&&(e=[e]),Wi(e))for(i=0,n=e.length;i<n;i++)t.call(null,e[i],i,e);else{let o=r?Object.getOwnPropertyNames(e):Object.keys(e),f=o.length,R;for(i=0;i<f;i++)R=o[i],t.call(null,e[R],R,e)}}function P0(e,t){t=t.toLowerCase();let r=Object.keys(e),i=r.length,n;for(;i-- >0;)if(n=r[i],t===n.toLowerCase())return n;return null}var L0=(()=>typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global)(),N0=e=>!ka(e)&&e!==L0;function Gs(){let{caseless:e}=N0(this)&&this||{},t={},r=(i,n)=>{let o=e&&P0(t,n)||n;yn(t[o])&&yn(i)?t[o]=Gs(t[o],i):yn(i)?t[o]=Gs({},i):Wi(i)?t[o]=i.slice():t[o]=i};for(let i=0,n=arguments.length;i<n;i++)arguments[i]&&Ba(arguments[i],r);return t}var Yu=(e,t,r,{allOwnKeys:i}={})=>(Ba(t,(n,o)=>{r&&lr(n)?e[o]=Ma(n,r):e[o]=n},{allOwnKeys:i}),e),Wu=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),Ku=(e,t,r,i)=>{e.prototype=Object.create(t.prototype,i),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},Zu=(e,t,r,i)=>{let n,o,f,R={};if(t=t||{},e==null)return t;do{for(n=Object.getOwnPropertyNames(e),o=n.length;o-- >0;)f=n[o],(!i||i(f,e,t))&&!R[f]&&(t[f]=e[f],R[f]=!0);e=r!==!1&&$s(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},Qu=(e,t,r)=>{e=String(e),(r===void 0||r>e.length)&&(r=e.length),r-=t.length;let i=e.indexOf(t,r);return i!==-1&&i===r},Ju=e=>{if(!e)return null;if(Wi(e))return e;let t=e.length;if(!O0(t))return null;let r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},e2=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&$s(Uint8Array)),t2=(e,t)=>{let i=(e&&e[Symbol.iterator]).call(e),n;for(;(n=i.next())&&!n.done;){let o=n.value;t.call(e,o[0],o[1])}},r2=(e,t)=>{let r,i=[];for(;(r=e.exec(t))!==null;)i.push(r);return i},i2=Ir("HTMLFormElement"),a2=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,i,n){return i.toUpperCase()+n}),B0=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),n2=Ir("RegExp"),F0=(e,t)=>{let r=Object.getOwnPropertyDescriptors(e),i={};Ba(r,(n,o)=>{let f;(f=t(n,o,e))!==!1&&(i[o]=f||n)}),Object.defineProperties(e,i)},s2=e=>{F0(e,(t,r)=>{if(lr(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let i=e[r];if(!!lr(i)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},o2=(e,t)=>{let r={},i=n=>{n.forEach(o=>{r[o]=!0})};return Wi(e)?i(e):i(String(e).split(t)),r},l2=()=>{},c2=(e,t)=>(e=+e,Number.isFinite(e)?e:t),zs="abcdefghijklmnopqrstuvwxyz",I0="0123456789",D0={DIGIT:I0,ALPHA:zs,ALPHA_DIGIT:zs+zs.toUpperCase()+I0},u2=(e=16,t=D0.ALPHA_DIGIT)=>{let r="",{length:i}=t;for(;e--;)r+=t[Math.random()*i|0];return r};function d2(e){return!!(e&&lr(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}var h2=e=>{let t=new Array(10),r=(i,n)=>{if(wn(i)){if(t.indexOf(i)>=0)return;if(!("toJSON"in i)){t[n]=i;let o=Wi(i)?[]:{};return Ba(i,(f,R)=>{let k=r(f,n+1);!ka(k)&&(o[R]=k)}),t[n]=void 0,o}}return i};return r(e,0)},f2=Ir("AsyncFunction"),m2=e=>e&&(wn(e)||lr(e))&&lr(e.then)&&lr(e.catch),ce={isArray:Wi,isArrayBuffer:C0,isBuffer:Nu,isFormData:zu,isArrayBufferView:Fu,isString:Du,isNumber:O0,isBoolean:Vu,isObject:wn,isPlainObject:yn,isUndefined:ka,isDate:Hu,isFile:Uu,isBlob:ju,isRegExp:n2,isFunction:lr,isStream:Xu,isURLSearchParams:Gu,isTypedArray:e2,isFileList:qu,forEach:Ba,merge:Gs,extend:Yu,trim:$u,stripBOM:Wu,inherits:Ku,toFlatObject:Zu,kindOf:Sn,kindOfTest:Ir,endsWith:Qu,toArray:Ju,forEachEntry:t2,matchAll:r2,isHTMLForm:i2,hasOwnProperty:B0,hasOwnProp:B0,reduceDescriptors:F0,freezeMethods:s2,toObjectSet:o2,toCamelCase:a2,noop:l2,toFiniteNumber:c2,findKey:P0,global:L0,isContextDefined:N0,ALPHABET:D0,generateString:u2,isSpecCompliantForm:d2,toJSONObject:h2,isAsyncFn:f2,isThenable:m2};function Ki(e,t,r,i,n){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),i&&(this.request=i),n&&(this.response=n)}ce.inherits(Ki,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:ce.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});var V0=Ki.prototype,H0={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{H0[e]={value:e}});Object.defineProperties(Ki,H0);Object.defineProperty(V0,"isAxiosError",{value:!0});Ki.from=(e,t,r,i,n,o)=>{let f=Object.create(V0);return ce.toFlatObject(e,f,function(k){return k!==Error.prototype},R=>R!=="isAxiosError"),Ki.call(f,e.message,t,r,i,n),f.cause=e,f.name=e.name,o&&Object.assign(f,o),f};var $e=Ki;var Rn=null;function Ys(e){return ce.isPlainObject(e)||ce.isArray(e)}function j0(e){return ce.endsWith(e,"[]")?e.slice(0,-2):e}function U0(e,t,r){return e?e.concat(t).map(function(n,o){return n=j0(n),!r&&o?"["+n+"]":n}).join(r?".":""):t}function _2(e){return ce.isArray(e)&&!e.some(Ys)}var p2=ce.toFlatObject(ce,{},null,function(t){return/^is[A-Z]/.test(t)});function v2(e,t,r){if(!ce.isObject(e))throw new TypeError("target must be an object");t=t||new(Rn||FormData),r=ce.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(Te,te){return!ce.isUndefined(te[Te])});let i=r.metaTokens,n=r.visitor||Q,o=r.dots,f=r.indexes,k=(r.Blob||typeof Blob<"u"&&Blob)&&ce.isSpecCompliantForm(t);if(!ce.isFunction(n))throw new TypeError("visitor must be a function");function F(pe){if(pe===null)return"";if(ce.isDate(pe))return pe.toISOString();if(!k&&ce.isBlob(pe))throw new $e("Blob is not supported. Use a Buffer instead.");return ce.isArrayBuffer(pe)||ce.isTypedArray(pe)?k&&typeof Blob=="function"?new Blob([pe]):Buffer.from(pe):pe}function Q(pe,Te,te){let Ue=pe;if(pe&&!te&&typeof pe=="object"){if(ce.endsWith(Te,"{}"))Te=i?Te:Te.slice(0,-2),pe=JSON.stringify(pe);else if(ce.isArray(pe)&&_2(pe)||(ce.isFileList(pe)||ce.endsWith(Te,"[]"))&&(Ue=ce.toArray(pe)))return Te=j0(Te),Ue.forEach(function(tt,gt){!(ce.isUndefined(tt)||tt===null)&&t.append(f===!0?U0([Te],gt,o):f===null?Te:Te+"[]",F(tt))}),!1}return Ys(pe)?!0:(t.append(U0(te,Te,o),F(pe)),!1)}let ee=[],Ee=Object.assign(p2,{defaultVisitor:Q,convertValue:F,isVisitable:Ys});function Ie(pe,Te){if(!ce.isUndefined(pe)){if(ee.indexOf(pe)!==-1)throw Error("Circular reference detected in "+Te.join("."));ee.push(pe),ce.forEach(pe,function(Ue,De){(!(ce.isUndefined(Ue)||Ue===null)&&n.call(t,Ue,ce.isString(De)?De.trim():De,Te,Ee))===!0&&Ie(Ue,Te?Te.concat(De):[De])}),ee.pop()}}if(!ce.isObject(e))throw new TypeError("data must be an object");return Ie(e),t}var ri=v2;function q0(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(i){return t[i]})}function X0(e,t){this._pairs=[],e&&ri(e,this,t)}var z0=X0.prototype;z0.append=function(t,r){this._pairs.push([t,r])};z0.toString=function(t){let r=t?function(i){return t.call(this,i,q0)}:q0;return this._pairs.map(function(n){return r(n[0])+"="+r(n[1])},"").join("&")};var En=X0;function b2(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Ia(e,t,r){if(!t)return e;let i=r&&r.encode||b2,n=r&&r.serialize,o;if(n?o=n(t,r):o=ce.isURLSearchParams(t)?t.toString():new En(t,r).toString(i),o){let f=e.indexOf("#");f!==-1&&(e=e.slice(0,f)),e+=(e.indexOf("?")===-1?"?":"&")+o}return e}var Ws=class{constructor(){this.handlers=[]}use(t,r,i){return this.handlers.push({fulfilled:t,rejected:r,synchronous:i?i.synchronous:!1,runWhen:i?i.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){ce.forEach(this.handlers,function(i){i!==null&&t(i)})}},Ks=Ws;var xn={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var G0=typeof URLSearchParams<"u"?URLSearchParams:En;var $0=typeof FormData<"u"?FormData:null;var Y0=typeof Blob<"u"?Blob:null;var y2=(()=>{let e;return typeof navigator<"u"&&((e=navigator.product)==="ReactNative"||e==="NativeScript"||e==="NS")?!1:typeof window<"u"&&typeof document<"u"})(),S2=(()=>typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function")(),kt={isBrowser:!0,classes:{URLSearchParams:G0,FormData:$0,Blob:Y0},isStandardBrowserEnv:y2,isStandardBrowserWebWorkerEnv:S2,protocols:["http","https","file","blob","url","data"]};function Zs(e,t){return ri(e,new kt.classes.URLSearchParams,Object.assign({visitor:function(r,i,n,o){return kt.isNode&&ce.isBuffer(r)?(this.append(i,r.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)}},t))}function A2(e){return ce.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function w2(e){let t={},r=Object.keys(e),i,n=r.length,o;for(i=0;i<n;i++)o=r[i],t[o]=e[o];return t}function R2(e){function t(r,i,n,o){let f=r[o++],R=Number.isFinite(+f),k=o>=r.length;return f=!f&&ce.isArray(n)?n.length:f,k?(ce.hasOwnProp(n,f)?n[f]=[n[f],i]:n[f]=i,!R):((!n[f]||!ce.isObject(n[f]))&&(n[f]=[]),t(r,i,n[f],o)&&ce.isArray(n[f])&&(n[f]=w2(n[f])),!R)}if(ce.isFormData(e)&&ce.isFunction(e.entries)){let r={};return ce.forEachEntry(e,(i,n)=>{t(A2(i),n,r,0)}),r}return null}var gn=R2;function E2(e,t,r){if(ce.isString(e))try{return(t||JSON.parse)(e),ce.trim(e)}catch(i){if(i.name!=="SyntaxError")throw i}return(r||JSON.stringify)(e)}var Qs={transitional:xn,adapter:kt.isNode?"http":"xhr",transformRequest:[function(t,r){let i=r.getContentType()||"",n=i.indexOf("application/json")>-1,o=ce.isObject(t);if(o&&ce.isHTMLForm(t)&&(t=new FormData(t)),ce.isFormData(t))return n&&n?JSON.stringify(gn(t)):t;if(ce.isArrayBuffer(t)||ce.isBuffer(t)||ce.isStream(t)||ce.isFile(t)||ce.isBlob(t))return t;if(ce.isArrayBufferView(t))return t.buffer;if(ce.isURLSearchParams(t))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let R;if(o){if(i.indexOf("application/x-www-form-urlencoded")>-1)return Zs(t,this.formSerializer).toString();if((R=ce.isFileList(t))||i.indexOf("multipart/form-data")>-1){let k=this.env&&this.env.FormData;return ri(R?{"files[]":t}:t,k&&new k,this.formSerializer)}}return o||n?(r.setContentType("application/json",!1),E2(t)):t}],transformResponse:[function(t){let r=this.transitional||Qs.transitional,i=r&&r.forcedJSONParsing,n=this.responseType==="json";if(t&&ce.isString(t)&&(i&&!this.responseType||n)){let f=!(r&&r.silentJSONParsing)&&n;try{return JSON.parse(t)}catch(R){if(f)throw R.name==="SyntaxError"?$e.from(R,$e.ERR_BAD_RESPONSE,this,null,this.response):R}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:kt.classes.FormData,Blob:kt.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};ce.forEach(["delete","get","head","post","put","patch"],e=>{Qs.headers[e]={}});var Zi=Qs;var x2=ce.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),W0=e=>{let t={},r,i,n;return e&&e.split(`
15
- `).forEach(function(f){n=f.indexOf(":"),r=f.substring(0,n).trim().toLowerCase(),i=f.substring(n+1).trim(),!(!r||t[r]&&x2[r])&&(r==="set-cookie"?t[r]?t[r].push(i):t[r]=[i]:t[r]=t[r]?t[r]+", "+i:i)}),t};var K0=Symbol("internals");function Ca(e){return e&&String(e).trim().toLowerCase()}function Tn(e){return e===!1||e==null?e:ce.isArray(e)?e.map(Tn):String(e)}function g2(e){let t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g,i;for(;i=r.exec(e);)t[i[1]]=i[2];return t}var T2=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function Js(e,t,r,i,n){if(ce.isFunction(i))return i.call(this,t,r);if(n&&(t=r),!!ce.isString(t)){if(ce.isString(i))return t.indexOf(i)!==-1;if(ce.isRegExp(i))return i.test(t)}}function M2(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,r,i)=>r.toUpperCase()+i)}function k2(e,t){let r=ce.toCamelCase(" "+t);["get","set","has"].forEach(i=>{Object.defineProperty(e,i+r,{value:function(n,o,f){return this[i].call(this,t,n,o,f)},configurable:!0})})}var Qi=class{constructor(t){t&&this.set(t)}set(t,r,i){let n=this;function o(R,k,F){let Q=Ca(k);if(!Q)throw new Error("header name must be a non-empty string");let ee=ce.findKey(n,Q);(!ee||n[ee]===void 0||F===!0||F===void 0&&n[ee]!==!1)&&(n[ee||k]=Tn(R))}let f=(R,k)=>ce.forEach(R,(F,Q)=>o(F,Q,k));return ce.isPlainObject(t)||t instanceof this.constructor?f(t,r):ce.isString(t)&&(t=t.trim())&&!T2(t)?f(W0(t),r):t!=null&&o(r,t,i),this}get(t,r){if(t=Ca(t),t){let i=ce.findKey(this,t);if(i){let n=this[i];if(!r)return n;if(r===!0)return g2(n);if(ce.isFunction(r))return r.call(this,n,i);if(ce.isRegExp(r))return r.exec(n);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,r){if(t=Ca(t),t){let i=ce.findKey(this,t);return!!(i&&this[i]!==void 0&&(!r||Js(this,this[i],i,r)))}return!1}delete(t,r){let i=this,n=!1;function o(f){if(f=Ca(f),f){let R=ce.findKey(i,f);R&&(!r||Js(i,i[R],R,r))&&(delete i[R],n=!0)}}return ce.isArray(t)?t.forEach(o):o(t),n}clear(t){let r=Object.keys(this),i=r.length,n=!1;for(;i--;){let o=r[i];(!t||Js(this,this[o],o,t,!0))&&(delete this[o],n=!0)}return n}normalize(t){let r=this,i={};return ce.forEach(this,(n,o)=>{let f=ce.findKey(i,o);if(f){r[f]=Tn(n),delete r[o];return}let R=t?M2(o):String(o).trim();R!==o&&delete r[o],r[R]=Tn(n),i[R]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){let r=Object.create(null);return ce.forEach(this,(i,n)=>{i!=null&&i!==!1&&(r[n]=t&&ce.isArray(i)?i.join(", "):i)}),r}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,r])=>t+": "+r).join(`
16
- `)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...r){let i=new this(t);return r.forEach(n=>i.set(n)),i}static accessor(t){let i=(this[K0]=this[K0]={accessors:{}}).accessors,n=this.prototype;function o(f){let R=Ca(f);i[R]||(k2(n,f),i[R]=!0)}return ce.isArray(t)?t.forEach(o):o(t),this}};Qi.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);ce.reduceDescriptors(Qi.prototype,({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(i){this[r]=i}}});ce.freezeMethods(Qi);var Nt=Qi;function Oa(e,t){let r=this||Zi,i=t||r,n=Nt.from(i.headers),o=i.data;return ce.forEach(e,function(R){o=R.call(r,o,n.normalize(),t?t.status:void 0)}),n.normalize(),o}function Pa(e){return!!(e&&e.__CANCEL__)}function Z0(e,t,r){$e.call(this,e??"canceled",$e.ERR_CANCELED,t,r),this.name="CanceledError"}ce.inherits(Z0,$e,{__CANCEL__:!0});var ii=Z0;function eo(e,t,r){let i=r.config.validateStatus;!r.status||!i||i(r.status)?e(r):t(new $e("Request failed with status code "+r.status,[$e.ERR_BAD_REQUEST,$e.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}var Q0=kt.isStandardBrowserEnv?function(){return{write:function(r,i,n,o,f,R){let k=[];k.push(r+"="+encodeURIComponent(i)),ce.isNumber(n)&&k.push("expires="+new Date(n).toGMTString()),ce.isString(o)&&k.push("path="+o),ce.isString(f)&&k.push("domain="+f),R===!0&&k.push("secure"),document.cookie=k.join("; ")},read:function(r){let i=document.cookie.match(new RegExp("(^|;\\s*)("+r+")=([^;]*)"));return i?decodeURIComponent(i[3]):null},remove:function(r){this.write(r,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}();function to(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function ro(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}function La(e,t){return e&&!to(t)?ro(e,t):t}var J0=kt.isStandardBrowserEnv?function(){let t=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a"),i;function n(o){let f=o;return t&&(r.setAttribute("href",f),f=r.href),r.setAttribute("href",f),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:r.pathname.charAt(0)==="/"?r.pathname:"/"+r.pathname}}return i=n(window.location.href),function(f){let R=ce.isString(f)?n(f):f;return R.protocol===i.protocol&&R.host===i.host}}():function(){return function(){return!0}}();function io(e){let t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function B2(e,t){e=e||10;let r=new Array(e),i=new Array(e),n=0,o=0,f;return t=t!==void 0?t:1e3,function(k){let F=Date.now(),Q=i[o];f||(f=F),r[n]=k,i[n]=F;let ee=o,Ee=0;for(;ee!==n;)Ee+=r[ee++],ee=ee%e;if(n=(n+1)%e,n===o&&(o=(o+1)%e),F-f<t)return;let Ie=Q&&F-Q;return Ie?Math.round(Ee*1e3/Ie):void 0}}var e1=B2;function t1(e,t){let r=0,i=e1(50,250);return n=>{let o=n.loaded,f=n.lengthComputable?n.total:void 0,R=o-r,k=i(R),F=o<=f;r=o;let Q={loaded:o,total:f,progress:f?o/f:void 0,bytes:R,rate:k||void 0,estimated:k&&f&&F?(f-o)/k:void 0,event:n};Q[t?"download":"upload"]=!0,e(Q)}}var I2=typeof XMLHttpRequest<"u",r1=I2&&function(e){return new Promise(function(r,i){let n=e.data,o=Nt.from(e.headers).normalize(),f=e.responseType,R;function k(){e.cancelToken&&e.cancelToken.unsubscribe(R),e.signal&&e.signal.removeEventListener("abort",R)}ce.isFormData(n)&&(kt.isStandardBrowserEnv||kt.isStandardBrowserWebWorkerEnv?o.setContentType(!1):o.setContentType("multipart/form-data;",!1));let F=new XMLHttpRequest;if(e.auth){let Ie=e.auth.username||"",pe=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";o.set("Authorization","Basic "+btoa(Ie+":"+pe))}let Q=La(e.baseURL,e.url);F.open(e.method.toUpperCase(),Ia(Q,e.params,e.paramsSerializer),!0),F.timeout=e.timeout;function ee(){if(!F)return;let Ie=Nt.from("getAllResponseHeaders"in F&&F.getAllResponseHeaders()),Te={data:!f||f==="text"||f==="json"?F.responseText:F.response,status:F.status,statusText:F.statusText,headers:Ie,config:e,request:F};eo(function(Ue){r(Ue),k()},function(Ue){i(Ue),k()},Te),F=null}if("onloadend"in F?F.onloadend=ee:F.onreadystatechange=function(){!F||F.readyState!==4||F.status===0&&!(F.responseURL&&F.responseURL.indexOf("file:")===0)||setTimeout(ee)},F.onabort=function(){!F||(i(new $e("Request aborted",$e.ECONNABORTED,e,F)),F=null)},F.onerror=function(){i(new $e("Network Error",$e.ERR_NETWORK,e,F)),F=null},F.ontimeout=function(){let pe=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded",Te=e.transitional||xn;e.timeoutErrorMessage&&(pe=e.timeoutErrorMessage),i(new $e(pe,Te.clarifyTimeoutError?$e.ETIMEDOUT:$e.ECONNABORTED,e,F)),F=null},kt.isStandardBrowserEnv){let Ie=(e.withCredentials||J0(Q))&&e.xsrfCookieName&&Q0.read(e.xsrfCookieName);Ie&&o.set(e.xsrfHeaderName,Ie)}n===void 0&&o.setContentType(null),"setRequestHeader"in F&&ce.forEach(o.toJSON(),function(pe,Te){F.setRequestHeader(Te,pe)}),ce.isUndefined(e.withCredentials)||(F.withCredentials=!!e.withCredentials),f&&f!=="json"&&(F.responseType=e.responseType),typeof e.onDownloadProgress=="function"&&F.addEventListener("progress",t1(e.onDownloadProgress,!0)),typeof e.onUploadProgress=="function"&&F.upload&&F.upload.addEventListener("progress",t1(e.onUploadProgress)),(e.cancelToken||e.signal)&&(R=Ie=>{!F||(i(!Ie||Ie.type?new ii(null,e,F):Ie),F.abort(),F=null)},e.cancelToken&&e.cancelToken.subscribe(R),e.signal&&(e.signal.aborted?R():e.signal.addEventListener("abort",R)));let Ee=io(Q);if(Ee&&kt.protocols.indexOf(Ee)===-1){i(new $e("Unsupported protocol "+Ee+":",$e.ERR_BAD_REQUEST,e));return}F.send(n||null)})};var Mn={http:Rn,xhr:r1};ce.forEach(Mn,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});var kn={getAdapter:e=>{e=ce.isArray(e)?e:[e];let{length:t}=e,r,i;for(let n=0;n<t&&(r=e[n],!(i=ce.isString(r)?Mn[r.toLowerCase()]:r));n++);if(!i)throw i===!1?new $e(`Adapter ${r} is not supported by the environment`,"ERR_NOT_SUPPORT"):new Error(ce.hasOwnProp(Mn,r)?`Adapter '${r}' is not available in the build`:`Unknown adapter '${r}'`);if(!ce.isFunction(i))throw new TypeError("adapter is not a function");return i},adapters:Mn};function ao(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new ii(null,e)}function Bn(e){return ao(e),e.headers=Nt.from(e.headers),e.data=Oa.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),kn.getAdapter(e.adapter||Zi.adapter)(e).then(function(i){return ao(e),i.data=Oa.call(e,e.transformResponse,i),i.headers=Nt.from(i.headers),i},function(i){return Pa(i)||(ao(e),i&&i.response&&(i.response.data=Oa.call(e,e.transformResponse,i.response),i.response.headers=Nt.from(i.response.headers))),Promise.reject(i)})}var i1=e=>e instanceof Nt?e.toJSON():e;function Gr(e,t){t=t||{};let r={};function i(F,Q,ee){return ce.isPlainObject(F)&&ce.isPlainObject(Q)?ce.merge.call({caseless:ee},F,Q):ce.isPlainObject(Q)?ce.merge({},Q):ce.isArray(Q)?Q.slice():Q}function n(F,Q,ee){if(ce.isUndefined(Q)){if(!ce.isUndefined(F))return i(void 0,F,ee)}else return i(F,Q,ee)}function o(F,Q){if(!ce.isUndefined(Q))return i(void 0,Q)}function f(F,Q){if(ce.isUndefined(Q)){if(!ce.isUndefined(F))return i(void 0,F)}else return i(void 0,Q)}function R(F,Q,ee){if(ee in t)return i(F,Q);if(ee in e)return i(void 0,F)}let k={url:o,method:o,data:o,baseURL:f,transformRequest:f,transformResponse:f,paramsSerializer:f,timeout:f,timeoutMessage:f,withCredentials:f,adapter:f,responseType:f,xsrfCookieName:f,xsrfHeaderName:f,onUploadProgress:f,onDownloadProgress:f,decompress:f,maxContentLength:f,maxBodyLength:f,beforeRedirect:f,transport:f,httpAgent:f,httpsAgent:f,cancelToken:f,socketPath:f,responseEncoding:f,validateStatus:R,headers:(F,Q)=>n(i1(F),i1(Q),!0)};return ce.forEach(Object.keys(Object.assign({},e,t)),function(Q){let ee=k[Q]||n,Ee=ee(e[Q],t[Q],Q);ce.isUndefined(Ee)&&ee!==R||(r[Q]=Ee)}),r}var In="1.5.0";var no={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{no[e]=function(i){return typeof i===e||"a"+(t<1?"n ":" ")+e}});var a1={};no.transitional=function(t,r,i){function n(o,f){return"[Axios v"+In+"] Transitional option '"+o+"'"+f+(i?". "+i:"")}return(o,f,R)=>{if(t===!1)throw new $e(n(f," has been removed"+(r?" in "+r:"")),$e.ERR_DEPRECATED);return r&&!a1[f]&&(a1[f]=!0,console.warn(n(f," has been deprecated since v"+r+" and will be removed in the near future"))),t?t(o,f,R):!0}};function C2(e,t,r){if(typeof e!="object")throw new $e("options must be an object",$e.ERR_BAD_OPTION_VALUE);let i=Object.keys(e),n=i.length;for(;n-- >0;){let o=i[n],f=t[o];if(f){let R=e[o],k=R===void 0||f(R,o,e);if(k!==!0)throw new $e("option "+o+" must be "+k,$e.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new $e("Unknown option "+o,$e.ERR_BAD_OPTION)}}var Cn={assertOptions:C2,validators:no};var ai=Cn.validators,Ji=class{constructor(t){this.defaults=t,this.interceptors={request:new Ks,response:new Ks}}request(t,r){typeof t=="string"?(r=r||{},r.url=t):r=t||{},r=Gr(this.defaults,r);let{transitional:i,paramsSerializer:n,headers:o}=r;i!==void 0&&Cn.assertOptions(i,{silentJSONParsing:ai.transitional(ai.boolean),forcedJSONParsing:ai.transitional(ai.boolean),clarifyTimeoutError:ai.transitional(ai.boolean)},!1),n!=null&&(ce.isFunction(n)?r.paramsSerializer={serialize:n}:Cn.assertOptions(n,{encode:ai.function,serialize:ai.function},!0)),r.method=(r.method||this.defaults.method||"get").toLowerCase();let f=o&&ce.merge(o.common,o[r.method]);o&&ce.forEach(["delete","get","head","post","put","patch","common"],pe=>{delete o[pe]}),r.headers=Nt.concat(f,o);let R=[],k=!0;this.interceptors.request.forEach(function(Te){typeof Te.runWhen=="function"&&Te.runWhen(r)===!1||(k=k&&Te.synchronous,R.unshift(Te.fulfilled,Te.rejected))});let F=[];this.interceptors.response.forEach(function(Te){F.push(Te.fulfilled,Te.rejected)});let Q,ee=0,Ee;if(!k){let pe=[Bn.bind(this),void 0];for(pe.unshift.apply(pe,R),pe.push.apply(pe,F),Ee=pe.length,Q=Promise.resolve(r);ee<Ee;)Q=Q.then(pe[ee++],pe[ee++]);return Q}Ee=R.length;let Ie=r;for(ee=0;ee<Ee;){let pe=R[ee++],Te=R[ee++];try{Ie=pe(Ie)}catch(te){Te.call(this,te);break}}try{Q=Bn.call(this,Ie)}catch(pe){return Promise.reject(pe)}for(ee=0,Ee=F.length;ee<Ee;)Q=Q.then(F[ee++],F[ee++]);return Q}getUri(t){t=Gr(this.defaults,t);let r=La(t.baseURL,t.url);return Ia(r,t.params,t.paramsSerializer)}};ce.forEach(["delete","get","head","options"],function(t){Ji.prototype[t]=function(r,i){return this.request(Gr(i||{},{method:t,url:r,data:(i||{}).data}))}});ce.forEach(["post","put","patch"],function(t){function r(i){return function(o,f,R){return this.request(Gr(R||{},{method:t,headers:i?{"Content-Type":"multipart/form-data"}:{},url:o,data:f}))}}Ji.prototype[t]=r(),Ji.prototype[t+"Form"]=r(!0)});var Na=Ji;var Fa=class{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let r;this.promise=new Promise(function(o){r=o});let i=this;this.promise.then(n=>{if(!i._listeners)return;let o=i._listeners.length;for(;o-- >0;)i._listeners[o](n);i._listeners=null}),this.promise.then=n=>{let o,f=new Promise(R=>{i.subscribe(R),o=R}).then(n);return f.cancel=function(){i.unsubscribe(o)},f},t(function(o,f,R){i.reason||(i.reason=new ii(o,f,R),r(i.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;let r=this._listeners.indexOf(t);r!==-1&&this._listeners.splice(r,1)}static source(){let t;return{token:new Fa(function(n){t=n}),cancel:t}}},n1=Fa;function so(e){return function(r){return e.apply(null,r)}}function oo(e){return ce.isObject(e)&&e.isAxiosError===!0}var lo={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(lo).forEach(([e,t])=>{lo[t]=e});var s1=lo;function o1(e){let t=new Na(e),r=Ma(Na.prototype.request,t);return ce.extend(r,Na.prototype,t,{allOwnKeys:!0}),ce.extend(r,t,null,{allOwnKeys:!0}),r.create=function(n){return o1(Gr(e,n))},r}var St=o1(Zi);St.Axios=Na;St.CanceledError=ii;St.CancelToken=n1;St.isCancel=Pa;St.VERSION=In;St.toFormData=ri;St.AxiosError=$e;St.Cancel=St.CanceledError;St.all=function(t){return Promise.all(t)};St.spread=so;St.isAxiosError=oo;St.mergeConfig=Gr;St.AxiosHeaders=Nt;St.formToJSON=e=>gn(ce.isHTMLForm(e)?new FormData(e):e);St.getAdapter=kn.getAdapter;St.HttpStatusCode=s1;St.default=St;var ni=St;var{Axios:wm,AxiosError:Rm,CanceledError:Em,isCancel:xm,CancelToken:gm,VERSION:Tm,all:Mm,Cancel:km,isAxiosError:Bm,spread:Im,toFormData:Cm,AxiosHeaders:Om,HttpStatusCode:Pm,formToJSON:Lm,getAdapter:Nm,mergeConfig:Fm}=ni;var $r=class{constructor(t,r){this.backend=r;this.imageUrlPackage=[];this.imageBatchNum=0;this.contImages=0;this.proctoringId=t}async uploadImages(t,r,i){let{file:n,onProgress:o}=t;try{let f=F=>{let Q=F.loadedBytes/n.size*100;o&&o(Math.round(Q))},R;if(this.imageBatchNum===this.contImages){let F=[];for(let ee=this.imageBatchNum;ee<this.imageBatchNum+60;ee++){let Ee=`${this.proctoringId}/${this.proctoringId}_${ee+1}.jpg`;(ee+1)%i==0&&(Ee=`${this.proctoringId}/${this.proctoringId}_${ee+1}_realtime.jpg`),F.push({objectName:Ee,contentType:"image/jpeg"})}(await this.backend.getSignedUrlImage(r,F)).map(ee=>{this.imageUrlPackage.push(ee)}),this.imageBatchNum+=60}let k=!1;return k=await ni.request({url:this.imageUrlPackage[this.contImages],method:"PUT",headers:{"Content-Type":n.type,"x-ms-blob-type":"BlockBlob"},data:n,onUploadProgress:F=>{f({loadedBytes:F.loaded})}}).then(F=>F.status==200||F.status==201?(this.contImages++,!0):!1).catch(()=>!1).finally(()=>{}),{storage:"upload",url:R,uploaded:k}}catch{throw Je.registerError(this.proctoringId,`Failed to upload to AWS
17
- File name: ${n.name}
18
- File type: ${n.type}
19
- File size: ${n.size}`),new Error("Failed to upload to AWS")}}async upload(t,r,i){let{file:n,onProgress:o}=t;try{let f=F=>{let Q=F.loadedBytes/n.size*100;o&&o(Math.round(Q))},R;if(i){if(this.imageBatchNum===this.contImages){let F=[];for(let ee=this.imageBatchNum;ee<this.imageBatchNum+20;ee++)F.push({objectName:`${this.proctoringId}/${this.proctoringId}_${ee+1}.jpg`,contentType:"image/jpeg"});(await this.backend.getSignedUrlImage(r,F)).map(ee=>{this.imageUrlPackage.push(ee)}),this.imageBatchNum+=20}}else R=await this.backend.getSignedUrl(r,n,this.proctoringId);let k=!1;return i?k=await ni.request({url:this.imageUrlPackage[this.contImages],method:"PUT",headers:{"Content-Type":n.type,"x-ms-blob-type":"BlockBlob"},data:n,onUploadProgress:F=>{f({loadedBytes:F.loaded})}}).then(()=>!0).catch(()=>!1).finally(()=>{this.contImages++}):k=await ni.request({url:R,method:"PUT",headers:{"Content-Type":n.type,"x-ms-blob-type":"BlockBlob"},data:n,onUploadProgress:F=>{f({loadedBytes:F.loaded})}}).then(()=>!0).catch(()=>!1),{storage:"upload",url:R,uploaded:k}}catch{throw Je.registerError(this.proctoringId,`Failed to upload to AWS
20
- File name: ${n.name}
21
- File type: ${n.type}
22
- File size: ${n.size}`),new Error("Failed to upload to AWS")}}};var l1="not_shared_first_screen",c1="not_shared_screen",On="multiple_monitors_detected",u1="proctoring_already_started",Pn="proctoring_not_started";var d1="another_stream_active",h1="stream_under_minimum_permitted",f1="browser_not_supported",m1="token_missing",_1="credentials_missing";var si=class{constructor(t){this.stream=t}start(t={}){return new Promise((r,i)=>{try{let n=new AudioContext,o=n.createAnalyser(),f=n.createMediaStreamSource(this.stream);this.scriptProcessor=n.createScriptProcessor(2048,1,1),o.smoothingTimeConstant=.8,o.fftSize=1024,f.connect(o),o.connect(this.scriptProcessor),this.scriptProcessor.connect(n.destination);let R=this;this.scriptProcessor.onaudioprocess=function(){let k=new Uint8Array(o.frequencyBinCount);o.getByteFrequencyData(k);let Q=k.reduce((ee,Ee)=>ee+Ee,0)/k.length;R.setVolume(Q),t.setVolume&&t.setVolume(Q)},r(!0)}catch(n){this.stop(),i(`Error: ${n}`)}})}stop(){this.scriptProcessor&&this.scriptProcessor.disconnect()}getVolume(){return this.volume}setVolume(t){this.volume=t}};var Cr=class{constructor(t,r,i,n,o){this.blobs=[];this.paramsConfig={audioBehaviourParameters:{recordingBitrate:128,noiseLimit:40},imageBehaviourParameters:{frames:40,useUploadImage:!0,uploadInterval:20,saveVideo:!0},videoBehaviourParameters:{detectPerson:!1,detectFace:!1,detectCellPhone:!1}};this.options={cameraId:void 0,microphoneId:void 0,onBufferSizeError:!1,onBufferSizeErrorCallback:()=>{},proctoringType:"IMAGE",onChangeDevicesCallback:t=>{},onRealtimeAlertsCallback:t=>{}};this.videoOptions={width:640,height:480,minWidth:0,minHeight:0};this.blobsRTC=[];this.imageCount=0;this.filesToUpload=[];this.noiseWait=20;this.options=t,this.videoOptions=r,this.backend=n,this.backendToken=o,i&&(this.paramsConfig=i)}setProctoringId(t){this.proctoringId=t,this.proctoringId&&this.backend&&(this.upload=new $r(this.proctoringId,this.backend))}async initializeDetectors(){}configImageCapture(){this.video=document.createElement("video"),this.canvas=document.createElement("canvas"),this.video.srcObject=this.cameraStream,this.video.play(),this.video.muted=!0,this.canvas.width=this.videoOptions.width,this.canvas.height=this.videoOptions.height}async startRecording(){this.paramsConfig.videoBehaviourParameters?.detectPerson||this.paramsConfig.videoBehaviourParameters?.detectCellPhone||this.paramsConfig.videoBehaviourParameters?.detectFace;let{cameraId:t,microphoneId:r,onBufferSizeErrorCallback:i}=this.options,n={audio:{deviceId:r},video:{deviceId:t,width:this.videoOptions.width,height:this.videoOptions.height,frameRate:15}};try{this.cameraStream=await navigator.mediaDevices.getUserMedia(n)}catch(ee){throw ee.toString()=="NotReadableError: Could not start video source"?"N\xE3o foi poss\xEDvel conectar a camera, ela pode estar sendo utilizada por outro programa":ee}let{startRecording:o,stopRecording:f,pauseRecording:R,resumeRecording:k}=Ta(this.cameraStream,this.blobs,this.proctoringId,this.options.onBufferSizeError,i);this.recordingStart=o,this.recordingStop=f,this.recordingPause=R,this.recordingResume=k,this.recordingStart();let Q=this.cameraStream.getVideoTracks()[0].getSettings();if(this.videoOptions.minWidth>Q.width||this.videoOptions.minHeight>Q.height)throw h1;if(this.videoOptions.width!==Q.width||this.videoOptions.height!==Q.height)throw console.log("this.videoOptions: ",this.videoOptions),console.log("settings: ",Q),Je.registerAnotherStream(this.proctoringId,`Maybe have another stream active
1
+ "use strict";(()=>{var Lm=Object.create;var fl=Object.defineProperty;var Um=Object.getOwnPropertyDescriptor;var Nm=Object.getOwnPropertyNames;var jm=Object.getPrototypeOf,Vm=Object.prototype.hasOwnProperty;var zm=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Gm=(e,t,r,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Nm(t))!Vm.call(e,o)&&o!==r&&fl(e,o,{get:()=>t[o],enumerable:!(i=Um(t,o))||i.enumerable});return e};var Hm=(e,t,r)=>(r=e!=null?Lm(jm(e)):{},Gm(t||!e||!e.__esModule?fl(r,"default",{value:e,enumerable:!0}):r,e));var mp=zm((sc,ac)=>{(function(e,t){typeof define=="function"&&define.amd?define([],t):typeof sc<"u"?t():(t(),e.FileSaver={})})(sc,function(){"use strict";function e(a,c){return typeof c>"u"?c={autoBom:!1}:typeof c!="object"&&(console.warn("Deprecated: Expected third argument to be a object"),c={autoBom:!c}),c.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(a.type)?new Blob(["\uFEFF",a],{type:a.type}):a}function t(a,c,l){var u=new XMLHttpRequest;u.open("GET",a),u.responseType="blob",u.onload=function(){s(u.response,c,l)},u.onerror=function(){console.error("could not download file")},u.send()}function r(a){var c=new XMLHttpRequest;c.open("HEAD",a,!1);try{c.send()}catch{}return 200<=c.status&&299>=c.status}function i(a){try{a.dispatchEvent(new MouseEvent("click"))}catch{var c=document.createEvent("MouseEvents");c.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),a.dispatchEvent(c)}}var o=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof global=="object"&&global.global===global?global:void 0,n=o.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),s=o.saveAs||(typeof window!="object"||window!==o?function(){}:"download"in HTMLAnchorElement.prototype&&!n?function(a,c,l){var u=o.URL||o.webkitURL,d=document.createElement("a");c=c||a.name||"download",d.download=c,d.rel="noopener",typeof a=="string"?(d.href=a,d.origin===location.origin?i(d):r(d.href)?t(a,c,l):i(d,d.target="_blank")):(d.href=u.createObjectURL(a),setTimeout(function(){u.revokeObjectURL(d.href)},4e4),setTimeout(function(){i(d)},0))}:"msSaveOrOpenBlob"in navigator?function(a,c,l){if(c=c||a.name||"download",typeof a!="string")navigator.msSaveOrOpenBlob(e(a,l),c);else if(r(a))t(a,c,l);else{var u=document.createElement("a");u.href=a,u.target="_blank",setTimeout(function(){i(u)})}}:function(a,c,l,u){if(u=u||open("","_blank"),u&&(u.document.title=u.document.body.innerText="downloading..."),typeof a=="string")return t(a,c,l);var d=a.type==="application/octet-stream",f=/constructor/i.test(o.HTMLElement)||o.safari,g=/CriOS\/[\d]+/.test(navigator.userAgent);if((g||d&&f||n)&&typeof FileReader<"u"){var h=new FileReader;h.onloadend=function(){var b=h.result;b=g?b:b.replace(/^data:[^;]*;/,"data:attachment/file;"),u?u.location.href=b:location=b,u=null},h.readAsDataURL(a)}else{var m=o.URL||o.webkitURL,y=m.createObjectURL(a);u?u.location=y:location.href=y,u=null,setTimeout(function(){m.revokeObjectURL(y)},4e4)}});o.saveAs=s.saveAs=s,typeof ac<"u"&&(ac.exports=s)})});async function _o(){try{let e={audio:!0,video:!0};return(await navigator.mediaDevices.getUserMedia(e)).getTracks().forEach(r=>{r.stop()}),!0}catch{return!1}}async function ko(){return new Promise((e,t)=>{let r=window.screen.isExtended;if(r)e(r);else if(navigator.userAgent.indexOf("Firefox")>-1)e(!1);else{let o=[];window.getScreenDetails().then(function(n){o=n,e(o.screens.length>=2)})}})}async function Qe(){let e=["OBS","ManyCam","Snap Camera","Virtual"],r=(await navigator.mediaDevices.enumerateDevices()).filter(o=>!e.some(n=>o.deviceId.includes(n)||o.label.includes(n)));return{cameras:r.filter(o=>o.kind=="videoinput"&&o.deviceId).map(o=>({label:o.label||"Generic Device",id:o.deviceId})),microphones:r.filter(o=>o.kind=="audioinput"&&o.deviceId).map(o=>({label:o.label||"Generic Device",id:o.deviceId}))}}var Ao=class{constructor(){this.sessionDuration=0;this.state="Created",this.startedAt=new Date,this.alerts=[],this.recordings=[]}get hasSomethingToUpload(){for(let t of this.recordings)if(!t.upload)return!0;return!1}start(){this.state="Recording",this.startedAt=new Date(Date.now())}pause(){this.state="Paused"}resume(){this.state="Recording"}stop(){this.state="Ended",this.sessionDuration=Date.now()-this.startedAt.getTime()}setProctoringId(t){this.id=t}setEndConfirmed(){this.state="EndConfirmed"}setUploaded(){this.state="Uploaded"}setUploadConfirmed(){this.state="UploadConfirmed"}addAlert(t){this.alerts.push(t)}addRecording(t){this.recordings.push(t)}};var To,ml=e=>(To=e,To),et={START:"start",FINISH:"finish",ERROR:"error",UPLOAD_VIDEO:"upload_video",BUFFER_SIZE:"buffer_size",ANOTHER_STREAM:"another_stream",BROWSER_NOT_SUPPORTED:"browser_not_supported"},tt=(e,t)=>To&&To.log(e,t),I={registerStart:(e,t,r)=>tt(et.START,{proctoringId:e,success:t,description:r}),registerFinish:(e,t,r)=>tt(et.FINISH,{proctoringId:e,success:t,description:r}),registerError:(e,t)=>tt(et.ERROR,{proctoringId:e,description:t}),registerBrowserNotSupported:(e,t)=>tt(et.BROWSER_NOT_SUPPORTED,{proctoringId:e,description:t}),registerUpload:(e,t,r,i,o)=>tt(et.UPLOAD_VIDEO,{proctoringId:e,success:t,description:r,serviceType:i,uploadTime:o}),registerUploadFile:(e,t,r)=>tt(et.UPLOAD_VIDEO,{proctoringId:e,description:t,fileType:r}),registerChangeDevice:(e,t,r)=>tt(et.UPLOAD_VIDEO,{proctoringId:e,inOrOut:t,devicesChanged:r}),registerStopSharingScreen:(e,t)=>tt(et.UPLOAD_VIDEO,{proctoringId:e,description:t}),registerErrorRecorderRTC:(e,t)=>tt(et.UPLOAD_VIDEO,{proctoringId:e,description:t}),registerOnBufferSizeError:(e,t)=>tt(et.BUFFER_SIZE,{proctoringId:e,description:t}),registerAnotherStream:(e,t)=>tt(et.ANOTHER_STREAM,{proctoringId:e,description:t})};function ar(e,t,r,i=!1,o,n=!1){let s,a=!1,c,l,u={mimeType:"video/webm",videoBitsPerSecond:128e3,audioBitsPerSecond:64*1e3};n&&(u={mimeType:"audio/webm",audioBitsPerSecond:64*1e3});let d=new MediaRecorder(e,u);d.ondataavailable=y=>{y.data.size>0&&t.push(y.data),a?(n&&d.state=="inactive"&&(t=[new Blob(t,{type:"audio/webm"})]),s&&s()):((l&&y.data.size===l.data.size||y.data.size===0)&&(o&&o(),r&&l&&y.data.size===l.data.size&&I.registerOnBufferSizeError(r,`onBufferSizeError: Recorder size freezed: ${y.data.size} Mb`),r&&y.data.size===0&&I.registerOnBufferSizeError(r,"onBufferSizeError: Recorder size equal 0 Mb")),l=y)};function f(){return new Promise(y=>{s=y,d.start(),a=!1,i&&(c=setInterval(async()=>{await d.requestData()},3e4))})}function g(){return new Promise(y=>{d.state=="recording"?(s=y,d.stop(),a=!0,clearInterval(c),e.getTracks().forEach(b=>{b.stop()})):y()})}function h(){return new Promise(y=>{d.state=="recording"&&d.pause(),y()})}function m(){return new Promise(y=>{d.state=="paused"&&d.resume(),y()})}return{startRecording:f,stopRecording:g,pauseRecording:h,resumeRecording:m}}function pi(e,t){return function(){return e.apply(t,arguments)}}var{toString:Wm}=Object.prototype,{getPrototypeOf:ks}=Object,Co=(e=>t=>{let r=Wm.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),ut=e=>(e=e.toLowerCase(),t=>Co(t)===e),Ro=e=>t=>typeof t===e,{isArray:_r}=Array,fi=Ro("undefined");function qm(e){return e!==null&&!fi(e)&&e.constructor!==null&&!fi(e.constructor)&&Ne(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}var vl=ut("ArrayBuffer");function $m(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&vl(e.buffer),t}var Xm=Ro("string"),Ne=Ro("function"),bl=Ro("number"),Po=e=>e!==null&&typeof e=="object",Km=e=>e===!0||e===!1,xo=e=>{if(Co(e)!=="object")return!1;let t=ks(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},Jm=ut("Date"),Ym=ut("File"),Zm=ut("Blob"),Qm=ut("FileList"),e1=e=>Po(e)&&Ne(e.pipe),t1=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||Ne(e.append)&&((t=Co(e))==="formdata"||t==="object"&&Ne(e.toString)&&e.toString()==="[object FormData]"))},r1=ut("URLSearchParams"),i1=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function mi(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let i,o;if(typeof e!="object"&&(e=[e]),_r(e))for(i=0,o=e.length;i<o;i++)t.call(null,e[i],i,e);else{let n=r?Object.getOwnPropertyNames(e):Object.keys(e),s=n.length,a;for(i=0;i<s;i++)a=n[i],t.call(null,e[a],a,e)}}function wl(e,t){t=t.toLowerCase();let r=Object.keys(e),i=r.length,o;for(;i-- >0;)if(o=r[i],t===o.toLowerCase())return o;return null}var Sl=(()=>typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global)(),El=e=>!fi(e)&&e!==Sl;function _s(){let{caseless:e}=El(this)&&this||{},t={},r=(i,o)=>{let n=e&&wl(t,o)||o;xo(t[n])&&xo(i)?t[n]=_s(t[n],i):xo(i)?t[n]=_s({},i):_r(i)?t[n]=i.slice():t[n]=i};for(let i=0,o=arguments.length;i<o;i++)arguments[i]&&mi(arguments[i],r);return t}var o1=(e,t,r,{allOwnKeys:i}={})=>(mi(t,(o,n)=>{r&&Ne(o)?e[n]=pi(o,r):e[n]=o},{allOwnKeys:i}),e),n1=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),s1=(e,t,r,i)=>{e.prototype=Object.create(t.prototype,i),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},a1=(e,t,r,i)=>{let o,n,s,a={};if(t=t||{},e==null)return t;do{for(o=Object.getOwnPropertyNames(e),n=o.length;n-- >0;)s=o[n],(!i||i(s,e,t))&&!a[s]&&(t[s]=e[s],a[s]=!0);e=r!==!1&&ks(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},c1=(e,t,r)=>{e=String(e),(r===void 0||r>e.length)&&(r=e.length),r-=t.length;let i=e.indexOf(t,r);return i!==-1&&i===r},l1=e=>{if(!e)return null;if(_r(e))return e;let t=e.length;if(!bl(t))return null;let r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},u1=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&ks(Uint8Array)),d1=(e,t)=>{let i=(e&&e[Symbol.iterator]).call(e),o;for(;(o=i.next())&&!o.done;){let n=o.value;t.call(e,n[0],n[1])}},h1=(e,t)=>{let r,i=[];for(;(r=e.exec(t))!==null;)i.push(r);return i},p1=ut("HTMLFormElement"),f1=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,i,o){return i.toUpperCase()+o}),gl=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),m1=ut("RegExp"),_l=(e,t)=>{let r=Object.getOwnPropertyDescriptors(e),i={};mi(r,(o,n)=>{let s;(s=t(o,n,e))!==!1&&(i[n]=s||o)}),Object.defineProperties(e,i)},g1=e=>{_l(e,(t,r)=>{if(Ne(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let i=e[r];if(!!Ne(i)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},y1=(e,t)=>{let r={},i=o=>{o.forEach(n=>{r[n]=!0})};return _r(e)?i(e):i(String(e).split(t)),r},v1=()=>{},b1=(e,t)=>(e=+e,Number.isFinite(e)?e:t),Es="abcdefghijklmnopqrstuvwxyz",yl="0123456789",kl={DIGIT:yl,ALPHA:Es,ALPHA_DIGIT:Es+Es.toUpperCase()+yl},w1=(e=16,t=kl.ALPHA_DIGIT)=>{let r="",{length:i}=t;for(;e--;)r+=t[Math.random()*i|0];return r};function S1(e){return!!(e&&Ne(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}var E1=e=>{let t=new Array(10),r=(i,o)=>{if(Po(i)){if(t.indexOf(i)>=0)return;if(!("toJSON"in i)){t[o]=i;let n=_r(i)?[]:{};return mi(i,(s,a)=>{let c=r(s,o+1);!fi(c)&&(n[a]=c)}),t[o]=void 0,n}}return i};return r(e,0)},_1=ut("AsyncFunction"),k1=e=>e&&(Po(e)||Ne(e))&&Ne(e.then)&&Ne(e.catch),p={isArray:_r,isArrayBuffer:vl,isBuffer:qm,isFormData:t1,isArrayBufferView:$m,isString:Xm,isNumber:bl,isBoolean:Km,isObject:Po,isPlainObject:xo,isUndefined:fi,isDate:Jm,isFile:Ym,isBlob:Zm,isRegExp:m1,isFunction:Ne,isStream:e1,isURLSearchParams:r1,isTypedArray:u1,isFileList:Qm,forEach:mi,merge:_s,extend:o1,trim:i1,stripBOM:n1,inherits:s1,toFlatObject:a1,kindOf:Co,kindOfTest:ut,endsWith:c1,toArray:l1,forEachEntry:d1,matchAll:h1,isHTMLForm:p1,hasOwnProperty:gl,hasOwnProp:gl,reduceDescriptors:_l,freezeMethods:g1,toObjectSet:y1,toCamelCase:f1,noop:v1,toFiniteNumber:b1,findKey:wl,global:Sl,isContextDefined:El,ALPHABET:kl,generateString:w1,isSpecCompliantForm:S1,toJSONObject:E1,isAsyncFn:_1,isThenable:k1};function kr(e,t,r,i,o){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),i&&(this.request=i),o&&(this.response=o)}p.inherits(kr,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:p.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});var Al=kr.prototype,Tl={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{Tl[e]={value:e}});Object.defineProperties(kr,Tl);Object.defineProperty(Al,"isAxiosError",{value:!0});kr.from=(e,t,r,i,o,n)=>{let s=Object.create(Al);return p.toFlatObject(e,s,function(c){return c!==Error.prototype},a=>a!=="isAxiosError"),kr.call(s,e.message,t,r,i,o),s.cause=e,s.name=e.name,n&&Object.assign(s,n),s};var T=kr;var Io=null;function As(e){return p.isPlainObject(e)||p.isArray(e)}function Cl(e){return p.endsWith(e,"[]")?e.slice(0,-2):e}function xl(e,t,r){return e?e.concat(t).map(function(o,n){return o=Cl(o),!r&&n?"["+o+"]":o}).join(r?".":""):t}function A1(e){return p.isArray(e)&&!e.some(As)}var T1=p.toFlatObject(p,{},null,function(t){return/^is[A-Z]/.test(t)});function x1(e,t,r){if(!p.isObject(e))throw new TypeError("target must be an object");t=t||new(Io||FormData),r=p.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(m,y){return!p.isUndefined(y[m])});let i=r.metaTokens,o=r.visitor||u,n=r.dots,s=r.indexes,c=(r.Blob||typeof Blob<"u"&&Blob)&&p.isSpecCompliantForm(t);if(!p.isFunction(o))throw new TypeError("visitor must be a function");function l(h){if(h===null)return"";if(p.isDate(h))return h.toISOString();if(!c&&p.isBlob(h))throw new T("Blob is not supported. Use a Buffer instead.");return p.isArrayBuffer(h)||p.isTypedArray(h)?c&&typeof Blob=="function"?new Blob([h]):Buffer.from(h):h}function u(h,m,y){let b=h;if(h&&!y&&typeof h=="object"){if(p.endsWith(m,"{}"))m=i?m:m.slice(0,-2),h=JSON.stringify(h);else if(p.isArray(h)&&A1(h)||(p.isFileList(h)||p.endsWith(m,"[]"))&&(b=p.toArray(h)))return m=Cl(m),b.forEach(function(P,ae){!(p.isUndefined(P)||P===null)&&t.append(s===!0?xl([m],ae,n):s===null?m:m+"[]",l(P))}),!1}return As(h)?!0:(t.append(xl(y,m,n),l(h)),!1)}let d=[],f=Object.assign(T1,{defaultVisitor:u,convertValue:l,isVisitable:As});function g(h,m){if(!p.isUndefined(h)){if(d.indexOf(h)!==-1)throw Error("Circular reference detected in "+m.join("."));d.push(h),p.forEach(h,function(b,k){(!(p.isUndefined(b)||b===null)&&o.call(t,b,p.isString(k)?k.trim():k,m,f))===!0&&g(b,m?m.concat(k):[k])}),d.pop()}}if(!p.isObject(e))throw new TypeError("data must be an object");return g(e),t}var Ut=x1;function Rl(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(i){return t[i]})}function Pl(e,t){this._pairs=[],e&&Ut(e,this,t)}var Il=Pl.prototype;Il.append=function(t,r){this._pairs.push([t,r])};Il.toString=function(t){let r=t?function(i){return t.call(this,i,Rl)}:Rl;return this._pairs.map(function(o){return r(o[0])+"="+r(o[1])},"").join("&")};var Oo=Pl;function C1(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function gi(e,t,r){if(!t)return e;let i=r&&r.encode||C1,o=r&&r.serialize,n;if(o?n=o(t,r):n=p.isURLSearchParams(t)?t.toString():new Oo(t,r).toString(i),n){let s=e.indexOf("#");s!==-1&&(e=e.slice(0,s)),e+=(e.indexOf("?")===-1?"?":"&")+n}return e}var Ts=class{constructor(){this.handlers=[]}use(t,r,i){return this.handlers.push({fulfilled:t,rejected:r,synchronous:i?i.synchronous:!1,runWhen:i?i.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){p.forEach(this.handlers,function(i){i!==null&&t(i)})}},xs=Ts;var Do={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var Ol=typeof URLSearchParams<"u"?URLSearchParams:Oo;var Dl=typeof FormData<"u"?FormData:null;var Fl=typeof Blob<"u"?Blob:null;var R1=(()=>{let e;return typeof navigator<"u"&&((e=navigator.product)==="ReactNative"||e==="NativeScript"||e==="NS")?!1:typeof window<"u"&&typeof document<"u"})(),P1=(()=>typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function")(),ue={isBrowser:!0,classes:{URLSearchParams:Ol,FormData:Dl,Blob:Fl},isStandardBrowserEnv:R1,isStandardBrowserWebWorkerEnv:P1,protocols:["http","https","file","blob","url","data"]};function Cs(e,t){return Ut(e,new ue.classes.URLSearchParams,Object.assign({visitor:function(r,i,o,n){return ue.isNode&&p.isBuffer(r)?(this.append(i,r.toString("base64")),!1):n.defaultVisitor.apply(this,arguments)}},t))}function I1(e){return p.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function O1(e){let t={},r=Object.keys(e),i,o=r.length,n;for(i=0;i<o;i++)n=r[i],t[n]=e[n];return t}function D1(e){function t(r,i,o,n){let s=r[n++],a=Number.isFinite(+s),c=n>=r.length;return s=!s&&p.isArray(o)?o.length:s,c?(p.hasOwnProp(o,s)?o[s]=[o[s],i]:o[s]=i,!a):((!o[s]||!p.isObject(o[s]))&&(o[s]=[]),t(r,i,o[s],n)&&p.isArray(o[s])&&(o[s]=O1(o[s])),!a)}if(p.isFormData(e)&&p.isFunction(e.entries)){let r={};return p.forEachEntry(e,(i,o)=>{t(I1(i),o,r,0)}),r}return null}var Fo=D1;function F1(e,t,r){if(p.isString(e))try{return(t||JSON.parse)(e),p.trim(e)}catch(i){if(i.name!=="SyntaxError")throw i}return(r||JSON.stringify)(e)}var Rs={transitional:Do,adapter:ue.isNode?"http":"xhr",transformRequest:[function(t,r){let i=r.getContentType()||"",o=i.indexOf("application/json")>-1,n=p.isObject(t);if(n&&p.isHTMLForm(t)&&(t=new FormData(t)),p.isFormData(t))return o&&o?JSON.stringify(Fo(t)):t;if(p.isArrayBuffer(t)||p.isBuffer(t)||p.isStream(t)||p.isFile(t)||p.isBlob(t))return t;if(p.isArrayBufferView(t))return t.buffer;if(p.isURLSearchParams(t))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let a;if(n){if(i.indexOf("application/x-www-form-urlencoded")>-1)return Cs(t,this.formSerializer).toString();if((a=p.isFileList(t))||i.indexOf("multipart/form-data")>-1){let c=this.env&&this.env.FormData;return Ut(a?{"files[]":t}:t,c&&new c,this.formSerializer)}}return n||o?(r.setContentType("application/json",!1),F1(t)):t}],transformResponse:[function(t){let r=this.transitional||Rs.transitional,i=r&&r.forcedJSONParsing,o=this.responseType==="json";if(t&&p.isString(t)&&(i&&!this.responseType||o)){let s=!(r&&r.silentJSONParsing)&&o;try{return JSON.parse(t)}catch(a){if(s)throw a.name==="SyntaxError"?T.from(a,T.ERR_BAD_RESPONSE,this,null,this.response):a}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ue.classes.FormData,Blob:ue.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};p.forEach(["delete","get","head","post","put","patch"],e=>{Rs.headers[e]={}});var Ar=Rs;var B1=p.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Bl=e=>{let t={},r,i,o;return e&&e.split(`
2
+ `).forEach(function(s){o=s.indexOf(":"),r=s.substring(0,o).trim().toLowerCase(),i=s.substring(o+1).trim(),!(!r||t[r]&&B1[r])&&(r==="set-cookie"?t[r]?t[r].push(i):t[r]=[i]:t[r]=t[r]?t[r]+", "+i:i)}),t};var Ml=Symbol("internals");function yi(e){return e&&String(e).trim().toLowerCase()}function Bo(e){return e===!1||e==null?e:p.isArray(e)?e.map(Bo):String(e)}function M1(e){let t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g,i;for(;i=r.exec(e);)t[i[1]]=i[2];return t}var L1=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function Ps(e,t,r,i,o){if(p.isFunction(i))return i.call(this,t,r);if(o&&(t=r),!!p.isString(t)){if(p.isString(i))return t.indexOf(i)!==-1;if(p.isRegExp(i))return i.test(t)}}function U1(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,r,i)=>r.toUpperCase()+i)}function N1(e,t){let r=p.toCamelCase(" "+t);["get","set","has"].forEach(i=>{Object.defineProperty(e,i+r,{value:function(o,n,s){return this[i].call(this,t,o,n,s)},configurable:!0})})}var Tr=class{constructor(t){t&&this.set(t)}set(t,r,i){let o=this;function n(a,c,l){let u=yi(c);if(!u)throw new Error("header name must be a non-empty string");let d=p.findKey(o,u);(!d||o[d]===void 0||l===!0||l===void 0&&o[d]!==!1)&&(o[d||c]=Bo(a))}let s=(a,c)=>p.forEach(a,(l,u)=>n(l,u,c));return p.isPlainObject(t)||t instanceof this.constructor?s(t,r):p.isString(t)&&(t=t.trim())&&!L1(t)?s(Bl(t),r):t!=null&&n(r,t,i),this}get(t,r){if(t=yi(t),t){let i=p.findKey(this,t);if(i){let o=this[i];if(!r)return o;if(r===!0)return M1(o);if(p.isFunction(r))return r.call(this,o,i);if(p.isRegExp(r))return r.exec(o);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,r){if(t=yi(t),t){let i=p.findKey(this,t);return!!(i&&this[i]!==void 0&&(!r||Ps(this,this[i],i,r)))}return!1}delete(t,r){let i=this,o=!1;function n(s){if(s=yi(s),s){let a=p.findKey(i,s);a&&(!r||Ps(i,i[a],a,r))&&(delete i[a],o=!0)}}return p.isArray(t)?t.forEach(n):n(t),o}clear(t){let r=Object.keys(this),i=r.length,o=!1;for(;i--;){let n=r[i];(!t||Ps(this,this[n],n,t,!0))&&(delete this[n],o=!0)}return o}normalize(t){let r=this,i={};return p.forEach(this,(o,n)=>{let s=p.findKey(i,n);if(s){r[s]=Bo(o),delete r[n];return}let a=t?U1(n):String(n).trim();a!==n&&delete r[n],r[a]=Bo(o),i[a]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){let r=Object.create(null);return p.forEach(this,(i,o)=>{i!=null&&i!==!1&&(r[o]=t&&p.isArray(i)?i.join(", "):i)}),r}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,r])=>t+": "+r).join(`
3
+ `)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...r){let i=new this(t);return r.forEach(o=>i.set(o)),i}static accessor(t){let i=(this[Ml]=this[Ml]={accessors:{}}).accessors,o=this.prototype;function n(s){let a=yi(s);i[a]||(N1(o,s),i[a]=!0)}return p.isArray(t)?t.forEach(n):n(t),this}};Tr.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);p.reduceDescriptors(Tr.prototype,({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(i){this[r]=i}}});p.freezeMethods(Tr);var ye=Tr;function vi(e,t){let r=this||Ar,i=t||r,o=ye.from(i.headers),n=i.data;return p.forEach(e,function(a){n=a.call(r,n,o.normalize(),t?t.status:void 0)}),o.normalize(),n}function bi(e){return!!(e&&e.__CANCEL__)}function Ll(e,t,r){T.call(this,e??"canceled",T.ERR_CANCELED,t,r),this.name="CanceledError"}p.inherits(Ll,T,{__CANCEL__:!0});var Nt=Ll;function Is(e,t,r){let i=r.config.validateStatus;!r.status||!i||i(r.status)?e(r):t(new T("Request failed with status code "+r.status,[T.ERR_BAD_REQUEST,T.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}var Ul=ue.isStandardBrowserEnv?function(){return{write:function(r,i,o,n,s,a){let c=[];c.push(r+"="+encodeURIComponent(i)),p.isNumber(o)&&c.push("expires="+new Date(o).toGMTString()),p.isString(n)&&c.push("path="+n),p.isString(s)&&c.push("domain="+s),a===!0&&c.push("secure"),document.cookie=c.join("; ")},read:function(r){let i=document.cookie.match(new RegExp("(^|;\\s*)("+r+")=([^;]*)"));return i?decodeURIComponent(i[3]):null},remove:function(r){this.write(r,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}();function Os(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function Ds(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}function wi(e,t){return e&&!Os(t)?Ds(e,t):t}var Nl=ue.isStandardBrowserEnv?function(){let t=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a"),i;function o(n){let s=n;return t&&(r.setAttribute("href",s),s=r.href),r.setAttribute("href",s),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:r.pathname.charAt(0)==="/"?r.pathname:"/"+r.pathname}}return i=o(window.location.href),function(s){let a=p.isString(s)?o(s):s;return a.protocol===i.protocol&&a.host===i.host}}():function(){return function(){return!0}}();function Fs(e){let t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function j1(e,t){e=e||10;let r=new Array(e),i=new Array(e),o=0,n=0,s;return t=t!==void 0?t:1e3,function(c){let l=Date.now(),u=i[n];s||(s=l),r[o]=c,i[o]=l;let d=n,f=0;for(;d!==o;)f+=r[d++],d=d%e;if(o=(o+1)%e,o===n&&(n=(n+1)%e),l-s<t)return;let g=u&&l-u;return g?Math.round(f*1e3/g):void 0}}var jl=j1;function Vl(e,t){let r=0,i=jl(50,250);return o=>{let n=o.loaded,s=o.lengthComputable?o.total:void 0,a=n-r,c=i(a),l=n<=s;r=n;let u={loaded:n,total:s,progress:s?n/s:void 0,bytes:a,rate:c||void 0,estimated:c&&s&&l?(s-n)/c:void 0,event:o};u[t?"download":"upload"]=!0,e(u)}}var V1=typeof XMLHttpRequest<"u",zl=V1&&function(e){return new Promise(function(r,i){let o=e.data,n=ye.from(e.headers).normalize(),s=e.responseType,a;function c(){e.cancelToken&&e.cancelToken.unsubscribe(a),e.signal&&e.signal.removeEventListener("abort",a)}p.isFormData(o)&&(ue.isStandardBrowserEnv||ue.isStandardBrowserWebWorkerEnv?n.setContentType(!1):n.setContentType("multipart/form-data;",!1));let l=new XMLHttpRequest;if(e.auth){let g=e.auth.username||"",h=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";n.set("Authorization","Basic "+btoa(g+":"+h))}let u=wi(e.baseURL,e.url);l.open(e.method.toUpperCase(),gi(u,e.params,e.paramsSerializer),!0),l.timeout=e.timeout;function d(){if(!l)return;let g=ye.from("getAllResponseHeaders"in l&&l.getAllResponseHeaders()),m={data:!s||s==="text"||s==="json"?l.responseText:l.response,status:l.status,statusText:l.statusText,headers:g,config:e,request:l};Is(function(b){r(b),c()},function(b){i(b),c()},m),l=null}if("onloadend"in l?l.onloadend=d:l.onreadystatechange=function(){!l||l.readyState!==4||l.status===0&&!(l.responseURL&&l.responseURL.indexOf("file:")===0)||setTimeout(d)},l.onabort=function(){!l||(i(new T("Request aborted",T.ECONNABORTED,e,l)),l=null)},l.onerror=function(){i(new T("Network Error",T.ERR_NETWORK,e,l)),l=null},l.ontimeout=function(){let h=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded",m=e.transitional||Do;e.timeoutErrorMessage&&(h=e.timeoutErrorMessage),i(new T(h,m.clarifyTimeoutError?T.ETIMEDOUT:T.ECONNABORTED,e,l)),l=null},ue.isStandardBrowserEnv){let g=(e.withCredentials||Nl(u))&&e.xsrfCookieName&&Ul.read(e.xsrfCookieName);g&&n.set(e.xsrfHeaderName,g)}o===void 0&&n.setContentType(null),"setRequestHeader"in l&&p.forEach(n.toJSON(),function(h,m){l.setRequestHeader(m,h)}),p.isUndefined(e.withCredentials)||(l.withCredentials=!!e.withCredentials),s&&s!=="json"&&(l.responseType=e.responseType),typeof e.onDownloadProgress=="function"&&l.addEventListener("progress",Vl(e.onDownloadProgress,!0)),typeof e.onUploadProgress=="function"&&l.upload&&l.upload.addEventListener("progress",Vl(e.onUploadProgress)),(e.cancelToken||e.signal)&&(a=g=>{!l||(i(!g||g.type?new Nt(null,e,l):g),l.abort(),l=null)},e.cancelToken&&e.cancelToken.subscribe(a),e.signal&&(e.signal.aborted?a():e.signal.addEventListener("abort",a)));let f=Fs(u);if(f&&ue.protocols.indexOf(f)===-1){i(new T("Unsupported protocol "+f+":",T.ERR_BAD_REQUEST,e));return}l.send(o||null)})};var Mo={http:Io,xhr:zl};p.forEach(Mo,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});var Lo={getAdapter:e=>{e=p.isArray(e)?e:[e];let{length:t}=e,r,i;for(let o=0;o<t&&(r=e[o],!(i=p.isString(r)?Mo[r.toLowerCase()]:r));o++);if(!i)throw i===!1?new T(`Adapter ${r} is not supported by the environment`,"ERR_NOT_SUPPORT"):new Error(p.hasOwnProp(Mo,r)?`Adapter '${r}' is not available in the build`:`Unknown adapter '${r}'`);if(!p.isFunction(i))throw new TypeError("adapter is not a function");return i},adapters:Mo};function Bs(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Nt(null,e)}function Uo(e){return Bs(e),e.headers=ye.from(e.headers),e.data=vi.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),Lo.getAdapter(e.adapter||Ar.adapter)(e).then(function(i){return Bs(e),i.data=vi.call(e,e.transformResponse,i),i.headers=ye.from(i.headers),i},function(i){return bi(i)||(Bs(e),i&&i.response&&(i.response.data=vi.call(e,e.transformResponse,i.response),i.response.headers=ye.from(i.response.headers))),Promise.reject(i)})}var Gl=e=>e instanceof ye?e.toJSON():e;function xt(e,t){t=t||{};let r={};function i(l,u,d){return p.isPlainObject(l)&&p.isPlainObject(u)?p.merge.call({caseless:d},l,u):p.isPlainObject(u)?p.merge({},u):p.isArray(u)?u.slice():u}function o(l,u,d){if(p.isUndefined(u)){if(!p.isUndefined(l))return i(void 0,l,d)}else return i(l,u,d)}function n(l,u){if(!p.isUndefined(u))return i(void 0,u)}function s(l,u){if(p.isUndefined(u)){if(!p.isUndefined(l))return i(void 0,l)}else return i(void 0,u)}function a(l,u,d){if(d in t)return i(l,u);if(d in e)return i(void 0,l)}let c={url:n,method:n,data:n,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,beforeRedirect:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:a,headers:(l,u)=>o(Gl(l),Gl(u),!0)};return p.forEach(Object.keys(Object.assign({},e,t)),function(u){let d=c[u]||o,f=d(e[u],t[u],u);p.isUndefined(f)&&d!==a||(r[u]=f)}),r}var No="1.5.0";var Ms={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{Ms[e]=function(i){return typeof i===e||"a"+(t<1?"n ":" ")+e}});var Hl={};Ms.transitional=function(t,r,i){function o(n,s){return"[Axios v"+No+"] Transitional option '"+n+"'"+s+(i?". "+i:"")}return(n,s,a)=>{if(t===!1)throw new T(o(s," has been removed"+(r?" in "+r:"")),T.ERR_DEPRECATED);return r&&!Hl[s]&&(Hl[s]=!0,console.warn(o(s," has been deprecated since v"+r+" and will be removed in the near future"))),t?t(n,s,a):!0}};function z1(e,t,r){if(typeof e!="object")throw new T("options must be an object",T.ERR_BAD_OPTION_VALUE);let i=Object.keys(e),o=i.length;for(;o-- >0;){let n=i[o],s=t[n];if(s){let a=e[n],c=a===void 0||s(a,n,e);if(c!==!0)throw new T("option "+n+" must be "+c,T.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new T("Unknown option "+n,T.ERR_BAD_OPTION)}}var jo={assertOptions:z1,validators:Ms};var jt=jo.validators,xr=class{constructor(t){this.defaults=t,this.interceptors={request:new xs,response:new xs}}request(t,r){typeof t=="string"?(r=r||{},r.url=t):r=t||{},r=xt(this.defaults,r);let{transitional:i,paramsSerializer:o,headers:n}=r;i!==void 0&&jo.assertOptions(i,{silentJSONParsing:jt.transitional(jt.boolean),forcedJSONParsing:jt.transitional(jt.boolean),clarifyTimeoutError:jt.transitional(jt.boolean)},!1),o!=null&&(p.isFunction(o)?r.paramsSerializer={serialize:o}:jo.assertOptions(o,{encode:jt.function,serialize:jt.function},!0)),r.method=(r.method||this.defaults.method||"get").toLowerCase();let s=n&&p.merge(n.common,n[r.method]);n&&p.forEach(["delete","get","head","post","put","patch","common"],h=>{delete n[h]}),r.headers=ye.concat(s,n);let a=[],c=!0;this.interceptors.request.forEach(function(m){typeof m.runWhen=="function"&&m.runWhen(r)===!1||(c=c&&m.synchronous,a.unshift(m.fulfilled,m.rejected))});let l=[];this.interceptors.response.forEach(function(m){l.push(m.fulfilled,m.rejected)});let u,d=0,f;if(!c){let h=[Uo.bind(this),void 0];for(h.unshift.apply(h,a),h.push.apply(h,l),f=h.length,u=Promise.resolve(r);d<f;)u=u.then(h[d++],h[d++]);return u}f=a.length;let g=r;for(d=0;d<f;){let h=a[d++],m=a[d++];try{g=h(g)}catch(y){m.call(this,y);break}}try{u=Uo.call(this,g)}catch(h){return Promise.reject(h)}for(d=0,f=l.length;d<f;)u=u.then(l[d++],l[d++]);return u}getUri(t){t=xt(this.defaults,t);let r=wi(t.baseURL,t.url);return gi(r,t.params,t.paramsSerializer)}};p.forEach(["delete","get","head","options"],function(t){xr.prototype[t]=function(r,i){return this.request(xt(i||{},{method:t,url:r,data:(i||{}).data}))}});p.forEach(["post","put","patch"],function(t){function r(i){return function(n,s,a){return this.request(xt(a||{},{method:t,headers:i?{"Content-Type":"multipart/form-data"}:{},url:n,data:s}))}}xr.prototype[t]=r(),xr.prototype[t+"Form"]=r(!0)});var Si=xr;var Ei=class{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let r;this.promise=new Promise(function(n){r=n});let i=this;this.promise.then(o=>{if(!i._listeners)return;let n=i._listeners.length;for(;n-- >0;)i._listeners[n](o);i._listeners=null}),this.promise.then=o=>{let n,s=new Promise(a=>{i.subscribe(a),n=a}).then(o);return s.cancel=function(){i.unsubscribe(n)},s},t(function(n,s,a){i.reason||(i.reason=new Nt(n,s,a),r(i.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;let r=this._listeners.indexOf(t);r!==-1&&this._listeners.splice(r,1)}static source(){let t;return{token:new Ei(function(o){t=o}),cancel:t}}},Wl=Ei;function Ls(e){return function(r){return e.apply(null,r)}}function Us(e){return p.isObject(e)&&e.isAxiosError===!0}var Ns={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Ns).forEach(([e,t])=>{Ns[t]=e});var ql=Ns;function $l(e){let t=new Si(e),r=pi(Si.prototype.request,t);return p.extend(r,Si.prototype,t,{allOwnKeys:!0}),p.extend(r,t,null,{allOwnKeys:!0}),r.create=function(o){return $l(xt(e,o))},r}var Z=$l(Ar);Z.Axios=Si;Z.CanceledError=Nt;Z.CancelToken=Wl;Z.isCancel=bi;Z.VERSION=No;Z.toFormData=Ut;Z.AxiosError=T;Z.Cancel=Z.CanceledError;Z.all=function(t){return Promise.all(t)};Z.spread=Ls;Z.isAxiosError=Us;Z.mergeConfig=xt;Z.AxiosHeaders=ye;Z.formToJSON=e=>Fo(p.isHTMLForm(e)?new FormData(e):e);Z.getAdapter=Lo.getAdapter;Z.HttpStatusCode=ql;Z.default=Z;var Vt=Z;var{Axios:Py,AxiosError:Iy,CanceledError:Oy,isCancel:Dy,CancelToken:Fy,VERSION:By,all:My,Cancel:Ly,isAxiosError:Uy,spread:Ny,toFormData:jy,AxiosHeaders:Vy,HttpStatusCode:zy,formToJSON:Gy,getAdapter:Hy,mergeConfig:Wy}=Vt;var Ct=class{constructor(t,r){this.backend=r;this.imageUrlPackage=[];this.imageBatchNum=0;this.contImages=0;this.proctoringId=t}async uploadImages(t,r,i){let{file:o,onProgress:n}=t;try{let s=l=>{let u=l.loadedBytes/o.size*100;n&&n(Math.round(u))},a;if(this.imageBatchNum===this.contImages){let l=[];for(let d=this.imageBatchNum;d<this.imageBatchNum+60;d++){let f=`${this.proctoringId}/${this.proctoringId}_${d+1}.jpg`;(d+1)%i==0&&(f=`${this.proctoringId}/${this.proctoringId}_${d+1}_realtime.jpg`),l.push({objectName:f,contentType:"image/jpeg"})}(await this.backend.getSignedUrlImage(r,l)).map(d=>{this.imageUrlPackage.push(d)}),this.imageBatchNum+=60}let c=!1;return c=await Vt.request({url:this.imageUrlPackage[this.contImages],method:"PUT",headers:{"Content-Type":o.type,"x-ms-blob-type":"BlockBlob"},data:o,onUploadProgress:l=>{s({loadedBytes:l.loaded})}}).then(l=>l.status==200||l.status==201?(this.contImages++,!0):!1).catch(()=>!1).finally(()=>{}),{storage:"upload",url:a,uploaded:c}}catch{throw I.registerError(this.proctoringId,`Failed to upload to AWS
4
+ File name: ${o.name}
5
+ File type: ${o.type}
6
+ File size: ${o.size}`),new Error("Failed to upload to AWS")}}async upload(t,r,i){let{file:o,onProgress:n}=t;try{let s=l=>{let u=l.loadedBytes/o.size*100;n&&n(Math.round(u))},a;if(i){if(this.imageBatchNum===this.contImages){let l=[];for(let d=this.imageBatchNum;d<this.imageBatchNum+20;d++)l.push({objectName:`${this.proctoringId}/${this.proctoringId}_${d+1}.jpg`,contentType:"image/jpeg"});(await this.backend.getSignedUrlImage(r,l)).map(d=>{this.imageUrlPackage.push(d)}),this.imageBatchNum+=20}}else a=await this.backend.getSignedUrl(r,o,this.proctoringId);let c=!1;return i?c=await Vt.request({url:this.imageUrlPackage[this.contImages],method:"PUT",headers:{"Content-Type":o.type,"x-ms-blob-type":"BlockBlob"},data:o,onUploadProgress:l=>{s({loadedBytes:l.loaded})}}).then(()=>!0).catch(()=>!1).finally(()=>{this.contImages++}):c=await Vt.request({url:a,method:"PUT",headers:{"Content-Type":o.type,"x-ms-blob-type":"BlockBlob"},data:o,onUploadProgress:l=>{s({loadedBytes:l.loaded})}}).then(()=>!0).catch(()=>!1),{storage:"upload",url:a,uploaded:c}}catch{throw I.registerError(this.proctoringId,`Failed to upload to AWS
7
+ File name: ${o.name}
8
+ File type: ${o.type}
9
+ File size: ${o.size}`),new Error("Failed to upload to AWS")}}};var Xl="not_shared_first_screen",Kl="not_shared_screen",Vo="multiple_monitors_detected",Jl="proctoring_already_started",zo="proctoring_not_started";var Yl="another_stream_active",Zl="stream_under_minimum_permitted",Ql="browser_not_supported",eu="token_missing",tu="credentials_missing";var va=typeof self<"u"?self:{};function rd(e,t){e:{for(var r=["CLOSURE_FLAGS"],i=va,o=0;o<r.length;o++)if((i=i[r[o]])==null){r=null;break e}r=i}return(e=r&&r[e])!=null?e:t}function cr(){throw Error("Invalid UTF8")}function ru(e,t){return t=String.fromCharCode.apply(null,t),e==null?t:e+t}var Go,js,H1=typeof TextDecoder<"u",W1,q1=typeof TextEncoder<"u";function id(e){if(q1)e=(W1||=new TextEncoder).encode(e);else{let r=0,i=new Uint8Array(3*e.length);for(let o=0;o<e.length;o++){var t=e.charCodeAt(o);if(128>t)i[r++]=t;else{if(2048>t)i[r++]=t>>6|192;else{if(55296<=t&&57343>=t){if(56319>=t&&o<e.length){let n=e.charCodeAt(++o);if(56320<=n&&57343>=n){t=1024*(t-55296)+n-56320+65536,i[r++]=t>>18|240,i[r++]=t>>12&63|128,i[r++]=t>>6&63|128,i[r++]=63&t|128;continue}o--}t=65533}i[r++]=t>>12|224,i[r++]=t>>6&63|128}i[r++]=63&t|128}}e=r===i.length?i:i.subarray(0,r)}return e}var Ii,od=rd(610401301,!1),ba=rd(572417392,!0),iu=va.navigator;function Ks(e){return!!od&&!!Ii&&Ii.brands.some(({brand:t})=>t&&t.indexOf(e)!=-1)}function Ve(e){var t;return(t=va.navigator)&&(t=t.userAgent)||(t=""),t.indexOf(e)!=-1}function zt(){return!!od&&!!Ii&&0<Ii.brands.length}function Vs(){return zt()?Ks("Chromium"):(Ve("Chrome")||Ve("CriOS"))&&!(!zt()&&Ve("Edge"))||Ve("Silk")}Ii=iu&&iu.userAgentData||null;var $1=!zt()&&(Ve("Trident")||Ve("MSIE"));!Ve("Android")||Vs(),Vs(),Ve("Safari")&&(Vs()||!zt()&&Ve("Coast")||!zt()&&Ve("Opera")||!zt()&&Ve("Edge")||(zt()?Ks("Microsoft Edge"):Ve("Edg/"))||zt()&&Ks("Opera"));var nd={},ki=null;function X1(e){var t=e.length,r=3*t/4;r%3?r=Math.floor(r):"=.".indexOf(e[t-1])!=-1&&(r="=.".indexOf(e[t-2])!=-1?r-2:r-1);var i=new Uint8Array(r),o=0;return function(n,s){function a(g){for(;c<n.length;){var h=n.charAt(c++),m=ki[h];if(m!=null)return m;if(!/^[\s\xa0]*$/.test(h))throw Error("Unknown base64 encoding at char: "+h)}return g}sd();for(var c=0;;){var l=a(-1),u=a(0),d=a(64),f=a(64);if(f===64&&l===-1)break;s(l<<2|u>>4),d!=64&&(s(u<<4&240|d>>2),f!=64&&s(d<<6&192|f))}}(e,function(n){i[o++]=n}),o!==r?i.subarray(0,o):i}function sd(){if(!ki){ki={};for(var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),t=["+/=","+/","-_=","-_.","-_"],r=0;5>r;r++){var i=e.concat(t[r].split(""));nd[r]=i;for(var o=0;o<i.length;o++){var n=i[o];ki[n]===void 0&&(ki[n]=o)}}}}var ad=typeof Uint8Array<"u",cd=!$1&&typeof btoa=="function";function ou(e){if(!cd){var t;t===void 0&&(t=0),sd(),t=nd[t];var r=Array(Math.floor(e.length/3)),i=t[64]||"";let c=0,l=0;for(;c<e.length-2;c+=3){var o=e[c],n=e[c+1],s=e[c+2],a=t[o>>2];o=t[(3&o)<<4|n>>4],n=t[(15&n)<<2|s>>6],s=t[63&s],r[l++]=a+o+n+s}switch(a=0,s=i,e.length-c){case 2:s=t[(15&(a=e[c+1]))<<2]||i;case 1:e=e[c],r[l]=t[e>>2]+t[(3&e)<<4|a>>4]+s+i}return r.join("")}for(t="",r=0,i=e.length-10240;r<i;)t+=String.fromCharCode.apply(null,e.subarray(r,r+=10240));return t+=String.fromCharCode.apply(null,r?e.subarray(r):e),btoa(t)}var nu=/[-_.]/g,K1={"-":"+",_:"/",".":"="};function J1(e){return K1[e]||""}function ld(e){if(!cd)return X1(e);nu.test(e)&&(e=e.replace(nu,J1)),e=atob(e);let t=new Uint8Array(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}function pn(e){return ad&&e!=null&&e instanceof Uint8Array}var Y1;function fn(){return Y1||=new Uint8Array(0)}var Ir={},Z1;function ud(e){if(e!==Ir)throw Error("illegal external caller")}function Or(){return Z1||=new Gt(null,Ir)}function wa(e){ud(Ir);var t=e.Z;return(t=t==null||pn(t)?t:typeof t=="string"?ld(t):null)==null?t:e.Z=t}var Gt=class{constructor(e,t){if(ud(t),this.Z=e,e!=null&&e.length===0)throw Error("ByteString should be constructed with non-empty values")}wa(){let e=wa(this);return e?new Uint8Array(e):fn()}};function dd(e,t){return Error(`Invalid wire type: ${e} (at position ${t})`)}function Sa(){return Error("Failed to read varint, encoding is invalid.")}function hd(e,t){return Error(`Tried to read past the end of the data ${t} > ${e}`)}function pd(e){return e.length==0?Or():new Gt(e,Ir)}function Ea(e){if(typeof e=="string")return{buffer:ld(e),L:!1};if(Array.isArray(e))return{buffer:new Uint8Array(e),L:!1};if(e.constructor===Uint8Array)return{buffer:e,L:!1};if(e.constructor===ArrayBuffer)return{buffer:new Uint8Array(e),L:!1};if(e.constructor===Gt)return{buffer:wa(e)||fn(),L:!0};if(e instanceof Uint8Array)return{buffer:new Uint8Array(e.buffer,e.byteOffset,e.byteLength),L:!1};throw Error("Type not convertible to a Uint8Array, expected a Uint8Array, an ArrayBuffer, a base64 encoded string, a ByteString or an Array of numbers")}function _a(){return typeof BigInt=="function"}var Js=!ba,su=!ba,Q1=typeof Uint8Array.prototype.slice=="function",fd,F=0,Q=0;function dr(e){let t=0>e,r=(e=Math.abs(e))>>>0;if(e=Math.floor((e-r)/4294967296),t){let[i,o]=Ta(r,e);e=o,r=i}F=r>>>0,Q=e>>>0}function ka(e){let t=fd||=new DataView(new ArrayBuffer(8));t.setFloat32(0,+e,!0),Q=0,F=t.getUint32(0,!0)}function Ys(e,t){return 4294967296*t+(e>>>0)}function Aa(e,t){let r=2147483648&t;return r&&(t=~t>>>0,(e=1+~e>>>0)==0&&(t=t+1>>>0)),e=Ys(e,t),r?-e:e}function on(e,t){if(e>>>=0,2097151>=(t>>>=0))var r=""+(4294967296*t+e);else _a()?r=""+(BigInt(t)<<BigInt(32)|BigInt(e)):(e=(16777215&e)+6777216*(r=16777215&(e>>>24|t<<8))+6710656*(t=t>>16&65535),r+=8147497*t,t*=2,1e7<=e&&(r+=Math.floor(e/1e7),e%=1e7),1e7<=r&&(t+=Math.floor(r/1e7),r%=1e7),r=t+au(r)+au(e));return r}function au(e){return e=String(e),"0000000".slice(e.length)+e}function md(){var e=F,t=Q;if(2147483648&t)if(_a())e=""+(BigInt(0|t)<<BigInt(32)|BigInt(e>>>0));else{let[r,i]=Ta(e,t);e="-"+on(r,i)}else e=on(e,t);return e}function mn(e){if(16>e.length)dr(Number(e));else if(_a())e=BigInt(e),F=Number(e&BigInt(4294967295))>>>0,Q=Number(e>>BigInt(32)&BigInt(4294967295));else{let t=+(e[0]==="-");Q=F=0;let r=e.length;for(let i=t,o=(r-t)%6+t;o<=r;i=o,o+=6){let n=Number(e.slice(i,o));Q*=1e6,F=1e6*F+n,4294967296<=F&&(Q+=Math.trunc(F/4294967296),Q>>>=0,F>>>=0)}if(t){let[i,o]=Ta(F,Q);F=i,Q=o}}}function Ta(e,t){return t=~t,e?e=1+~e:t+=1,[e,t]}function xa(e,t){let r,i=0,o=0,n=0,s=e.h,a=e.g;do r=s[a++],i|=(127&r)<<n,n+=7;while(32>n&&128&r);for(32<n&&(o|=(127&r)>>4),n=3;32>n&&128&r;n+=7)r=s[a++],o|=(127&r)<<n;if(hr(e,a),128>r)return t(i>>>0,o>>>0);throw Sa()}function Ca(e){let t=0,r=e.g,i=r+10,o=e.h;for(;r<i;){let n=o[r++];if(t|=n,(128&n)==0)return hr(e,r),!!(127&t)}throw Sa()}function Wt(e){let t=e.h,r=e.g,i=t[r++],o=127&i;if(128&i&&(i=t[r++],o|=(127&i)<<7,128&i&&(i=t[r++],o|=(127&i)<<14,128&i&&(i=t[r++],o|=(127&i)<<21,128&i&&(i=t[r++],o|=i<<28,128&i&&128&t[r++]&&128&t[r++]&&128&t[r++]&&128&t[r++]&&128&t[r++])))))throw Sa();return hr(e,r),o}function qt(e){return Wt(e)>>>0}function Zs(e){var t=e.h;let r=e.g,i=t[r],o=t[r+1],n=t[r+2];return t=t[r+3],hr(e,e.g+4),(i<<0|o<<8|n<<16|t<<24)>>>0}function Qs(e){var t=Zs(e);e=2*(t>>31)+1;let r=t>>>23&255;return t&=8388607,r==255?t?NaN:1/0*e:r==0?e*Math.pow(2,-149)*t:e*Math.pow(2,r-150)*(t+Math.pow(2,23))}function e2(e){return Wt(e)}function zs(e,t,{aa:r=!1}={}){e.aa=r,t&&(t=Ea(t),e.h=t.buffer,e.m=t.L,e.j=0,e.l=e.h.length,e.g=e.j)}function hr(e,t){if(e.g=t,t>e.l)throw hd(e.l,t)}function gd(e,t){if(0>t)throw Error(`Tried to read a negative byte length: ${t}`);let r=e.g,i=r+t;if(i>e.l)throw hd(t,e.l-r);return e.g=i,r}function yd(e,t){if(t==0)return Or();var r=gd(e,t);return e.aa&&e.m?r=e.h.subarray(r,r+t):(e=e.h,r=r===(t=r+t)?fn():Q1?e.slice(r,t):new Uint8Array(e.subarray(r,t))),pd(r)}var cu=[];function vd(e){var t=e.g;if(t.g==t.l)return!1;e.l=e.g.g;var r=qt(e.g);if(t=r>>>3,!(0<=(r&=7)&&5>=r))throw dd(r,e.l);if(1>t)throw Error(`Invalid field number: ${t} (at position ${e.l})`);return e.m=t,e.h=r,!0}function Xo(e){switch(e.h){case 0:e.h!=0?Xo(e):Ca(e.g);break;case 1:hr(e=e.g,e.g+8);break;case 2:if(e.h!=2)Xo(e);else{var t=qt(e.g);hr(e=e.g,e.g+t)}break;case 5:hr(e=e.g,e.g+4);break;case 3:for(t=e.m;;){if(!vd(e))throw Error("Unmatched start-group tag: stream EOF");if(e.h==4){if(e.m!=t)throw Error("Unmatched end-group tag");break}Xo(e)}break;default:throw dd(e.h,e.l)}}function Ni(e,t,r){let i=e.g.l,o=qt(e.g),n=e.g.g+o,s=n-i;if(0>=s&&(e.g.l=n,r(t,e,void 0,void 0,void 0),s=n-e.g.g),s)throw Error(`Message parsing ended unexpectedly. Expected to read ${o} bytes, instead read ${o-s} bytes, either the data ended unexpectedly or the message misreported its own length`);return e.g.g=n,e.g.l=i,t}function Ra(e){var t=qt(e.g),r=gd(e=e.g,t);if(e=e.h,H1){var i,o=e;(i=js)||(i=js=new TextDecoder("utf-8",{fatal:!0})),t=r+t,o=r===0&&t===o.length?o:o.subarray(r,t);try{var n=i.decode(o)}catch(a){if(Go===void 0){try{i.decode(new Uint8Array([128]))}catch{}try{i.decode(new Uint8Array([97])),Go=!0}catch{Go=!1}}throw!Go&&(js=void 0),a}}else{t=(n=r)+t,r=[];let a,c=null;for(;n<t;){var s=e[n++];128>s?r.push(s):224>s?n>=t?cr():(a=e[n++],194>s||(192&a)!=128?(n--,cr()):r.push((31&s)<<6|63&a)):240>s?n>=t-1?cr():(a=e[n++],(192&a)!=128||s===224&&160>a||s===237&&160<=a||(192&(i=e[n++]))!=128?(n--,cr()):r.push((15&s)<<12|(63&a)<<6|63&i)):244>=s?n>=t-2?cr():(a=e[n++],(192&a)!=128||a-144+(s<<28)>>30!=0||(192&(i=e[n++]))!=128||(192&(o=e[n++]))!=128?(n--,cr()):(s=(7&s)<<18|(63&a)<<12|(63&i)<<6|63&o,s-=65536,r.push(55296+(s>>10&1023),56320+(1023&s)))):cr(),8192<=r.length&&(c=ru(c,r),r.length=0)}n=ru(c,r)}return n}function bd(e){let t=qt(e.g);return yd(e.g,t)}function gn(e,t,r){var i=qt(e.g);for(i=e.g.g+i;e.g.g<i;)r.push(t(e.g))}var Ho=[];function lu(e){return e?/^\d+$/.test(e)?(mn(e),new uu(F,Q)):null:t2||=new uu(0,0)}var uu=class{constructor(e,t){this.h=e>>>0,this.g=t>>>0}},t2;function du(e){return e?/^-?\d+$/.test(e)?(mn(e),new hu(F,Q)):null:r2||=new hu(0,0)}var hu=class{constructor(e,t){this.h=e>>>0,this.g=t>>>0}},r2;function nn(e,t,r){for(;0<r||127<t;)e.g.push(127&t|128),t=(t>>>7|r<<25)>>>0,r>>>=7;e.g.push(t)}function ji(e,t){for(;127<t;)e.g.push(127&t|128),t>>>=7;e.g.push(t)}function yn(e,t){if(0<=t)ji(e,t);else{for(let r=0;9>r;r++)e.g.push(127&t|128),t>>=7;e.g.push(1)}}function Oi(e,t){e.g.push(t>>>0&255),e.g.push(t>>>8&255),e.g.push(t>>>16&255),e.g.push(t>>>24&255)}function Dr(e,t){t.length!==0&&(e.l.push(t),e.h+=t.length)}function qe(e,t,r){ji(e.g,8*t+r)}function Pa(e,t){return qe(e,t,2),t=e.g.end(),Dr(e,t),t.push(e.h),t}function Ia(e,t){var r=t.pop();for(r=e.h+e.g.length()-r;127<r;)t.push(127&r|128),r>>>=7,e.h++;t.push(r),e.h++}function vn(e,t,r){qe(e,t,2),ji(e.g,r.length),Dr(e,e.g.end()),Dr(e,r)}function ea(e,t,r,i){r!=null&&(t=Pa(e,t),i(r,e),Ia(e,t))}var $t=class{constructor(t,r,i,o){this.g=t,this.h=r,this.l=i,this.qa=o}};function we(e){return Array.prototype.slice.call(e)}function wd(e){return typeof Symbol=="function"&&typeof Symbol()=="symbol"?Symbol():e}var ft=wd(),pu=wd("0di"),bn=ft?(e,t)=>{e[ft]|=t}:(e,t)=>{e.D!==void 0?e.D|=t:Object.defineProperties(e,{D:{value:t,configurable:!0,writable:!0,enumerable:!1}})};function fu(e){let t=G(e);(1&t)!=1&&(Object.isFrozen(e)&&(e=we(e)),q(e,1|t))}var sn=ft?(e,t)=>{e[ft]&=~t}:(e,t)=>{e.D!==void 0&&(e.D&=~t)};function de(e,t,r){return r?e|t:e&~t}var G=ft?e=>0|e[ft]:e=>0|e.D,R=ft?e=>e[ft]:e=>e.D,q=ft?(e,t)=>{e[ft]=t}:(e,t)=>{e.D!==void 0?e.D=t:Object.defineProperties(e,{D:{value:t,configurable:!0,writable:!0,enumerable:!1}})};function mu(){var e=[];return bn(e,1),e}function jr(e){return bn(e,34),e}function i2(e,t){q(t,-14591&(0|e))}function ta(e,t){q(t,-14557&(34|e))}function an(e){return(e=e>>14&1023)===0?536870912:e}var Vi={},Sd={};function gu(e){return!(!e||typeof e!="object"||e.Na!==Sd)}function Ti(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)&&e.constructor===Object}var Ed=!ba;function _d(e,t,r){if(e!=null){if(typeof e=="string")e=e?new Gt(e,Ir):Or();else if(e.constructor!==Gt)if(pn(e))e=r?pd(e):e.length?new Gt(new Uint8Array(e),Ir):Or();else{if(!t)throw Error();e=void 0}}return e}function ra(e,t,r){if(!Array.isArray(e)||e.length)return!1;let i=G(e);return!!(1&i)||!(!t||!(Array.isArray(t)?t.includes(r):t.has(r)))&&(q(e,1|i),!0)}var ur,yu=[];function vt(e){if(2&e)throw Error()}q(yu,55),ur=Object.freeze(yu);var Fr=class{constructor(t,r,i){this.l=0,this.g=t,this.h=r,this.m=i}next(){if(this.l<this.g.length){let t=this.g[this.l++];return{done:!1,value:this.h?this.h.call(this.m,t):t}}return{done:!0,value:void 0}}[Symbol.iterator](){return new Fr(this.g,this.h,this.m)}},o2={},Ht,Di;function kd(e,t){(t=Ht?t[Ht]:void 0)&&(e[Ht]=we(t))}function ia(e){return(e=Error(e)).__closure__error__context__984382||(e.__closure__error__context__984382={}),e.__closure__error__context__984382.severity="warning",e}function Yt(e){return e==null||typeof e=="number"?e:e==="NaN"||e==="Infinity"||e==="-Infinity"?Number(e):void 0}function Ad(e){return e==null||typeof e=="boolean"?e:typeof e=="number"?!!e:void 0}Object.freeze(new class{}),Object.freeze(new class{});var n2=/^-?([1-9][0-9]*|0)(\.[0-9]+)?$/;function wn(e){let t=typeof e;return t==="number"?Number.isFinite(e):t==="string"&&n2.test(e)}function Vr(e){if(e==null)return e;if(typeof e=="string"){if(!e)return;e=+e}return typeof e=="number"&&Number.isFinite(e)?0|e:void 0}function s2(e){if(e==null)return e;if(typeof e=="string"){if(!e)return;e=+e}return typeof e=="number"&&Number.isFinite(e)?e>>>0:void 0}function vu(e){return e[0]!=="-"&&(20>e.length||e.length===20&&184467>Number(e.substring(0,6)))}function Td(e){return e[0]==="-"?20>e.length||e.length===20&&-922337<Number(e.substring(0,7)):19>e.length||e.length===19&&922337>Number(e.substring(0,6))}function Oa(e){return e=Math.trunc(e),Number.isSafeInteger(e)||(dr(e),e=Aa(F,Q)),e}function Da(e){var t=Math.trunc(Number(e));return Number.isSafeInteger(t)?String(t):((t=e.indexOf("."))!==-1&&(e=e.substring(0,t)),Td(e)||(mn(e),e=md()),e)}function cn(e){return e==null?e:wn(e)?typeof e=="number"?Oa(e):Da(e):void 0}function zi(e){if(typeof e!="string")throw Error();return e}function Gi(e){if(e!=null&&typeof e!="string")throw Error();return e}function Fi(e){return e==null||typeof e=="string"?e:void 0}function Fa(e,t,r,i){if(e!=null&&typeof e=="object"&&e.W===Vi)return e;if(!Array.isArray(e))return r?2&i?(e=t[pu])?t=e:(jr((e=new t).s),t=t[pu]=e):t=new t:t=void 0,t;let o=r=G(e);return o===0&&(o|=32&i),o|=2&i,o!==r&&q(e,o),new t(e)}function a2(e,t,r){if(t){var i=!!i;if(!wn(t=e))throw ia("int64");typeof t=="string"?i=Da(t):i?(i=Math.trunc(t),Number.isSafeInteger(i)?i=String(i):Td(t=String(i))?i=t:(dr(i),i=md())):i=Oa(t)}else i=cn(e);return typeof(r=(e=i)==null?r?0:void 0:e)=="string"&&(i=+r,Number.isSafeInteger(i))?i:r}var ln,Ba,c2;function un(e){switch(typeof e){case"boolean":return Ba||=[0,void 0,!0];case"number":return 0<e?void 0:e===0?c2||=[0,void 0]:[-e,void 0];case"string":return[0,e];case"object":return e}}function pr(e,t){return xd(e,t[0],t[1])}function xd(e,t,r){if(e==null&&(e=ln),ln=void 0,e==null){var i=96;r?(e=[r],i|=512):e=[],t&&(i=-16760833&i|(1023&t)<<14)}else{if(!Array.isArray(e))throw Error();if(64&(i=G(e)))return Di&&delete e[Di],e;if(i|=64,r&&(i|=512,r!==e[0]))throw Error();e:{let o=(r=e).length;if(o){let n=o-1;if(Ti(r[n])){if(1024<=(t=n-(+!!(512&(i|=256))-1)))throw Error();i=-16760833&i|(1023&t)<<14;break e}}if(t){if(1024<(t=Math.max(t,o-(+!!(512&i)-1))))throw Error();i=-16760833&i|(1023&t)<<14}}}return q(e,i),e}var l2=function(){try{return new class extends Map{constructor(){super()}},!1}catch{return!0}}(),xi=class{constructor(){this.g=new Map}get(t){return this.g.get(t)}set(t,r){return this.g.set(t,r),this.size=this.g.size,this}delete(t){return t=this.g.delete(t),this.size=this.g.size,t}clear(){this.g.clear(),this.size=this.g.size}has(t){return this.g.has(t)}entries(){return this.g.entries()}keys(){return this.g.keys()}values(){return this.g.values()}forEach(t,r){return this.g.forEach(t,r)}[Symbol.iterator](){return this.entries()}},u2=l2?(Object.setPrototypeOf(xi.prototype,Map.prototype),Object.defineProperties(xi.prototype,{size:{value:0,configurable:!0,enumerable:!0,writable:!0}}),xi):class extends Map{constructor(){super()}};function Wo(e){return e}function Gs(e){if(2&e.O)throw Error("Cannot mutate an immutable Map")}var Ge=class extends u2{constructor(e,t,r=Wo,i=Wo){super();let o=G(e);o|=64,q(e,o),this.O=o,this.V=t,this.R=r||Wo,this.Y=this.V?d2:i||Wo;for(let n=0;n<e.length;n++){let s=e[n],a=r(s[0],!1,!0),c=s[1];t?c===void 0&&(c=null):c=i(s[1],!1,!0,void 0,void 0,o),super.set(a,c)}}pa(e=bu){return this.X(e)}X(e=bu){let t=[],r=super.entries();for(var i;!(i=r.next()).done;)(i=i.value)[0]=e(i[0]),i[1]=e(i[1]),t.push(i);return t}clear(){Gs(this),super.clear()}delete(e){return Gs(this),super.delete(this.R(e,!0,!1))}entries(){var e=this.ma();return new Fr(e,h2,this)}keys(){return this.Ma()}values(){var e=this.ma();return new Fr(e,Ge.prototype.get,this)}forEach(e,t){super.forEach((r,i)=>{e.call(t,this.get(i),i,this)})}set(e,t){return Gs(this),(e=this.R(e,!0,!1))==null?this:t==null?(super.delete(e),this):super.set(e,this.Y(t,!0,!0,this.V,!1,this.O))}Ta(e){let t=this.R(e[0],!1,!0);e=e[1],e=this.V?e===void 0?null:e:this.Y(e,!1,!0,void 0,!1,this.O),super.set(t,e)}has(e){return super.has(this.R(e,!1,!1))}get(e){e=this.R(e,!1,!1);let t=super.get(e);if(t!==void 0){var r=this.V;return r?((r=this.Y(t,!1,!0,r,this.xa,this.O))!==t&&super.set(e,r),r):t}}ma(){return Array.from(super.keys())}Ma(){return super.keys()}[Symbol.iterator](){return this.entries()}};function d2(e,t,r,i,o,n){return e=Fa(e,i,r,n),o&&(e=Sn(e)),e}function bu(e){return e}function h2(e){return[e,this.get(e)]}function Ma(e,t,r,i,o,n){if(e!=null){if(Array.isArray(e))e=o&&e.length==0&&1&G(e)?void 0:n&&2&G(e)?e:La(e,t,r,i!==void 0,o,n);else if(Ti(e)){let s={};for(let a in e)s[a]=Ma(e[a],t,r,i,o,n);e=s}else e=t(e,i);return e}}function La(e,t,r,i,o,n){let s=i||r?G(e):0;i=i?!!(32&s):void 0;let a=we(e);for(let c=0;c<a.length;c++)a[c]=Ma(a[c],t,r,i,o,n);return r&&(kd(a,e),r(s,a)),a}function p2(e){return Ma(e,Cd,void 0,void 0,!1,!1)}function Cd(e){return e.W===Vi?e.toJSON():e instanceof Ge?e.pa(p2):function(t){switch(typeof t){case"number":return isFinite(t)?t:String(t);case"boolean":return t?1:0;case"object":if(t){if(Array.isArray(t))return Ed||!ra(t,void 0,9999)?t:void 0;if(pn(t))return ou(t);if(t instanceof Gt){let r=t.Z;return r==null?"":typeof r=="string"?r:t.Z=ou(r)}if(t instanceof Ge)return t=t.pa(),Js||t.length!==0?t:void 0}}return t}(e)}function oa(e,t,r=ta){if(e!=null){if(ad&&e instanceof Uint8Array)return t?e:new Uint8Array(e);if(Array.isArray(e)){var i=G(e);return 2&i?e:(t&&=i===0||!!(32&i)&&!(64&i||!(16&i)),t?(q(e,-12293&(34|i)),e):La(e,oa,4&i?ta:r,!0,!1,!0))}return e.W===Vi?(r=e.s,e=2&(i=R(r))?e:Ua(e,r,i,!0)):e instanceof Ge&&(r=jr(e.X(oa)),e=new Ge(r,e.V,e.R,e.Y)),e}}function Ua(e,t,r,i){return e=e.constructor,ln=t=Rd(t,r,i),t=new e(t),ln=void 0,t}function Rd(e,t,r){let i=r||2&t?ta:i2,o=!!(32&t);return e=function(n,s,a){let c=we(n);var l=c.length;let u=256&s?c[l-1]:void 0;for(l+=u?-1:0,s=512&s?1:0;s<l;s++)c[s]=a(c[s]);if(u){s=c[s]={};for(let d in u)s[d]=a(u[d])}return kd(c,n),c}(e,t,n=>oa(n,o,i)),bn(e,32|(r?2:0)),e}function Sn(e){let t=e.s,r=R(t);return 2&r?Ua(e,t,r,!1):e}function Br(e,t){return bt(e=e.s,R(e),t)}function bt(e,t,r,i){if(r===-1)return null;if(r>=an(t)){if(256&t)return e[e.length-1][r]}else{var o=e.length;if(i&&256&t&&(i=e[o-1][r])!=null)return i;if((t=r+(+!!(512&t)-1))<o)return e[t]}}function B(e,t,r,i){let o=e.s,n=R(o);return vt(n),M(o,n,t,r,i),e}function M(e,t,r,i,o){var n=an(t);if(r>=n||o){if(o=t,256&t)n=e[e.length-1];else{if(i==null)return o;n=e[n+(+!!(512&t)-1)]={},o|=256}return n[r]=i,o!==t&&q(e,o),o}return e[r+(+!!(512&t)-1)]=i,256&t&&r in(e=e[e.length-1])&&delete e[r],t}function zr(e,t,r,i,o){var n=2&t;let s=bt(e,t,r,o);Array.isArray(s)||(s=ur);let a=!(2&i);i=!(1&i);let c=!!(32&t),l=G(s);return l!==0||!c||n||a?1&l||(l|=1,q(s,l)):(l|=33,q(s,l)),n?(e=!1,2&l||(jr(s),e=!!(4&l)),(i||e)&&Object.freeze(s)):(n=!!(2&l)||!!(2048&l),i&&n?(s=we(s),i=1,c&&!a&&(i|=32),q(s,i),M(e,t,r,s,o)):a&&32&l&&!n&&sn(s,32)),s}function Ko(e,t){e=e.s;let r=R(e),i=bt(e,r,t),o=Yt(i);return o!=null&&o!==i&&M(e,r,t,o),o}function Pd(e){e=e.s;let t=R(e),r=bt(e,t,1),i=_d(r,!0,!!(34&t));return i!=null&&i!==r&&M(e,t,1,i),i}function Rr(e,t,r){e=e.s;let i=R(e),o=2&i?1:2,n=Id(e,i,t);var s=G(n);if(!(4&s)){(4&s||Object.isFrozen(n))&&(n=we(n),s=fr(s,i,!1),i=M(e,i,t,n));var a=0;let c=0;for(;a<n.length;a++){let l=r(n[a]);l!=null&&(n[c++]=l)}c<a&&(n.length=c),s=de(s=Od(s,i,!1),20,!0),s=de(s,4096,!1),s=de(s,8192,!1),q(n,s),2&s&&Object.freeze(n)}return Ci(s)||(r=s,(s=(a=o===1)?de(s,2,!0):de(s,32,!1))!==r&&q(n,s),a&&Object.freeze(n)),o===2&&Ci(s)&&(n=we(n),s=fr(s,i,!1),q(n,s),M(e,i,t,n)),n}function Id(e,t,r){return e=bt(e,t,r),Array.isArray(e)?e:ur}function Od(e,t,r){return e===0&&(e=fr(e,t,r)),de(e,1,!0)}function Ci(e){return!!(2&e)&&!!(4&e)||!!(2048&e)}var f2;function wu(){return f2??=new Ge(jr([]),void 0,void 0,void 0,o2)}function Dd(e){e=we(e);for(let t=0;t<e.length;t++){let r=e[t]=we(e[t]);Array.isArray(r[1])&&(r[1]=jr(r[1]))}return e}function dn(e,t,r){{let s=e.s,a=R(s);if(vt(a),r==null)M(s,a,t);else{var i,o=e=G(r),n=!!(2&e)||Object.isFrozen(r);if((i=!n)&&(i=!1),!(4&e))for(e=21,n&&(r=we(r),o=0,e=fr(e,a,!0)),n=0;n<r.length;n++)r[n]=zi(r[n]);i&&(r=we(r),o=0,e=fr(e,a,!0)),e!==o&&q(r,e),M(s,a,t,r)}}}function Hi(e,t,r,i){let o=R(e);vt(o),e=zr(e,o,t,2),i=r(i,!!(4&(t=G(e)))&&!!(4096&t)),e.push(i)}function m2(e){return e}function Hs(e,t){return Na(e=e.s,R(e),yh)===t?t:-1}function Na(e,t,r){let i=0;for(let o=0;o<r.length;o++){let n=r[o];bt(e,t,n)!=null&&(i!==0&&(t=M(e,t,i)),i=n)}return i}function ja(e,t,r,i){let o=R(e);vt(o);let n=bt(e,o,r,i),s;if(n!=null&&n.W===Vi)return(t=Sn(n))!==n&&M(e,o,r,t,i),t.s;if(Array.isArray(n)){let a=G(n);s=2&a?Rd(n,a,!1):n,s=pr(s,t)}else s=pr(void 0,t);return s!==n&&M(e,o,r,s,i),s}function Fd(e,t,r,i){e=e.s;let o=R(e),n=bt(e,o,r,i);return(t=Fa(n,t,!1,o))!==n&&t!=null&&M(e,o,r,t,i),t}function C(e,t,r,i=!1){if((t=Fd(e,t,r,i))==null)return t;e=e.s;let o=R(e);if(!(2&o)){let n=Sn(t);n!==t&&M(e,o,r,t=n,i)}return t}function Bd(e,t,r,i,o,n){var s=!!(2&t),a=s?1:2;let c=a===1;a=a===2,o=!!o,n&&=!s,s=Id(e,t,i);var l=G(s);let u=!!(4&l);if(!u){var d=s,f=t;let g=!!(2&(l=Od(l,t,o)));g&&(f=de(f,2,!0));let h=!g,m=!0,y=0,b=0;for(;y<d.length;y++){let k=Fa(d[y],r,!1,f);if(k instanceof r){if(!g){let P=!!(2&G(k.s));h&&=!P,m&&=P}d[b++]=k}}b<y&&(d.length=b),l=de(l,4,!0),l=de(l,16,m),l=de(l,8,h),q(d,l),g&&Object.freeze(d)}if(r=!!(8&l)||c&&!s.length,n&&!r){for(Ci(l)&&(s=we(s),l=fr(l,t,o),t=M(e,t,i,s)),n=s,r=l,d=0;d<n.length;d++)(l=n[d])!==(f=Sn(l))&&(n[d]=f);r=de(r,8,!0),r=de(r,16,!n.length),q(n,r),l=r}return Ci(l)||(n=l,c?l=de(l,!s.length||16&l&&(!u||32&l)?2:2048,!0):o||(l=de(l,32,!1)),l!==n&&q(s,l),c&&Object.freeze(s)),a&&Ci(l)&&(s=we(s),l=fr(l,t,o),q(s,l),M(e,t,i,s)),s}function Dt(e,t,r){e=e.s;let i=R(e);return Bd(e,i,t,r,!1,!(2&i))}function _(e,t,r,i,o){return i==null&&(i=void 0),B(e,r,i,o)}function Ri(e,t,r,i){i==null&&(i=void 0),e=e.s;let o=R(e);vt(o),(r=Na(e,o,r))&&r!==t&&i!=null&&(o=M(e,o,r)),M(e,o,t,i)}function fr(e,t,r){return e=de(e,2,!!(2&t)),e=de(e,32,!!(32&t)&&r),de(e,2048,!1)}function na(e,t,r){e=e.s;let i=R(e);vt(i),e=Bd(e,i,t,1,!0),t=r??new t,e.push(t),2&G(t.s)?sn(e,8):sn(e,16)}function ze(e,t){return Vr(Br(e,t))}function He(e,t){return Fi(Br(e,t))}function mt(e){return e??0}function he(e,t){return mt(Ko(e,t))}function Bi(e,t,r){if(r!=null&&typeof r!="boolean")throw e=typeof r,Error(`Expected boolean but got ${e!="object"?e:r?Array.isArray(r)?"array":e:"null"}: ${r}`);B(e,t,r)}function gt(e,t,r){if(r!=null){if(typeof r!="number"||!Number.isFinite(r))throw ia("int32");r|=0}B(e,t,r)}function A(e,t,r){if(r!=null&&typeof r!="number")throw Error(`Value of float/double field must be a number, found ${typeof r}: ${r}`);B(e,t,r)}function rt(e,t,r){t.g?t.m(e,t.g,t.h,r,!0):t.m(e,t.h,r,!0)}Ge.prototype.toJSON=void 0,Ge.prototype.Na=Sd;var v=class{constructor(e,t){this.s=xd(e,t)}toJSON(){return Md(this,La(this.s,Cd,void 0,void 0,!1,!1),!0)}l(){var e=b0;return e.g?e.l(this,e.g,e.h,!0):e.l(this,e.h,e.defaultValue,!0)}clone(){let e=this.s;return Ua(this,e,R(e),!1)}L(){return!!(2&G(this.s))}};function Md(e,t,r){let i=e.constructor.A;var o=R(r?e.s:t),n=an(o),s=!1;if(i&&Ed){if(!r){var a;if((t=we(t)).length&&Ti(a=t[t.length-1])){for(s=0;s<i.length;s++)if(i[s]>=n){Object.assign(t[t.length-1]={},a);break}}s=!0}var c;n=t,r=!r,e=an(a=R(e.s)),a=+!!(512&a)-1;for(let y=0;y<i.length;y++){var l=i[y];if(l<e){var u=n[l+=a];u==null?n[l]=r?ur:mu():r&&u!==ur&&fu(u)}else{if(!c){var d=void 0;n.length&&Ti(d=n[n.length-1])?c=d:n.push(c={})}u=c[l],c[l]==null?c[l]=r?ur:mu():r&&u!==ur&&fu(u)}}}if(!(c=t.length))return t;let f,g;if(Ti(d=t[c-1])){e:{var h=d;for(var m in n={},r=!1,h)e=h[m],Array.isArray(e)&&(a=e,(!su&&ra(e,i,+m)||!Js&&gu(e)&&e.size===0)&&(e=null),e!=a&&(r=!0)),e!=null?n[m]=e:r=!0;if(r){for(let y in n){h=n;break e}h=null}}h!=d&&(f=!0),c--}for(o=+!!(512&o)-1;0<c&&((d=t[m=c-1])==null||!su&&ra(d,i,m-o)||!Js&&gu(d)&&d.size===0);c--)g=!0;return(f||g)&&(t=s?t:Array.prototype.slice.call(t,0,c),s&&(t.length=c),h&&t.push(h)),t}function Ld(e){return Array.isArray(e)?e[0]instanceof $t?e:[T2,e]:[e,void 0]}function Gr(e,t){if(Array.isArray(t)){var r=G(t);if(4&r)return t;for(var i=0,o=0;i<t.length;i++){let n=e(t[i]);n!=null&&(t[o++]=n)}return o<i&&(t.length=o),q(t,-12289&(5|r)),2&r&&Object.freeze(t),t}}v.prototype.W=Vi,v.prototype.toString=function(){return Md(this,this.s,!1).toString()};var Su=Symbol();function Va(e){let t=e[Su];if(!t){let r=jd(e),i=Ga(e),o=i.g;t=o?(n,s)=>o(n,s,i):(n,s)=>{for(;vd(s)&&s.h!=4;){var a=s.m,c=i[a];if(!c){var l=i.ha;l&&(l=l[a])&&(c=i[a]=g2(l))}c&&c(s,n,a)||(a=(c=s).l,Xo(c),c.ga?c=void 0:(l=c.g.g-a,c.g.g=a,c=yd(c.g,l)),a=n,c&&(Ht||=Symbol(),(l=a[Ht])?l.push(c):a[Ht]=[c]))}r===Ud||r===Nd||r.Oa||(n[Di||=Symbol()]=r)},e[Su]=t}return t}function g2(e){let t=(e=Ld(e))[0].g;if(e=e[1]){let r=Va(e),i=Ga(e).S;return(o,n,s)=>t(o,n,s,i,r)}return t}var Ud,Nd,Jo=Symbol();function y2(e,t,r){let i=r[1],o;if(i){let n=i[Jo];o=n?n.S:un(i[0]),e[t]=n??i}o&&o===Ba?(e.na||(e.na=[])).push(t):r[0]&&(e.oa||(e.oa=[])).push(t)}function Eu(e,t){return[e.l,!t||0<t[0]?void 0:t]}function jd(e){var t=e[Jo];if(t)return t;if(!(t=za(e,e[Jo]={},Eu,Eu,y2)).oa&&!t.na){let r=!0;for(let i in t){isNaN(i)||(r=!1);break}r?(t=un(e[0])===Ba,t=e[Jo]=t?Nd||={S:un(!0)}:Ud||={}):t.Oa=!0}return t}function v2(e,t,r){e[t]=r}function za(e,t,r,i,o=v2){t.S=un(e[0]);let n=0;var s=e[++n];s&&s.constructor===Object&&(t.ha=s,typeof(s=e[++n])=="function"&&(t.g=s,t.h=e[++n],s=e[++n]));let a={};for(;Array.isArray(s)&&typeof s[0]=="number"&&0<s[0];){for(var c=0;c<s.length;c++)a[s[c]]=s;s=e[++n]}for(c=1;s!==void 0;){let d;typeof s=="number"&&(c+=s,s=e[++n]);var l=void 0;if(s instanceof $t?d=s:(d=x2,n--),d.qa){s=e[++n],l=e;var u=n;typeof s=="function"&&(s=s(),l[u]=s),l=s}for(u=c+1,typeof(s=e[++n])=="number"&&0>s&&(u-=s,s=e[++n]);c<u;c++){let f=a[c];o(t,c,l?i(d,l,f):r(d,f))}}return t}var _u=Symbol();function Vd(e){let t=e[_u];if(!t){let r=En(e);t=(i,o)=>zd(i,o,r),e[_u]=t}return t}var Yo=Symbol();function b2(e){return e.h}function w2(e,t){let r,i,o=e.h;return(n,s,a)=>o(n,s,a,i||=En(t).S,r||=Vd(t))}function En(e){let t=e[Yo];return t||(t=za(e,e[Yo]={},b2,w2),Zo in e&&Yo in e&&(e.length=0),t)}var Zo=Symbol();function S2(e,t){let r=e.g;return t?(i,o,n)=>r(i,o,n,t):r}function E2(e,t,r){let i=e.g,o,n;return(s,a,c)=>i(s,a,c,n||=Ga(t).S,o||=Va(t),r)}function Ga(e){let t=e[Zo];return t||(jd(e),t=za(e,e[Zo]={},S2,E2),Zo in e&&Yo in e&&(e.length=0),t)}function ku(e,t){var r=e[t];if(r)return r;if((r=e.ha)&&(r=r[t])){var i=(r=Ld(r))[0].h;if(r=r[1]){let o=Vd(r),n=En(r).S;r=(r=e.h)?r(n,o):(s,a,c)=>i(s,a,c,n,o)}else r=i;return e[t]=r}}function zd(e,t,r){for(var i=R(e),o=+!!(512&i)-1,n=e.length,s=512&i?1:0,a=n+(256&i?-1:0);s<a;s++){let c=e[s];if(c==null)continue;let l=s-o,u=ku(r,l);u&&u(t,c,l)}if(256&i){i=e[n-1];for(let c in i)o=+c,Number.isNaN(o)||(n=i[c])!=null&&(a=ku(r,o))&&a(t,n,o)}if(e=Ht?e[Ht]:void 0)for(Dr(t,t.g.end()),r=0;r<e.length;r++)Dr(t,wa(e[r])||fn())}function Te(e,t){return new $t(e,t,!1,!1)}function Hr(e,t){return new $t(e,t,!0,!1)}function _n(e,t){return new $t(e,t,!1,!0)}function xe(e,t,r){M(e,R(e),t,r)}var _2=_n(function(e,t,r,i,o){return e.h===2&&(e=Ni(e,pr([void 0,void 0],i),o),vt(i=R(t)),(o=bt(t,i,r))instanceof Ge?(2&o.O)!=0?((o=o.X()).push(e),M(t,i,r,o)):o.Ta(e):Array.isArray(o)?(2&G(o)&&M(t,i,r,o=Dd(o)),o.push(e)):M(t,i,r,[e]),!0)},function(e,t,r,i,o){if(t instanceof Ge)t.forEach((n,s)=>{ea(e,r,pr([s,n],i),o)});else if(Array.isArray(t))for(let n=0;n<t.length;n++){let s=t[n];Array.isArray(s)&&ea(e,r,pr(s,i),o)}});function Gd(e,t,r){e:if(t!=null){if(wn(t)){if(typeof t=="string"){t=Da(t);break e}if(typeof t=="number"){t=Oa(t);break e}}t=void 0}t!=null&&(typeof t=="string"&&du(t),t!=null&&(qe(e,r,0),typeof t=="number"?(e=e.g,dr(t),nn(e,F,Q)):(r=du(t),nn(e.g,r.h,r.g))))}function Hd(e,t,r){(t=Vr(t))!=null&&t!=null&&(qe(e,r,0),yn(e.g,t))}function Wd(e,t,r){(t=Ad(t))!=null&&(qe(e,r,0),e.g.g.push(t?1:0))}function qd(e,t,r){(t=Fi(t))!=null&&vn(e,r,id(t))}function kn(e,t,r,i,o){ea(e,r,t instanceof v?t.s:Array.isArray(t)?pr(t,i):void 0,o)}function $d(e,t,r){(t=t==null||typeof t=="string"||pn(t)||t instanceof Gt?t:void 0)!=null&&vn(e,r,Ea(t).buffer)}function Xd(e,t,r){return(e.h===5||e.h===2)&&(t=zr(t,R(t),r,2,!1),e.h==2?gn(e,Qs,t):t.push(Qs(e.g)),!0)}var oe,Ot=Te(function(e,t,r){if(e.h!==1)return!1;var i=e.g;e=Zs(i);let o=Zs(i);i=2*(o>>31)+1;let n=o>>>20&2047;return e=4294967296*(1048575&o)+e,xe(t,r,n==2047?e?NaN:1/0*i:n==0?i*Math.pow(2,-1074)*e:i*Math.pow(2,n-1075)*(e+4503599627370496)),!0},function(e,t,r){(t=Yt(t))!=null&&(qe(e,r,1),e=e.g,(r=fd||=new DataView(new ArrayBuffer(8))).setFloat64(0,+t,!0),F=r.getUint32(0,!0),Q=r.getUint32(4,!0),Oi(e,F),Oi(e,Q))}),ne=Te(function(e,t,r){return e.h===5&&(xe(t,r,Qs(e.g)),!0)},function(e,t,r){(t=Yt(t))!=null&&(qe(e,r,5),e=e.g,ka(t),Oi(e,F))}),k2=Hr(Xd,function(e,t,r){if((t=Gr(Yt,t))!=null)for(let s=0;s<t.length;s++){var i=e,o=r,n=t[s];n!=null&&(qe(i,o,5),i=i.g,ka(n),Oi(i,F))}}),Ha=Hr(Xd,function(e,t,r){if((t=Gr(Yt,t))!=null&&t.length){qe(e,r,2),ji(e.g,4*t.length);for(let i=0;i<t.length;i++)r=e.g,ka(t[i]),Oi(r,F)}}),Xt=Te(function(e,t,r){return e.h===0&&(xe(t,r,xa(e.g,Aa)),!0)},Gd),Ws=Te(function(e,t,r){return e.h===0&&(xe(t,r,(e=xa(e.g,Aa))===0?void 0:e),!0)},Gd),A2=Te(function(e,t,r){return e.h===0&&(xe(t,r,xa(e.g,Ys)),!0)},function(e,t,r){e:if(t!=null){if(wn(t)){if(typeof t=="string"){var i=Math.trunc(Number(t));Number.isSafeInteger(i)&&0<=i?t=String(i):((i=t.indexOf("."))!==-1&&(t=t.substring(0,i)),vu(t)||(mn(t),t=on(F,Q)));break e}if(typeof t=="number"){t=0<=(t=Math.trunc(t))&&Number.isSafeInteger(t)?t:function(o){if(0>o){dr(o);let n=on(F,Q);return o=Number(n),Number.isSafeInteger(o)?o:n}return vu(String(o))?o:(dr(o),Ys(F,Q))}(t);break e}}t=void 0}t!=null&&(typeof t=="string"&&lu(t),t!=null&&(qe(e,r,0),typeof t=="number"?(e=e.g,dr(t),nn(e,F,Q)):(r=lu(t),nn(e.g,r.h,r.g))))}),K=Te(function(e,t,r){return e.h===0&&(xe(t,r,Wt(e.g)),!0)},Hd),Wa=Hr(function(e,t,r){return(e.h===0||e.h===2)&&(t=zr(t,R(t),r,2,!1),e.h==2?gn(e,Wt,t):t.push(Wt(e.g)),!0)},function(e,t,r){if((t=Gr(Vr,t))!=null&&t.length){r=Pa(e,r);for(let i=0;i<t.length;i++)yn(e.g,t[i]);Ia(e,r)}}),Mr=Te(function(e,t,r){return e.h===0&&(xe(t,r,(e=Wt(e.g))===0?void 0:e),!0)},Hd),ee=Te(function(e,t,r){return e.h===0&&(xe(t,r,Ca(e.g)),!0)},Wd),Pi=Te(function(e,t,r){return e.h===0&&(xe(t,r,(e=Ca(e.g))===!1?void 0:e),!0)},Wd),ve=Hr(function(e,t,r){return e.h===2&&(Hi(t,r,m2,e=Ra(e)),!0)},function(e,t,r){if((t=Gr(Fi,t))!=null)for(let s=0;s<t.length;s++){var i=e,o=r,n=t[s];n!=null&&vn(i,o,id(n))}}),Kt=Te(function(e,t,r){return e.h===2&&(xe(t,r,(e=Ra(e))===""?void 0:e),!0)},qd),U=Te(function(e,t,r){return e.h===2&&(xe(t,r,Ra(e)),!0)},qd),T2=_n(function(e,t,r,i,o){return e.h===2&&(Ni(e,ja(t,i,r,!0),o),!0)},kn),x2=_n(function(e,t,r,i,o){return e.h===2&&(Ni(e,ja(t,i,r),o),!0)},kn);oe=new $t(function(e,t,r,i,o){if(e.h!==2)return!1;i=pr(void 0,i);let n=R(t);vt(n);let s=zr(t,n,r,3);return n=R(t),4&G(s)&&(s=we(s),q(s,-2079&(1|G(s))),M(t,n,r,s)),s.push(i),Ni(e,i,o),!0},function(e,t,r,i,o){if(Array.isArray(t))for(let n=0;n<t.length;n++)kn(e,t[n],r,i,o)},!0,!0);var N=_n(function(e,t,r,i,o,n){if(e.h!==2)return!1;let s=R(t);return vt(s),(n=Na(t,s,n))&&r!==n&&M(t,s,n),Ni(e,t=ja(t,i,r),o),!0},kn),Kd=Te(function(e,t,r){return e.h===2&&(xe(t,r,bd(e)),!0)},$d),C2=Hr(function(e,t,r){return(e.h===0||e.h===2)&&(t=zr(t,R(t),r,2,!1),e.h==2?gn(e,qt,t):t.push(qt(e.g)),!0)},function(e,t,r){if((t=Gr(s2,t))!=null)for(let s=0;s<t.length;s++){var i=e,o=r,n=t[s];n!=null&&(qe(i,o,0),ji(i.g,n))}}),yt=Te(function(e,t,r){return e.h===0&&(xe(t,r,Wt(e.g)),!0)},function(e,t,r){(t=Vr(t))!=null&&(t=parseInt(t,10),qe(e,r,0),yn(e.g,t))}),R2=Hr(function(e,t,r){return(e.h===0||e.h===2)&&(t=zr(t,R(t),r,2,!1),e.h==2?gn(e,e2,t):t.push(Wt(e.g)),!0)},function(e,t,r){if((t=Gr(Vr,t))!=null&&t.length){r=Pa(e,r);for(let i=0;i<t.length;i++)yn(e.g,t[i]);Ia(e,r)}}),sa=class{constructor(t,r){this.h=t,this.g=r,this.l=C,this.m=_,this.defaultValue=void 0}};function it(e,t){return new sa(e,t)}function Zt(e,t){return(r,i)=>{e:{if(Ho.length){let n=Ho.pop();n.o(i),zs(n.g,r,i),r=n}else r=new class{constructor(n,s){if(cu.length){let a=cu.pop();zs(a,n,s),n=a}else n=new class{constructor(a,c){this.h=null,this.m=!1,this.g=this.l=this.j=0,zs(this,a,c)}clear(){this.h=null,this.m=!1,this.g=this.l=this.j=0,this.aa=!1}}(n,s);this.g=n,this.l=this.g.g,this.h=this.m=-1,this.o(s)}o({ga:n=!1}={}){this.ga=n}}(r,i);try{let n=new e,s=n.s;Va(t)(s,r),Di&&delete s[Di];var o=n;break e}finally{r.g.clear(),r.m=-1,r.h=-1,100>Ho.length&&Ho.push(r)}o=void 0}return o}}function qa(e){return function(){let t=new class{constructor(){this.l=[],this.h=0,this.g=new class{constructor(){this.g=[]}length(){return this.g.length}end(){let s=this.g;return this.g=[],s}}}};zd(this.s,t,En(e)),Dr(t,t.g.end());let r=new Uint8Array(t.h),i=t.l,o=i.length,n=0;for(let s=0;s<o;s++){let a=i[s];r.set(a,n),n+=a.length}return t.l=[r],r}}var Jd=[0,Kt,Te(function(e,t,r){return e.h===2&&(xe(t,r,(e=bd(e))===Or()?void 0:e),!0)},function(e,t,r){if(t!=null){if(t instanceof v){let i=t.Va;return void(i&&(t=i(t),t!=null&&vn(e,r,Ea(t).buffer)))}if(Array.isArray(t))return}$d(e,t,r)})],P2=[0,U],Yd=[0,K,yt,ee,-1,Wa,yt,-1],I2=[0,ee,-1],Zd=class extends v{constructor(){super()}};Zd.A=[6];var Qd=[0,ee,U,ee,yt,-1,R2,U,-1,I2,yt],eh=[0,U,-2],Au=class extends v{constructor(){super()}},th=[0],rh=[0,K,ee,-2],We=class extends v{constructor(e){super(e,2)}},V={},O2=[-2,V,ee];V[336783863]=[0,U,ee,-1,K,[0,[1,2,3,4,5],N,th,N,Qd,N,eh,N,rh,N,Yd],P2];var D2=[0,Kt,Pi],ih=[0,Ws,-1,Pi,-3,Ws,Wa,Kt,Mr,Ws,-1,Pi,Mr,Pi,-2,Kt],Wi=[-1,{}],oh=[0,U,1,Wi],nh=[0,U,ve,Wi];function $e(e,t){t=Gi(t),e=e.s;let r=R(e);vt(r),M(e,r,2,t===""?void 0:t)}function L(e,t){Hi(e.s,3,zi,t)}function D(e,t){Hi(e.s,4,zi,t)}var Se=class extends v{constructor(e){super(e,500)}o(e){return _(this,0,7,e)}};Se.A=[3,4,5,6,8,13,17,1005];var F2=[-500,Kt,-1,ve,-3,O2,oe,Jd,Mr,-1,oh,nh,oe,D2,Kt,ih,Mr,ve,987,ve],B2=[0,Kt,-1,Wi],M2=[-500,U,-1,[-1,{}],998,U],L2=[-500,U,ve,-1,[-2,{},ee],997,ve,-1],U2=[-500,U,ve,Wi,998,ve];function Xe(e,t){na(e,Se,t)}function z(e,t){Hi(e.s,10,zi,t)}function j(e,t){Hi(e.s,15,zi,t)}var Ce=class extends v{constructor(e){super(e,500)}o(e){return _(this,0,1001,e)}};Ce.A=[1,6,7,9,10,15,16,17,14,1002];var sh=[-500,oe,F2,4,oe,M2,oe,L2,Mr,oe,U2,ve,Mr,oh,nh,oe,B2,ve,-2,ih,Kt,-1,Pi,979,Wi,oe,Jd],N2=Zt(Ce,sh);Ce.prototype.g=qa(sh);var j2=[0,oe,[0,K,-2]],V2=class extends v{constructor(e){super(e)}},z2=[0,K,ne,U,-1],$a=class extends v{constructor(e){super(e)}g(){return Dt(this,V2,1)}};$a.A=[1];var ah=[0,oe,z2],Xa=Zt($a,ah),G2=[0,K,ne],H2=[0,K,-1,j2],W2=class extends v{constructor(e){super(e)}},q2=[0,K,-3],$2=[0,ne,-3],X2=class extends v{constructor(e){super(e)}},K2=[0,ne,-1,U,ne],Qo=class extends v{constructor(e){super(e)}h(){return C(this,W2,2)}g(){return Dt(this,X2,5)}};Qo.A=[5];var J2=[0,yt,q2,$2,H2,oe,K2],ch=class extends v{constructor(e){super(e)}};ch.A=[1,2,3,8,9];var lh=Zt(ch,[0,ve,Wa,Ha,J2,U,-1,Xt,oe,G2,ve,Xt]),uh=class extends v{constructor(e){super(e)}},Y2=[0,ne,-4],dh=class extends v{constructor(e){super(e)}};dh.A=[1];var Ka=Zt(dh,[0,oe,Y2]),hh=class extends v{constructor(e){super(e)}},Z2=[0,ne,-4],ph=class extends v{constructor(e){super(e)}};ph.A=[1];var An=Zt(ph,[0,oe,Z2]),fh=class extends v{constructor(e){super(e)}};fh.A=[3];var Q2=[0,K,-1,Ha,yt],mh=class extends v{constructor(){super()}};mh.prototype.g=qa([0,ne,-4,Xt]);var e0=class extends v{constructor(e){super(e)}},t0=[0,1,K,U,ah],gh=class extends v{constructor(e){super(e)}};gh.A=[1];var r0=Zt(gh,[0,oe,t0,Xt]),aa=class extends v{constructor(e){super(e)}};aa.A=[1];var i0=class extends v{constructor(e){super(e)}ua(){let e=Pd(this);return e??Or()}},o0=class extends v{constructor(e){super(e)}},yh=[1,2],n0=[0,yh,N,[0,Ha],N,[0,Kd],K,U],vh=class extends v{constructor(e){super(e)}};vh.A=[1];var s0=Zt(vh,[0,oe,n0,Xt]),Tn=class extends v{constructor(e){super(e)}};Tn.A=[4,5];var bh=[0,U,K,ne,ve,-1],Tu=class extends v{constructor(e){super(e)}},a0=[0,ee,-1],xu=class extends v{constructor(e){super(e)}},en=[1,2,3,4,5],hn=class extends v{constructor(e){super(e)}g(){return Pd(this)!=null}h(){return He(this,2)!=null}},wh=[0,Kd,U,[0,K,Xt,-1],[0,A2,Xt]],X=class extends v{constructor(e){super(e)}g(){return Ad(Br(this,2))??!1}},se=[0,wh,ee,[0,en,N,rh,N,Qd,N,Yd,N,th,N,eh],yt],Ja=class extends v{constructor(e){super(e)}},Sh=[0,se,ne,-1,K],c0=it(502141897,Ja);V[502141897]=Sh;var Eh=[0,wh];V[512499200]=Eh;var _h=[0,Eh];V[515723506]=_h;var l0=Zt(class extends v{constructor(e){super(e)}},[0,[0,yt,-1,k2,C2],Q2]),kh=[0,se];V[508981768]=kh;var u0=class extends v{constructor(e){super(e)}},Ah=[0,se,ne,kh,ee],Th=class extends v{constructor(e){super(e)}},xh=[0,se,Sh,Ah,ne,_h];V[508968149]=Ah;var d0=it(508968150,Th);V[508968150]=xh;var Ch=class extends v{constructor(e){super(e)}},h0=it(513916220,Ch);V[513916220]=[0,se,xh,K];var Cr=class extends v{constructor(e){super(e)}h(){return C(this,Tn,2)}g(){B(this,2)}},Rh=[0,se,bh];V[478825465]=Rh;var Ph=[0,se];V[478825422]=Ph;var p0=class extends v{constructor(e){super(e)}},Ih=[0,se,Ph,Rh,-1],Oh=class extends v{constructor(e){super(e)}},Dh=[0,se,ne,K],Fh=class extends v{constructor(e){super(e)}},Bh=[0,se,ne],Ya=class extends v{constructor(e){super(e)}},Mh=[0,se,Dh,Bh,ne],Lh=class extends v{constructor(e){super(e)}},f0=[0,se,Mh,Ih];V[463370452]=Ih,V[464864288]=Dh,V[474472470]=Bh;var m0=it(462713202,Ya);V[462713202]=Mh;var g0=it(479097054,Lh);V[479097054]=f0;var Uh=class extends v{constructor(e){super(e)}},y0=it(456383383,Uh);V[456383383]=[0,se,bh];var Nh=class extends v{constructor(e){super(e)}},v0=it(476348187,Nh);V[476348187]=[0,se,a0];var jh=class extends v{constructor(e){super(e)}},Vh=[0,yt,-1],ca=class extends v{constructor(e){super(e)}};ca.A=[3];var b0=it(458105876,class extends v{constructor(e){super(e)}g(){var e=this.s;let t=R(e);var r=2&t;return e=function(i,o,n){var s=ca;let a=2&o,c=!1;if(n==null){if(a)return wu();n=[]}else if(n.constructor===Ge){if((2&n.O)==0||a)return n;n=n.X()}else Array.isArray(n)?c=!!(2&G(n)):n=[];if(a){if(!n.length)return wu();c||(c=!0,jr(n))}else c&&(c=!1,n=Dd(n));return c||(64&G(n)?sn(n,32):32&o&&bn(n,32)),M(i,o,2,s=new Ge(n,s,a2,void 0),!1),s}(e,t,bt(e,t,2)),e==null||!r&&ca&&(e.xa=!0),r=e}});V[458105876]=[0,Vh,_2,[!0,Xt,[0,U,-1,ve]]];var Za=class extends v{constructor(e){super(e)}},zh=it(458105758,Za);V[458105758]=[0,se,U,Vh];var Qa=class extends v{constructor(e){super(e)}};Qa.A=[5,6];var w0=it(443442058,Qa);V[443442058]=[0,se,U,K,ne,ve,-1];var S0=class extends v{constructor(e){super(e)}},Gh=[0,se,ne,-1,K];V[514774813]=Gh;var E0=class extends v{constructor(e){super(e)}},Hh=[0,se,ne,ee],Wh=class extends v{constructor(e){super(e)}},_0=[0,se,Gh,Hh,ne];V[518928384]=Hh;var k0=it(516587230,Wh);function la(e,t){return t=t?t.clone():new Tn,e.displayNamesLocale!==void 0?B(t,1,Gi(e.displayNamesLocale)):e.displayNamesLocale===void 0&&B(t,1),e.maxResults!==void 0?gt(t,2,e.maxResults):"maxResults"in e&&B(t,2),e.scoreThreshold!==void 0?A(t,3,e.scoreThreshold):"scoreThreshold"in e&&B(t,3),e.categoryAllowlist!==void 0?dn(t,4,e.categoryAllowlist):"categoryAllowlist"in e&&B(t,4),e.categoryDenylist!==void 0?dn(t,5,e.categoryDenylist):"categoryDenylist"in e&&B(t,5),t}function qh(e,t=-1,r=""){return{categories:e.map(i=>({index:mt(ze(i,1))??-1,score:he(i,2)??0,categoryName:He(i,3)??""??"",displayName:He(i,4)??""??""})),headIndex:t,headName:r}}function $h(e){var t=Rr(e,3,Yt),r=Rr(e,2,Vr),i=Rr(e,1,Fi),o=Rr(e,9,Fi);let n={categories:[],keypoints:[]};for(let s=0;s<t.length;s++)n.categories.push({score:t[s],index:r[s]??-1,categoryName:i[s]??"",displayName:o[s]??""});if((t=C(e,Qo,4)?.h())&&(n.boundingBox={originX:ze(t,1)??0,originY:ze(t,2)??0,width:ze(t,3)??0,height:ze(t,4)??0,angle:0}),C(e,Qo,4)?.g().length)for(let s of C(e,Qo,4).g())n.keypoints.push({x:Ko(s,1)??0,y:Ko(s,2)??0,score:Ko(s,4)??0,label:He(s,3)??""});return n}function ec(e){let t=[];for(let r of Dt(e,hh,1))t.push({x:he(r,1)??0,y:he(r,2)??0,z:he(r,3)??0});return t}function Xh(e){let t=[];for(let r of Dt(e,uh,1))t.push({x:he(r,1)??0,y:he(r,2)??0,z:he(r,3)??0});return t}function Cu(e){return Array.from(e,t=>127<t?t-256:t)}function Ru(e,t){if(e.length!==t.length)throw Error(`Cannot compute cosine similarity between embeddings of different sizes (${e.length} vs. ${t.length}).`);let r=0,i=0,o=0;for(let n=0;n<e.length;n++)r+=e[n]*t[n],i+=e[n]*e[n],o+=t[n]*t[n];if(0>=i||0>=o)throw Error("Cannot compute cosine similarity on embedding with 0 norm.");return r/Math.sqrt(i*o)}var qo;V[516587230]=_0;var A0=new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11]);async function Kh(){if(qo===void 0)try{await WebAssembly.instantiate(A0),qo=!0}catch{qo=!1}return qo}async function qs(e,t=""){let r=await Kh()?"wasm_internal":"wasm_nosimd_internal";return{wasmLoaderPath:`${t}/${e}_${r}.js`,wasmBinaryPath:`${t}/${e}_${r}.wasm`}}var Pr=class{};function Jh(){let e=navigator.userAgent;return e.includes("Safari")&&!e.includes("Chrome")}async function Pu(e){if(typeof importScripts!="function"){let t=document.createElement("script");return t.src=e.toString(),t.crossOrigin="anonymous",new Promise((r,i)=>{t.addEventListener("load",()=>{r()},!1),t.addEventListener("error",o=>{i(o)},!1),document.body.appendChild(t)})}importScripts(e.toString())}function w(e,t,r){e.m||console.error("No wasm multistream support detected: ensure dependency inclusion of :gl_graph_runner_internal_multi_input target"),r(t=e.i.stringToNewUTF8(t)),e.i._free(t)}function Iu(e,t,r){if(!e.i.canvas)throw Error("No OpenGL canvas configured.");if(r?e.i._bindTextureToStream(r):e.i._bindTextureToCanvas(),!(r=e.i.canvas.getContext("webgl2")||e.i.canvas.getContext("webgl")))throw Error("Failed to obtain WebGL context from the provided canvas. `getContext()` should only be invoked with `webgl` or `webgl2`.");return e.i.gpuOriginForWebTexturesIsBottomLeft&&r.pixelStorei(r.UNPACK_FLIP_Y_WEBGL,!0),r.texImage2D(r.TEXTURE_2D,0,r.RGBA,r.RGBA,r.UNSIGNED_BYTE,t),e.i.gpuOriginForWebTexturesIsBottomLeft&&r.pixelStorei(r.UNPACK_FLIP_Y_WEBGL,!1),t.videoWidth?(r=t.videoWidth,t=t.videoHeight):t.naturalWidth?(r=t.naturalWidth,t=t.naturalHeight):(r=t.width,t=t.height),!e.l||r===e.i.canvas.width&&t===e.i.canvas.height||(e.i.canvas.width=r,e.i.canvas.height=t),[r,t]}function Ou(e,t,r){e.m||console.error("No wasm multistream support detected: ensure dependency inclusion of :gl_graph_runner_internal_multi_input target");let i=new Uint32Array(t.length);for(let o=0;o<t.length;o++)i[o]=e.i.stringToNewUTF8(t[o]);t=e.i._malloc(4*i.length),e.i.HEAPU32.set(i,t>>2),r(t);for(let o of i)e.i._free(o);e.i._free(t)}function Rt(e,t,r){e.i.simpleListeners=e.i.simpleListeners||{},e.i.simpleListeners[t]=r}function lr(e,t,r){let i=[];e.i.simpleListeners=e.i.simpleListeners||{},e.i.simpleListeners[t]=(o,n,s)=>{n?(r(i,s),i=[]):i.push(o)}}Pr.forVisionTasks=function(e){return qs("vision",e)},Pr.forTextTasks=function(e){return qs("text",e)},Pr.forAudioTasks=function(e){return qs("audio",e)},Pr.isSimdSupported=function(){return Kh()};async function T0(e,t,r,i){return e=await(async(o,n,s,a,c)=>{if(n&&await Pu(n),!self.ModuleFactory||s&&(await Pu(s),!self.ModuleFactory))throw Error("ModuleFactory not set.");return self.Module&&c&&((n=self.Module).locateFile=c.locateFile,c.mainScriptUrlOrBlob&&(n.mainScriptUrlOrBlob=c.mainScriptUrlOrBlob)),c=await self.ModuleFactory(self.Module||c),self.ModuleFactory=self.Module=void 0,new o(c,a)})(e,r.wasmLoaderPath,r.assetLoaderPath,t,{locateFile:o=>o.endsWith(".wasm")?r.wasmBinaryPath.toString():r.assetBinaryPath&&o.endsWith(".data")?r.assetBinaryPath.toString():o}),await e.o(i),e}function Du(e,t){let r=C(e.baseOptions,hn,1)||new hn;typeof t=="string"?(B(r,2,Gi(t)),B(r,1)):t instanceof Uint8Array&&(B(r,1,_d(t,!1,!1)),B(r,2)),_(e.baseOptions,0,1,r)}function Fu(e){try{let t=e.F.length;if(t===1)throw Error(e.F[0].message);if(1<t)throw Error("Encountered multiple errors: "+e.F.map(r=>r.message).join(", "))}finally{e.F=[]}}function S(e,t){e.I=Math.max(e.I,t)}function tc(e,t){e.C=new Se,$e(e.C,"PassThroughCalculator"),L(e.C,"free_memory"),D(e.C,"free_memory_unused_out"),z(t,"free_memory"),Xe(t,e.C)}function Mi(e,t){L(e.C,t),D(e.C,t+"_unused_out")}function rc(e){e.g.addBoolToStream(!0,"free_memory",e.I)}var ua=class{constructor(e){this.g=e,this.F=[],this.I=0,this.g.setAutoRenderToScreen(!1)}l(e,t=!0){if(t){let r=e.baseOptions||{};if(e.baseOptions?.modelAssetBuffer&&e.baseOptions?.modelAssetPath)throw Error("Cannot set both baseOptions.modelAssetPath and baseOptions.modelAssetBuffer");if(!(C(this.baseOptions,hn,1)?.g()||C(this.baseOptions,hn,1)?.h()||e.baseOptions?.modelAssetBuffer||e.baseOptions?.modelAssetPath))throw Error("Either baseOptions.modelAssetPath or baseOptions.modelAssetBuffer must be set");if(function(i,o){let n=C(i.baseOptions,xu,3);if(!n){var s=n=new xu,a=new Au;Ri(s,4,en,a)}"delegate"in o&&(o.delegate==="GPU"?(o=n,s=new Zd,Ri(o,2,en,s)):(o=n,s=new Au,Ri(o,4,en,s))),_(i.baseOptions,0,3,n)}(this,r),r.modelAssetPath)return fetch(r.modelAssetPath.toString()).then(i=>{if(i.ok)return i.arrayBuffer();throw Error(`Failed to fetch model: ${r.modelAssetPath} (${i.status})`)}).then(i=>{try{this.g.i.FS_unlink("/model.dat")}catch{}this.g.i.FS_createDataFile("/","model.dat",new Uint8Array(i),!0,!1,!1),Du(this,"/model.dat"),this.m(),this.N()});Du(this,r.modelAssetBuffer)}return this.m(),this.N(),Promise.resolve()}N(){}da(){let e;if(this.g.da(t=>{e=N2(t)}),!e)throw Error("Failed to retrieve CalculatorGraphConfig");return e}setGraph(e,t){this.g.attachErrorListener((r,i)=>{this.F.push(Error(i))}),this.g.Ra(),this.g.setGraph(e,t),this.C=void 0,Fu(this)}finishProcessing(){this.g.finishProcessing(),Fu(this)}close(){this.C=void 0,this.g.closeGraph()}};function be(e,t){if(e===null)throw Error(`Unable to obtain required WebGL resource: ${t}`);return e}ua.prototype.close=ua.prototype.close;var da=class{constructor(t,r,i,o){this.g=t,this.h=r,this.m=i,this.l=o}bind(){this.g.bindVertexArray(this.h)}close(){this.g.deleteVertexArray(this.h),this.g.deleteBuffer(this.m),this.g.deleteBuffer(this.l)}};function Bu(e,t,r){let i=e.g;if(r=be(i.createShader(r),"Failed to create WebGL shader"),i.shaderSource(r,t),i.compileShader(r),!i.getShaderParameter(r,i.COMPILE_STATUS))throw Error(`Could not compile WebGL shader: ${i.getShaderInfoLog(r)}`);return i.attachShader(e.h,r),r}function Mu(e,t){let r=e.g,i=be(r.createVertexArray(),"Failed to create vertex array");r.bindVertexArray(i);let o=be(r.createBuffer(),"Failed to create buffer");r.bindBuffer(r.ARRAY_BUFFER,o),r.enableVertexAttribArray(e.N),r.vertexAttribPointer(e.N,2,r.FLOAT,!1,0,0),r.bufferData(r.ARRAY_BUFFER,new Float32Array([-1,-1,-1,1,1,1,1,-1]),r.STATIC_DRAW);let n=be(r.createBuffer(),"Failed to create buffer");return r.bindBuffer(r.ARRAY_BUFFER,n),r.enableVertexAttribArray(e.M),r.vertexAttribPointer(e.M,2,r.FLOAT,!1,0,0),r.bufferData(r.ARRAY_BUFFER,new Float32Array(t?[0,1,0,0,1,0,1,1]:[0,0,0,1,1,1,1,0]),r.STATIC_DRAW),r.bindBuffer(r.ARRAY_BUFFER,null),r.bindVertexArray(null),new da(r,i,o,n)}function ic(e,t){if(e.g){if(t!==e.g)throw Error("Cannot change GL context once initialized")}else e.g=t}function qi(e,t,r,i){return ic(e,t),e.h||(e.m(),e.F()),r?(e.u||(e.u=Mu(e,!0)),r=e.u):(e.v||(e.v=Mu(e,!1)),r=e.v),t.useProgram(e.h),r.bind(),e.l(),e=i(),r.g.bindVertexArray(null),e}function Jt(e,t,r){return ic(e,t),e=be(t.createTexture(),"Failed to create texture"),t.bindTexture(t.TEXTURE_2D,e),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,r??t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,r??t.LINEAR),t.bindTexture(t.TEXTURE_2D,null),e}function xn(e,t,r){ic(e,t),e.C||(e.C=be(t.createFramebuffer(),"Failed to create framebuffe.")),t.bindFramebuffer(t.FRAMEBUFFER,e.C),t.framebufferTexture2D(t.FRAMEBUFFER,t.COLOR_ATTACHMENT0,t.TEXTURE_2D,r,0)}function oc(e){e.g?.bindFramebuffer(e.g.FRAMEBUFFER,null)}var Wr=class{I(){return`
10
+ precision mediump float;
11
+ varying vec2 vTex;
12
+ uniform sampler2D inputTexture;
13
+ void main() {
14
+ gl_FragColor = texture2D(inputTexture, vTex);
15
+ }
16
+ `}m(){let e=this.g;if(this.h=be(e.createProgram(),"Failed to create WebGL program"),this.ta=Bu(this,`
17
+ attribute vec2 aVertex;
18
+ attribute vec2 aTex;
19
+ varying vec2 vTex;
20
+ void main(void) {
21
+ gl_Position = vec4(aVertex, 0.0, 1.0);
22
+ vTex = aTex;
23
+ }`,e.VERTEX_SHADER),this.sa=Bu(this,this.I(),e.FRAGMENT_SHADER),e.linkProgram(this.h),!e.getProgramParameter(this.h,e.LINK_STATUS))throw Error(`Error during program linking: ${e.getProgramInfoLog(this.h)}`);this.N=e.getAttribLocation(this.h,"aVertex"),this.M=e.getAttribLocation(this.h,"aTex")}F(){}l(){}close(){if(this.h){let e=this.g;e.deleteProgram(this.h),e.deleteShader(this.ta),e.deleteShader(this.sa)}this.C&&this.g.deleteFramebuffer(this.C),this.v&&this.v.close(),this.u&&this.u.close()}},x0=class extends Wr{I(){return`
24
+ precision mediump float;
25
+ uniform sampler2D backgroundTexture;
26
+ uniform sampler2D maskTexture;
27
+ uniform sampler2D colorMappingTexture;
28
+ varying vec2 vTex;
29
+ void main() {
30
+ vec4 backgroundColor = texture2D(backgroundTexture, vTex);
31
+ float category = texture2D(maskTexture, vTex).r;
32
+ vec4 categoryColor = texture2D(colorMappingTexture, vec2(category, 0.0));
33
+ gl_FragColor = mix(backgroundColor, categoryColor, categoryColor.a);
34
+ }
35
+ `}F(){let e=this.g;e.activeTexture(e.TEXTURE1),this.B=Jt(this,e,e.LINEAR),e.activeTexture(e.TEXTURE2),this.j=Jt(this,e,e.NEAREST)}m(){super.m();let e=this.g;this.U=be(e.getUniformLocation(this.h,"backgroundTexture"),"Uniform location"),this.ra=be(e.getUniformLocation(this.h,"colorMappingTexture"),"Uniform location"),this.T=be(e.getUniformLocation(this.h,"maskTexture"),"Uniform location")}l(){super.l();let e=this.g;e.uniform1i(this.T,0),e.uniform1i(this.U,1),e.uniform1i(this.ra,2)}close(){this.B&&this.g.deleteTexture(this.B),this.j&&this.g.deleteTexture(this.j),super.close()}},C0=class extends Wr{I(){return`
36
+ precision mediump float;
37
+ uniform sampler2D maskTexture;
38
+ uniform sampler2D defaultTexture;
39
+ uniform sampler2D overlayTexture;
40
+ varying vec2 vTex;
41
+ void main() {
42
+ float confidence = texture2D(maskTexture, vTex).r;
43
+ vec4 defaultColor = texture2D(defaultTexture, vTex);
44
+ vec4 overlayColor = texture2D(overlayTexture, vTex);
45
+ // Apply the alpha from the overlay and merge in the default color
46
+ overlayColor = mix(defaultColor, overlayColor, overlayColor.a);
47
+ gl_FragColor = mix(defaultColor, overlayColor, confidence);
48
+ }
49
+ `}F(){let e=this.g;e.activeTexture(e.TEXTURE1),this.j=Jt(this,e),e.activeTexture(e.TEXTURE2),this.B=Jt(this,e)}m(){super.m();let e=this.g;this.T=be(e.getUniformLocation(this.h,"defaultTexture"),"Uniform location"),this.U=be(e.getUniformLocation(this.h,"overlayTexture"),"Uniform location"),this.J=be(e.getUniformLocation(this.h,"maskTexture"),"Uniform location")}l(){super.l();let e=this.g;e.uniform1i(this.J,0),e.uniform1i(this.T,1),e.uniform1i(this.U,2)}close(){this.j&&this.g.deleteTexture(this.j),this.B&&this.g.deleteTexture(this.B),super.close()}};function It(e,t){switch(t){case 0:return e.g.find(r=>r instanceof Uint8Array);case 1:return e.g.find(r=>r instanceof Float32Array);case 2:return e.g.find(r=>typeof WebGLTexture<"u"&&r instanceof WebGLTexture);default:throw Error(`Type is not supported: ${t}`)}}function ha(e){var t=It(e,1);if(!t){if(t=It(e,0))t=new Float32Array(t).map(i=>i/255);else{t=new Float32Array(e.width*e.height);let i=Lr(e);var r=nc(e);if(xn(r,i,Yh(e)),"iPad Simulator;iPhone Simulator;iPod Simulator;iPad;iPhone;iPod".split(";").includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in self.document){r=new Float32Array(e.width*e.height*4),i.readPixels(0,0,e.width,e.height,i.RGBA,i.FLOAT,r);for(let o=0,n=0;o<t.length;++o,n+=4)t[o]=r[n]}else i.readPixels(0,0,e.width,e.height,i.RED,i.FLOAT,t)}e.g.push(t)}return t}function Yh(e){let t=It(e,2);if(!t){let r=Lr(e);t=Qh(e);let i=ha(e),o=Zh(e);r.texImage2D(r.TEXTURE_2D,0,o,e.width,e.height,0,r.RED,r.FLOAT,i),pa(e)}return t}function Lr(e){if(!e.canvas)throw Error("Conversion to different image formats require that a canvas is passed when initializing the image.");return e.h||(e.h=be(e.canvas.getContext("webgl2"),"You cannot use a canvas that is already bound to a different type of rendering context.")),e.h}function Zh(e){if(e=Lr(e),!$o)if(e.getExtension("EXT_color_buffer_float")&&e.getExtension("OES_texture_float_linear")&&e.getExtension("EXT_float_blend"))$o=e.R32F;else{if(!e.getExtension("EXT_color_buffer_half_float"))throw Error("GPU does not fully support 4-channel float32 or float16 formats");$o=e.R16F}return $o}function nc(e){return e.l||(e.l=new Wr),e.l}function Qh(e){let t=Lr(e);t.viewport(0,0,e.width,e.height),t.activeTexture(t.TEXTURE0);let r=It(e,2);return r||(r=Jt(nc(e),t,e.m?t.LINEAR:t.NEAREST),e.g.push(r),e.j=!0),t.bindTexture(t.TEXTURE_2D,r),r}function pa(e){e.h.bindTexture(e.h.TEXTURE_2D,null)}var $o,ie=class{constructor(e,t,r,i,o,n,s){this.g=e,this.m=t,this.j=r,this.canvas=i,this.l=o,this.width=n,this.height=s,this.j&&--Lu===0&&console.error("You seem to be creating MPMask instances without invoking .close(). This leaks resources.")}La(){return!!It(this,0)}ka(){return!!It(this,1)}P(){return!!It(this,2)}ja(){return(t=It(e=this,0))||(t=ha(e),t=new Uint8Array(t.map(r=>255*r)),e.g.push(t)),t;var e,t}ia(){return ha(this)}K(){return Yh(this)}clone(){let e=[];for(let t of this.g){let r;if(t instanceof Uint8Array)r=new Uint8Array(t);else if(t instanceof Float32Array)r=new Float32Array(t);else{if(!(t instanceof WebGLTexture))throw Error(`Type is not supported: ${t}`);{let i=Lr(this),o=nc(this);i.activeTexture(i.TEXTURE1),r=Jt(o,i,this.m?i.LINEAR:i.NEAREST),i.bindTexture(i.TEXTURE_2D,r);let n=Zh(this);i.texImage2D(i.TEXTURE_2D,0,n,this.width,this.height,0,i.RED,i.FLOAT,null),i.bindTexture(i.TEXTURE_2D,null),xn(o,i,r),qi(o,i,!1,()=>{Qh(this),i.clearColor(0,0,0,0),i.clear(i.COLOR_BUFFER_BIT),i.drawArrays(i.TRIANGLE_FAN,0,4),pa(this)}),oc(o),pa(this)}}e.push(r)}return new ie(e,this.m,this.P(),this.canvas,this.l,this.width,this.height)}close(){this.j&&Lr(this).deleteTexture(It(this,2)),Lu=-1}};ie.prototype.close=ie.prototype.close,ie.prototype.clone=ie.prototype.clone,ie.prototype.getAsWebGLTexture=ie.prototype.K,ie.prototype.getAsFloat32Array=ie.prototype.ia,ie.prototype.getAsUint8Array=ie.prototype.ja,ie.prototype.hasWebGLTexture=ie.prototype.P,ie.prototype.hasFloat32Array=ie.prototype.ka,ie.prototype.hasUint8Array=ie.prototype.La;var Lu=250,R0={color:"white",lineWidth:4,radius:6};function $s(e){return{...R0,fillColor:(e=e||{}).color,...e}}function Pt(e,t){return e instanceof Function?e(t):e}function Uu(e,t,r){return Math.max(Math.min(t,r),Math.min(Math.max(t,r),e))}function _i(e){if(!e.l)throw Error("CPU rendering requested but CanvasRenderingContext2D not provided.");return e.l}function Li(e){if(!e.j)throw Error("GPU rendering requested but WebGL2RenderingContext not provided.");return e.j}function Nu(e,t,r){if(t.P())r(t.K());else{let i=t.ka()?t.ia():t.ja();e.m=e.m??new Wr;let o=Li(e);r((e=new ie([i],t.m,!1,o.canvas,e.m,t.width,t.height)).K()),e.close()}}function ju(e,t,r,i){let o=function(a){return a.g||(a.g=new x0),a.g}(e),n=Li(e),s=Array.isArray(r)?new ImageData(new Uint8ClampedArray(r),1,1):r;qi(o,n,!0,()=>{(function(c,l,u,d){let f=c.g;if(f.activeTexture(f.TEXTURE0),f.bindTexture(f.TEXTURE_2D,l),f.activeTexture(f.TEXTURE1),f.bindTexture(f.TEXTURE_2D,c.B),f.texImage2D(f.TEXTURE_2D,0,f.RGBA,f.RGBA,f.UNSIGNED_BYTE,u),c.J&&function(g,h){if(g!==h)return!1;g=g.entries(),h=h.entries();for(let[y,b]of g){g=y;let k=b;var m=h.next();if(m.done)return!1;let[P,ae]=m.value;if(m=ae,g!==P||k[0]!==m[0]||k[1]!==m[1]||k[2]!==m[2]||k[3]!==m[3])return!1}return!!h.next().done}(c.J,d))f.activeTexture(f.TEXTURE2),f.bindTexture(f.TEXTURE_2D,c.j);else{c.J=d;let g=Array(1024).fill(0);d.forEach((h,m)=>{if(h.length!==4)throw Error(`Color at index ${m} is not a four-channel value.`);g[4*m]=h[0],g[4*m+1]=h[1],g[4*m+2]=h[2],g[4*m+3]=h[3]}),f.activeTexture(f.TEXTURE2),f.bindTexture(f.TEXTURE_2D,c.j),f.texImage2D(f.TEXTURE_2D,0,f.RGBA,256,1,0,f.RGBA,f.UNSIGNED_BYTE,new Uint8Array(g))}})(o,t,s,i),n.clearColor(0,0,0,0),n.clear(n.COLOR_BUFFER_BIT),n.drawArrays(n.TRIANGLE_FAN,0,4);let a=o.g;a.activeTexture(a.TEXTURE0),a.bindTexture(a.TEXTURE_2D,null),a.activeTexture(a.TEXTURE1),a.bindTexture(a.TEXTURE_2D,null),a.activeTexture(a.TEXTURE2),a.bindTexture(a.TEXTURE_2D,null)})}function Vu(e,t,r,i){let o=Li(e),n=function(c){return c.h||(c.h=new C0),c.h}(e),s=Array.isArray(r)?new ImageData(new Uint8ClampedArray(r),1,1):r,a=Array.isArray(i)?new ImageData(new Uint8ClampedArray(i),1,1):i;qi(n,o,!0,()=>{var c=n.g;c.activeTexture(c.TEXTURE0),c.bindTexture(c.TEXTURE_2D,t),c.activeTexture(c.TEXTURE1),c.bindTexture(c.TEXTURE_2D,n.j),c.texImage2D(c.TEXTURE_2D,0,c.RGBA,c.RGBA,c.UNSIGNED_BYTE,s),c.activeTexture(c.TEXTURE2),c.bindTexture(c.TEXTURE_2D,n.B),c.texImage2D(c.TEXTURE_2D,0,c.RGBA,c.RGBA,c.UNSIGNED_BYTE,a),o.clearColor(0,0,0,0),o.clear(o.COLOR_BUFFER_BIT),o.drawArrays(o.TRIANGLE_FAN,0,4),o.bindTexture(o.TEXTURE_2D,null),(c=n.g).activeTexture(c.TEXTURE0),c.bindTexture(c.TEXTURE_2D,null),c.activeTexture(c.TEXTURE1),c.bindTexture(c.TEXTURE_2D,null),c.activeTexture(c.TEXTURE2),c.bindTexture(c.TEXTURE_2D,null)})}var Ee=class{constructor(e,t){e instanceof CanvasRenderingContext2D||e instanceof OffscreenCanvasRenderingContext2D?(this.l=e,this.j=t):this.j=e}Ea(e,t){if(e){var r=_i(this);t=$s(t),r.save();var i=r.canvas,o=0;for(let n of e)r.fillStyle=Pt(t.fillColor,{index:o,from:n}),r.strokeStyle=Pt(t.color,{index:o,from:n}),r.lineWidth=Pt(t.lineWidth,{index:o,from:n}),(e=new Path2D).arc(n.x*i.width,n.y*i.height,Pt(t.radius,{index:o,from:n}),0,2*Math.PI),r.fill(e),r.stroke(e),++o;r.restore()}}Da(e,t,r){if(e&&t){var i=_i(this);r=$s(r),i.save();var o=i.canvas,n=0;for(let s of t){i.beginPath(),t=e[s.start];let a=e[s.end];t&&a&&(i.strokeStyle=Pt(r.color,{index:n,from:t,to:a}),i.lineWidth=Pt(r.lineWidth,{index:n,from:t,to:a}),i.moveTo(t.x*o.width,t.y*o.height),i.lineTo(a.x*o.width,a.y*o.height)),++n,i.stroke()}i.restore()}}Aa(e,t){let r=_i(this);t=$s(t),r.save(),r.beginPath(),r.lineWidth=Pt(t.lineWidth,{}),r.strokeStyle=Pt(t.color,{}),r.fillStyle=Pt(t.fillColor,{}),r.moveTo(e.originX,e.originY),r.lineTo(e.originX+e.width,e.originY),r.lineTo(e.originX+e.width,e.originY+e.height),r.lineTo(e.originX,e.originY+e.height),r.lineTo(e.originX,e.originY),r.stroke(),r.fill(),r.restore()}Ba(e,t,r=[0,0,0,255]){this.l?function(i,o,n,s){let a=Li(i);Nu(i,o,c=>{ju(i,c,n,s),(c=_i(i)).drawImage(a.canvas,0,0,c.canvas.width,c.canvas.height)})}(this,e,r,t):ju(this,e.K(),r,t)}Ca(e,t,r){this.l?function(i,o,n,s){let a=Li(i);Nu(i,o,c=>{Vu(i,c,n,s),(c=_i(i)).drawImage(a.canvas,0,0,c.canvas.width,c.canvas.height)})}(this,e,t,r):Vu(this,e.K(),t,r)}close(){this.g?.close(),this.g=void 0,this.h?.close(),this.h=void 0,this.m?.close(),this.m=void 0}};function pt(e,t){switch(t){case 0:return e.g.find(r=>r instanceof ImageData);case 1:return e.g.find(r=>typeof ImageBitmap<"u"&&r instanceof ImageBitmap);case 2:return e.g.find(r=>typeof WebGLTexture<"u"&&r instanceof WebGLTexture);default:throw Error(`Type is not supported: ${t}`)}}function ep(e){var t=pt(e,0);if(!t){t=Ur(e);let r=Cn(e),i=new Uint8Array(e.width*e.height*4);xn(r,t,tn(e)),t.readPixels(0,0,e.width,e.height,t.RGBA,t.UNSIGNED_BYTE,i),oc(r),t=new ImageData(new Uint8ClampedArray(i.buffer),e.width,e.height),e.g.push(t)}return t}function tn(e){let t=pt(e,2);if(!t){let r=Ur(e);t=rn(e);let i=pt(e,1)||ep(e);r.texImage2D(r.TEXTURE_2D,0,r.RGBA,r.RGBA,r.UNSIGNED_BYTE,i),Ai(e)}return t}function Ur(e){if(!e.canvas)throw Error("Conversion to different image formats require that a canvas is passed when iniitializing the image.");return e.h||(e.h=be(e.canvas.getContext("webgl2"),"You cannot use a canvas that is already bound to a different type of rendering context.")),e.h}function Cn(e){return e.l||(e.l=new Wr),e.l}function rn(e){let t=Ur(e);t.viewport(0,0,e.width,e.height),t.activeTexture(t.TEXTURE0);let r=pt(e,2);return r||(r=Jt(Cn(e),t),e.g.push(r),e.m=!0),t.bindTexture(t.TEXTURE_2D,r),r}function Ai(e){e.h.bindTexture(e.h.TEXTURE_2D,null)}function zu(e){let t=Ur(e);return qi(Cn(e),t,!0,()=>function(r,i){let o=r.canvas;if(o.width===r.width&&o.height===r.height)return i();let n=o.width,s=o.height;return o.width=r.width,o.height=r.height,r=i(),o.width=n,o.height=s,r}(e,()=>{if(t.bindFramebuffer(t.FRAMEBUFFER,null),t.clearColor(0,0,0,0),t.clear(t.COLOR_BUFFER_BIT),t.drawArrays(t.TRIANGLE_FAN,0,4),!(e.canvas instanceof OffscreenCanvas))throw Error("Conversion to ImageBitmap requires that the MediaPipe Tasks is initialized with an OffscreenCanvas");return e.canvas.transferToImageBitmap()}))}Ee.prototype.close=Ee.prototype.close,Ee.prototype.drawConfidenceMask=Ee.prototype.Ca,Ee.prototype.drawCategoryMask=Ee.prototype.Ba,Ee.prototype.drawBoundingBox=Ee.prototype.Aa,Ee.prototype.drawConnectors=Ee.prototype.Da,Ee.prototype.drawLandmarks=Ee.prototype.Ea,Ee.lerp=function(e,t,r,i,o){return Uu(i*(1-(e-t)/(r-t))+o*(1-(r-e)/(r-t)),i,o)},Ee.clamp=Uu;var ce=class{constructor(e,t,r,i,o,n,s){this.g=e,this.j=t,this.m=r,this.canvas=i,this.l=o,this.width=n,this.height=s,(this.j||this.m)&&--Gu===0&&console.error("You seem to be creating MPImage instances without invoking .close(). This leaks resources.")}Ka(){return!!pt(this,0)}la(){return!!pt(this,1)}P(){return!!pt(this,2)}Ia(){return ep(this)}Ha(){var e=pt(this,1);return e||(tn(this),rn(this),e=zu(this),Ai(this),this.g.push(e),this.j=!0),e}K(){return tn(this)}clone(){let e=[];for(let t of this.g){let r;if(t instanceof ImageData)r=new ImageData(t.data,this.width,this.height);else if(t instanceof WebGLTexture){let i=Ur(this),o=Cn(this);i.activeTexture(i.TEXTURE1),r=Jt(o,i),i.bindTexture(i.TEXTURE_2D,r),i.texImage2D(i.TEXTURE_2D,0,i.RGBA,this.width,this.height,0,i.RGBA,i.UNSIGNED_BYTE,null),i.bindTexture(i.TEXTURE_2D,null),xn(o,i,r),qi(o,i,!1,()=>{rn(this),i.clearColor(0,0,0,0),i.clear(i.COLOR_BUFFER_BIT),i.drawArrays(i.TRIANGLE_FAN,0,4),Ai(this)}),oc(o),Ai(this)}else{if(!(t instanceof ImageBitmap))throw Error(`Type is not supported: ${t}`);tn(this),rn(this),r=zu(this),Ai(this)}e.push(r)}return new ce(e,this.la(),this.P(),this.canvas,this.l,this.width,this.height)}close(){this.j&&pt(this,1).close(),this.m&&Ur(this).deleteTexture(pt(this,2)),Gu=-1}};ce.prototype.close=ce.prototype.close,ce.prototype.clone=ce.prototype.clone,ce.prototype.getAsWebGLTexture=ce.prototype.K,ce.prototype.getAsImageBitmap=ce.prototype.Ha,ce.prototype.getAsImageData=ce.prototype.Ia,ce.prototype.hasWebGLTexture=ce.prototype.P,ce.prototype.hasImageBitmap=ce.prototype.la,ce.prototype.hasImageData=ce.prototype.Ka;var Gu=250;function ot(...e){return e.map(([t,r])=>({start:t,end:r}))}var P0=function(e){return class extends e{Ra(){this.i._registerModelResourcesGraphService()}}}((Hu=class{constructor(e,t){this.l=!0,this.i=e,this.g=null,this.h=0,this.m=typeof this.i._addIntToInputStream=="function",t!==void 0?this.i.canvas=t:typeof OffscreenCanvas>"u"||Jh()?(console.warn("OffscreenCanvas not supported and GraphRunner constructor glCanvas parameter is undefined. Creating backup canvas."),this.i.canvas=document.createElement("canvas")):this.i.canvas=new OffscreenCanvas(1,1)}async initializeGraph(e){let t=await(await fetch(e)).arrayBuffer();e=!(e.endsWith(".pbtxt")||e.endsWith(".textproto")),this.setGraph(new Uint8Array(t),e)}setGraphFromString(e){this.setGraph(new TextEncoder().encode(e),!1)}setGraph(e,t){let r=e.length,i=this.i._malloc(r);this.i.HEAPU8.set(e,i),t?this.i._changeBinaryGraph(r,i):this.i._changeTextGraph(r,i),this.i._free(i)}configureAudio(e,t,r,i,o){this.i._configureAudio||console.warn('Attempting to use configureAudio without support for input audio. Is build dep ":gl_graph_runner_audio" missing?'),w(this,i||"input_audio",n=>{w(this,o=o||"audio_header",s=>{this.i._configureAudio(n,s,e,t,r)})})}setAutoResizeCanvas(e){this.l=e}setAutoRenderToScreen(e){this.i._setAutoRenderToScreen(e)}setGpuBufferVerticalFlip(e){this.i.gpuOriginForWebTexturesIsBottomLeft=e}da(e){Rt(this,"__graph_config__",t=>{e(t)}),w(this,"__graph_config__",t=>{this.i._getGraphConfig(t,void 0)}),delete this.i.simpleListeners.__graph_config__}attachErrorListener(e){this.i.errorListener=e}attachEmptyPacketListener(e,t){this.i.emptyPacketListeners=this.i.emptyPacketListeners||{},this.i.emptyPacketListeners[e]=t}addAudioToStream(e,t,r){this.addAudioToStreamWithShape(e,0,0,t,r)}addAudioToStreamWithShape(e,t,r,i,o){let n=4*e.length;this.h!==n&&(this.g&&this.i._free(this.g),this.g=this.i._malloc(n),this.h=n),this.i.HEAPF32.set(e,this.g/4),w(this,i,s=>{this.i._addAudioToInputStream(this.g,t,r,s,o)})}addGpuBufferToStream(e,t,r){w(this,t,i=>{let[o,n]=Iu(this,e,i);this.i._addBoundTextureToStream(i,o,n,r)})}addBoolToStream(e,t,r){w(this,t,i=>{this.i._addBoolToInputStream(e,i,r)})}addDoubleToStream(e,t,r){w(this,t,i=>{this.i._addDoubleToInputStream(e,i,r)})}addFloatToStream(e,t,r){w(this,t,i=>{this.i._addFloatToInputStream(e,i,r)})}addIntToStream(e,t,r){w(this,t,i=>{this.i._addIntToInputStream(e,i,r)})}addStringToStream(e,t,r){w(this,t,i=>{w(this,e,o=>{this.i._addStringToInputStream(o,i,r)})})}addStringRecordToStream(e,t,r){w(this,t,i=>{Ou(this,Object.keys(e),o=>{Ou(this,Object.values(e),n=>{this.i._addFlatHashMapToInputStream(o,n,Object.keys(e).length,i,r)})})})}addProtoToStream(e,t,r,i){w(this,r,o=>{w(this,t,n=>{let s=this.i._malloc(e.length);this.i.HEAPU8.set(e,s),this.i._addProtoToInputStream(s,e.length,n,o,i),this.i._free(s)})})}addEmptyPacketToStream(e,t){w(this,e,r=>{this.i._addEmptyPacketToInputStream(r,t)})}addBoolVectorToStream(e,t,r){w(this,t,i=>{let o=this.i._allocateBoolVector(e.length);if(!o)throw Error("Unable to allocate new bool vector on heap.");for(let n of e)this.i._addBoolVectorEntry(o,n);this.i._addBoolVectorToInputStream(o,i,r)})}addDoubleVectorToStream(e,t,r){w(this,t,i=>{let o=this.i._allocateDoubleVector(e.length);if(!o)throw Error("Unable to allocate new double vector on heap.");for(let n of e)this.i._addDoubleVectorEntry(o,n);this.i._addDoubleVectorToInputStream(o,i,r)})}addFloatVectorToStream(e,t,r){w(this,t,i=>{let o=this.i._allocateFloatVector(e.length);if(!o)throw Error("Unable to allocate new float vector on heap.");for(let n of e)this.i._addFloatVectorEntry(o,n);this.i._addFloatVectorToInputStream(o,i,r)})}addIntVectorToStream(e,t,r){w(this,t,i=>{let o=this.i._allocateIntVector(e.length);if(!o)throw Error("Unable to allocate new int vector on heap.");for(let n of e)this.i._addIntVectorEntry(o,n);this.i._addIntVectorToInputStream(o,i,r)})}addStringVectorToStream(e,t,r){w(this,t,i=>{let o=this.i._allocateStringVector(e.length);if(!o)throw Error("Unable to allocate new string vector on heap.");for(let n of e)w(this,n,s=>{this.i._addStringVectorEntry(o,s)});this.i._addStringVectorToInputStream(o,i,r)})}addBoolToInputSidePacket(e,t){w(this,t,r=>{this.i._addBoolToInputSidePacket(e,r)})}addDoubleToInputSidePacket(e,t){w(this,t,r=>{this.i._addDoubleToInputSidePacket(e,r)})}addFloatToInputSidePacket(e,t){w(this,t,r=>{this.i._addFloatToInputSidePacket(e,r)})}addIntToInputSidePacket(e,t){w(this,t,r=>{this.i._addIntToInputSidePacket(e,r)})}addStringToInputSidePacket(e,t){w(this,t,r=>{w(this,e,i=>{this.i._addStringToInputSidePacket(i,r)})})}addProtoToInputSidePacket(e,t,r){w(this,r,i=>{w(this,t,o=>{let n=this.i._malloc(e.length);this.i.HEAPU8.set(e,n),this.i._addProtoToInputSidePacket(n,e.length,o,i),this.i._free(n)})})}addBoolVectorToInputSidePacket(e,t){w(this,t,r=>{let i=this.i._allocateBoolVector(e.length);if(!i)throw Error("Unable to allocate new bool vector on heap.");for(let o of e)this.i._addBoolVectorEntry(i,o);this.i._addBoolVectorToInputSidePacket(i,r)})}addDoubleVectorToInputSidePacket(e,t){w(this,t,r=>{let i=this.i._allocateDoubleVector(e.length);if(!i)throw Error("Unable to allocate new double vector on heap.");for(let o of e)this.i._addDoubleVectorEntry(i,o);this.i._addDoubleVectorToInputSidePacket(i,r)})}addFloatVectorToInputSidePacket(e,t){w(this,t,r=>{let i=this.i._allocateFloatVector(e.length);if(!i)throw Error("Unable to allocate new float vector on heap.");for(let o of e)this.i._addFloatVectorEntry(i,o);this.i._addFloatVectorToInputSidePacket(i,r)})}addIntVectorToInputSidePacket(e,t){w(this,t,r=>{let i=this.i._allocateIntVector(e.length);if(!i)throw Error("Unable to allocate new int vector on heap.");for(let o of e)this.i._addIntVectorEntry(i,o);this.i._addIntVectorToInputSidePacket(i,r)})}addStringVectorToInputSidePacket(e,t){w(this,t,r=>{let i=this.i._allocateStringVector(e.length);if(!i)throw Error("Unable to allocate new string vector on heap.");for(let o of e)w(this,o,n=>{this.i._addStringVectorEntry(i,n)});this.i._addStringVectorToInputSidePacket(i,r)})}attachBoolListener(e,t){Rt(this,e,t),w(this,e,r=>{this.i._attachBoolListener(r)})}attachBoolVectorListener(e,t){lr(this,e,t),w(this,e,r=>{this.i._attachBoolVectorListener(r)})}attachIntListener(e,t){Rt(this,e,t),w(this,e,r=>{this.i._attachIntListener(r)})}attachIntVectorListener(e,t){lr(this,e,t),w(this,e,r=>{this.i._attachIntVectorListener(r)})}attachDoubleListener(e,t){Rt(this,e,t),w(this,e,r=>{this.i._attachDoubleListener(r)})}attachDoubleVectorListener(e,t){lr(this,e,t),w(this,e,r=>{this.i._attachDoubleVectorListener(r)})}attachFloatListener(e,t){Rt(this,e,t),w(this,e,r=>{this.i._attachFloatListener(r)})}attachFloatVectorListener(e,t){lr(this,e,t),w(this,e,r=>{this.i._attachFloatVectorListener(r)})}attachStringListener(e,t){Rt(this,e,t),w(this,e,r=>{this.i._attachStringListener(r)})}attachStringVectorListener(e,t){lr(this,e,t),w(this,e,r=>{this.i._attachStringVectorListener(r)})}attachProtoListener(e,t,r){Rt(this,e,t),w(this,e,i=>{this.i._attachProtoListener(i,r||!1)})}attachProtoVectorListener(e,t,r){lr(this,e,t),w(this,e,i=>{this.i._attachProtoVectorListener(i,r||!1)})}attachAudioListener(e,t,r){this.i._attachAudioListener||console.warn('Attempting to use attachAudioListener without support for output audio. Is build dep ":gl_graph_runner_audio_out" missing?'),Rt(this,e,(i,o)=>{i=new Float32Array(i.buffer,i.byteOffset,i.length/4),t(i,o)}),w(this,e,i=>{this.i._attachAudioListener(i,r||!1)})}finishProcessing(){this.i._waitUntilIdle()}closeGraph(){this.i._closeGraph(),this.i.simpleListeners=void 0,this.i.emptyPacketListeners=void 0}},class extends Hu{get fa(){return this.i}va(e,t,r){w(this,t,i=>{let[o,n]=Iu(this,e,i);this.fa._addBoundTextureAsImageToStream(i,o,n,r)})}ba(e,t){Rt(this,e,t),w(this,e,r=>{this.fa._attachImageListener(r)})}ca(e,t){lr(this,e,t),w(this,e,r=>{this.fa._attachImageVectorListener(r)})}})),Hu,nt=class extends P0{};async function x(e,t,r){return async function(i,o,n,s){return T0(i,o,n,s)}(e,r.canvas??(typeof OffscreenCanvas>"u"||Jh()?document.createElement("canvas"):void 0),t,r)}function tp(e,t,r,i){if(e.J){let n=new mh;if(r?.regionOfInterest){if(!e.U)throw Error("This task doesn't support region-of-interest.");var o=r.regionOfInterest;if(o.left>=o.right||o.top>=o.bottom)throw Error("Expected RectF with left < right and top < bottom.");if(0>o.left||0>o.top||1<o.right||1<o.bottom)throw Error("Expected RectF values to be in [0,1].");A(n,1,(o.left+o.right)/2),A(n,2,(o.top+o.bottom)/2),A(n,4,o.right-o.left),A(n,3,o.bottom-o.top)}else A(n,1,.5),A(n,2,.5),A(n,4,1),A(n,3,1);if(r?.rotationDegrees){if(r?.rotationDegrees%90!=0)throw Error("Expected rotation to be a multiple of 90\xB0.");if(A(n,5,-Math.PI*r.rotationDegrees/180),r?.rotationDegrees%180!=0){let[s,a]=t.videoWidth!==void 0?[t.videoWidth,t.videoHeight]:t.naturalWidth!==void 0?[t.naturalWidth,t.naturalHeight]:[t.width,t.height];r=he(n,3)*a/s,o=he(n,4)*s/a,A(n,4,r),A(n,3,o)}}e.g.addProtoToStream(n.g(),"mediapipe.NormalizedRect",e.J,i)}e.g.va(t,e.T,i??performance.now()),e.finishProcessing()}function st(e,t,r){if(e.baseOptions?.g())throw Error("Task is not initialized with image mode. 'runningMode' must be set to 'IMAGE'.");tp(e,t,r,e.I+1)}function Ft(e,t,r,i){if(!e.baseOptions?.g())throw Error("Task is not initialized with video mode. 'runningMode' must be set to 'VIDEO'.");tp(e,t,r,i)}function Ui(e,t,r,i){var o=t.data;let n=t.width,s=n*(t=t.height);if((o instanceof Uint8Array||o instanceof Float32Array)&&o.length!==s)throw Error("Unsupported channel count: "+o.length/s);return e=new ie([o],r,!1,e.g.i.canvas,e.M,n,t),i?e.clone():e}var Me=class extends ua{constructor(e,t,r,i){super(e),this.g=e,this.T=t,this.J=r,this.U=i,this.M=new Wr}l(e,t=!0){if("runningMode"in e&&Bi(this.baseOptions,2,!!e.runningMode&&e.runningMode!=="IMAGE"),e.canvas!==void 0&&this.g.i.canvas!==e.canvas)throw Error("You must create a new task to reset the canvas.");return super.l(e,t)}close(){this.M.close(),super.close()}};Me.prototype.close=Me.prototype.close;var ke=class extends Me{constructor(e,t){super(new nt(e,t),"image_in","norm_rect_in",!1),this.j={detections:[]},_(e=this.h=new Ja,0,1,t=new X),A(this.h,2,.5),A(this.h,3,.3)}get baseOptions(){return C(this.h,X,1)}set baseOptions(e){_(this.h,0,1,e)}o(e){return"minDetectionConfidence"in e&&A(this.h,2,e.minDetectionConfidence??.5),"minSuppressionThreshold"in e&&A(this.h,3,e.minSuppressionThreshold??.3),this.l(e)}G(e,t){return this.j={detections:[]},st(this,e,t),this.j}H(e,t,r){return this.j={detections:[]},Ft(this,e,r,t),this.j}m(){var e=new Ce;z(e,"image_in"),z(e,"norm_rect_in"),j(e,"detections");let t=new We;rt(t,c0,this.h);let r=new Se;$e(r,"mediapipe.tasks.vision.face_detector.FaceDetectorGraph"),L(r,"IMAGE:image_in"),L(r,"NORM_RECT:norm_rect_in"),D(r,"DETECTIONS:detections"),r.o(t),Xe(e,r),this.g.attachProtoVectorListener("detections",(i,o)=>{for(let n of i)i=lh(n),this.j.detections.push($h(i));S(this,o)}),this.g.attachEmptyPacketListener("detections",i=>{S(this,i)}),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};ke.prototype.detectForVideo=ke.prototype.H,ke.prototype.detect=ke.prototype.G,ke.prototype.setOptions=ke.prototype.o,ke.createFromModelPath=async function(e,t){return x(ke,e,{baseOptions:{modelAssetPath:t}})},ke.createFromModelBuffer=function(e,t){return x(ke,e,{baseOptions:{modelAssetBuffer:t}})},ke.createFromOptions=function(e,t){return x(ke,e,t)};var rp=ot([61,146],[146,91],[91,181],[181,84],[84,17],[17,314],[314,405],[405,321],[321,375],[375,291],[61,185],[185,40],[40,39],[39,37],[37,0],[0,267],[267,269],[269,270],[270,409],[409,291],[78,95],[95,88],[88,178],[178,87],[87,14],[14,317],[317,402],[402,318],[318,324],[324,308],[78,191],[191,80],[80,81],[81,82],[82,13],[13,312],[312,311],[311,310],[310,415],[415,308]),ip=ot([263,249],[249,390],[390,373],[373,374],[374,380],[380,381],[381,382],[382,362],[263,466],[466,388],[388,387],[387,386],[386,385],[385,384],[384,398],[398,362]),op=ot([276,283],[283,282],[282,295],[295,285],[300,293],[293,334],[334,296],[296,336]),I0=ot([474,475],[475,476],[476,477],[477,474]),np=ot([33,7],[7,163],[163,144],[144,145],[145,153],[153,154],[154,155],[155,133],[33,246],[246,161],[161,160],[160,159],[159,158],[158,157],[157,173],[173,133]),sp=ot([46,53],[53,52],[52,65],[65,55],[70,63],[63,105],[105,66],[66,107]),O0=ot([469,470],[470,471],[471,472],[472,469]),ap=ot([10,338],[338,297],[297,332],[332,284],[284,251],[251,389],[389,356],[356,454],[454,323],[323,361],[361,288],[288,397],[397,365],[365,379],[379,378],[378,400],[400,377],[377,152],[152,148],[148,176],[176,149],[149,150],[150,136],[136,172],[172,58],[58,132],[132,93],[93,234],[234,127],[127,162],[162,21],[21,54],[54,103],[103,67],[67,109],[109,10]),D0=[...rp,...ip,...op,...np,...sp,...ap],F0=ot([127,34],[34,139],[139,127],[11,0],[0,37],[37,11],[232,231],[231,120],[120,232],[72,37],[37,39],[39,72],[128,121],[121,47],[47,128],[232,121],[121,128],[128,232],[104,69],[69,67],[67,104],[175,171],[171,148],[148,175],[118,50],[50,101],[101,118],[73,39],[39,40],[40,73],[9,151],[151,108],[108,9],[48,115],[115,131],[131,48],[194,204],[204,211],[211,194],[74,40],[40,185],[185,74],[80,42],[42,183],[183,80],[40,92],[92,186],[186,40],[230,229],[229,118],[118,230],[202,212],[212,214],[214,202],[83,18],[18,17],[17,83],[76,61],[61,146],[146,76],[160,29],[29,30],[30,160],[56,157],[157,173],[173,56],[106,204],[204,194],[194,106],[135,214],[214,192],[192,135],[203,165],[165,98],[98,203],[21,71],[71,68],[68,21],[51,45],[45,4],[4,51],[144,24],[24,23],[23,144],[77,146],[146,91],[91,77],[205,50],[50,187],[187,205],[201,200],[200,18],[18,201],[91,106],[106,182],[182,91],[90,91],[91,181],[181,90],[85,84],[84,17],[17,85],[206,203],[203,36],[36,206],[148,171],[171,140],[140,148],[92,40],[40,39],[39,92],[193,189],[189,244],[244,193],[159,158],[158,28],[28,159],[247,246],[246,161],[161,247],[236,3],[3,196],[196,236],[54,68],[68,104],[104,54],[193,168],[168,8],[8,193],[117,228],[228,31],[31,117],[189,193],[193,55],[55,189],[98,97],[97,99],[99,98],[126,47],[47,100],[100,126],[166,79],[79,218],[218,166],[155,154],[154,26],[26,155],[209,49],[49,131],[131,209],[135,136],[136,150],[150,135],[47,126],[126,217],[217,47],[223,52],[52,53],[53,223],[45,51],[51,134],[134,45],[211,170],[170,140],[140,211],[67,69],[69,108],[108,67],[43,106],[106,91],[91,43],[230,119],[119,120],[120,230],[226,130],[130,247],[247,226],[63,53],[53,52],[52,63],[238,20],[20,242],[242,238],[46,70],[70,156],[156,46],[78,62],[62,96],[96,78],[46,53],[53,63],[63,46],[143,34],[34,227],[227,143],[123,117],[117,111],[111,123],[44,125],[125,19],[19,44],[236,134],[134,51],[51,236],[216,206],[206,205],[205,216],[154,153],[153,22],[22,154],[39,37],[37,167],[167,39],[200,201],[201,208],[208,200],[36,142],[142,100],[100,36],[57,212],[212,202],[202,57],[20,60],[60,99],[99,20],[28,158],[158,157],[157,28],[35,226],[226,113],[113,35],[160,159],[159,27],[27,160],[204,202],[202,210],[210,204],[113,225],[225,46],[46,113],[43,202],[202,204],[204,43],[62,76],[76,77],[77,62],[137,123],[123,116],[116,137],[41,38],[38,72],[72,41],[203,129],[129,142],[142,203],[64,98],[98,240],[240,64],[49,102],[102,64],[64,49],[41,73],[73,74],[74,41],[212,216],[216,207],[207,212],[42,74],[74,184],[184,42],[169,170],[170,211],[211,169],[170,149],[149,176],[176,170],[105,66],[66,69],[69,105],[122,6],[6,168],[168,122],[123,147],[147,187],[187,123],[96,77],[77,90],[90,96],[65,55],[55,107],[107,65],[89,90],[90,180],[180,89],[101,100],[100,120],[120,101],[63,105],[105,104],[104,63],[93,137],[137,227],[227,93],[15,86],[86,85],[85,15],[129,102],[102,49],[49,129],[14,87],[87,86],[86,14],[55,8],[8,9],[9,55],[100,47],[47,121],[121,100],[145,23],[23,22],[22,145],[88,89],[89,179],[179,88],[6,122],[122,196],[196,6],[88,95],[95,96],[96,88],[138,172],[172,136],[136,138],[215,58],[58,172],[172,215],[115,48],[48,219],[219,115],[42,80],[80,81],[81,42],[195,3],[3,51],[51,195],[43,146],[146,61],[61,43],[171,175],[175,199],[199,171],[81,82],[82,38],[38,81],[53,46],[46,225],[225,53],[144,163],[163,110],[110,144],[52,65],[65,66],[66,52],[229,228],[228,117],[117,229],[34,127],[127,234],[234,34],[107,108],[108,69],[69,107],[109,108],[108,151],[151,109],[48,64],[64,235],[235,48],[62,78],[78,191],[191,62],[129,209],[209,126],[126,129],[111,35],[35,143],[143,111],[117,123],[123,50],[50,117],[222,65],[65,52],[52,222],[19,125],[125,141],[141,19],[221,55],[55,65],[65,221],[3,195],[195,197],[197,3],[25,7],[7,33],[33,25],[220,237],[237,44],[44,220],[70,71],[71,139],[139,70],[122,193],[193,245],[245,122],[247,130],[130,33],[33,247],[71,21],[21,162],[162,71],[170,169],[169,150],[150,170],[188,174],[174,196],[196,188],[216,186],[186,92],[92,216],[2,97],[97,167],[167,2],[141,125],[125,241],[241,141],[164,167],[167,37],[37,164],[72,38],[38,12],[12,72],[38,82],[82,13],[13,38],[63,68],[68,71],[71,63],[226,35],[35,111],[111,226],[101,50],[50,205],[205,101],[206,92],[92,165],[165,206],[209,198],[198,217],[217,209],[165,167],[167,97],[97,165],[220,115],[115,218],[218,220],[133,112],[112,243],[243,133],[239,238],[238,241],[241,239],[214,135],[135,169],[169,214],[190,173],[173,133],[133,190],[171,208],[208,32],[32,171],[125,44],[44,237],[237,125],[86,87],[87,178],[178,86],[85,86],[86,179],[179,85],[84,85],[85,180],[180,84],[83,84],[84,181],[181,83],[201,83],[83,182],[182,201],[137,93],[93,132],[132,137],[76,62],[62,183],[183,76],[61,76],[76,184],[184,61],[57,61],[61,185],[185,57],[212,57],[57,186],[186,212],[214,207],[207,187],[187,214],[34,143],[143,156],[156,34],[79,239],[239,237],[237,79],[123,137],[137,177],[177,123],[44,1],[1,4],[4,44],[201,194],[194,32],[32,201],[64,102],[102,129],[129,64],[213,215],[215,138],[138,213],[59,166],[166,219],[219,59],[242,99],[99,97],[97,242],[2,94],[94,141],[141,2],[75,59],[59,235],[235,75],[24,110],[110,228],[228,24],[25,130],[130,226],[226,25],[23,24],[24,229],[229,23],[22,23],[23,230],[230,22],[26,22],[22,231],[231,26],[112,26],[26,232],[232,112],[189,190],[190,243],[243,189],[221,56],[56,190],[190,221],[28,56],[56,221],[221,28],[27,28],[28,222],[222,27],[29,27],[27,223],[223,29],[30,29],[29,224],[224,30],[247,30],[30,225],[225,247],[238,79],[79,20],[20,238],[166,59],[59,75],[75,166],[60,75],[75,240],[240,60],[147,177],[177,215],[215,147],[20,79],[79,166],[166,20],[187,147],[147,213],[213,187],[112,233],[233,244],[244,112],[233,128],[128,245],[245,233],[128,114],[114,188],[188,128],[114,217],[217,174],[174,114],[131,115],[115,220],[220,131],[217,198],[198,236],[236,217],[198,131],[131,134],[134,198],[177,132],[132,58],[58,177],[143,35],[35,124],[124,143],[110,163],[163,7],[7,110],[228,110],[110,25],[25,228],[356,389],[389,368],[368,356],[11,302],[302,267],[267,11],[452,350],[350,349],[349,452],[302,303],[303,269],[269,302],[357,343],[343,277],[277,357],[452,453],[453,357],[357,452],[333,332],[332,297],[297,333],[175,152],[152,377],[377,175],[347,348],[348,330],[330,347],[303,304],[304,270],[270,303],[9,336],[336,337],[337,9],[278,279],[279,360],[360,278],[418,262],[262,431],[431,418],[304,408],[408,409],[409,304],[310,415],[415,407],[407,310],[270,409],[409,410],[410,270],[450,348],[348,347],[347,450],[422,430],[430,434],[434,422],[313,314],[314,17],[17,313],[306,307],[307,375],[375,306],[387,388],[388,260],[260,387],[286,414],[414,398],[398,286],[335,406],[406,418],[418,335],[364,367],[367,416],[416,364],[423,358],[358,327],[327,423],[251,284],[284,298],[298,251],[281,5],[5,4],[4,281],[373,374],[374,253],[253,373],[307,320],[320,321],[321,307],[425,427],[427,411],[411,425],[421,313],[313,18],[18,421],[321,405],[405,406],[406,321],[320,404],[404,405],[405,320],[315,16],[16,17],[17,315],[426,425],[425,266],[266,426],[377,400],[400,369],[369,377],[322,391],[391,269],[269,322],[417,465],[465,464],[464,417],[386,257],[257,258],[258,386],[466,260],[260,388],[388,466],[456,399],[399,419],[419,456],[284,332],[332,333],[333,284],[417,285],[285,8],[8,417],[346,340],[340,261],[261,346],[413,441],[441,285],[285,413],[327,460],[460,328],[328,327],[355,371],[371,329],[329,355],[392,439],[439,438],[438,392],[382,341],[341,256],[256,382],[429,420],[420,360],[360,429],[364,394],[394,379],[379,364],[277,343],[343,437],[437,277],[443,444],[444,283],[283,443],[275,440],[440,363],[363,275],[431,262],[262,369],[369,431],[297,338],[338,337],[337,297],[273,375],[375,321],[321,273],[450,451],[451,349],[349,450],[446,342],[342,467],[467,446],[293,334],[334,282],[282,293],[458,461],[461,462],[462,458],[276,353],[353,383],[383,276],[308,324],[324,325],[325,308],[276,300],[300,293],[293,276],[372,345],[345,447],[447,372],[352,345],[345,340],[340,352],[274,1],[1,19],[19,274],[456,248],[248,281],[281,456],[436,427],[427,425],[425,436],[381,256],[256,252],[252,381],[269,391],[391,393],[393,269],[200,199],[199,428],[428,200],[266,330],[330,329],[329,266],[287,273],[273,422],[422,287],[250,462],[462,328],[328,250],[258,286],[286,384],[384,258],[265,353],[353,342],[342,265],[387,259],[259,257],[257,387],[424,431],[431,430],[430,424],[342,353],[353,276],[276,342],[273,335],[335,424],[424,273],[292,325],[325,307],[307,292],[366,447],[447,345],[345,366],[271,303],[303,302],[302,271],[423,266],[266,371],[371,423],[294,455],[455,460],[460,294],[279,278],[278,294],[294,279],[271,272],[272,304],[304,271],[432,434],[434,427],[427,432],[272,407],[407,408],[408,272],[394,430],[430,431],[431,394],[395,369],[369,400],[400,395],[334,333],[333,299],[299,334],[351,417],[417,168],[168,351],[352,280],[280,411],[411,352],[325,319],[319,320],[320,325],[295,296],[296,336],[336,295],[319,403],[403,404],[404,319],[330,348],[348,349],[349,330],[293,298],[298,333],[333,293],[323,454],[454,447],[447,323],[15,16],[16,315],[315,15],[358,429],[429,279],[279,358],[14,15],[15,316],[316,14],[285,336],[336,9],[9,285],[329,349],[349,350],[350,329],[374,380],[380,252],[252,374],[318,402],[402,403],[403,318],[6,197],[197,419],[419,6],[318,319],[319,325],[325,318],[367,364],[364,365],[365,367],[435,367],[367,397],[397,435],[344,438],[438,439],[439,344],[272,271],[271,311],[311,272],[195,5],[5,281],[281,195],[273,287],[287,291],[291,273],[396,428],[428,199],[199,396],[311,271],[271,268],[268,311],[283,444],[444,445],[445,283],[373,254],[254,339],[339,373],[282,334],[334,296],[296,282],[449,347],[347,346],[346,449],[264,447],[447,454],[454,264],[336,296],[296,299],[299,336],[338,10],[10,151],[151,338],[278,439],[439,455],[455,278],[292,407],[407,415],[415,292],[358,371],[371,355],[355,358],[340,345],[345,372],[372,340],[346,347],[347,280],[280,346],[442,443],[443,282],[282,442],[19,94],[94,370],[370,19],[441,442],[442,295],[295,441],[248,419],[419,197],[197,248],[263,255],[255,359],[359,263],[440,275],[275,274],[274,440],[300,383],[383,368],[368,300],[351,412],[412,465],[465,351],[263,467],[467,466],[466,263],[301,368],[368,389],[389,301],[395,378],[378,379],[379,395],[412,351],[351,419],[419,412],[436,426],[426,322],[322,436],[2,164],[164,393],[393,2],[370,462],[462,461],[461,370],[164,0],[0,267],[267,164],[302,11],[11,12],[12,302],[268,12],[12,13],[13,268],[293,300],[300,301],[301,293],[446,261],[261,340],[340,446],[330,266],[266,425],[425,330],[426,423],[423,391],[391,426],[429,355],[355,437],[437,429],[391,327],[327,326],[326,391],[440,457],[457,438],[438,440],[341,382],[382,362],[362,341],[459,457],[457,461],[461,459],[434,430],[430,394],[394,434],[414,463],[463,362],[362,414],[396,369],[369,262],[262,396],[354,461],[461,457],[457,354],[316,403],[403,402],[402,316],[315,404],[404,403],[403,315],[314,405],[405,404],[404,314],[313,406],[406,405],[405,313],[421,418],[418,406],[406,421],[366,401],[401,361],[361,366],[306,408],[408,407],[407,306],[291,409],[409,408],[408,291],[287,410],[410,409],[409,287],[432,436],[436,410],[410,432],[434,416],[416,411],[411,434],[264,368],[368,383],[383,264],[309,438],[438,457],[457,309],[352,376],[376,401],[401,352],[274,275],[275,4],[4,274],[421,428],[428,262],[262,421],[294,327],[327,358],[358,294],[433,416],[416,367],[367,433],[289,455],[455,439],[439,289],[462,370],[370,326],[326,462],[2,326],[326,370],[370,2],[305,460],[460,455],[455,305],[254,449],[449,448],[448,254],[255,261],[261,446],[446,255],[253,450],[450,449],[449,253],[252,451],[451,450],[450,252],[256,452],[452,451],[451,256],[341,453],[453,452],[452,341],[413,464],[464,463],[463,413],[441,413],[413,414],[414,441],[258,442],[442,441],[441,258],[257,443],[443,442],[442,257],[259,444],[444,443],[443,259],[260,445],[445,444],[444,260],[467,342],[342,445],[445,467],[459,458],[458,250],[250,459],[289,392],[392,290],[290,289],[290,328],[328,460],[460,290],[376,433],[433,435],[435,376],[250,290],[290,392],[392,250],[411,416],[416,433],[433,411],[341,463],[463,464],[464,341],[453,464],[464,465],[465,453],[357,465],[465,412],[412,357],[343,412],[412,399],[399,343],[360,363],[363,440],[440,360],[437,399],[399,456],[456,437],[420,456],[456,363],[363,420],[401,435],[435,288],[288,401],[372,383],[383,353],[353,372],[339,255],[255,249],[249,339],[448,261],[261,255],[255,448],[133,243],[243,190],[190,133],[133,155],[155,112],[112,133],[33,246],[246,247],[247,33],[33,130],[130,25],[25,33],[398,384],[384,286],[286,398],[362,398],[398,414],[414,362],[362,463],[463,341],[341,362],[263,359],[359,467],[467,263],[263,249],[249,255],[255,263],[466,467],[467,260],[260,466],[75,60],[60,166],[166,75],[238,239],[239,79],[79,238],[162,127],[127,139],[139,162],[72,11],[11,37],[37,72],[121,232],[232,120],[120,121],[73,72],[72,39],[39,73],[114,128],[128,47],[47,114],[233,232],[232,128],[128,233],[103,104],[104,67],[67,103],[152,175],[175,148],[148,152],[119,118],[118,101],[101,119],[74,73],[73,40],[40,74],[107,9],[9,108],[108,107],[49,48],[48,131],[131,49],[32,194],[194,211],[211,32],[184,74],[74,185],[185,184],[191,80],[80,183],[183,191],[185,40],[40,186],[186,185],[119,230],[230,118],[118,119],[210,202],[202,214],[214,210],[84,83],[83,17],[17,84],[77,76],[76,146],[146,77],[161,160],[160,30],[30,161],[190,56],[56,173],[173,190],[182,106],[106,194],[194,182],[138,135],[135,192],[192,138],[129,203],[203,98],[98,129],[54,21],[21,68],[68,54],[5,51],[51,4],[4,5],[145,144],[144,23],[23,145],[90,77],[77,91],[91,90],[207,205],[205,187],[187,207],[83,201],[201,18],[18,83],[181,91],[91,182],[182,181],[180,90],[90,181],[181,180],[16,85],[85,17],[17,16],[205,206],[206,36],[36,205],[176,148],[148,140],[140,176],[165,92],[92,39],[39,165],[245,193],[193,244],[244,245],[27,159],[159,28],[28,27],[30,247],[247,161],[161,30],[174,236],[236,196],[196,174],[103,54],[54,104],[104,103],[55,193],[193,8],[8,55],[111,117],[117,31],[31,111],[221,189],[189,55],[55,221],[240,98],[98,99],[99,240],[142,126],[126,100],[100,142],[219,166],[166,218],[218,219],[112,155],[155,26],[26,112],[198,209],[209,131],[131,198],[169,135],[135,150],[150,169],[114,47],[47,217],[217,114],[224,223],[223,53],[53,224],[220,45],[45,134],[134,220],[32,211],[211,140],[140,32],[109,67],[67,108],[108,109],[146,43],[43,91],[91,146],[231,230],[230,120],[120,231],[113,226],[226,247],[247,113],[105,63],[63,52],[52,105],[241,238],[238,242],[242,241],[124,46],[46,156],[156,124],[95,78],[78,96],[96,95],[70,46],[46,63],[63,70],[116,143],[143,227],[227,116],[116,123],[123,111],[111,116],[1,44],[44,19],[19,1],[3,236],[236,51],[51,3],[207,216],[216,205],[205,207],[26,154],[154,22],[22,26],[165,39],[39,167],[167,165],[199,200],[200,208],[208,199],[101,36],[36,100],[100,101],[43,57],[57,202],[202,43],[242,20],[20,99],[99,242],[56,28],[28,157],[157,56],[124,35],[35,113],[113,124],[29,160],[160,27],[27,29],[211,204],[204,210],[210,211],[124,113],[113,46],[46,124],[106,43],[43,204],[204,106],[96,62],[62,77],[77,96],[227,137],[137,116],[116,227],[73,41],[41,72],[72,73],[36,203],[203,142],[142,36],[235,64],[64,240],[240,235],[48,49],[49,64],[64,48],[42,41],[41,74],[74,42],[214,212],[212,207],[207,214],[183,42],[42,184],[184,183],[210,169],[169,211],[211,210],[140,170],[170,176],[176,140],[104,105],[105,69],[69,104],[193,122],[122,168],[168,193],[50,123],[123,187],[187,50],[89,96],[96,90],[90,89],[66,65],[65,107],[107,66],[179,89],[89,180],[180,179],[119,101],[101,120],[120,119],[68,63],[63,104],[104,68],[234,93],[93,227],[227,234],[16,15],[15,85],[85,16],[209,129],[129,49],[49,209],[15,14],[14,86],[86,15],[107,55],[55,9],[9,107],[120,100],[100,121],[121,120],[153,145],[145,22],[22,153],[178,88],[88,179],[179,178],[197,6],[6,196],[196,197],[89,88],[88,96],[96,89],[135,138],[138,136],[136,135],[138,215],[215,172],[172,138],[218,115],[115,219],[219,218],[41,42],[42,81],[81,41],[5,195],[195,51],[51,5],[57,43],[43,61],[61,57],[208,171],[171,199],[199,208],[41,81],[81,38],[38,41],[224,53],[53,225],[225,224],[24,144],[144,110],[110,24],[105,52],[52,66],[66,105],[118,229],[229,117],[117,118],[227,34],[34,234],[234,227],[66,107],[107,69],[69,66],[10,109],[109,151],[151,10],[219,48],[48,235],[235,219],[183,62],[62,191],[191,183],[142,129],[129,126],[126,142],[116,111],[111,143],[143,116],[118,117],[117,50],[50,118],[223,222],[222,52],[52,223],[94,19],[19,141],[141,94],[222,221],[221,65],[65,222],[196,3],[3,197],[197,196],[45,220],[220,44],[44,45],[156,70],[70,139],[139,156],[188,122],[122,245],[245,188],[139,71],[71,162],[162,139],[149,170],[170,150],[150,149],[122,188],[188,196],[196,122],[206,216],[216,92],[92,206],[164,2],[2,167],[167,164],[242,141],[141,241],[241,242],[0,164],[164,37],[37,0],[11,72],[72,12],[12,11],[12,38],[38,13],[13,12],[70,63],[63,71],[71,70],[31,226],[226,111],[111,31],[36,101],[101,205],[205,36],[203,206],[206,165],[165,203],[126,209],[209,217],[217,126],[98,165],[165,97],[97,98],[237,220],[220,218],[218,237],[237,239],[239,241],[241,237],[210,214],[214,169],[169,210],[140,171],[171,32],[32,140],[241,125],[125,237],[237,241],[179,86],[86,178],[178,179],[180,85],[85,179],[179,180],[181,84],[84,180],[180,181],[182,83],[83,181],[181,182],[194,201],[201,182],[182,194],[177,137],[137,132],[132,177],[184,76],[76,183],[183,184],[185,61],[61,184],[184,185],[186,57],[57,185],[185,186],[216,212],[212,186],[186,216],[192,214],[214,187],[187,192],[139,34],[34,156],[156,139],[218,79],[79,237],[237,218],[147,123],[123,177],[177,147],[45,44],[44,4],[4,45],[208,201],[201,32],[32,208],[98,64],[64,129],[129,98],[192,213],[213,138],[138,192],[235,59],[59,219],[219,235],[141,242],[242,97],[97,141],[97,2],[2,141],[141,97],[240,75],[75,235],[235,240],[229,24],[24,228],[228,229],[31,25],[25,226],[226,31],[230,23],[23,229],[229,230],[231,22],[22,230],[230,231],[232,26],[26,231],[231,232],[233,112],[112,232],[232,233],[244,189],[189,243],[243,244],[189,221],[221,190],[190,189],[222,28],[28,221],[221,222],[223,27],[27,222],[222,223],[224,29],[29,223],[223,224],[225,30],[30,224],[224,225],[113,247],[247,225],[225,113],[99,60],[60,240],[240,99],[213,147],[147,215],[215,213],[60,20],[20,166],[166,60],[192,187],[187,213],[213,192],[243,112],[112,244],[244,243],[244,233],[233,245],[245,244],[245,128],[128,188],[188,245],[188,114],[114,174],[174,188],[134,131],[131,220],[220,134],[174,217],[217,236],[236,174],[236,198],[198,134],[134,236],[215,177],[177,58],[58,215],[156,143],[143,124],[124,156],[25,110],[110,7],[7,25],[31,228],[228,25],[25,31],[264,356],[356,368],[368,264],[0,11],[11,267],[267,0],[451,452],[452,349],[349,451],[267,302],[302,269],[269,267],[350,357],[357,277],[277,350],[350,452],[452,357],[357,350],[299,333],[333,297],[297,299],[396,175],[175,377],[377,396],[280,347],[347,330],[330,280],[269,303],[303,270],[270,269],[151,9],[9,337],[337,151],[344,278],[278,360],[360,344],[424,418],[418,431],[431,424],[270,304],[304,409],[409,270],[272,310],[310,407],[407,272],[322,270],[270,410],[410,322],[449,450],[450,347],[347,449],[432,422],[422,434],[434,432],[18,313],[313,17],[17,18],[291,306],[306,375],[375,291],[259,387],[387,260],[260,259],[424,335],[335,418],[418,424],[434,364],[364,416],[416,434],[391,423],[423,327],[327,391],[301,251],[251,298],[298,301],[275,281],[281,4],[4,275],[254,373],[373,253],[253,254],[375,307],[307,321],[321,375],[280,425],[425,411],[411,280],[200,421],[421,18],[18,200],[335,321],[321,406],[406,335],[321,320],[320,405],[405,321],[314,315],[315,17],[17,314],[423,426],[426,266],[266,423],[396,377],[377,369],[369,396],[270,322],[322,269],[269,270],[413,417],[417,464],[464,413],[385,386],[386,258],[258,385],[248,456],[456,419],[419,248],[298,284],[284,333],[333,298],[168,417],[417,8],[8,168],[448,346],[346,261],[261,448],[417,413],[413,285],[285,417],[326,327],[327,328],[328,326],[277,355],[355,329],[329,277],[309,392],[392,438],[438,309],[381,382],[382,256],[256,381],[279,429],[429,360],[360,279],[365,364],[364,379],[379,365],[355,277],[277,437],[437,355],[282,443],[443,283],[283,282],[281,275],[275,363],[363,281],[395,431],[431,369],[369,395],[299,297],[297,337],[337,299],[335,273],[273,321],[321,335],[348,450],[450,349],[349,348],[359,446],[446,467],[467,359],[283,293],[293,282],[282,283],[250,458],[458,462],[462,250],[300,276],[276,383],[383,300],[292,308],[308,325],[325,292],[283,276],[276,293],[293,283],[264,372],[372,447],[447,264],[346,352],[352,340],[340,346],[354,274],[274,19],[19,354],[363,456],[456,281],[281,363],[426,436],[436,425],[425,426],[380,381],[381,252],[252,380],[267,269],[269,393],[393,267],[421,200],[200,428],[428,421],[371,266],[266,329],[329,371],[432,287],[287,422],[422,432],[290,250],[250,328],[328,290],[385,258],[258,384],[384,385],[446,265],[265,342],[342,446],[386,387],[387,257],[257,386],[422,424],[424,430],[430,422],[445,342],[342,276],[276,445],[422,273],[273,424],[424,422],[306,292],[292,307],[307,306],[352,366],[366,345],[345,352],[268,271],[271,302],[302,268],[358,423],[423,371],[371,358],[327,294],[294,460],[460,327],[331,279],[279,294],[294,331],[303,271],[271,304],[304,303],[436,432],[432,427],[427,436],[304,272],[272,408],[408,304],[395,394],[394,431],[431,395],[378,395],[395,400],[400,378],[296,334],[334,299],[299,296],[6,351],[351,168],[168,6],[376,352],[352,411],[411,376],[307,325],[325,320],[320,307],[285,295],[295,336],[336,285],[320,319],[319,404],[404,320],[329,330],[330,349],[349,329],[334,293],[293,333],[333,334],[366,323],[323,447],[447,366],[316,15],[15,315],[315,316],[331,358],[358,279],[279,331],[317,14],[14,316],[316,317],[8,285],[285,9],[9,8],[277,329],[329,350],[350,277],[253,374],[374,252],[252,253],[319,318],[318,403],[403,319],[351,6],[6,419],[419,351],[324,318],[318,325],[325,324],[397,367],[367,365],[365,397],[288,435],[435,397],[397,288],[278,344],[344,439],[439,278],[310,272],[272,311],[311,310],[248,195],[195,281],[281,248],[375,273],[273,291],[291,375],[175,396],[396,199],[199,175],[312,311],[311,268],[268,312],[276,283],[283,445],[445,276],[390,373],[373,339],[339,390],[295,282],[282,296],[296,295],[448,449],[449,346],[346,448],[356,264],[264,454],[454,356],[337,336],[336,299],[299,337],[337,338],[338,151],[151,337],[294,278],[278,455],[455,294],[308,292],[292,415],[415,308],[429,358],[358,355],[355,429],[265,340],[340,372],[372,265],[352,346],[346,280],[280,352],[295,442],[442,282],[282,295],[354,19],[19,370],[370,354],[285,441],[441,295],[295,285],[195,248],[248,197],[197,195],[457,440],[440,274],[274,457],[301,300],[300,368],[368,301],[417,351],[351,465],[465,417],[251,301],[301,389],[389,251],[394,395],[395,379],[379,394],[399,412],[412,419],[419,399],[410,436],[436,322],[322,410],[326,2],[2,393],[393,326],[354,370],[370,461],[461,354],[393,164],[164,267],[267,393],[268,302],[302,12],[12,268],[312,268],[268,13],[13,312],[298,293],[293,301],[301,298],[265,446],[446,340],[340,265],[280,330],[330,425],[425,280],[322,426],[426,391],[391,322],[420,429],[429,437],[437,420],[393,391],[391,326],[326,393],[344,440],[440,438],[438,344],[458,459],[459,461],[461,458],[364,434],[434,394],[394,364],[428,396],[396,262],[262,428],[274,354],[354,457],[457,274],[317,316],[316,402],[402,317],[316,315],[315,403],[403,316],[315,314],[314,404],[404,315],[314,313],[313,405],[405,314],[313,421],[421,406],[406,313],[323,366],[366,361],[361,323],[292,306],[306,407],[407,292],[306,291],[291,408],[408,306],[291,287],[287,409],[409,291],[287,432],[432,410],[410,287],[427,434],[434,411],[411,427],[372,264],[264,383],[383,372],[459,309],[309,457],[457,459],[366,352],[352,401],[401,366],[1,274],[274,4],[4,1],[418,421],[421,262],[262,418],[331,294],[294,358],[358,331],[435,433],[433,367],[367,435],[392,289],[289,439],[439,392],[328,462],[462,326],[326,328],[94,2],[2,370],[370,94],[289,305],[305,455],[455,289],[339,254],[254,448],[448,339],[359,255],[255,446],[446,359],[254,253],[253,449],[449,254],[253,252],[252,450],[450,253],[252,256],[256,451],[451,252],[256,341],[341,452],[452,256],[414,413],[413,463],[463,414],[286,441],[441,414],[414,286],[286,258],[258,441],[441,286],[258,257],[257,442],[442,258],[257,259],[259,443],[443,257],[259,260],[260,444],[444,259],[260,467],[467,445],[445,260],[309,459],[459,250],[250,309],[305,289],[289,290],[290,305],[305,290],[290,460],[460,305],[401,376],[376,435],[435,401],[309,250],[250,392],[392,309],[376,411],[411,433],[433,376],[453,341],[341,464],[464,453],[357,453],[453,465],[465,357],[343,357],[357,412],[412,343],[437,343],[343,399],[399,437],[344,360],[360,440],[440,344],[420,437],[437,456],[456,420],[360,420],[420,363],[363,360],[361,401],[401,288],[288,361],[265,372],[372,353],[353,265],[390,339],[339,249],[249,390],[339,448],[448,255],[255,339]);function Wu(e){e.j={faceLandmarks:[],faceBlendshapes:[],facialTransformationMatrixes:[]}}var $=class extends Me{constructor(e,t){super(new nt(e,t),"image_in","norm_rect",!1),this.j={faceLandmarks:[],faceBlendshapes:[],facialTransformationMatrixes:[]},this.outputFacialTransformationMatrixes=this.outputFaceBlendshapes=!1,_(e=this.h=new Th,0,1,t=new X),this.v=new u0,_(this.h,0,3,this.v),this.u=new Ja,_(this.h,0,2,this.u),gt(this.u,4,1),A(this.u,2,.5),A(this.v,2,.5),A(this.h,4,.5)}get baseOptions(){return C(this.h,X,1)}set baseOptions(e){_(this.h,0,1,e)}o(e){return"numFaces"in e&&gt(this.u,4,e.numFaces??1),"minFaceDetectionConfidence"in e&&A(this.u,2,e.minFaceDetectionConfidence??.5),"minTrackingConfidence"in e&&A(this.h,4,e.minTrackingConfidence??.5),"minFacePresenceConfidence"in e&&A(this.v,2,e.minFacePresenceConfidence??.5),"outputFaceBlendshapes"in e&&(this.outputFaceBlendshapes=!!e.outputFaceBlendshapes),"outputFacialTransformationMatrixes"in e&&(this.outputFacialTransformationMatrixes=!!e.outputFacialTransformationMatrixes),this.l(e)}G(e,t){return Wu(this),st(this,e,t),this.j}H(e,t,r){return Wu(this),Ft(this,e,r,t),this.j}m(){var e=new Ce;z(e,"image_in"),z(e,"norm_rect"),j(e,"face_landmarks");let t=new We;rt(t,d0,this.h);let r=new Se;$e(r,"mediapipe.tasks.vision.face_landmarker.FaceLandmarkerGraph"),L(r,"IMAGE:image_in"),L(r,"NORM_RECT:norm_rect"),D(r,"NORM_LANDMARKS:face_landmarks"),r.o(t),Xe(e,r),this.g.attachProtoVectorListener("face_landmarks",(i,o)=>{for(let n of i)i=An(n),this.j.faceLandmarks.push(ec(i));S(this,o)}),this.g.attachEmptyPacketListener("face_landmarks",i=>{S(this,i)}),this.outputFaceBlendshapes&&(j(e,"blendshapes"),D(r,"BLENDSHAPES:blendshapes"),this.g.attachProtoVectorListener("blendshapes",(i,o)=>{if(this.outputFaceBlendshapes)for(let n of i)i=Xa(n),this.j.faceBlendshapes.push(qh(i.g()??[]));S(this,o)}),this.g.attachEmptyPacketListener("blendshapes",i=>{S(this,i)})),this.outputFacialTransformationMatrixes&&(j(e,"face_geometry"),D(r,"FACE_GEOMETRY:face_geometry"),this.g.attachProtoVectorListener("face_geometry",(i,o)=>{if(this.outputFacialTransformationMatrixes)for(let n of i)(i=C(l0(n),fh,2))&&this.j.facialTransformationMatrixes.push({rows:mt(ze(i,1))??0,columns:mt(ze(i,2))??0,data:Rr(i,3,Yt)??[]});S(this,o)}),this.g.attachEmptyPacketListener("face_geometry",i=>{S(this,i)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};$.prototype.detectForVideo=$.prototype.H,$.prototype.detect=$.prototype.G,$.prototype.setOptions=$.prototype.o,$.createFromModelPath=function(e,t){return x($,e,{baseOptions:{modelAssetPath:t}})},$.createFromModelBuffer=function(e,t){return x($,e,{baseOptions:{modelAssetBuffer:t}})},$.createFromOptions=function(e,t){return x($,e,t)},$.FACE_LANDMARKS_LIPS=rp,$.FACE_LANDMARKS_LEFT_EYE=ip,$.FACE_LANDMARKS_LEFT_EYEBROW=op,$.FACE_LANDMARKS_LEFT_IRIS=I0,$.FACE_LANDMARKS_RIGHT_EYE=np,$.FACE_LANDMARKS_RIGHT_EYEBROW=sp,$.FACE_LANDMARKS_RIGHT_IRIS=O0,$.FACE_LANDMARKS_FACE_OVAL=ap,$.FACE_LANDMARKS_CONTOURS=D0,$.FACE_LANDMARKS_TESSELATION=F0;var dt=class extends Me{constructor(e,t){super(new nt(e,t),"image_in","norm_rect",!0),_(e=this.j=new Ch,0,1,t=new X)}get baseOptions(){return C(this.j,X,1)}set baseOptions(e){_(this.j,0,1,e)}o(e){return super.l(e)}Ua(e,t,r){let i=typeof t!="function"?t:{};if(this.h=typeof t=="function"?t:r,st(this,e,i??{}),!this.h)return this.u}m(){var e=new Ce;z(e,"image_in"),z(e,"norm_rect"),j(e,"stylized_image");let t=new We;rt(t,h0,this.j);let r=new Se;$e(r,"mediapipe.tasks.vision.face_stylizer.FaceStylizerGraph"),L(r,"IMAGE:image_in"),L(r,"NORM_RECT:norm_rect"),D(r,"STYLIZED_IMAGE:stylized_image"),r.o(t),Xe(e,r),this.g.ba("stylized_image",(i,o)=>{var n=!this.h,s=i.data,a=i.width;let c=a*(i=i.height);if(s instanceof Uint8Array)if(s.length===3*c){let l=new Uint8ClampedArray(4*c);for(let u=0;u<c;++u)l[4*u]=s[3*u],l[4*u+1]=s[3*u+1],l[4*u+2]=s[3*u+2],l[4*u+3]=255;s=new ImageData(l,a,i)}else{if(s.length!==4*c)throw Error("Unsupported channel count: "+s.length/c);s=new ImageData(new Uint8ClampedArray(s.buffer,s.byteOffset,s.length),a,i)}else if(!(s instanceof WebGLTexture))throw Error(`Unsupported format: ${s.constructor.name}`);a=new ce([s],!1,!1,this.g.i.canvas,this.M,a,i),this.u=n=n?a.clone():a,this.h&&this.h(n),S(this,o)}),this.g.attachEmptyPacketListener("stylized_image",i=>{this.u=null,this.h&&this.h(null),S(this,i)}),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};dt.prototype.stylize=dt.prototype.Ua,dt.prototype.setOptions=dt.prototype.o,dt.createFromModelPath=function(e,t){return x(dt,e,{baseOptions:{modelAssetPath:t}})},dt.createFromModelBuffer=function(e,t){return x(dt,e,{baseOptions:{modelAssetBuffer:t}})},dt.createFromOptions=function(e,t){return x(dt,e,t)};var cp=ot([0,1],[1,2],[2,3],[3,4],[0,5],[5,6],[6,7],[7,8],[5,9],[9,10],[10,11],[11,12],[9,13],[13,14],[14,15],[15,16],[13,17],[0,17],[17,18],[18,19],[19,20]);function qu(e){e.gestures=[],e.landmarks=[],e.worldLandmarks=[],e.handedness=[]}function $u(e){return e.gestures.length===0?{gestures:[],landmarks:[],worldLandmarks:[],handedness:[],handednesses:[]}:{gestures:e.gestures,landmarks:e.landmarks,worldLandmarks:e.worldLandmarks,handedness:e.handedness,handednesses:e.handedness}}function Xu(e,t=!0){let r=[];for(let o of e){var i=Xa(o);e=[];for(let n of i.g())i=t&&ze(n,1)!=null?mt(ze(n,1)):-1,e.push({score:he(n,2)??0,index:i,categoryName:He(n,3)??""??"",displayName:He(n,4)??""??""});r.push(e)}return r}var Oe=class extends Me{constructor(e,t){super(new nt(e,t),"image_in","norm_rect",!1),this.gestures=[],this.landmarks=[],this.worldLandmarks=[],this.handedness=[],_(e=this.v=new Lh,0,1,t=new X),this.B=new Ya,_(this.v,0,2,this.B),this.u=new Fh,_(this.B,0,3,this.u),this.h=new Oh,_(this.B,0,2,this.h),this.j=new p0,_(this.v,0,3,this.j),A(this.h,2,.5),A(this.B,4,.5),A(this.u,2,.5)}get baseOptions(){return C(this.v,X,1)}set baseOptions(e){_(this.v,0,1,e)}o(e){if(gt(this.h,3,e.numHands??1),"minHandDetectionConfidence"in e&&A(this.h,2,e.minHandDetectionConfidence??.5),"minTrackingConfidence"in e&&A(this.B,4,e.minTrackingConfidence??.5),"minHandPresenceConfidence"in e&&A(this.u,2,e.minHandPresenceConfidence??.5),e.cannedGesturesClassifierOptions){var t=new Cr,r=t,i=la(e.cannedGesturesClassifierOptions,C(this.j,Cr,3)?.h());_(r,0,2,i),_(this.j,0,3,t)}else e.cannedGesturesClassifierOptions===void 0&&C(this.j,Cr,3)?.g();return e.customGesturesClassifierOptions?(_(r=t=new Cr,0,2,i=la(e.customGesturesClassifierOptions,C(this.j,Cr,4)?.h())),_(this.j,0,4,t)):e.customGesturesClassifierOptions===void 0&&C(this.j,Cr,4)?.g(),this.l(e)}Pa(e,t){return qu(this),st(this,e,t),$u(this)}Qa(e,t,r){return qu(this),Ft(this,e,r,t),$u(this)}m(){var e=new Ce;z(e,"image_in"),z(e,"norm_rect"),j(e,"hand_gestures"),j(e,"hand_landmarks"),j(e,"world_hand_landmarks"),j(e,"handedness");let t=new We;rt(t,g0,this.v);let r=new Se;$e(r,"mediapipe.tasks.vision.gesture_recognizer.GestureRecognizerGraph"),L(r,"IMAGE:image_in"),L(r,"NORM_RECT:norm_rect"),D(r,"HAND_GESTURES:hand_gestures"),D(r,"LANDMARKS:hand_landmarks"),D(r,"WORLD_LANDMARKS:world_hand_landmarks"),D(r,"HANDEDNESS:handedness"),r.o(t),Xe(e,r),this.g.attachProtoVectorListener("hand_landmarks",(i,o)=>{for(let n of i){i=An(n);let s=[];for(let a of Dt(i,hh,1))s.push({x:he(a,1)??0,y:he(a,2)??0,z:he(a,3)??0});this.landmarks.push(s)}S(this,o)}),this.g.attachEmptyPacketListener("hand_landmarks",i=>{S(this,i)}),this.g.attachProtoVectorListener("world_hand_landmarks",(i,o)=>{for(let n of i){i=Ka(n);let s=[];for(let a of Dt(i,uh,1))s.push({x:he(a,1)??0,y:he(a,2)??0,z:he(a,3)??0});this.worldLandmarks.push(s)}S(this,o)}),this.g.attachEmptyPacketListener("world_hand_landmarks",i=>{S(this,i)}),this.g.attachProtoVectorListener("hand_gestures",(i,o)=>{this.gestures.push(...Xu(i,!1)),S(this,o)}),this.g.attachEmptyPacketListener("hand_gestures",i=>{S(this,i)}),this.g.attachProtoVectorListener("handedness",(i,o)=>{this.handedness.push(...Xu(i)),S(this,o)}),this.g.attachEmptyPacketListener("handedness",i=>{S(this,i)}),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};function Ku(e){return{landmarks:e.landmarks,worldLandmarks:e.worldLandmarks,handednesses:e.handedness,handedness:e.handedness}}Oe.prototype.recognizeForVideo=Oe.prototype.Qa,Oe.prototype.recognize=Oe.prototype.Pa,Oe.prototype.setOptions=Oe.prototype.o,Oe.createFromModelPath=function(e,t){return x(Oe,e,{baseOptions:{modelAssetPath:t}})},Oe.createFromModelBuffer=function(e,t){return x(Oe,e,{baseOptions:{modelAssetBuffer:t}})},Oe.createFromOptions=function(e,t){return x(Oe,e,t)},Oe.HAND_CONNECTIONS=cp;var De=class extends Me{constructor(e,t){super(new nt(e,t),"image_in","norm_rect",!1),this.landmarks=[],this.worldLandmarks=[],this.handedness=[],_(e=this.j=new Ya,0,1,t=new X),this.u=new Fh,_(this.j,0,3,this.u),this.h=new Oh,_(this.j,0,2,this.h),gt(this.h,3,1),A(this.h,2,.5),A(this.u,2,.5),A(this.j,4,.5)}get baseOptions(){return C(this.j,X,1)}set baseOptions(e){_(this.j,0,1,e)}o(e){return"numHands"in e&&gt(this.h,3,e.numHands??1),"minHandDetectionConfidence"in e&&A(this.h,2,e.minHandDetectionConfidence??.5),"minTrackingConfidence"in e&&A(this.j,4,e.minTrackingConfidence??.5),"minHandPresenceConfidence"in e&&A(this.u,2,e.minHandPresenceConfidence??.5),this.l(e)}G(e,t){return this.landmarks=[],this.worldLandmarks=[],this.handedness=[],st(this,e,t),Ku(this)}H(e,t,r){return this.landmarks=[],this.worldLandmarks=[],this.handedness=[],Ft(this,e,r,t),Ku(this)}m(){var e=new Ce;z(e,"image_in"),z(e,"norm_rect"),j(e,"hand_landmarks"),j(e,"world_hand_landmarks"),j(e,"handedness");let t=new We;rt(t,m0,this.j);let r=new Se;$e(r,"mediapipe.tasks.vision.hand_landmarker.HandLandmarkerGraph"),L(r,"IMAGE:image_in"),L(r,"NORM_RECT:norm_rect"),D(r,"LANDMARKS:hand_landmarks"),D(r,"WORLD_LANDMARKS:world_hand_landmarks"),D(r,"HANDEDNESS:handedness"),r.o(t),Xe(e,r),this.g.attachProtoVectorListener("hand_landmarks",(i,o)=>{for(let n of i)i=An(n),this.landmarks.push(ec(i));S(this,o)}),this.g.attachEmptyPacketListener("hand_landmarks",i=>{S(this,i)}),this.g.attachProtoVectorListener("world_hand_landmarks",(i,o)=>{for(let n of i)i=Ka(n),this.worldLandmarks.push(Xh(i));S(this,o)}),this.g.attachEmptyPacketListener("world_hand_landmarks",i=>{S(this,i)}),this.g.attachProtoVectorListener("handedness",(i,o)=>{var n=this.handedness,s=n.push;let a=[];for(let c of i){i=Xa(c);let l=[];for(let u of i.g())l.push({score:he(u,2)??0,index:mt(ze(u,1))??-1,categoryName:He(u,3)??""??"",displayName:He(u,4)??""??""});a.push(l)}s.call(n,...a),S(this,o)}),this.g.attachEmptyPacketListener("handedness",i=>{S(this,i)}),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};De.prototype.detectForVideo=De.prototype.H,De.prototype.detect=De.prototype.G,De.prototype.setOptions=De.prototype.o,De.createFromModelPath=function(e,t){return x(De,e,{baseOptions:{modelAssetPath:t}})},De.createFromModelBuffer=function(e,t){return x(De,e,{baseOptions:{modelAssetBuffer:t}})},De.createFromOptions=function(e,t){return x(De,e,t)},De.HAND_CONNECTIONS=cp;var je=class extends Me{constructor(e,t){super(new nt(e,t),"input_image","norm_rect",!0),this.j={classifications:[]},_(e=this.h=new Uh,0,1,t=new X)}get baseOptions(){return C(this.h,X,1)}set baseOptions(e){_(this.h,0,1,e)}o(e){return _(this.h,0,2,la(e,C(this.h,Tn,2))),this.l(e)}ya(e,t){return this.j={classifications:[]},st(this,e,t),this.j}za(e,t,r){return this.j={classifications:[]},Ft(this,e,r,t),this.j}m(){var e=new Ce;z(e,"input_image"),z(e,"norm_rect"),j(e,"classifications");let t=new We;rt(t,y0,this.h);let r=new Se;$e(r,"mediapipe.tasks.vision.image_classifier.ImageClassifierGraph"),L(r,"IMAGE:input_image"),L(r,"NORM_RECT:norm_rect"),D(r,"CLASSIFICATIONS:classifications"),r.o(t),Xe(e,r),this.g.attachProtoListener("classifications",(i,o)=>{this.j=function(n){let s={classifications:Dt(n,e0,1).map(a=>qh(C(a,$a,4)?.g()??[],mt(ze(a,2)),He(a,3)??""))};return cn(Br(n,2))!=null&&(s.timestampMs=mt(cn(Br(n,2)))),s}(r0(i)),S(this,o)}),this.g.attachEmptyPacketListener("classifications",i=>{S(this,i)}),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};je.prototype.classifyForVideo=je.prototype.za,je.prototype.classify=je.prototype.ya,je.prototype.setOptions=je.prototype.o,je.createFromModelPath=function(e,t){return x(je,e,{baseOptions:{modelAssetPath:t}})},je.createFromModelBuffer=function(e,t){return x(je,e,{baseOptions:{modelAssetBuffer:t}})},je.createFromOptions=function(e,t){return x(je,e,t)};var Fe=class extends Me{constructor(e,t){super(new nt(e,t),"image_in","norm_rect",!0),this.h=new Nh,this.embeddings={embeddings:[]},_(e=this.h,0,1,t=new X)}get baseOptions(){return C(this.h,X,1)}set baseOptions(e){_(this.h,0,1,e)}o(e){var t=this.h,r=C(this.h,Tu,2);return r=r?r.clone():new Tu,e.l2Normalize!==void 0?Bi(r,1,e.l2Normalize):"l2Normalize"in e&&B(r,1),e.quantize!==void 0?Bi(r,2,e.quantize):"quantize"in e&&B(r,2),_(t,0,2,r),this.l(e)}Fa(e,t){return st(this,e,t),this.embeddings}Ga(e,t,r){return Ft(this,e,r,t),this.embeddings}m(){var e=new Ce;z(e,"image_in"),z(e,"norm_rect"),j(e,"embeddings_out");let t=new We;rt(t,v0,this.h);let r=new Se;$e(r,"mediapipe.tasks.vision.image_embedder.ImageEmbedderGraph"),L(r,"IMAGE:image_in"),L(r,"NORM_RECT:norm_rect"),D(r,"EMBEDDINGS:embeddings_out"),r.o(t),Xe(e,r),this.g.attachProtoListener("embeddings_out",(i,o)=>{i=s0(i),this.embeddings=function(n){return{embeddings:Dt(n,o0,1).map(s=>{let a={headIndex:mt(ze(s,3))??-1,headName:He(s,4)??""??""};if(Fd(s,aa,Hs(s,1))!==void 0)s=Rr(s=C(s,aa,Hs(s,1)),1,Yt),a.floatEmbedding=s;else{let c=new Uint8Array(0);a.quantizedEmbedding=C(s,i0,Hs(s,2))?.ua()?.wa()??c}return a}),timestampMs:mt(cn(Br(n,2)))}}(i),S(this,o)}),this.g.attachEmptyPacketListener("embeddings_out",i=>{S(this,i)}),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};Fe.cosineSimilarity=function(e,t){if(e.floatEmbedding&&t.floatEmbedding)e=Ru(e.floatEmbedding,t.floatEmbedding);else{if(!e.quantizedEmbedding||!t.quantizedEmbedding)throw Error("Cannot compute cosine similarity between quantized and float embeddings.");e=Ru(Cu(e.quantizedEmbedding),Cu(t.quantizedEmbedding))}return e},Fe.prototype.embedForVideo=Fe.prototype.Ga,Fe.prototype.embed=Fe.prototype.Fa,Fe.prototype.setOptions=Fe.prototype.o,Fe.createFromModelPath=function(e,t){return x(Fe,e,{baseOptions:{modelAssetPath:t}})},Fe.createFromModelBuffer=function(e,t){return x(Fe,e,{baseOptions:{modelAssetBuffer:t}})},Fe.createFromOptions=function(e,t){return x(Fe,e,t)};var fa=class{constructor(e,t,r){this.confidenceMasks=e,this.categoryMask=t,this.qualityScores=r}close(){this.confidenceMasks?.forEach(e=>{e.close()}),this.categoryMask?.close()}};function Ju(e){e.categoryMask=void 0,e.confidenceMasks=void 0,e.qualityScores=void 0}function Yu(e){try{let t=new fa(e.confidenceMasks,e.categoryMask,e.qualityScores);if(!e.j)return t;e.j(t)}finally{rc(e)}}fa.prototype.close=fa.prototype.close;var _e=class extends Me{constructor(e,t){super(new nt(e,t),"image_in","norm_rect",!1),this.u=[],this.outputCategoryMask=!1,this.outputConfidenceMasks=!0,this.h=new Za,this.v=new jh,_(this.h,0,3,this.v),_(e=this.h,0,1,t=new X)}get baseOptions(){return C(this.h,X,1)}set baseOptions(e){_(this.h,0,1,e)}o(e){return e.displayNamesLocale!==void 0?B(this.h,2,Gi(e.displayNamesLocale)):"displayNamesLocale"in e&&B(this.h,2),"outputCategoryMask"in e&&(this.outputCategoryMask=e.outputCategoryMask??!1),"outputConfidenceMasks"in e&&(this.outputConfidenceMasks=e.outputConfidenceMasks??!0),super.l(e)}N(){(function(e){let t=Dt(e.da(),Se,1).filter(r=>(He(r,1)??"").includes("mediapipe.tasks.TensorsToSegmentationCalculator"));if(e.u=[],1<t.length)throw Error("The graph has more than one mediapipe.tasks.TensorsToSegmentationCalculator.");t.length===1&&(C(t[0],We,7)?.l()?.g()??new Map).forEach((r,i)=>{e.u[Number(i)]=He(r,1)??""})})(this)}ea(e,t,r){let i=typeof t!="function"?t:{};return this.j=typeof t=="function"?t:r,Ju(this),st(this,e,i),Yu(this)}Sa(e,t,r,i){let o=typeof r!="function"?r:{};return this.j=typeof r=="function"?r:i,Ju(this),Ft(this,e,o,t),Yu(this)}Ja(){return this.u}m(){var e=new Ce;z(e,"image_in"),z(e,"norm_rect");let t=new We;rt(t,zh,this.h);let r=new Se;$e(r,"mediapipe.tasks.vision.image_segmenter.ImageSegmenterGraph"),L(r,"IMAGE:image_in"),L(r,"NORM_RECT:norm_rect"),r.o(t),Xe(e,r),tc(this,e),this.outputConfidenceMasks&&(j(e,"confidence_masks"),D(r,"CONFIDENCE_MASKS:confidence_masks"),Mi(this,"confidence_masks"),this.g.ca("confidence_masks",(i,o)=>{this.confidenceMasks=i.map(n=>Ui(this,n,!0,!this.j)),S(this,o)}),this.g.attachEmptyPacketListener("confidence_masks",i=>{this.confidenceMasks=[],S(this,i)})),this.outputCategoryMask&&(j(e,"category_mask"),D(r,"CATEGORY_MASK:category_mask"),Mi(this,"category_mask"),this.g.ba("category_mask",(i,o)=>{this.categoryMask=Ui(this,i,!1,!this.j),S(this,o)}),this.g.attachEmptyPacketListener("category_mask",i=>{this.categoryMask=void 0,S(this,i)})),j(e,"quality_scores"),D(r,"QUALITY_SCORES:quality_scores"),this.g.attachFloatVectorListener("quality_scores",(i,o)=>{this.qualityScores=i,S(this,o)}),this.g.attachEmptyPacketListener("quality_scores",i=>{this.categoryMask=void 0,S(this,i)}),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};_e.prototype.getLabels=_e.prototype.Ja,_e.prototype.segmentForVideo=_e.prototype.Sa,_e.prototype.segment=_e.prototype.ea,_e.prototype.setOptions=_e.prototype.o,_e.createFromModelPath=function(e,t){return x(_e,e,{baseOptions:{modelAssetPath:t}})},_e.createFromModelBuffer=function(e,t){return x(_e,e,{baseOptions:{modelAssetBuffer:t}})},_e.createFromOptions=function(e,t){return x(_e,e,t)};var ma=class{constructor(e,t,r){this.confidenceMasks=e,this.categoryMask=t,this.qualityScores=r}close(){this.confidenceMasks?.forEach(e=>{e.close()}),this.categoryMask?.close()}};ma.prototype.close=ma.prototype.close;var B0=class extends v{constructor(e){super(e)}},Nr=[0,K,-2],M0=[0,Ot,-3,ee],Rn=[0,Ot,-3,ee,Ot,-1],lp=[0,Rn],L0=[0,lp,Nr],U0=[0,Rn,Nr],up=[0,Rn,K,-1],N0=[0,up,Nr],j0=[0,Ot,-3,ee,Nr,-1],V0=[0,Ot,-3,ee,yt],Xs=class extends v{constructor(e){super(e)}},Zu=[0,Ot,-1,ee],dp=class extends v{constructor(){super()}};dp.A=[1];var Qu=class extends v{constructor(e){super(e)}},ga=[1,2,3,4,5,6,7,8,9,10,14,15],z0=[0,ga,N,Rn,N,U0,N,lp,N,L0,N,Zu,N,V0,N,M0,N,[0,U,Ot,-2,ee,K,ee,-1,2,Ot,Nr],N,up,N,N0,Ot,Nr,U,N,j0,N,[0,oe,Zu]],G0=[0,U,K,-1,ee],ya=class extends v{constructor(){super()}};ya.A=[1],ya.prototype.g=qa([0,oe,z0,U,G0]);var ht=class extends Me{constructor(e,t){super(new nt(e,t),"image_in","norm_rect_in",!1),this.outputCategoryMask=!1,this.outputConfidenceMasks=!0,this.h=new Za,this.v=new jh,_(this.h,0,3,this.v),_(e=this.h,0,1,t=new X)}get baseOptions(){return C(this.h,X,1)}set baseOptions(e){_(this.h,0,1,e)}o(e){return"outputCategoryMask"in e&&(this.outputCategoryMask=e.outputCategoryMask??!1),"outputConfidenceMasks"in e&&(this.outputConfidenceMasks=e.outputConfidenceMasks??!0),super.l(e)}ea(e,t,r,i){let o=typeof r!="function"?r:{};this.j=typeof r=="function"?r:i,this.qualityScores=this.categoryMask=this.confidenceMasks=void 0,r=this.I+1,i=new ya;let n=new Qu;var s=new B0;if(gt(s,1,255),_(n,0,12,s),t.keypoint&&t.scribble)throw Error("Cannot provide both keypoint and scribble.");if(t.keypoint){var a=new Xs;Bi(a,3,!0),A(a,1,t.keypoint.x),A(a,2,t.keypoint.y),Ri(n,5,ga,a)}else{if(!t.scribble)throw Error("Must provide either a keypoint or a scribble.");for(a of(s=new dp,t.scribble))Bi(t=new Xs,3,!0),A(t,1,a.x),A(t,2,a.y),na(s,Xs,t);Ri(n,15,ga,s)}na(i,Qu,n),this.g.addProtoToStream(i.g(),"drishti.RenderData","roi_in",r),st(this,e,o);e:{try{let l=new ma(this.confidenceMasks,this.categoryMask,this.qualityScores);if(!this.j){var c=l;break e}this.j(l)}finally{rc(this)}c=void 0}return c}m(){var e=new Ce;z(e,"image_in"),z(e,"roi_in"),z(e,"norm_rect_in");let t=new We;rt(t,zh,this.h);let r=new Se;$e(r,"mediapipe.tasks.vision.interactive_segmenter.InteractiveSegmenterGraph"),L(r,"IMAGE:image_in"),L(r,"ROI:roi_in"),L(r,"NORM_RECT:norm_rect_in"),r.o(t),Xe(e,r),tc(this,e),this.outputConfidenceMasks&&(j(e,"confidence_masks"),D(r,"CONFIDENCE_MASKS:confidence_masks"),Mi(this,"confidence_masks"),this.g.ca("confidence_masks",(i,o)=>{this.confidenceMasks=i.map(n=>Ui(this,n,!0,!this.j)),S(this,o)}),this.g.attachEmptyPacketListener("confidence_masks",i=>{this.confidenceMasks=[],S(this,i)})),this.outputCategoryMask&&(j(e,"category_mask"),D(r,"CATEGORY_MASK:category_mask"),Mi(this,"category_mask"),this.g.ba("category_mask",(i,o)=>{this.categoryMask=Ui(this,i,!1,!this.j),S(this,o)}),this.g.attachEmptyPacketListener("category_mask",i=>{this.categoryMask=void 0,S(this,i)})),j(e,"quality_scores"),D(r,"QUALITY_SCORES:quality_scores"),this.g.attachFloatVectorListener("quality_scores",(i,o)=>{this.qualityScores=i,S(this,o)}),this.g.attachEmptyPacketListener("quality_scores",i=>{this.categoryMask=void 0,S(this,i)}),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};ht.prototype.segment=ht.prototype.ea,ht.prototype.setOptions=ht.prototype.o,ht.createFromModelPath=function(e,t){return x(ht,e,{baseOptions:{modelAssetPath:t}})},ht.createFromModelBuffer=function(e,t){return x(ht,e,{baseOptions:{modelAssetBuffer:t}})},ht.createFromOptions=function(e,t){return x(ht,e,t)};var Ae=class extends Me{constructor(e,t){super(new nt(e,t),"input_frame_gpu","norm_rect",!1),this.j={detections:[]},_(e=this.h=new Qa,0,1,t=new X)}get baseOptions(){return C(this.h,X,1)}set baseOptions(e){_(this.h,0,1,e)}o(e){return e.displayNamesLocale!==void 0?B(this.h,2,Gi(e.displayNamesLocale)):"displayNamesLocale"in e&&B(this.h,2),e.maxResults!==void 0?gt(this.h,3,e.maxResults):"maxResults"in e&&B(this.h,3),e.scoreThreshold!==void 0?A(this.h,4,e.scoreThreshold):"scoreThreshold"in e&&B(this.h,4),e.categoryAllowlist!==void 0?dn(this.h,5,e.categoryAllowlist):"categoryAllowlist"in e&&B(this.h,5),e.categoryDenylist!==void 0?dn(this.h,6,e.categoryDenylist):"categoryDenylist"in e&&B(this.h,6),this.l(e)}G(e,t){return this.j={detections:[]},st(this,e,t),this.j}H(e,t,r){return this.j={detections:[]},Ft(this,e,r,t),this.j}m(){var e=new Ce;z(e,"input_frame_gpu"),z(e,"norm_rect"),j(e,"detections");let t=new We;rt(t,w0,this.h);let r=new Se;$e(r,"mediapipe.tasks.vision.ObjectDetectorGraph"),L(r,"IMAGE:input_frame_gpu"),L(r,"NORM_RECT:norm_rect"),D(r,"DETECTIONS:detections"),r.o(t),Xe(e,r),this.g.attachProtoVectorListener("detections",(i,o)=>{for(let n of i)i=lh(n),this.j.detections.push($h(i));S(this,o)}),this.g.attachEmptyPacketListener("detections",i=>{S(this,i)}),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};Ae.prototype.detectForVideo=Ae.prototype.H,Ae.prototype.detect=Ae.prototype.G,Ae.prototype.setOptions=Ae.prototype.o,Ae.createFromModelPath=async function(e,t){return x(Ae,e,{baseOptions:{modelAssetPath:t}})},Ae.createFromModelBuffer=function(e,t){return x(Ae,e,{baseOptions:{modelAssetBuffer:t}})},Ae.createFromOptions=function(e,t){return x(Ae,e,t)};function ed(e){e.landmarks=[],e.worldLandmarks=[],e.v=void 0}function td(e){try{let t=new class{constructor(r,i,o){this.landmarks=r,this.worldLandmarks=i,this.g=o}close(){this.g?.forEach(r=>{r.close()})}}(e.landmarks,e.worldLandmarks,e.v);if(!e.u)return t;e.u(t)}finally{rc(e)}}var Be=class extends Me{constructor(e,t){super(new nt(e,t),"image_in","norm_rect",!1),this.landmarks=[],this.worldLandmarks=[],this.outputSegmentationMasks=!1,_(e=this.h=new Wh,0,1,t=new X),this.B=new E0,_(this.h,0,3,this.B),this.j=new S0,_(this.h,0,2,this.j),gt(this.j,4,1),A(this.j,2,.5),A(this.B,2,.5),A(this.h,4,.5)}get baseOptions(){return C(this.h,X,1)}set baseOptions(e){_(this.h,0,1,e)}o(e){return"numPoses"in e&&gt(this.j,4,e.numPoses??1),"minPoseDetectionConfidence"in e&&A(this.j,2,e.minPoseDetectionConfidence??.5),"minTrackingConfidence"in e&&A(this.h,4,e.minTrackingConfidence??.5),"minPosePresenceConfidence"in e&&A(this.B,2,e.minPosePresenceConfidence??.5),"outputSegmentationMasks"in e&&(this.outputSegmentationMasks=e.outputSegmentationMasks??!1),this.l(e)}G(e,t,r){let i=typeof t!="function"?t:{};return this.u=typeof t=="function"?t:r,ed(this),st(this,e,i),td(this)}H(e,t,r,i){let o=typeof r!="function"?r:{};return this.u=typeof r=="function"?r:i,ed(this),Ft(this,e,o,t),td(this)}m(){var e=new Ce;z(e,"image_in"),z(e,"norm_rect"),j(e,"normalized_landmarks"),j(e,"world_landmarks"),j(e,"segmentation_masks");let t=new We;rt(t,k0,this.h);let r=new Se;$e(r,"mediapipe.tasks.vision.pose_landmarker.PoseLandmarkerGraph"),L(r,"IMAGE:image_in"),L(r,"NORM_RECT:norm_rect"),D(r,"NORM_LANDMARKS:normalized_landmarks"),D(r,"WORLD_LANDMARKS:world_landmarks"),r.o(t),Xe(e,r),tc(this,e),this.g.attachProtoVectorListener("normalized_landmarks",(i,o)=>{this.landmarks=[];for(let n of i)i=An(n),this.landmarks.push(ec(i));S(this,o)}),this.g.attachEmptyPacketListener("normalized_landmarks",i=>{this.landmarks=[],S(this,i)}),this.g.attachProtoVectorListener("world_landmarks",(i,o)=>{this.worldLandmarks=[];for(let n of i)i=Ka(n),this.worldLandmarks.push(Xh(i));S(this,o)}),this.g.attachEmptyPacketListener("world_landmarks",i=>{this.worldLandmarks=[],S(this,i)}),this.outputSegmentationMasks&&(D(r,"SEGMENTATION_MASK:segmentation_masks"),Mi(this,"segmentation_masks"),this.g.ca("segmentation_masks",(i,o)=>{this.v=i.map(n=>Ui(this,n,!0,!this.u)),S(this,o)}),this.g.attachEmptyPacketListener("segmentation_masks",i=>{this.v=[],S(this,i)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};Be.prototype.detectForVideo=Be.prototype.H,Be.prototype.detect=Be.prototype.G,Be.prototype.setOptions=Be.prototype.o,Be.createFromModelPath=function(e,t){return x(Be,e,{baseOptions:{modelAssetPath:t}})},Be.createFromModelBuffer=function(e,t){return x(Be,e,{baseOptions:{modelAssetBuffer:t}})},Be.createFromOptions=function(e,t){return x(Be,e,t)},Be.POSE_CONNECTIONS=ot([0,1],[1,2],[2,3],[3,7],[0,4],[4,5],[5,6],[6,8],[9,10],[11,12],[11,13],[13,15],[15,17],[15,19],[15,21],[17,19],[12,14],[14,16],[16,18],[16,20],[16,22],[18,20],[11,23],[12,24],[23,24],[23,25],[24,26],[25,27],[26,28],[27,29],[28,30],[29,31],[30,32],[27,31],[28,32]);var qr=class{constructor(t,r,i,o,n="videoPreviewFrameDetection",s="liveViewFrameDetection"){this.options={onRealtimeAlertsCallback:t=>{}};this.children=[];this.runningMode="VIDEO";this.detecting=!1;this.lastVideoTime=-1;this.lastExecutionDate=Date.now();this.detectorType=t,this.modelAssetPath=r,this.classVideo=n,this.classDiv=s,o&&(this.paramsConfig=o),i&&(this.options=i)}async initializeDetector(){let t=await Pr.forVisionTasks("https://cdn.jsdelivr.net/npm/@mediapipe/tasks-vision@0.10.2/wasm");this.detector=await(this.detectorType==="FaceDetector"?ke:Ae).createFromOptions(t,{baseOptions:{modelAssetPath:this.modelAssetPath,delegate:"CPU"},scoreThreshold:this.detectorType==="ObjectDetector"?.5:0,runningMode:this.runningMode})}stopDetection(){this.animationFrameId&&clearTimeout(this.animationFrameId),this.detecting=!1,this.liveView=document.getElementById(this.classDiv),this.liveView&&this.classDiv==="liveViewFrameDetection"&&document.body.removeChild(this.liveView)}enableCam(t){if(!this.detector){console.log("Wait! Detector not loaded yet.");return}this.detecting=!0,this.error=document.getElementById("errorFrameDetection"),this.video=document.getElementById(this.classVideo),this.liveView=document.getElementById(this.classDiv),t&&!this.video.srcObject&&(this.video.srcObject=t),this.video.play();let r=this;this.video?.addEventListener("loadeddata",()=>r.predictWebcam());let i=document.createElement("style");i.type="text/css",i.innerHTML=`
50
+ .key-point {
51
+ position: absolute;
52
+ z-index: 1;
53
+ width: 3px;
54
+ height: 3px;
55
+ background-color: #ff0000;
56
+ /* border: 1px solid #ffffff; */
57
+ border-radius: 50%;
58
+ display: block;
59
+ }
60
+ `,document.getElementsByTagName("head")[0].appendChild(i)}async predictWebcam(){if(this.lastVideoTime===-1&&await this.detector.setOptions({runningMode:"VIDEO"}),Date.now()-this.lastExecutionDate>=1e3){let r=Date.now();if(this.lastExecutionDate=r,this.video.currentTime!==this.lastVideoTime){this.lastVideoTime=this.video.currentTime;let i=this.detector.detectForVideo(this.video,r);this.verify(i)}}this.animationFrameId=setTimeout(()=>{this.predictWebcam()},0)}handleAlert(t,r){this.options.onRealtimeAlertsCallback&&this.options.onRealtimeAlertsCallback({status:"ALERT",description:this.alertTranslate(t),type:r}),this.error&&(this.error.innerText=t)}handleOk(t,r){this.options.onRealtimeAlertsCallback&&this.options.onRealtimeAlertsCallback({status:"OK",description:this.alertTranslate(t),type:r}),this.error&&(this.error.innerText="")}displayVideoDetections(t){}verify(t){}alertTranslate(t){switch(t){case"multiple_faces_detected":return"M\xFAltiplas faces detectadas";case"no_face_detected":return"Nenhuma face encontrada";case"multiple_persons_detected":return"M\xFAltiplas pessoas detectadas";case"no_person_detected":return"Nenhuma pessoa encontrada";case"cellphone_detected":return"Celular detectado";case"wrong_position_face_detected":return"Face na posi\xE7\xE3o errada";case"person_ok":return"Pessoa detectada";case"cellphone_ok":return"Nenhum celular detectadoa";case"face_ok":return"Face detectada";case"ok_position_face_detected":return"Face na posi\xE7\xE3o correta";default:return t}}};function hp(){let e=document.createElement("div");e.setAttribute("id","liveViewFrameDetection");let t=document.createElement("erro");t.setAttribute("id","errorFrameDetection");let r=document.createElement("video");r.setAttribute("id","videoPreviewFrameDetection"),r.muted=!0,e.style.width="320px",e.style.height="180px",e.style.position="fixed",e.style.bottom="30px",e.style.right="30px",e.style.display="none",r.style.width="100%",r.style.height="100%",r.style.background="#000",e.appendChild(t),e.appendChild(r),document.body.appendChild(e)}var Pn=class extends qr{constructor(r,i,o="videoPreviewFrameDetection",n="liveViewFrameDetection"){super("ObjectDetector","https://storage.googleapis.com/mediapipe-models/object_detector/efficientdet_lite0/float16/1/efficientdet_lite0.tflite",r,i,o,n)}displayVideoDetections(r){for(let i of this.children)this.liveView.removeChild(i);this.children.splice(0);for(let i of r.detections){let o=window.innerWidth,n=window.innerHeight,s=this.video.offsetWidth,a=this.video.offsetHeight,c=s/o,l=a/n,u=s-i.boundingBox.width*c-i.boundingBox.originX*c,d=i.boundingBox.originY*l,f=(i.boundingBox.width-10)*c,g=i.boundingBox.height*l,h=document.createElement("p");h.innerText=i.categories[0].categoryName+" - with "+Math.round(parseFloat(i.categories[0].score)*100)+"% confidence.",h.style.right=u-20+"px",h.style.top=d+"px",h.style.width=f+"px";let m={zIndex:"2",position:"absolute",border:"1px dashed #fff"};Object.assign(h.style,{...m,margin:"0",fontSize:"9px",paddingBottom:"5px",paddingTop:"5px",color:"#fff",backgroundColor:"#007f8b"});let y=document.createElement("div");y.setAttribute("class","highlighter"),y.style.right=u-20+"px",y.style.top=d+"px",y.style.width=f+"px",y.style.height=g-20+"px",Object.assign(y.style,{...m,zIndex:"1",background:"rgba(0, 255, 0, 0.25)"}),this.liveView.appendChild(y),this.liveView.appendChild(h),this.children.push(y),this.children.push(h)}}verify(r){let i=r.detections.filter(n=>n.categories.some(s=>s.categoryName==="person")).length,o=r.detections.filter(n=>n.categories.some(s=>s.categoryName==="cell phone")).length;this.paramsConfig.videoBehaviourParameters?.detectPerson&&i!==this.numPersonsSent&&(i===0?(this.handleAlert("no_person_detected","person_detection_on_stream"),this.numPersonsSent=i):i>1?(this.handleAlert("multiple_persons_detected","person_detection_on_stream"),this.numPersonsSent=i):(this.handleOk("person_ok","person_detection_on_stream"),this.numPersonsSent=i)),this.paramsConfig.videoBehaviourParameters?.detectCellPhone&&o!==this.numCellphoneSent&&(o>0?(this.handleAlert("cellphone_detected","mobile_detection_on_stream"),this.numCellphoneSent=o):(this.handleOk("cellphone_ok","mobile_detection_on_stream"),this.numCellphoneSent=o))}};var $r=class extends qr{constructor(r,i,o="videoPreviewFrameDetection",n="liveViewFrameDetection"){super("FaceDetector","https://storage.googleapis.com/mediapipe-models/face_detector/blaze_face_short_range/float16/1/blaze_face_short_range.tflite",r,i,o,n);this.emmitedPositionAlert=!1}displayVideoDetections(r){for(let i of this.children)this.liveView.removeChild(i);this.children.splice(0);for(let i of r.detections){let o=window.innerWidth,n=window.innerHeight,s=this.video.offsetWidth,a=this.video.offsetHeight,c=s/o,l=a/n,u=s-i.boundingBox.width*c-i.boundingBox.originX*c,d=i.boundingBox.originY*l,f=(i.boundingBox.width-10)*c,g=i.boundingBox.height*l,h=document.createElement("p");h.innerText="Confidence: "+Math.round(parseFloat(i.categories[0].score)*100)+"% .",h.style.right=u+"px",h.style.top=d-50+"px",h.style.width=f+"px";let m={zIndex:"2",position:"absolute",border:"1px dashed #fff"};Object.assign(h.style,{...m,margin:"0",fontSize:"9px",paddingBottom:"5px",paddingTop:"5px",color:"#fff",backgroundColor:"#007f8b"});let y=document.createElement("div");y.setAttribute("class","highlighter"),y.style.right=u+"px",y.style.top=d+"px",y.style.width=f+"px",y.style.height=g-10+"px",Object.assign(y.style,{...m,zIndex:"1",background:"rgba(0, 255, 0, 0.25)"}),this.liveView.appendChild(y),this.liveView.appendChild(h),this.children.push(y),this.children.push(h);for(let b of i.keypoints){let k=document.createElement("spam");k.className="key-point",k.style.top=`${b.y*this.video.offsetHeight-3}px`,k.style.right=`${this.video.offsetWidth-b.x*this.video.offsetWidth-3}px`,this.liveView.appendChild(k),this.children.push(k)}}}verify(r){this.paramsConfig.videoBehaviourParameters?.detectFace&&r.detections.length!==this.numFacesSent&&(this.numFacesSent=r.detections.length,r.detections.length===0?this.handleAlert("no_face_detected","face_detection_on_stream"):r.detections.length>1?this.handleAlert("multiple_faces_detected","face_detection_on_stream"):this.handleOk("face_ok","face_detection_on_stream")),r.detections[0]?.keypoints[4].x<.2||r.detections[0]?.keypoints[5].x>.8?(!this.emmitedPositionAlert&&this.handleAlert("wrong_position_face_detected","position_detection_on_stream"),this.emmitedPositionAlert=!0):(this.emmitedPositionAlert&&this.handleOk("ok_position_face_detected","position_detection_on_stream"),this.emmitedPositionAlert=!1)}};var Qt=class{constructor(t){this.volume=null;this.animationFrameId=null;this.stream=t}async start(t={}){return new Promise((r,i)=>{try{let o=new AudioContext;this.analyser=o.createAnalyser();let n=o.createMediaStreamSource(this.stream);this.analyser.smoothingTimeConstant=.8,this.analyser.fftSize=1024,n.connect(this.analyser);let s=()=>{let a=new Uint8Array(this.analyser.frequencyBinCount);this.analyser.getByteFrequencyData(a);let l=a.reduce((u,d)=>u+d,0)/a.length;this.setVolume(l),t.setVolume&&t.setVolume(l),this.animationFrameId=requestAnimationFrame(s)};this.animationFrameId=requestAnimationFrame(s),r(!0)}catch(o){this.stop(),i(`Error: ${o}`)}})}stop(){this.animationFrameId!==null&&cancelAnimationFrame(this.animationFrameId)}getVolume(){return this.volume}setVolume(t){this.volume=t}};var wt=class{constructor(t,r,i,o,n){this.blobs=[];this.paramsConfig={audioBehaviourParameters:{recordingBitrate:128,noiseLimit:40},imageBehaviourParameters:{frames:40,useUploadImage:!0,uploadInterval:20,saveVideo:!0},videoBehaviourParameters:{detectPerson:!1,detectFace:!1,detectCellPhone:!1}};this.options={cameraId:void 0,microphoneId:void 0,onBufferSizeError:!1,onBufferSizeErrorCallback:()=>{},proctoringType:"IMAGE",onChangeDevicesCallback:t=>{},onRealtimeAlertsCallback:t=>{}};this.videoOptions={width:640,height:480,minWidth:0,minHeight:0};this.blobsRTC=[];this.imageCount=0;this.filesToUpload=[];this.noiseWait=20;this.options=t,this.videoOptions=r,this.backend=o,this.backendToken=n,i&&(this.paramsConfig=i)}setProctoringId(t){this.proctoringId=t,this.proctoringId&&this.backend&&(this.upload=new Ct(this.proctoringId,this.backend))}async initializeDetectors(){hp(),(this.paramsConfig.videoBehaviourParameters?.detectPerson||this.paramsConfig.videoBehaviourParameters?.detectCellPhone)&&(this.objectDetection=new Pn({onRealtimeAlertsCallback:t=>this.options.onRealtimeAlertsCallback(t)},this.paramsConfig),await this.objectDetection.initializeDetector()),this.paramsConfig.videoBehaviourParameters?.detectFace&&(this.faceDetection=new $r({onRealtimeAlertsCallback:t=>this.options.onRealtimeAlertsCallback(t)},this.paramsConfig),await this.faceDetection.initializeDetector())}configImageCapture(){this.video=document.createElement("video"),this.canvas=document.createElement("canvas"),this.video.srcObject=this.cameraStream,this.video.play(),this.video.muted=!0,this.canvas.width=this.videoOptions.width,this.canvas.height=this.videoOptions.height}async startRecording(){(this.paramsConfig.videoBehaviourParameters?.detectPerson||this.paramsConfig.videoBehaviourParameters?.detectCellPhone||this.paramsConfig.videoBehaviourParameters?.detectFace)&&await this.initializeDetectors();let{cameraId:t,microphoneId:r,onBufferSizeErrorCallback:i}=this.options,o={audio:{deviceId:r},video:{deviceId:t,width:this.videoOptions.width,height:this.videoOptions.height,frameRate:15}};try{this.cameraStream=await navigator.mediaDevices.getUserMedia(o)}catch(d){throw d.toString()=="NotReadableError: Could not start video source"?"N\xE3o foi poss\xEDvel conectar a camera, ela pode estar sendo utilizada por outro programa":d}let{startRecording:n,stopRecording:s,pauseRecording:a,resumeRecording:c}=ar(this.cameraStream,this.blobs,this.proctoringId,this.options.onBufferSizeError,i);this.recordingStart=n,this.recordingStop=s,this.recordingPause=a,this.recordingResume=c,this.recordingStart();let u=this.cameraStream.getVideoTracks()[0].getSettings();if(this.videoOptions.minWidth>u.width||this.videoOptions.minHeight>u.height)throw Zl;if(this.videoOptions.width!==u.width||this.videoOptions.height!==u.height)throw I.registerAnotherStream(this.proctoringId,`Maybe have another stream active
23
61
  Video Options: ${this.videoOptions}
24
- Setting: ${Q}`),d1;this.paramsConfig.imageBehaviourParameters?.useUploadImage&&this.options.proctoringType=="IMAGE"&&this.photoShotsCycle(),this.filesToUpload=[],this.options.proctoringType=="REALTIME"&&this.captureFrame(),this.paramsConfig.videoBehaviourParameters?.detectNoise&&(this.intervalNoiseDetection=setInterval(()=>this.onNoiseDetected(),500))}async stopRecording(){if(this.recordingStop&&await this.recordingStop(),clearInterval(this.imageInterval),clearInterval(this.sendFrameInterval),this.options.proctoringType=="REALTIME"&&this.upload&&this.backendToken){let t=this.filesToUpload.length,r=this.paramsConfig.imageBehaviourParameters.uploadInterval;for(let i=0;i<t;i++){if(i==t-1&&this.filesToUpload[0]){let n=this.filesToUpload[0].name.replace(".jpg","_realtime.jpg"),o=new File([this.filesToUpload[0]],n,{type:"image/jpeg"});this.filesToUpload[0]=o}this.filesToUpload[0]&&await this.upload.uploadImages({file:this.filesToUpload[0]},this.backendToken,r),this.filesToUpload.shift()}}this.volumeMeter&&this.volumeMeter.stop(),this.intervalNoiseDetection&&clearInterval(this.intervalNoiseDetection)}async pauseRecording(){await this.recordingPause()}async resumeRecording(){await this.recordingResume()}photoShotsCycle(){let t;this.configImageCapture(),this.imageInterval=setInterval(async()=>{this.canvas.getContext("2d").drawImage(this.video,0,0,this.videoOptions.width,this.videoOptions.height);let r=this.canvas.toDataURL("image/jpeg");t=await this.getFile(r,`${this.proctoringId}_${this.imageCount+1}.jpg`,"image/jpeg"),t&&this.upload&&this.backendToken&&(this.upload.upload({file:t},this.backendToken,!0),this.imageCount++)},this.paramsConfig.imageBehaviourParameters.uploadInterval*1e3)}captureFrame(){let t;this.configImageCapture();let r=this.paramsConfig.imageBehaviourParameters.uploadInterval,i=!1;this.imageInterval=setInterval(async()=>{this.canvas.getContext("2d").drawImage(this.video,0,0,this.canvas.width,this.canvas.height);let n=this.canvas.toDataURL("image/jpeg");if(this.proctoringId==null)return;i==!1&&r>0&&(i=!0,this.sendFrame());let o=`${this.proctoringId}_${this.imageCount+1}.jpg`;(this.imageCount+1)%r==0&&(o=`${this.proctoringId}_${this.imageCount+1}_realtime.jpg`),t=await this.getFile(n,o,"image/jpeg"),t&&t.size>10&&r>0&&(this.filesToUpload.push(t),this.imageCount++)},1e3)}sendFrame(){let t=this.paramsConfig.imageBehaviourParameters.uploadInterval,r=!1,i=0;this.sendFrameInterval=setInterval(async()=>{if(this.upload&&this.backendToken&&!r){i=0;let n=0,o=this.filesToUpload.length;for(;n<o&&(r=!0,this.filesToUpload.length!=0);)(await this.upload.uploadImages({file:this.filesToUpload[0]},this.backendToken,t)).uploaded==!0?(await this.filesToUpload.shift(),n++):console.log("erro no upload: "+this.filesToUpload[0].name);r=!1}else if(r&&(i++,i==3)){i=0;let n=this.videoOptions.width/2,o=this.videoOptions.height/2;n<320&&(n=320),o<180&&(o=180),this.canvas.width=n,this.canvas.height=o}},t*1e3)}download(t){let r=URL.createObjectURL(t),i=document.createElement("a");document.body.appendChild(i),i.style.display="none",i.href=r,i.download=t.name,i.click(),window.URL.revokeObjectURL(r)}async saveOnSession(t){let r=this.cameraStream.getVideoTracks()[0].getSettings(),i=this.cameraStream.getAudioTracks()[0].getSettings();(this.options.proctoringType=="VIDEO"||this.options.proctoringType=="REALTIME"||this.options.proctoringType=="IMAGE"&&this.paramsConfig.imageBehaviourParameters?.saveVideo)&&t.addRecording({device:`Audio
62
+ Setting: ${u}`),Yl;this.paramsConfig.imageBehaviourParameters?.useUploadImage&&this.options.proctoringType=="IMAGE"&&this.photoShotsCycle(),this.paramsConfig.videoBehaviourParameters?.detectFace&&await this.faceDetection.enableCam(this.cameraStream),(this.paramsConfig.videoBehaviourParameters?.detectPerson||this.paramsConfig.videoBehaviourParameters?.detectCellPhone)&&await this.objectDetection.enableCam(this.cameraStream),this.filesToUpload=[],this.options.proctoringType=="REALTIME"&&this.captureFrame()}async stopRecording(){if(this.recordingStop&&await this.recordingStop(),this.faceDetection&&this.faceDetection.detecting&&this.faceDetection.stopDetection(),this.objectDetection&&this.objectDetection.detecting&&this.objectDetection.stopDetection(),clearInterval(this.imageInterval),clearInterval(this.sendFrameInterval),this.options.proctoringType=="REALTIME"&&this.upload&&this.backendToken){let t=this.filesToUpload.length,r=this.paramsConfig.imageBehaviourParameters.uploadInterval;for(let i=0;i<t;i++){if(i==t-1&&this.filesToUpload[0]){let o=this.filesToUpload[0].name.replace(".jpg","_realtime.jpg"),n=new File([this.filesToUpload[0]],o,{type:"image/jpeg"});this.filesToUpload[0]=n}this.filesToUpload[0]&&await this.upload.uploadImages({file:this.filesToUpload[0]},this.backendToken,r),this.filesToUpload.shift()}}this.volumeMeter&&this.volumeMeter.stop(),this.intervalNoiseDetection&&clearInterval(this.intervalNoiseDetection)}async pauseRecording(){await this.recordingPause()}async resumeRecording(){await this.recordingResume()}photoShotsCycle(){let t;this.configImageCapture(),this.imageInterval=setInterval(async()=>{this.canvas.getContext("2d").drawImage(this.video,0,0,this.videoOptions.width,this.videoOptions.height);let r=this.canvas.toDataURL("image/jpeg");t=await this.getFile(r,`${this.proctoringId}_${this.imageCount+1}.jpg`,"image/jpeg"),t&&this.upload&&this.backendToken&&(this.upload.upload({file:t},this.backendToken,!0),this.imageCount++)},this.paramsConfig.imageBehaviourParameters.uploadInterval*1e3)}captureFrame(){let t;this.configImageCapture();let r=this.paramsConfig.imageBehaviourParameters.uploadInterval,i=!1;this.imageInterval=setInterval(async()=>{this.canvas.getContext("2d").drawImage(this.video,0,0,this.canvas.width,this.canvas.height);let o=this.canvas.toDataURL("image/jpeg");if(this.proctoringId==null)return;i==!1&&r>0&&(i=!0,this.sendFrame());let n=`${this.proctoringId}_${this.imageCount+1}.jpg`;(this.imageCount+1)%r==0&&(n=`${this.proctoringId}_${this.imageCount+1}_realtime.jpg`),t=await this.getFile(o,n,"image/jpeg"),t&&t.size>10&&r>0&&(this.filesToUpload.push(t),this.imageCount++)},1e3)}sendFrame(){let t=this.paramsConfig.imageBehaviourParameters.uploadInterval,r=!1,i=0;this.sendFrameInterval=setInterval(async()=>{if(this.upload&&this.backendToken&&!r){i=0;let o=0,n=this.filesToUpload.length;for(;o<n&&(r=!0,this.filesToUpload.length!=0);)(await this.upload.uploadImages({file:this.filesToUpload[0]},this.backendToken,t)).uploaded==!0?(await this.filesToUpload.shift(),o++):console.log("erro no upload: "+this.filesToUpload[0].name);r=!1}else if(r&&(i++,i==3)){i=0;let o=this.videoOptions.width/2,n=this.videoOptions.height/2;o<320&&(o=320),n<180&&(n=180),this.canvas.width=o,this.canvas.height=n}},t*1e3)}download(t){let r=URL.createObjectURL(t),i=document.createElement("a");document.body.appendChild(i),i.style.display="none",i.href=r,i.download=t.name,i.click(),window.URL.revokeObjectURL(r)}async saveOnSession(t){let r=this.cameraStream.getVideoTracks()[0].getSettings(),i=this.cameraStream.getAudioTracks()[0].getSettings();(this.options.proctoringType=="VIDEO"||this.options.proctoringType=="REALTIME"||this.options.proctoringType=="IMAGE"&&this.paramsConfig.imageBehaviourParameters?.saveVideo)&&t.addRecording({device:`Audio
25
63
  Sample Rate: ${i.sampleRate}
26
- Sample Size: ${i.sampleSize}`,file:new File(this.blobs,`EP_${t.id}_camera_0.webm`,{type:"video/webm"}),origin:"Camera"})}async getFile(t,r,i){return new Promise((n,o)=>{t.length>5&&fetch(t).then(f=>f.blob()).then(f=>{let R=new File([f],r,{type:i});n(R)}).catch(f=>{o(f)})})}onNoiseDetected(){!this.volumeMeter&&this.cameraStream&&(this.volumeMeter=new si(this.cameraStream),this.volumeMeter.start().catch(t=>{console.log(t),this.volumeMeter=void 0})),this.volumeMeter?.getVolume()>=(this.paramsConfig.audioBehaviourParameters?.noiseLimit||40)&&this.noiseWait>=20&&(this.options.onRealtimeAlertsCallback({status:"ALERT",description:"Barulho detectado",type:"audio_detection_on_stream"}),this.noiseWait=0),this.noiseWait++}};var ea=class{constructor(){}async takePicture(t,r,i={width:1080,height:720}){return this.resolution=i,await this.takePictureInterface(t,r)}async startCapture(t="default"){let r=document.querySelector("#cameraStream"),i={audio:!1,video:{facingMode:"user",aspectRatio:1.777777778,width:{min:640,ideal:640,max:1920},height:{min:400,ideal:480},deviceId:t}};this.cameraRecorder=new Cr({cameraId:t,onBufferSizeErrorCallback:()=>{}},{...this.resolution}),await this.cameraRecorder.startRecording(),r.srcObject=this.cameraRecorder.cameraStream,r.play()}shot(){let t=document.querySelector("#cameraStream"),r=document.querySelector("#canvas"),i=document.querySelector("#image");r.width=t.videoWidth,r.height=t.videoHeight,r.getContext("2d").drawImage(t,0,0,t.videoWidth,t.videoHeight),i.src=r.toDataURL("image/jpg"),this.base64=r.toDataURL("image/jpg")}takePictureInterface(t,r){return new Promise((i,n)=>{let o=document.createElement("div");o.setAttribute("id","authPhoto"),o.style.backgroundColor="rgba(0,0,0,0.4)",o.style.zIndex="1000",o.style.position="fixed",o.style.top="0",o.style.left="0",o.style.height="100vh",o.style.width="100%",o.style.display="flex",o.style.alignItems="center",o.style.justifyContent="center";let f=document.createElement("div");f.style.backgroundColor="#fff",f.style.zIndex="1001",f.style.position="fixed",f.style.top="0",f.style.left="0",f.style.height="100vh",f.style.width="100%",f.style.borderRadius="10px",f.style.display="flex",f.style.flexDirection="column",f.style.alignItems="center",f.style.boxSizing="border-box";let R=document.createElement("h3");R.innerText=t||"Biometria Facial",R.style.color="rgba(0, 0, 0, .7)",R.style.fontWeight="bold",R.style.fontSize="20px",R.style.marginTop="0px",R.style.marginBottom="15px",R.style.padding="20px 0px 0px",R.style.width="100%",R.style.textAlign="center",R.style.position="fixed",R.style.top="0",R.style.left="0",R.style.zIndex="1010",f.appendChild(R);let k=document.createElement("p");k.innerText=r||"Encaixe seu rosto no formato e clique no bot\xE3o abaixo",k.style.color="rgba(0, 0, 0, .7)",k.style.fontWeight="normal",k.style.fontSize="16px",k.style.marginBottom="15px",k.style.padding="0px 0px 20px",k.style.width="100%",k.style.textAlign="center",k.style.position="fixed",k.style.top="55px",k.style.left="0",k.style.zIndex="1011",f.appendChild(k);let F=document.createElement("div"),Q=document.createElement("h3"),ee=document.createElement("select");ee.setAttribute("id","cameraSelect"),F.style.padding="0 20px",F.style.width="100%",F.style.display="flex",F.style.justifyContent="space-between",F.style.marginBottom="15px",Q.innerText="C\xE2mera",Q.style.color="rgba(0, 0, 0, .75)",Q.style.fontWeight="bold",Q.style.fontSize="16px",F.appendChild(Q),F.appendChild(ee);let Ee=document.createElement("div"),Ie=document.createElement("video");Ie.setAttribute("id","cameraStream"),Ie.muted=!0,Ee.style.position="fixed",Ee.style.top="0",Ee.style.left="0",Ee.style.height="100vh",Ee.style.width="100%",Ee.style.display="flex",Ee.style.justifyContent="center",Ie.style.backgroundColor="#000",Ie.style.borderRadius="10px",Ie.style.width="auto",Ie.style.height="auto",Ie.style.minHeight="100%",Ee.appendChild(Ie);let pe=document.createElement("canvas");pe.setAttribute("id","canvas"),pe.style.display="none",pe.style.width="100%",pe.style.height="100%";let Te=document.createElement("img");Te.setAttribute("id","image"),Te.style.objectFit="contain",Te.style.display="none",Te.style.borderRadius="8px",Ee.appendChild(pe),Ee.appendChild(Te);let te=document.createElement("div");te.setAttribute("class","facial-biometry__mask"),te.style.width="100%",te.style.height="100%",te.style.position="absolute",te.style.top="0px",te.style.left="0px",te.style.backgroundColor="#fff",te.style.opacity="0.8";let Ue=document.createElement("div");Ue.setAttribute("class","biometry__frame"),Ue.style.width="100%",Ue.style.height="100%",Ue.style.position="absolute",Ue.style.top="0px",Ue.style.left="0px",Ue.style.zIndex="10",Ee.appendChild(te),Ee.appendChild(Ue),f.appendChild(Ee),this.addStyleMask();let De=document.createElement("button"),tt=document.createElement("div");De.setAttribute("id","confirmBtn"),tt.style.position="fixed",tt.style.bottom="0",tt.style.left="0",tt.style.width="100%",tt.style.display="flex",tt.style.alignItems="center",tt.style.justifyContent="center",De.style.background="url('https://iarisprod.blob.core.windows.net/imagens/camera.svg') no-repeat center",De.style.width="70px",De.style.height="70px",De.style.borderRadius="70px",De.style.border="none",De.style.backgroundColor="#16a34a",De.style.margin="20px";let gt=document.createElement("button");gt.setAttribute("id","closeModal"),gt.style.background="url('https://iarisprod.blob.core.windows.net/imagens/close.svg') no-repeat center",gt.style.width="70px",gt.style.height="70px",gt.style.borderRadius="70px",gt.style.border="none",gt.style.backgroundColor="#e74141",gt.style.margin="20px",tt.appendChild(gt),tt.appendChild(De),f.appendChild(tt);let Rt=document.createElement("button");Rt.style.background="url('https://easyproctor-public.s3.us-east-2.amazonaws.com/images/retry.svg') no-repeat center",Rt.style.width="70px",Rt.style.height="70px",Rt.style.borderRadius="70px",Rt.style.border="none",Rt.style.backgroundColor="#e74141",Rt.style.margin="20px 20px";let Tt=document.createElement("button");Tt.style.background="url('https://iarisprod.blob.core.windows.net/imagens/check.svg') no-repeat center",Tt.style.width="70px",Tt.style.height="70px",Tt.style.borderRadius="70px",Tt.style.border="none",Tt.style.backgroundColor="#16a34a",Tt.style.margin="20px 20px",o.appendChild(f),document.body.appendChild(o),this.setSelectOption(),this.startCapture(),De.addEventListener("click",()=>{tt.removeChild(De),tt.removeChild(gt),tt.appendChild(Rt),tt.appendChild(Tt),this.shot(),Ie.style.display="none",Te.style.display="block"}),Rt.addEventListener("click",()=>{tt.appendChild(gt),tt.appendChild(De),tt.removeChild(Rt),tt.removeChild(Tt),Ie.style.display="block",Te.style.display="none"}),Tt.addEventListener("click",()=>{this.closeInterface(),i({base64:this.base64})}),gt.addEventListener("click",()=>{this.closeInterface(),n(new Error("User does not captured photo"))})})}async setSelectOption(){let t=document.querySelector("#cameraSelect"),r=await yr();t&&(t.value="default");let i=(n,o)=>{let f=document.createElement("option");return f.setAttribute("value",o),f.innerHTML=n,f};r.cameras.forEach(n=>{let o=i(n.label,n.id);t?.appendChild(o)}),this.onSelectOptionChange()}async onSelectOptionChange(){let t=document.querySelector("#cameraSelect");t?.addEventListener("change",async()=>{this.startCapture(t?.value)})}async closeInterface(){await this.cameraRecorder.stopRecording(),document.querySelector("#authPhoto")?.remove()}async addStyleMask(){let t=`
64
+ Sample Size: ${i.sampleSize}`,file:new File(this.blobs,`EP_${t.id}_camera_0.webm`,{type:"video/webm"}),origin:"Camera"})}async getFile(t,r,i){return new Promise((o,n)=>{t.length>5&&fetch(t).then(s=>s.blob()).then(s=>{let a=new File([s],r,{type:i});o(a)}).catch(s=>{n(s)})})}onNoiseDetected(){if(this.options.proctoringType==="REALTIME")return;!this.volumeMeter&&this.cameraStream&&(this.volumeMeter=new Qt(this.cameraStream),this.volumeMeter.start().catch(r=>{console.log(r),this.volumeMeter=void 0})),(this.volumeMeter?.getVolume()??0)>=(this.paramsConfig.audioBehaviourParameters?.noiseLimit||40)&&(console.log("entrou"+this.noiseWait),this.noiseWait>=20&&(this.options.onRealtimeAlertsCallback({status:"ALERT",description:"Barulho detectado",type:"audio_detection_on_stream"}),this.noiseWait=0)),this.noiseWait++}};var Xr=class{constructor(){}async takePicture(t,r,i={width:1080,height:720}){return this.resolution=i,await this.takePictureInterface(t,r)}async startCapture(t="default"){let r=document.querySelector("#cameraStream"),i={audio:!1,video:{facingMode:"user",aspectRatio:1.777777778,width:{min:640,ideal:640,max:1920},height:{min:400,ideal:480},deviceId:t}};this.cameraRecorder=new wt({cameraId:t,onBufferSizeErrorCallback:()=>{}},{...this.resolution}),await this.cameraRecorder.startRecording(),r.srcObject=this.cameraRecorder.cameraStream,r.play()}shot(){let t=document.querySelector("#cameraStream"),r=document.querySelector("#canvas"),i=document.querySelector("#image");r.width=t.videoWidth,r.height=t.videoHeight,r.getContext("2d").drawImage(t,0,0,t.videoWidth,t.videoHeight),i.src=r.toDataURL("image/jpg"),this.base64=r.toDataURL("image/jpg")}takePictureInterface(t,r){return new Promise((i,o)=>{let n=document.createElement("div");n.setAttribute("id","authPhoto"),n.style.backgroundColor="rgba(0,0,0,0.4)",n.style.zIndex="1000",n.style.position="fixed",n.style.top="0",n.style.left="0",n.style.height="100vh",n.style.width="100%",n.style.display="flex",n.style.alignItems="center",n.style.justifyContent="center";let s=document.createElement("div");s.style.backgroundColor="#fff",s.style.zIndex="1001",s.style.position="fixed",s.style.top="0",s.style.left="0",s.style.height="100vh",s.style.width="100%",s.style.borderRadius="10px",s.style.display="flex",s.style.flexDirection="column",s.style.alignItems="center",s.style.boxSizing="border-box";let a=document.createElement("h3");a.innerText=t||"Biometria Facial",a.style.color="rgba(0, 0, 0, .7)",a.style.fontWeight="bold",a.style.fontSize="20px",a.style.marginTop="0px",a.style.marginBottom="15px",a.style.padding="20px 0px 0px",a.style.width="100%",a.style.textAlign="center",a.style.position="fixed",a.style.top="0",a.style.left="0",a.style.zIndex="1010",s.appendChild(a);let c=document.createElement("p");c.innerText=r||"Encaixe seu rosto no formato e clique no bot\xE3o abaixo",c.style.color="rgba(0, 0, 0, .7)",c.style.fontWeight="normal",c.style.fontSize="16px",c.style.marginBottom="15px",c.style.padding="0px 0px 20px",c.style.width="100%",c.style.textAlign="center",c.style.position="fixed",c.style.top="55px",c.style.left="0",c.style.zIndex="1011",s.appendChild(c);let l=document.createElement("div"),u=document.createElement("h3"),d=document.createElement("select");d.setAttribute("id","cameraSelect"),l.style.padding="0 20px",l.style.width="100%",l.style.display="flex",l.style.justifyContent="space-between",l.style.marginBottom="15px",u.innerText="C\xE2mera",u.style.color="rgba(0, 0, 0, .75)",u.style.fontWeight="bold",u.style.fontSize="16px",l.appendChild(u),l.appendChild(d);let f=document.createElement("div"),g=document.createElement("video");g.setAttribute("id","cameraStream"),g.muted=!0,f.style.position="fixed",f.style.top="0",f.style.left="0",f.style.height="100vh",f.style.width="100%",f.style.display="flex",f.style.justifyContent="center",g.style.backgroundColor="#000",g.style.borderRadius="10px",g.style.width="auto",g.style.height="auto",g.style.minHeight="100%",f.appendChild(g);let h=document.createElement("canvas");h.setAttribute("id","canvas"),h.style.display="none",h.style.width="100%",h.style.height="100%";let m=document.createElement("img");m.setAttribute("id","image"),m.style.objectFit="contain",m.style.display="none",m.style.borderRadius="8px",f.appendChild(h),f.appendChild(m);let y=document.createElement("div");y.setAttribute("class","facial-biometry__mask"),y.style.width="100%",y.style.height="100%",y.style.position="absolute",y.style.top="0px",y.style.left="0px",y.style.backgroundColor="#fff",y.style.opacity="0.8";let b=document.createElement("div");b.setAttribute("class","biometry__frame"),b.style.width="100%",b.style.height="100%",b.style.position="absolute",b.style.top="0px",b.style.left="0px",b.style.zIndex="10",f.appendChild(y),f.appendChild(b),s.appendChild(f),this.addStyleMask();let k=document.createElement("button"),P=document.createElement("div");k.setAttribute("id","confirmBtn"),P.style.position="fixed",P.style.bottom="0",P.style.left="0",P.style.width="100%",P.style.display="flex",P.style.alignItems="center",P.style.justifyContent="center",k.style.background="url('https://iarisprod.blob.core.windows.net/imagens/camera.svg') no-repeat center",k.style.width="70px",k.style.height="70px",k.style.borderRadius="70px",k.style.border="none",k.style.backgroundColor="#16a34a",k.style.margin="20px";let ae=document.createElement("button");ae.setAttribute("id","closeModal"),ae.style.background="url('https://iarisprod.blob.core.windows.net/imagens/close.svg') no-repeat center",ae.style.width="70px",ae.style.height="70px",ae.style.borderRadius="70px",ae.style.border="none",ae.style.backgroundColor="#e74141",ae.style.margin="20px",P.appendChild(ae),P.appendChild(k),s.appendChild(P);let le=document.createElement("button");le.style.background="url('https://easyproctor-public.s3.us-east-2.amazonaws.com/images/retry.svg') no-repeat center",le.style.width="70px",le.style.height="70px",le.style.borderRadius="70px",le.style.border="none",le.style.backgroundColor="#e74141",le.style.margin="20px 20px";let me=document.createElement("button");me.style.background="url('https://iarisprod.blob.core.windows.net/imagens/check.svg') no-repeat center",me.style.width="70px",me.style.height="70px",me.style.borderRadius="70px",me.style.border="none",me.style.backgroundColor="#16a34a",me.style.margin="20px 20px",n.appendChild(s),document.body.appendChild(n),this.setSelectOption(),this.startCapture(),k.addEventListener("click",()=>{P.removeChild(k),P.removeChild(ae),P.appendChild(le),P.appendChild(me),this.shot(),g.style.display="none",m.style.display="block"}),le.addEventListener("click",()=>{P.appendChild(ae),P.appendChild(k),P.removeChild(le),P.removeChild(me),g.style.display="block",m.style.display="none"}),me.addEventListener("click",()=>{this.closeInterface(),i({base64:this.base64})}),ae.addEventListener("click",()=>{this.closeInterface(),o(new Error("User does not captured photo"))})})}async setSelectOption(){let t=document.querySelector("#cameraSelect"),r=await Qe();t&&(t.value="default");let i=(o,n)=>{let s=document.createElement("option");return s.setAttribute("value",n),s.innerHTML=o,s};r.cameras.forEach(o=>{let n=i(o.label,o.id);t?.appendChild(n)}),this.onSelectOptionChange()}async onSelectOptionChange(){let t=document.querySelector("#cameraSelect");t?.addEventListener("change",async()=>{this.startCapture(t?.value)})}async closeInterface(){await this.cameraRecorder.stopRecording(),document.querySelector("#authPhoto")?.remove()}async addStyleMask(){let t=`
27
65
  .facial-biometry__mask {
28
66
  mask-image: url('https://iarisprod.blob.core.windows.net/imagens/square.svg'), url('https://iarisprod.blob.core.windows.net/imagens/face-mask.svg');
29
67
  mask-size: cover, auto 65%;
@@ -52,8 +90,8 @@ Setting: ${Q}`),d1;this.paramsConfig.imageBehaviourParameters?.useUploadImage&&t
52
90
  // -webkit-mask-position: center;
53
91
  // -webkit-mask-repeat: no-repeat;
54
92
  }
55
- `,r=document.createElement("style");r.innerHTML=t,document.head.appendChild(r)}};var oi={cameraId:void 0,microphoneId:void 0,allowMultipleMonitors:!1,allowOnlyFirstMonitor:!0,captureScreen:!0,noiseLimit:40,proctoringType:"IMAGE",insights:"",onBufferSizeError:!1,useGeolocation:!1};function Ln(e){return!!e.width&&!!e.height?{width:e.width,height:e.height,minWidth:e.minWidth,minHeight:e.minHeight}:{width:640,height:480}}var P2="https://proctoring-api-dev.easyproctor.tech/api",L2="https://proctoring-api-hml.easyproctor.tech/api",v1="https://proctoring-api.easyproctor.tech/api",ta=class{constructor(t){this.options=t;this.baseUrl=this.selectBaseUrl(t.type),this.token=t.token}selectBaseUrl(t){return t==="dev"?P2:t==="homol"?L2:v1}async loginAuth(t,r){return await this.makeRequest({path:"/Auth",method:"POST",body:{emailOrCpf:t,key:r}})}async confirmStart(t,r,i,n){return await this.makeRequest({path:`/proctoring/start/${t.examId}`,method:"POST",body:{clientId:t.clientId,proctoringType:r,latitude:i,longitude:n},jwt:t.token})}async getParamsConfig(t){return(await this.makeRequestAxios({path:"/Client/params",method:"GET",jwt:t.token}).catch(i=>{throw"N\xE3o foi poss\xEDvel realizar a requisi\xE7\xE3o, tente novamente mais tarde"})).data}async getSignedUrlImage(t,r){return(await this.makeRequestAxios({path:"/upload/signed-url-batch",method:"POST",jwt:t,body:r})).data}async getSignedUrl(t,r,i){return(await this.makeRequestAxios({path:"/upload/signed-url",method:"POST",jwt:t,body:{objectName:`${i}/${r.name}`,contentType:r.type}})).data}async saveScreenAlerts(t,r){await this.makeRequest({path:"/proctoring/save-screen",method:"POST",jwt:t.token,body:{proctoringId:r.id,alerts:r.alerts}})}async finishAndSendUrls(t,r){await this.makeRequest({path:`/proctoring/finish/${t.examId}`,method:"POST",body:{endDate:new Date().toISOString(),videoCameraUrl:"",audioCameraUrl:"",videoScreenUrl:""},jwt:t.token})}async log(t,r){let i;return r?.success!==null&&r?.success!==void 0?i=r.success?"4":"1":i="4",await this.makeRequest({path:"/Log",method:"POST",body:{entryType:i,eventName:t,message:r},jwt:this.token})}async getServerHour(t){return await this.makeRequest({path:"/Proctoring/server-hour",method:"GET",jwt:t})}async makeRequest(t){let{path:r,method:i,body:n,jwt:o}=t,f=await fetch(this.baseUrl+r,{method:i,body:n!=null?JSON.stringify(n):void 0,headers:{Authorization:`Bearer ${o}`,"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}});if(f.status>=400)throw"N\xE3o foi poss\xEDvel realizar a requisi\xE7\xE3o, tente novamente mais tarde";let R=f.headers.get("content-type");return(R?R.includes("application/json"):!1)?await f.json():null}async makeRequestAxios(t){let{path:r,method:i,body:n,jwt:o}=t,f=await ni.request({url:this.baseUrl+r,method:i,headers:{Authorization:`Bearer ${o}`,"Access-Control-Allow-Origin":"*"},data:n});if(f.status>=400)throw"N\xE3o foi poss\xEDvel realizar a requisi\xE7\xE3o, tente novamente mais tarde";return f}async makeRequestPUT(t){let{url:r,method:i,body:n,jwt:o}=t,f=await fetch(r,{method:i,body:n!=null?JSON.stringify(n):void 0,headers:{Accept:"*/*","Accept-Encoding":"gzip, deflate, br",Connection:"keep-alive","aeg-event-type":"Notification","Content-Type":"application/json","Cache-Control":"no-cache","x-ms-blob-type":"BlockBlob"}});if(f.status>=400)throw"N\xE3o foi poss\xEDvel realizar a requisi\xE7\xE3o, tente novamente mais tarde";let R=f.headers.get("content-type");return(R?R.includes("application/json"):!1)?await f.json():null}};var Nn=class{constructor(t){this.videoOptions={width:1080,height:720,minWidth:0,minHeight:0};this.volumeMedia=0;this.volumeSum=0;this.volumeCounter=0;this.microphoneMinThreshold=5;this.allowedResolution=!0;this.allowedAmbient=!0;this.allowedPositionFace=!0;this.allowedMicrophone=!1;this.noiseLimit=0;this.context=t,this.backend=new ta({type:t?.type||"prod",token:t.token})}async checkDevices(t=oi,r){try{this.options={...oi,...t,captureScreen:!1,allowMultipleMonitors:!0,allowOnlyFirstMonitor:!1},this.videoOptions={...this.videoOptions,...r};let i=await this.backend.getParamsConfig(this.context);this.noiseLimit=i.audioBehaviourParameters?.noiseLimit||40;let{cameraId:n,microphoneId:o,result:f}=await this.checkDevicesInterface();return new Promise(R=>{R({result:f,cameraId:n,microphoneId:o,volumeRange:this.volumeMedia,allowedResolution:this.allowedResolution,allowedPositionFace:this.allowedPositionFace,allowedAmbient:this.allowedAmbient,allowedMicrophone:this.allowedMicrophone})})}catch(i){return this.closeCheckDevices(),Promise.reject(i)}}isUnderResolution(){let t=this.cameraRecorder.cameraStream.getVideoTracks()[0].getSettings(),r=document.getElementById("resolutionAlert"),i=document.getElementById("alertDivResolution"),n=document.getElementById("info_resolution"),o=document.getElementById("checkmark_resolution"),f=document.getElementById("checkmark_stem_resolution"),R=document.getElementById("checkmark_kick_resolution");this.videoOptions.minWidth>t.width||this.videoOptions.minHeight>t.height?(this.allowedResolution=!1,r.style.color="#FF0000",n&&(n.style.display="block"),i.setAttribute("title",`A c\xE2mera n\xE3o satisfaz a resolu\xE7\xE3o m\xEDnima exigida (${this.videoOptions.minWidth}x${this.videoOptions.minHeight}).
56
- Para iniciar um exame utilize uma outra c\xE2mera.`),o.setAttribute("class","checkmark_error"),f.setAttribute("class","checkmark_stem_error"),R.setAttribute("class","checkmark_kick_error")):(this.allowedResolution=!0,r.style.color="#16A34A",n&&(n.style.display="none"),r.setAttribute("title",""),o.setAttribute("class","checkmark"),f.setAttribute("class","checkmark_stem"),R.setAttribute("class","checkmark_kick"))}realtimeAlerts(t){let r=document.getElementById("facePositionAlert"),i=document.getElementById("ambientVerifyAlert"),n=document.getElementById("checkmark_FacePosition"),o=document.getElementById("checkmark_stem_FacePosition"),f=document.getElementById("checkmark_kick_FacePosition"),R=document.getElementById("alertDivAmbientVerify"),k=document.getElementById("checkmark_AmbientVerify"),F=document.getElementById("checkmark_stem_AmbientVerify"),Q=document.getElementById("checkmark_kick_AmbientVerify");t.status==="OK"?(r&&(r.style.color="#16A34A"),i&&(i.style.color="#16A34A"),R&&R.setAttribute("title",""),n&&(n.setAttribute("class","checkmark"),o.setAttribute("class","checkmark_stem"),f.setAttribute("class","checkmark_kick")),k&&(k.setAttribute("class","checkmark"),F.setAttribute("class","checkmark_stem"),Q.setAttribute("class","checkmark_kick")),this.allowedPositionFace=!0,this.allowedAmbient=!0):(n&&(t.description==="Nenhuma face encontrada"||t.description==="Face na posi\xE7\xE3o errada")&&(r&&(r.style.color="#FF0000"),n.setAttribute("class","checkmark_error"),o.setAttribute("class","checkmark_stem_error"),f.setAttribute("class","checkmark_kick_error")),k&&t.description==="M\xFAltiplas faces detectadas"&&(i&&(i.style.color="#FF0000"),R&&R.setAttribute("title",`${t.description}`),k.setAttribute("class","checkmark_error"),F.setAttribute("class","checkmark_stem_error"),Q.setAttribute("class","checkmark_kick_error")),this.allowedPositionFace=!1,this.allowedAmbient=!1)}async addStyleMask(){let t=`
93
+ `,r=document.createElement("style");r.innerHTML=t,document.head.appendChild(r)}};var er={cameraId:void 0,microphoneId:void 0,allowMultipleMonitors:!1,allowOnlyFirstMonitor:!0,captureScreen:!0,noiseLimit:40,proctoringType:"IMAGE",insights:"",onBufferSizeError:!1,useGeolocation:!1};function In(e){return!!e.width&&!!e.height?{width:e.width,height:e.height,minWidth:e.minWidth,minHeight:e.minHeight}:{width:640,height:480}}var H0="https://proctoring-api-dev.easyproctor.tech/api",W0="https://proctoring-api-hml.easyproctor.tech/api",fp="https://proctoring-api.easyproctor.tech/api",Kr=class{constructor(t){this.options=t;this.baseUrl=this.selectBaseUrl(t.type),this.token=t.token}selectBaseUrl(t){return t==="dev"?H0:t==="homol"?W0:fp}async loginAuth(t,r){return await this.makeRequest({path:"/Auth",method:"POST",body:{emailOrCpf:t,key:r}})}async confirmStart(t,r,i,o){return await this.makeRequest({path:`/proctoring/start/${t.examId}`,method:"POST",body:{clientId:t.clientId,proctoringType:r,latitude:i,longitude:o},jwt:t.token})}async getParamsConfig(t){return(await this.makeRequestAxios({path:"/Client/params",method:"GET",jwt:t.token}).catch(i=>{throw"N\xE3o foi poss\xEDvel realizar a requisi\xE7\xE3o, tente novamente mais tarde"})).data}async getSignedUrlImage(t,r){return(await this.makeRequestAxios({path:"/upload/signed-url-batch",method:"POST",jwt:t,body:r})).data}async getSignedUrl(t,r,i){return(await this.makeRequestAxios({path:"/upload/signed-url",method:"POST",jwt:t,body:{objectName:`${i}/${r.name}`,contentType:r.type}})).data}async saveScreenAlerts(t,r){await this.makeRequest({path:"/proctoring/save-screen",method:"POST",jwt:t.token,body:{proctoringId:r.id,alerts:r.alerts}})}async finishAndSendUrls(t,r){await this.makeRequest({path:`/proctoring/finish/${t.examId}`,method:"POST",body:{endDate:new Date().toISOString(),videoCameraUrl:"",audioCameraUrl:"",videoScreenUrl:""},jwt:t.token})}async log(t,r){let i;return r?.success!==null&&r?.success!==void 0?i=r.success?"4":"1":i="4",await this.makeRequest({path:"/Log",method:"POST",body:{entryType:i,eventName:t,message:r},jwt:this.token})}async getServerHour(t){return await this.makeRequest({path:"/Proctoring/server-hour",method:"GET",jwt:t})}async makeRequest(t){let{path:r,method:i,body:o,jwt:n}=t,s=await fetch(this.baseUrl+r,{method:i,body:o!=null?JSON.stringify(o):void 0,headers:{Authorization:`Bearer ${n}`,"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}});if(s.status>=400)throw"N\xE3o foi poss\xEDvel realizar a requisi\xE7\xE3o, tente novamente mais tarde";let a=s.headers.get("content-type");return(a?a.includes("application/json"):!1)?await s.json():null}async makeRequestAxios(t){let{path:r,method:i,body:o,jwt:n}=t,s=await Vt.request({url:this.baseUrl+r,method:i,headers:{Authorization:`Bearer ${n}`,"Access-Control-Allow-Origin":"*"},data:o});if(s.status>=400)throw"N\xE3o foi poss\xEDvel realizar a requisi\xE7\xE3o, tente novamente mais tarde";return s}async makeRequestPUT(t){let{url:r,method:i,body:o,jwt:n}=t,s=await fetch(r,{method:i,body:o!=null?JSON.stringify(o):void 0,headers:{Accept:"*/*","Accept-Encoding":"gzip, deflate, br",Connection:"keep-alive","aeg-event-type":"Notification","Content-Type":"application/json","Cache-Control":"no-cache","x-ms-blob-type":"BlockBlob"}});if(s.status>=400)throw"N\xE3o foi poss\xEDvel realizar a requisi\xE7\xE3o, tente novamente mais tarde";let a=s.headers.get("content-type");return(a?a.includes("application/json"):!1)?await s.json():null}};var On=class{constructor(t){this.videoOptions={width:1080,height:720,minWidth:0,minHeight:0};this.volumeMedia=0;this.volumeSum=0;this.volumeCounter=0;this.microphoneMinThreshold=5;this.allowedResolution=!0;this.allowedAmbient=!0;this.allowedPositionFace=!0;this.allowedMicrophone=!1;this.noiseLimit=0;this.faceDetection=new $r({onRealtimeAlertsCallback:r=>this.realtimeAlerts(r)},{videoBehaviourParameters:{detectFace:!0}},"cameraStream","liveCheckDevices"),this.context=t,this.backend=new Kr({type:t?.type||"prod",token:t.token})}async checkDevices(t=er,r){try{this.options={...er,...t,captureScreen:!1,allowMultipleMonitors:!0,allowOnlyFirstMonitor:!1},this.videoOptions={...this.videoOptions,...r};let i=await this.backend.getParamsConfig(this.context);this.noiseLimit=i.audioBehaviourParameters?.noiseLimit||40,await this.faceDetection.initializeDetector();let{cameraId:o,microphoneId:n,result:s}=await this.checkDevicesInterface();return new Promise(a=>{a({result:s,cameraId:o,microphoneId:n,volumeRange:this.volumeMedia,allowedResolution:this.allowedResolution,allowedPositionFace:this.allowedPositionFace,allowedAmbient:this.allowedAmbient,allowedMicrophone:this.allowedMicrophone,faceDetectionAlerts:this.faceDetectionAlerts})})}catch(i){return this.closeCheckDevices(),Promise.reject(i)}}isUnderResolution(){let t=this.cameraRecorder.cameraStream.getVideoTracks()[0].getSettings(),r=document.getElementById("resolutionAlert"),i=document.getElementById("alertDivResolution"),o=document.getElementById("info_resolution"),n=document.getElementById("checkmark_resolution"),s=document.getElementById("checkmark_stem_resolution"),a=document.getElementById("checkmark_kick_resolution");this.videoOptions.minWidth>t.width||this.videoOptions.minHeight>t.height?(this.allowedResolution=!1,r.style.color="#FF0000",o&&(o.style.display="block"),i.setAttribute("title",`A c\xE2mera n\xE3o satisfaz a resolu\xE7\xE3o m\xEDnima exigida (${this.videoOptions.minWidth}x${this.videoOptions.minHeight}).
94
+ Para iniciar um exame utilize uma outra c\xE2mera.`),n.setAttribute("class","checkmark_error"),s.setAttribute("class","checkmark_stem_error"),a.setAttribute("class","checkmark_kick_error")):(this.allowedResolution=!0,r.style.color="#16A34A",o&&(o.style.display="none"),r.setAttribute("title",""),n.setAttribute("class","checkmark"),s.setAttribute("class","checkmark_stem"),a.setAttribute("class","checkmark_kick"))}realtimeAlerts(t){let r=document.getElementById("facePositionAlert"),i=document.getElementById("ambientVerifyAlert"),o=document.getElementById("checkmark_FacePosition"),n=document.getElementById("checkmark_stem_FacePosition"),s=document.getElementById("checkmark_kick_FacePosition"),a=document.getElementById("alertDivAmbientVerify"),c=document.getElementById("checkmark_AmbientVerify"),l=document.getElementById("checkmark_stem_AmbientVerify"),u=document.getElementById("checkmark_kick_AmbientVerify");this.faceDetectionAlerts=t,t.status==="OK"?(r&&(r.style.color="#16A34A"),i&&(i.style.color="#16A34A"),a&&a.setAttribute("title",""),o&&(o.setAttribute("class","checkmark"),n.setAttribute("class","checkmark_stem"),s.setAttribute("class","checkmark_kick")),c&&(c.setAttribute("class","checkmark"),l.setAttribute("class","checkmark_stem"),u.setAttribute("class","checkmark_kick")),this.allowedPositionFace=!0,this.allowedAmbient=!0):(o&&(t.description==="Nenhuma face encontrada"||t.description==="Face na posi\xE7\xE3o errada")&&(r&&(r.style.color="#FF0000"),o.setAttribute("class","checkmark_error"),n.setAttribute("class","checkmark_stem_error"),s.setAttribute("class","checkmark_kick_error")),c&&t.description==="M\xFAltiplas faces detectadas"&&(i&&(i.style.color="#FF0000"),a&&a.setAttribute("title",`${t.description}`),c.setAttribute("class","checkmark_error"),l.setAttribute("class","checkmark_stem_error"),u.setAttribute("class","checkmark_kick_error")),this.allowedPositionFace=!1,this.allowedAmbient=!1)}async addStyleMask(){let t=`
57
95
  .facial-biometry__mask {
58
96
  mask-image: url('https://iarisprod.blob.core.windows.net/imagens/square.svg'), url('https://iarisprod.blob.core.windows.net/imagens/face-mask.svg');
59
97
  mask-size: cover, auto 65%;
@@ -177,10 +215,10 @@ Para iniciar um exame utilize uma outra c\xE2mera.`),o.setAttribute("class","che
177
215
  left: 5px;
178
216
  top: 2px;
179
217
  }
180
- `,document.getElementsByTagName("head")[0].appendChild(t),new Promise((r,i)=>{let n=document.createElement("div");n.setAttribute("id","checkDevices");let o={backgroundColor:"rgba(0,0,0,0.4)",zIndex:"1000",position:"fixed",top:"0",left:"0",height:"100vh",width:"100%",display:"flex",alignItems:"center",justifyContent:"center"};this.applyStyles(n,o);let f=document.createElement("div"),R={backgroundColor:"#fff",zIndex:"1001",width:"600px",borderRadius:"10px",display:"flex",flexDirection:"column",alignItems:"center"};this.applyStyles(f,R);let k=document.createElement("h3");k.innerText="Para iniciar configure a c\xE2mera e o microfone";let F={color:"rgba(0, 0, 0, .7)",fontWeight:"bold",fontSize:"20px",marginBottom:"15px",padding:"20px 0px",borderBottom:"2px solid rgba(0, 0, 0, .1)",width:"100%",textAlign:"center"};this.applyStyles(k,F),f.appendChild(k);let Q=document.createElement("div"),ee=document.createElement("h3"),Ee=document.createElement("select");Ee.setAttribute("id","cameraSelect");let Ie={padding:"0 20px",width:"100%",display:"flex",justifyContent:"space-between",marginBottom:"15px"};this.applyStyles(Q,Ie),ee.innerText="C\xE2mera";let pe={color:"rgba(0, 0, 0, .75)",fontWeight:"bold",fontSize:"16px"};this.applyStyles(ee,pe),Ee.style.maxWidth="400px",Q.appendChild(ee),Q.appendChild(Ee),f.appendChild(Q);let Te=document.createElement("div");Te.setAttribute("id","liveCheckDevices");let te=document.createElement("div"),Ue=document.createElement("video"),De=document.createElement("div");Ue.setAttribute("id","cameraStream"),Ue.muted=!0;let tt={width:"calc(100% - 40px)",display:"flex",justifyContent:"space-between",borderBottom:"2px solid rgba(0, 0, 0, .1)",paddingBottom:"15px",transform:"rotateY(180deg)"};this.applyStyles(Te,tt);let gt={width:"20rem",backgroundColor:"#000",borderRadius:"10px",marginBottom:"15px"};this.applyStyles(Ue,gt),this.applyStyles(te,{position:"relative"});let Rt=document.createElement("div");Rt.setAttribute("class","alert-div"),Rt.setAttribute("id","alertDivResolution");let Tt=document.createElement("error");Tt.setAttribute("id","resolutionAlert"),Tt.innerText="Resolu\xE7\xE3o m\xEDnima",Tt.style.marginLeft="10px",Tt.style.marginRight="5px";let Fi=document.createElement("span"),Ja=document.createElement("div"),en=document.createElement("div");Fi.setAttribute("id","checkmark_resolution"),Ja.setAttribute("id","checkmark_stem_resolution"),en.setAttribute("id","checkmark_kick_resolution"),Fi.appendChild(Ja),Fi.appendChild(en);let mi=document.createElement("span"),_i=document.createElement("div"),tn=document.createElement("div");mi.setAttribute("class","info"),mi.setAttribute("id","info_resolution"),_i.setAttribute("class","info_stem"),tn.setAttribute("class","info_kick"),mi.appendChild(_i),mi.appendChild(tn),Rt.appendChild(Fi),Rt.appendChild(Tt),Rt.appendChild(mi);let Di=document.createElement("div");Di.setAttribute("class","alert-div"),Di.setAttribute("id","alertDivFacePosition");let Vi=document.createElement("error");Vi.setAttribute("id","facePositionAlert"),Vi.innerText="Posicionamento da face",Vi.style.marginLeft="10px";let Dr=document.createElement("span"),fa=document.createElement("div"),ma=document.createElement("div");Dr.setAttribute("id","checkmark_FacePosition"),fa.setAttribute("id","checkmark_stem_FacePosition"),ma.setAttribute("id","checkmark_kick_FacePosition"),Dr.appendChild(fa),Dr.appendChild(ma),Di.appendChild(Dr);let pi=document.createElement("div");pi.setAttribute("class","alert-div"),pi.setAttribute("id","alertDivAmbientVerify");let Hi=document.createElement("error");Hi.setAttribute("id","ambientVerifyAlert"),Hi.innerText="Verifica\xE7\xE3o do ambiente",Hi.style.marginLeft="10px";let xr=document.createElement("span"),je=document.createElement("div"),E=document.createElement("div");xr.setAttribute("id","checkmark_AmbientVerify"),je.setAttribute("id","checkmark_stem_AmbientVerify"),E.setAttribute("id","checkmark_kick_AmbientVerify"),xr.appendChild(je),xr.appendChild(E),pi.appendChild(xr),pi.appendChild(Hi),De.style.transform="rotateY(180deg)",De.appendChild(Rt),De.appendChild(Di),De.appendChild(pi),Te.appendChild(De),te.appendChild(Ue),Te.appendChild(te);let tr=document.createElement("div");tr.setAttribute("class","facial-biometry__mask"),tr.style.width="100%",tr.style.height="100%",tr.style.position="absolute",tr.style.top="0px",tr.style.left="0px",tr.style.backgroundColor="#fff",tr.style.opacity="0.6";let fr=document.createElement("div");fr.setAttribute("class","biometry__frame"),fr.style.width="100%",fr.style.height="100%",fr.style.position="absolute",fr.style.top="0px",fr.style.left="0px",fr.style.zIndex="10",te.appendChild(tr),te.appendChild(fr),f.appendChild(Te);let Ui=document.createElement("div"),_a=document.createElement("h3"),rr=document.createElement("select");rr.setAttribute("id","micSelect");let rn={padding:"0 20px",width:"100%",display:"flex",justifyContent:"space-between",margin:"15px 0"};this.applyStyles(Ui,rn),_a.innerText="Microfone";let Kr={color:"rgba(0, 0, 0, .7)",fontWeight:"bold",fontSize:"16px"};this.applyStyles(_a,Kr),rr.style.maxWidth="400px",Ui.appendChild(_a),Ui.appendChild(rr),f.appendChild(Ui);let Et=document.createElement("div"),Es={width:"100%",padding:"0px 40px",display:"flex"};this.applyStyles(Et,Es);let st=document.createElement("div"),Ft={display:"flex",flexDirection:"column",justifyContent:"space-between",paddingBottom:"15px"};this.applyStyles(st,Ft);let ir=document.createElement("div");ir.setAttribute("id","audioStream");let ke={display:"flex",marginBottom:"15px"};this.applyStyles(ir,ke);let xs={height:"16px",width:"5px",marginRight:"5px",borderRadius:"10px",backgroundColor:"rgba(0, 0, 0, .3)"};for(let Xi=0;Xi<25;Xi++){let sn=document.createElement("div");this.applyStyles(sn,xs),ir.appendChild(sn)}let Vr=document.createElement("div"),Dt=document.createElement("p"),pa=document.createElement("p"),an=document.createElement("p"),gs={width:"250px",display:"flex",justifyContent:"space-between"};this.applyStyles(Vr,gs),Dt.innerText="0",pa.innerText="50",an.innerText="100",Vr.appendChild(Dt),Vr.appendChild(pa),Vr.appendChild(an);let Hr=document.createElement("div");Hr.setAttribute("class","alert-div"),Hr.setAttribute("id","alertDivMicrophone");let Ur={alignItems:"start",justifyContent:"end",width:"inherit"};this.applyStyles(Hr,Ur);let ji=document.createElement("error");ji.setAttribute("id","microphoneAlert"),ji.innerText="Teste de funcionamento",ji.style.marginLeft="10px";let ar=document.createElement("span"),nn=document.createElement("div"),vi=document.createElement("div");ar.setAttribute("id","checkmark_microphone"),nn.setAttribute("id","checkmark_stem_microphone"),vi.setAttribute("id","checkmark_kick_microphone"),ar.appendChild(nn),ar.appendChild(vi),Hr.appendChild(ar),Hr.appendChild(ji),st.appendChild(ir),st.appendChild(Vr);let bi=document.createElement("p");bi.innerText='Pronuncie em voz alta: "um, dois, tr\xEAs, quatro".',bi.style.textAlign="start";let Ts={width:"100%",marginLeft:"40px",marginBottom:"15px"};this.applyStyles(bi,Ts),Et.appendChild(st),Et.appendChild(Hr),f.appendChild(bi),f.appendChild(Et);let yi=document.createElement("div"),qi={width:"100%",display:"flex",alignItems:"center",justifyContent:"center",borderTop:"2px solid rgba(0, 0, 0, .1)"};this.applyStyles(yi,qi);let jr=document.createElement("button");jr.innerText="Cancelar";let Ms={width:"100%",height:"70px",backgroundColor:"#FFF",border:"none",color:"rgba(0, 0, 0, .7)",fontWeight:"bold",borderRadius:"10px",paddingTop:"5px",paddingBottom:"5px"};this.applyStyles(jr,Ms),jr.addEventListener("click",()=>{this.closeCheckDevices(),r({cameraId:Ee?.value,microphoneId:rr?.value,result:!1})});let $t=document.createElement("span"),va={width:"3px",height:"70px",margin:"0px 2px",background:"rgba(0, 0, 0, .1)"};this.applyStyles($t,va);let Si=document.createElement("button");Si.innerText="Continuar",Si.setAttribute("id","confirmBtn");let ks={width:"100%",height:"70px",backgroundColor:"#FFF",border:"none",color:"rgba(0, 0, 0, .7)",fontWeight:"bold",borderRadius:"10px",paddingTop:"5px",paddingBottom:"5px",disabled:!0};this.applyStyles(Si,ks),Si.addEventListener("click",()=>{this.closeCheckDevices(),r({cameraId:Ee?.value,microphoneId:rr?.value,result:!0})}),yi.appendChild(jr),yi.appendChild($t),yi.appendChild(Si),f.appendChild(yi),n.appendChild(f),document.body.appendChild(n),this.startCheckDevices(this.options,this.videoOptions).catch(Xi=>i(Xi))})}videoDeviceInterface(t){let r=document.querySelector("#cameraStream");r&&(r.srcObject=t,r.play(),this.isUnderResolution())}audioDeviceInterface(t){let i=document.querySelector("#audioStream")?.querySelectorAll("div"),n=document.querySelector("#audioText"),o=document.getElementById("microphoneAlert"),f=document.getElementById("alertDivMicrophone"),R=document.getElementById("checkmark_microphone"),k=document.getElementById("checkmark_stem_microphone"),F=document.getElementById("checkmark_kick_microphone"),Q=document.getElementById("ambientVerifyAlert"),ee=document.getElementById("alertDivAmbientVerify"),Ee=document.getElementById("checkmark_AmbientVerify"),Ie=document.getElementById("checkmark_stem_AmbientVerify"),pe=document.getElementById("checkmark_kick_AmbientVerify");this.volumeMeter=new si(this.cameraRecorder.cameraStream),this.volumeMeter.start({setVolume:Te=>{this.volumeCounter++,this.volumeSum+=Te,!this.allowedMicrophone&&Te>this.microphoneMinThreshold?(this.allowedMicrophone=!0,o&&(o.style.color="#16A34A"),f&&f.setAttribute("title",""),R&&R.setAttribute("class","checkmark"),k&&k.setAttribute("class","checkmark_stem"),F&&F.setAttribute("class","checkmark_kick")):this.allowedMicrophone||(o&&(o.style.color="#FF0000"),f&&f.setAttribute("title","Microfone n\xE3o est\xE1 funcionando corretamente!"),R&&R.setAttribute("class","checkmark_error"),k&&k.setAttribute("class","checkmark_stem_error"),F&&F.setAttribute("class","checkmark_kick_error"));let te=Te/4;i?.forEach((Ue,De)=>{De<Math.ceil(te)?Ue.style.backgroundColor="rgb(22, 163, 74)":Ue.style.backgroundColor="rgba(0, 0, 0, .3)"}),n&&(n.innerText=Te.toFixed(0).toString()),Te>this.noiseLimit?(Q&&(Q.style.color="#FF0000"),ee&&ee.setAttribute("title","Ambiente apresentando muito ru\xEDdo!"),this.allowedAmbient=!1,Ee.setAttribute("class","checkmark_error"),Ie.setAttribute("class","checkmark_stem_error"),pe.setAttribute("class","checkmark_kick_error")):(Q&&(Q.style.color="#16A34A"),ee&&ee.setAttribute("title",""),this.allowedAmbient=!0,Ee.setAttribute("class","checkmark"),Ie.setAttribute("class","checkmark_stem"),pe.setAttribute("class","checkmark_kick"))}}).catch(Te=>{console.log(Te),this.volumeMeter=void 0,o&&(o.style.color="#FF0000"),R&&R.setAttribute("class","checkmark_error"),k&&k.setAttribute("class","checkmark_stem_error"),F&&F.setAttribute("class","checkmark_kick_error")})}async setSelectOption(t){let r=document.querySelector("#cameraSelect"),i=document.querySelector("#micSelect"),n=await yr();r&&(r.value=t.cameraId||"default"),i&&(i.value=t.microphoneId||"default");let o=(f,R)=>{let k=document.createElement("option");return k.setAttribute("value",R),k.innerHTML=f,k};n.cameras.forEach(f=>{let R=o(f.label,f.id);r?.appendChild(R)}),n.microphones.forEach(f=>{let R=o(f.label,f.id);i?.appendChild(R)}),this.onSelectOptionChange()}async onSelectOptionChange(){let t=document.querySelector("#cameraSelect"),r=document.querySelector("#micSelect");t?.addEventListener("change",async()=>{await this.cameraRecorder.stopRecording(),this.volumeMeter?.stop(),this.cameraRecorder=new Cr({cameraId:t?.value,microphoneId:r?.value,onBufferSizeError:!1,onBufferSizeErrorCallback:()=>{}},{width:this.videoOptions.width,height:this.videoOptions.height}),await this.cameraRecorder.startRecording(),this.videoDeviceInterface(this.cameraRecorder.cameraStream),this.audioDeviceInterface(this.cameraRecorder.cameraStream)}),r?.addEventListener("change",async()=>{await this.cameraRecorder.stopRecording(),this.volumeMeter?.stop(),this.cameraRecorder=new Cr({cameraId:t?.value,microphoneId:r?.value,onBufferSizeError:!1,onBufferSizeErrorCallback:()=>{}},{width:this.videoOptions.width,height:this.videoOptions.height}),await this.cameraRecorder.startRecording(),this.videoDeviceInterface(this.cameraRecorder.cameraStream),this.audioDeviceInterface(this.cameraRecorder.cameraStream)})}async startCheckDevices(t=oi,r){this.setSelectOption(t),this.videoOptions=Ln(r),await _n(),this.cameraRecorder=new Cr({cameraId:t.cameraId,microphoneId:t.microphoneId,onBufferSizeError:!1,onBufferSizeErrorCallback:()=>{}},{width:this.videoOptions.width,height:this.videoOptions.height}),await this.cameraRecorder.startRecording(),this.videoDeviceInterface(this.cameraRecorder.cameraStream),this.audioDeviceInterface(this.cameraRecorder.cameraStream);let i=document.querySelector("#confirmBtn");return i.disabled=!1,{cameraStream:this.cameraRecorder.cameraStream}}async closeCheckDevices(){document.querySelector("#checkDevices")?.remove(),this.volumeMeter?.stop(),this.volumeMedia=Math.ceil(this.volumeSum/this.volumeCounter),await this.cameraRecorder.stopRecording()}applyStyles(t,r){for(let[i,n]of Object.entries(r))t.style[i]=n}};var Fn=class{constructor(){this.hasExtension=!1;this.tryes=0;this.responseStart=!1}start(){let t;return new Promise((r,i)=>{window.postMessage({type:"easyproctor",func:"startExtensionEasyproctor"},"*"),t=setInterval(()=>{this.tryes>10&&(clearInterval(t),i(new Error("N\xE3o foi poss\xEDvel se conectar com a extens\xE3o"))),this.responseStart&&(clearInterval(t),r(this.responseStart)),this.tryes++},1e3)})}sendVerifyMsg(t,r){window.postMessage({type:"easyproctor",func:"verifyExtensionEasyproctor",url:t,token:r},"*")}verify(t){return t.source==window&&t.data.sender&&t.data.sender==="easyproctor-extension"&&t.data.message_name&&t.data.message_name==="progress"&&this.options.onProgress&&this.options.onProgress(100),t.source==window&&t.data.sender&&t.data.sender==="easyproctor-extension"&&t.data.message_name&&t.data.message_name==="start"&&(this.responseStart=!0),new Promise((r,i)=>{t.source==window&&t.data.sender&&t.data.sender==="easyproctor-extension"&&t.data.message_name&&t.data.message_name==="version"&&(this.hasExtension=!0,r(this.hasExtension))})}addEventListener(){window.addEventListener("message",t=>this.verify(t))}};var Dn=class{constructor(t,r){this.repositoryDevices=t,this.proctoringId=r}startRecording(t){navigator.mediaDevices.ondevicechange=()=>{this.onChangeDevices(t)}}async onChangeDevices(t){let r=await yr(),i=(ee,Ee)=>ee.label===Ee.label&&ee.id===Ee.id,n=(ee,Ee,Ie)=>ee.filter(pe=>!Ee.some(Te=>Ie(pe,Te))),o=await this.repositoryDevices.getDevices("devices"),f={label:"",id:""},R={cameras:o?.cameras||[f],microphones:o?.microphones||[f]},k,F;r.cameras.length!=R?.cameras.length&&(k=r.cameras.length>R?.cameras.length?n(r.cameras,R?.cameras,i):n(R?.cameras,r.cameras,i),k=k.filter(ee=>ee.id!="default")),r.microphones.length!=R?.microphones.length&&(F=r.microphones.length>R?.microphones.length?n(r.microphones,R?.microphones,i):n(R?.microphones,r.microphones,i),F=F.filter(ee=>ee.id!="default"&&ee.id!="communications"));let Q={cameras:k||[],microphones:F||[],status:r.cameras.length>R?.cameras.length||r.microphones.length>R?.microphones.length?"in":"out"};await this.repositoryDevices.save({...r,id:"devices",status:r.cameras.length>R?.cameras.length||r.microphones.length>R?.microphones.length?"in":"out"}),t.status&&(Q.cameras.length!=0||Q.microphones.length!=0)&&(Je.registerChangeDevice(this.proctoringId,Q.status,Q),t.status(Q))}};var y1=Pu(b1()),ra=class{constructor(t){this.loadingBoolean=!0;this.proctoringId=t}async upload(t,r){try{let{file:i,onProgress:n}=t;(0,y1.saveAs)(i),this.loadingBoolean=!1,clearInterval(this.loadingInterval),n&&n(Math.round(100))}catch{throw new Error("Error on machine download")}}};var Vn=class{constructor(t,r){this.session=t;this.recorders=r}async startAll(){this.session.start();for(let t of this.recorders)await t.startRecording()}async pauseAll(){this.session.pause();for(let t of this.recorders)await t.pauseRecording()}async resumeAll(){this.session.resume();for(let t of this.recorders)await t.resumeRecording()}async stopAll(){for(let t of this.recorders)await t.stopRecording();this.session.stop()}async saveAllOnSession(){for(let t of this.recorders)await t.saveOnSession(this.session)}};var ia=class{constructor(t,r,i){this.session=t;this.proctoringId=r;this.uploadServices=i}async upload(t,r){await this.uploadRecordings(t,r)}async uploadRecordings(t,r){await this.uploadAllFiles(t,r),this.session.hasSomethingToUpload||this.session.setUploaded()}async uploadAllFiles(t,r){for(let i=0;i<this.session.recordings.length;i++){let n=this.session.recordings[i];if(n.upload)continue;let o=R=>{let k=(i*100+R)/this.session.recordings.length;r&&r(k)},f=await this.uploadFile(n,t,o).catch(()=>{});f&&(n.upload||(n.upload={storage:"upload",awsUrl:"",azureUrl:""}),f.uploaded&&(n.upload.storage=f.storage),f.storage==="upload"?f.url&&(n.upload.azureUrl=f.url):f.url&&(n.upload.awsUrl=f.url))}r&&r(100)}async uploadFile(t,r,i){for await(let n of this.uploadServices){let o=await n.upload({file:t.file,onProgress:f=>{i&&i(f)}},r);if(o){let f="";return t.file.name.search("camera")!==-1?f="Camera":t.file.name.search("screen")!==-1?f="Screen":t.file.name.search("audio")!==-1&&(f="Audio"),Je.registerUploadFile(this.proctoringId,`Upload File
218
+ `,document.getElementsByTagName("head")[0].appendChild(t),new Promise((r,i)=>{let o=document.createElement("div");o.setAttribute("id","checkDevices");let n={backgroundColor:"rgba(0,0,0,0.4)",zIndex:"1000",position:"fixed",top:"0",left:"0",height:"100vh",width:"100%",display:"flex",alignItems:"center",justifyContent:"center"};this.applyStyles(o,n);let s=document.createElement("div"),a={backgroundColor:"#fff",zIndex:"1001",width:"600px",borderRadius:"10px",display:"flex",flexDirection:"column",alignItems:"center"};this.applyStyles(s,a);let c=document.createElement("h3");c.innerText="Para iniciar configure a c\xE2mera e o microfone";let l={color:"rgba(0, 0, 0, .7)",fontWeight:"bold",fontSize:"20px",marginBottom:"15px",padding:"20px 0px",borderBottom:"2px solid rgba(0, 0, 0, .1)",width:"100%",textAlign:"center"};this.applyStyles(c,l),s.appendChild(c);let u=document.createElement("div"),d=document.createElement("h3"),f=document.createElement("select");f.setAttribute("id","cameraSelect");let g={padding:"0 20px",width:"100%",display:"flex",justifyContent:"space-between",marginBottom:"15px"};this.applyStyles(u,g),d.innerText="C\xE2mera";let h={color:"rgba(0, 0, 0, .75)",fontWeight:"bold",fontSize:"16px"};this.applyStyles(d,h),f.style.maxWidth="400px",u.appendChild(d),u.appendChild(f),s.appendChild(u);let m=document.createElement("div");m.setAttribute("id","liveCheckDevices");let y=document.createElement("div"),b=document.createElement("video"),k=document.createElement("div");b.setAttribute("id","cameraStream"),b.muted=!0;let P={width:"calc(100% - 40px)",display:"flex",justifyContent:"space-between",borderBottom:"2px solid rgba(0, 0, 0, .1)",paddingBottom:"15px",transform:"rotateY(180deg)"};this.applyStyles(m,P);let ae={width:"20rem",backgroundColor:"#000",borderRadius:"10px",marginBottom:"15px"};this.applyStyles(b,ae),this.applyStyles(y,{position:"relative"});let le=document.createElement("div");le.setAttribute("class","alert-div"),le.setAttribute("id","alertDivResolution");let me=document.createElement("error");me.setAttribute("id","resolutionAlert"),me.innerText="Resolu\xE7\xE3o m\xEDnima",me.style.marginLeft="10px",me.style.marginRight="5px";let co=document.createElement("span"),Qc=document.createElement("div"),el=document.createElement("div");co.setAttribute("id","checkmark_resolution"),Qc.setAttribute("id","checkmark_stem_resolution"),el.setAttribute("id","checkmark_kick_resolution"),co.appendChild(Qc),co.appendChild(el);let si=document.createElement("span"),tl=document.createElement("div"),rl=document.createElement("div");si.setAttribute("class","info"),si.setAttribute("id","info_resolution"),tl.setAttribute("class","info_stem"),rl.setAttribute("class","info_kick"),si.appendChild(tl),si.appendChild(rl),le.appendChild(co),le.appendChild(me),le.appendChild(si);let ai=document.createElement("div");ai.setAttribute("class","alert-div"),ai.setAttribute("id","alertDivFacePosition");let lo=document.createElement("error");lo.setAttribute("id","facePositionAlert"),lo.innerText="Posicionamento da face",lo.style.marginLeft="10px";let uo=document.createElement("span"),il=document.createElement("div"),ol=document.createElement("div");uo.setAttribute("id","checkmark_FacePosition"),il.setAttribute("id","checkmark_stem_FacePosition"),ol.setAttribute("id","checkmark_kick_FacePosition"),uo.appendChild(il),uo.appendChild(ol),ai.appendChild(uo),ai.appendChild(lo);let ci=document.createElement("div");ci.setAttribute("class","alert-div"),ci.setAttribute("id","alertDivAmbientVerify");let ho=document.createElement("error");ho.setAttribute("id","ambientVerifyAlert"),ho.innerText="Verifica\xE7\xE3o do ambiente",ho.style.marginLeft="10px";let po=document.createElement("span"),nl=document.createElement("div"),sl=document.createElement("div");po.setAttribute("id","checkmark_AmbientVerify"),nl.setAttribute("id","checkmark_stem_AmbientVerify"),sl.setAttribute("id","checkmark_kick_AmbientVerify"),po.appendChild(nl),po.appendChild(sl),ci.appendChild(po),ci.appendChild(ho),k.style.transform="rotateY(180deg)",k.appendChild(le),k.appendChild(ai),k.appendChild(ci),m.appendChild(k),y.appendChild(b),m.appendChild(y);let Tt=document.createElement("div");Tt.setAttribute("class","facial-biometry__mask"),Tt.style.width="100%",Tt.style.height="100%",Tt.style.position="absolute",Tt.style.top="0px",Tt.style.left="0px",Tt.style.backgroundColor="#fff",Tt.style.opacity="0.6";let Lt=document.createElement("div");Lt.setAttribute("class","biometry__frame"),Lt.style.width="100%",Lt.style.height="100%",Lt.style.position="absolute",Lt.style.top="0px",Lt.style.left="0px",Lt.style.zIndex="10",y.appendChild(Tt),y.appendChild(Lt),s.appendChild(m);let fo=document.createElement("div"),Ss=document.createElement("h3"),li=document.createElement("select");li.setAttribute("id","micSelect");let km={padding:"0 20px",width:"100%",display:"flex",justifyContent:"space-between",margin:"15px 0"};this.applyStyles(fo,km),Ss.innerText="Microfone";let Am={color:"rgba(0, 0, 0, .7)",fontWeight:"bold",fontSize:"16px"};this.applyStyles(Ss,Am),li.style.maxWidth="400px",fo.appendChild(Ss),fo.appendChild(li),s.appendChild(fo);let mo=document.createElement("div"),Tm={width:"100%",padding:"0px 40px",display:"flex"};this.applyStyles(mo,Tm);let go=document.createElement("div"),xm={display:"flex",flexDirection:"column",justifyContent:"space-between",paddingBottom:"15px"};this.applyStyles(go,xm);let yo=document.createElement("div");yo.setAttribute("id","audioStream");let Cm={display:"flex",marginBottom:"15px"};this.applyStyles(yo,Cm);let Rm={height:"16px",width:"5px",marginRight:"5px",borderRadius:"10px",backgroundColor:"rgba(0, 0, 0, .3)"};for(let Eo=0;Eo<25;Eo++){let pl=document.createElement("div");this.applyStyles(pl,Rm),yo.appendChild(pl)}let ui=document.createElement("div"),al=document.createElement("p"),cl=document.createElement("p"),ll=document.createElement("p"),Pm={width:"250px",display:"flex",justifyContent:"space-between"};this.applyStyles(ui,Pm),al.innerText="0",cl.innerText="50",ll.innerText="100",ui.appendChild(al),ui.appendChild(cl),ui.appendChild(ll);let Er=document.createElement("div");Er.setAttribute("class","alert-div"),Er.setAttribute("id","alertDivMicrophone");let Im={alignItems:"start",justifyContent:"end",width:"inherit"};this.applyStyles(Er,Im);let vo=document.createElement("error");vo.setAttribute("id","microphoneAlert"),vo.innerText="Teste de funcionamento",vo.style.marginLeft="10px";let bo=document.createElement("span"),ul=document.createElement("div"),dl=document.createElement("div");bo.setAttribute("id","checkmark_microphone"),ul.setAttribute("id","checkmark_stem_microphone"),dl.setAttribute("id","checkmark_kick_microphone"),bo.appendChild(ul),bo.appendChild(dl),Er.appendChild(bo),Er.appendChild(vo),go.appendChild(yo),go.appendChild(ui);let wo=document.createElement("p");wo.innerText='Pronuncie em voz alta: "um, dois, tr\xEAs, quatro".',wo.style.textAlign="start";let Om={width:"100%",marginLeft:"40px",marginBottom:"15px"};this.applyStyles(wo,Om),mo.appendChild(go),mo.appendChild(Er),s.appendChild(wo),s.appendChild(mo);let di=document.createElement("div"),Dm={width:"100%",display:"flex",alignItems:"center",justifyContent:"center",borderTop:"2px solid rgba(0, 0, 0, .1)"};this.applyStyles(di,Dm);let So=document.createElement("button");So.innerText="Cancelar";let Fm={width:"100%",height:"70px",backgroundColor:"#FFF",border:"none",color:"rgba(0, 0, 0, .7)",fontWeight:"bold",borderRadius:"10px",paddingTop:"5px",paddingBottom:"5px"};this.applyStyles(So,Fm),So.addEventListener("click",()=>{this.closeCheckDevices(),r({cameraId:f?.value,microphoneId:li?.value,result:!1})});let hl=document.createElement("span"),Bm={width:"3px",height:"70px",margin:"0px 2px",background:"rgba(0, 0, 0, .1)"};this.applyStyles(hl,Bm);let hi=document.createElement("button");hi.innerText="Continuar",hi.setAttribute("id","confirmBtn");let Mm={width:"100%",height:"70px",backgroundColor:"#FFF",border:"none",color:"rgba(0, 0, 0, .7)",fontWeight:"bold",borderRadius:"10px",paddingTop:"5px",paddingBottom:"5px",disabled:!0};this.applyStyles(hi,Mm),hi.addEventListener("click",()=>{this.closeCheckDevices(),r({cameraId:f?.value,microphoneId:li?.value,result:!0})}),di.appendChild(So),di.appendChild(hl),di.appendChild(hi),s.appendChild(di),o.appendChild(s),document.body.appendChild(o),this.startCheckDevices(this.options,this.videoOptions).catch(Eo=>i(Eo))})}videoDeviceInterface(t){let r=document.querySelector("#cameraStream");r&&(r.srcObject=t,r.play(),this.isUnderResolution()),this.faceDetection.enableCam()}audioDeviceInterface(t){let i=document.querySelector("#audioStream")?.querySelectorAll("div"),o=document.querySelector("#audioText"),n=document.getElementById("microphoneAlert"),s=document.getElementById("alertDivMicrophone"),a=document.getElementById("checkmark_microphone"),c=document.getElementById("checkmark_stem_microphone"),l=document.getElementById("checkmark_kick_microphone"),u=document.getElementById("ambientVerifyAlert"),d=document.getElementById("alertDivAmbientVerify"),f=document.getElementById("checkmark_AmbientVerify"),g=document.getElementById("checkmark_stem_AmbientVerify"),h=document.getElementById("checkmark_kick_AmbientVerify");this.volumeMeter=new Qt(this.cameraRecorder.cameraStream),this.volumeMeter.start({setVolume:m=>{this.volumeCounter++,this.volumeSum+=m,!this.allowedMicrophone&&m>this.microphoneMinThreshold?(this.allowedMicrophone=!0,n&&(n.style.color="#16A34A"),s&&s.setAttribute("title",""),a&&a.setAttribute("class","checkmark"),c&&c.setAttribute("class","checkmark_stem"),l&&l.setAttribute("class","checkmark_kick")):this.allowedMicrophone||(n&&(n.style.color="#FF0000"),s&&s.setAttribute("title","Microfone n\xE3o est\xE1 funcionando corretamente!"),a&&a.setAttribute("class","checkmark_error"),c&&c.setAttribute("class","checkmark_stem_error"),l&&l.setAttribute("class","checkmark_kick_error"));let y=m/4;i?.forEach((b,k)=>{k<Math.ceil(y)?b.style.backgroundColor="rgb(22, 163, 74)":b.style.backgroundColor="rgba(0, 0, 0, .3)"}),o&&(o.innerText=m.toFixed(0).toString()),m>this.noiseLimit?(u&&(u.style.color="#FF0000"),d&&d.setAttribute("title","Ambiente apresentando muito ru\xEDdo!"),this.allowedAmbient=!1,f.setAttribute("class","checkmark_error"),g.setAttribute("class","checkmark_stem_error"),h.setAttribute("class","checkmark_kick_error")):(u&&(u.style.color="#16A34A"),d&&d.setAttribute("title",""),this.allowedAmbient=!0,f.setAttribute("class","checkmark"),g.setAttribute("class","checkmark_stem"),h.setAttribute("class","checkmark_kick"))}}).catch(m=>{console.log(m),this.volumeMeter=void 0,n&&(n.style.color="#FF0000"),a&&a.setAttribute("class","checkmark_error"),c&&c.setAttribute("class","checkmark_stem_error"),l&&l.setAttribute("class","checkmark_kick_error")})}async setSelectOption(t){let r=document.querySelector("#cameraSelect"),i=document.querySelector("#micSelect"),o=await Qe();r&&(r.value=t.cameraId||"default"),i&&(i.value=t.microphoneId||"default");let n=(s,a)=>{let c=document.createElement("option");return c.setAttribute("value",a),c.innerHTML=s,c};o.cameras.forEach(s=>{let a=n(s.label,s.id);r?.appendChild(a)}),o.microphones.forEach(s=>{let a=n(s.label,s.id);i?.appendChild(a)}),this.onSelectOptionChange()}async onSelectOptionChange(){let t=document.querySelector("#cameraSelect"),r=document.querySelector("#micSelect");t?.addEventListener("change",async()=>{await this.cameraRecorder.stopRecording(),this.volumeMeter?.stop(),this.cameraRecorder=new wt({cameraId:t?.value,microphoneId:r?.value,onBufferSizeError:!1,onBufferSizeErrorCallback:()=>{}},{width:this.videoOptions.width,height:this.videoOptions.height}),await this.cameraRecorder.startRecording(),this.videoDeviceInterface(this.cameraRecorder.cameraStream),this.audioDeviceInterface(this.cameraRecorder.cameraStream)}),r?.addEventListener("change",async()=>{await this.cameraRecorder.stopRecording(),this.volumeMeter?.stop(),this.cameraRecorder=new wt({cameraId:t?.value,microphoneId:r?.value,onBufferSizeError:!1,onBufferSizeErrorCallback:()=>{}},{width:this.videoOptions.width,height:this.videoOptions.height}),await this.cameraRecorder.startRecording(),this.videoDeviceInterface(this.cameraRecorder.cameraStream),this.audioDeviceInterface(this.cameraRecorder.cameraStream)})}async startCheckDevices(t=er,r){this.setSelectOption(t),this.videoOptions=In(r),await _o(),this.cameraRecorder=new wt({cameraId:t.cameraId,microphoneId:t.microphoneId,onBufferSizeError:!1,onBufferSizeErrorCallback:()=>{}},{width:this.videoOptions.width,height:this.videoOptions.height}),await this.cameraRecorder.startRecording(),this.videoDeviceInterface(this.cameraRecorder.cameraStream),this.audioDeviceInterface(this.cameraRecorder.cameraStream);let i=document.querySelector("#confirmBtn");return i.disabled=!1,{cameraStream:this.cameraRecorder.cameraStream}}async closeCheckDevices(){document.querySelector("#checkDevices")?.remove(),this.faceDetection.stopDetection(),this.volumeMeter?.stop(),this.volumeMedia=Math.ceil(this.volumeSum/this.volumeCounter),await this.cameraRecorder.stopRecording()}applyStyles(t,r){for(let[i,o]of Object.entries(r))t.style[i]=o}};var Dn=class{constructor(){this.hasExtension=!1;this.tryes=0;this.responseStart=!1}start(){let t;return new Promise((r,i)=>{window.postMessage({type:"easyproctor",func:"startExtensionEasyproctor"},"*"),t=setInterval(()=>{this.tryes>10&&(clearInterval(t),i(new Error("N\xE3o foi poss\xEDvel se conectar com a extens\xE3o"))),this.responseStart&&(clearInterval(t),r(this.responseStart)),this.tryes++},1e3)})}sendVerifyMsg(t,r){window.postMessage({type:"easyproctor",func:"verifyExtensionEasyproctor",url:t,token:r},"*")}verify(t){return t.source==window&&t.data.sender&&t.data.sender==="easyproctor-extension"&&t.data.message_name&&t.data.message_name==="progress"&&this.options.onProgress&&this.options.onProgress(100),t.source==window&&t.data.sender&&t.data.sender==="easyproctor-extension"&&t.data.message_name&&t.data.message_name==="start"&&(this.responseStart=!0),new Promise((r,i)=>{t.source==window&&t.data.sender&&t.data.sender==="easyproctor-extension"&&t.data.message_name&&t.data.message_name==="version"&&(this.hasExtension=!0,r(this.hasExtension))})}addEventListener(){window.addEventListener("message",t=>this.verify(t))}};var Fn=class{constructor(t,r){this.repositoryDevices=t,this.proctoringId=r}startRecording(t){navigator.mediaDevices.ondevicechange=()=>{this.onChangeDevices(t)}}async onChangeDevices(t){let r=await Qe(),i=(d,f)=>d.label===f.label&&d.id===f.id,o=(d,f,g)=>d.filter(h=>!f.some(m=>g(h,m))),n=await this.repositoryDevices.getDevices("devices"),s={label:"",id:""},a={cameras:n?.cameras||[s],microphones:n?.microphones||[s]},c,l;r.cameras.length!=a?.cameras.length&&(c=r.cameras.length>a?.cameras.length?o(r.cameras,a?.cameras,i):o(a?.cameras,r.cameras,i),c=c.filter(d=>d.id!="default")),r.microphones.length!=a?.microphones.length&&(l=r.microphones.length>a?.microphones.length?o(r.microphones,a?.microphones,i):o(a?.microphones,r.microphones,i),l=l.filter(d=>d.id!="default"&&d.id!="communications"));let u={cameras:c||[],microphones:l||[],status:r.cameras.length>a?.cameras.length||r.microphones.length>a?.microphones.length?"in":"out"};await this.repositoryDevices.save({...r,id:"devices",status:r.cameras.length>a?.cameras.length||r.microphones.length>a?.microphones.length?"in":"out"}),t.status&&(u.cameras.length!=0||u.microphones.length!=0)&&(I.registerChangeDevice(this.proctoringId,u.status,u),t.status(u))}};var gp=Hm(mp()),Jr=class{constructor(t){this.loadingBoolean=!0;this.proctoringId=t}async upload(t,r){try{let{file:i,onProgress:o}=t;(0,gp.saveAs)(i),this.loadingBoolean=!1,clearInterval(this.loadingInterval),o&&o(Math.round(100))}catch{throw new Error("Error on machine download")}}};var Bn=class{constructor(t,r){this.session=t;this.recorders=r}async startAll(){this.session.start();for(let t of this.recorders)await t.startRecording()}async pauseAll(){this.session.pause();for(let t of this.recorders)await t.pauseRecording()}async resumeAll(){this.session.resume();for(let t of this.recorders)await t.resumeRecording()}async stopAll(){for(let t of this.recorders)await t.stopRecording();this.session.stop()}async saveAllOnSession(){for(let t of this.recorders)await t.saveOnSession(this.session)}};var Yr=class{constructor(t,r,i){this.session=t;this.proctoringId=r;this.uploadServices=i}async upload(t,r){await this.uploadRecordings(t,r)}async uploadRecordings(t,r){await this.uploadAllFiles(t,r),this.session.hasSomethingToUpload||this.session.setUploaded()}async uploadAllFiles(t,r){for(let i=0;i<this.session.recordings.length;i++){let o=this.session.recordings[i];if(o.upload)continue;let n=a=>{let c=(i*100+a)/this.session.recordings.length;r&&r(c)},s=await this.uploadFile(o,t,n).catch(()=>{});s&&(o.upload||(o.upload={storage:"upload",awsUrl:"",azureUrl:""}),s.uploaded&&(o.upload.storage=s.storage),s.storage==="upload"?s.url&&(o.upload.azureUrl=s.url):s.url&&(o.upload.awsUrl=s.url))}r&&r(100)}async uploadFile(t,r,i){for await(let o of this.uploadServices){let n=await o.upload({file:t.file,onProgress:s=>{i&&i(s)}},r);if(n){let s="";return t.file.name.search("camera")!==-1?s="Camera":t.file.name.search("screen")!==-1?s="Screen":t.file.name.search("audio")!==-1&&(s="Audio"),I.registerUploadFile(this.proctoringId,`Upload File
181
219
  Name: ${t.file.name}
182
220
  Type: ${t.file.type}
183
- Size: ${t.file.size}`,f),o}}throw new Error("Could not upload")}};var Hn=class{constructor(t,r,i){this.alerts=[];this.onLostFocusCallback=t.onLostFocusCallback,this.onFocusCallback=t.onFocusCallback,this.optionsProctoring=r,this.cameraRecorder=i}async startRecording(){this.startTime=new Date(Date.now()),this.optionsProctoring.captureScreen&&(window.addEventListener("blur",()=>this.onLostFocus()),window.addEventListener("focus",()=>this.onReturnFocus()))}async pauseRecording(){window.removeEventListener("blur",()=>this.onLostFocus()),window.removeEventListener("focus",()=>this.onReturnFocus())}async resumeRecording(){this.optionsProctoring.captureScreen&&(window.addEventListener("blur",()=>this.onLostFocus()),window.addEventListener("focus",()=>this.onReturnFocus()))}async stopRecording(){window.removeEventListener("blur",()=>this.onLostFocus()),window.removeEventListener("focus",()=>this.onReturnFocus())}async saveOnSession(t){this.alerts.forEach(r=>{t.addAlert(r)})}onLostFocus(){Date.now()-this.startTime?.getTime()>1e4&&(this.onLostFocusCallback(),this.alerts.push({begin:Date.now()-this.startTime.getTime(),end:0,alert:25}))}onReturnFocus(){let t=this.alerts[this.alerts.length-1];t&&(this.onFocusCallback(),t.end=Date.now()-this.startTime.getTime())}};var N2=S1();function A1(e){return new N2(e)}var aa=class{constructor(t){this.blobs=[];this.audioParams={recordingBitrate:128};t&&(this.audioParams=t)}async startRecording(){this.recorder=A1({bitRate:this.audioParams.recordingBitrate}),this.recorder.start().catch(t=>{throw new Error("Error on Audio to Start Recording")})}async pauseRecording(){}async resumeRecording(){}async stopRecording(){if(!this.recorder)return;let t=await this.recorder.stop().getMp3().then(async([r,i])=>({buffer:r,blob:i})).catch(r=>{alert("We could not retrieve your message")});t&&this.blobs.push(t.blob)}async saveOnSession(t,r,i){t.addRecording({device:"",file:new File(this.blobs,`EP_${t.id}_audio_${r&&i&&`${r}_${i}`||"0"}.mp3`,{type:"audio/mp3"}),origin:"Mic"})}};var Co=typeof self<"u"?self:{};function rl(e,t){e:{for(var r=["CLOSURE_FLAGS"],i=Co,n=0;n<r.length;n++)if((i=i[r[n]])==null){r=null;break e}r=i}return(e=r&&r[e])!=null?e:t}function Bi(){throw Error("Invalid UTF8")}function w1(e,t){return t=String.fromCharCode.apply(null,t),e==null?t:e+t}var Un,mo,F2=typeof TextDecoder<"u",D2,V2=typeof TextEncoder<"u";function il(e){if(V2)e=(D2||=new TextEncoder).encode(e);else{let r=0,i=new Uint8Array(3*e.length);for(let n=0;n<e.length;n++){var t=e.charCodeAt(n);if(128>t)i[r++]=t;else{if(2048>t)i[r++]=t>>6|192;else{if(55296<=t&&57343>=t){if(56319>=t&&n<e.length){let o=e.charCodeAt(++n);if(56320<=o&&57343>=o){t=1024*(t-55296)+o-56320+65536,i[r++]=t>>18|240,i[r++]=t>>12&63|128,i[r++]=t>>6&63|128,i[r++]=63&t|128;continue}n--}t=65533}i[r++]=t>>12|224,i[r++]=t>>6&63|128}i[r++]=63&t|128}}e=r===i.length?i:i.subarray(0,r)}return e}var qa,al=rl(610401301,!1),Oo=rl(572417392,!0),R1=Co.navigator;function Ao(e){return!!al&&!!qa&&qa.brands.some(({brand:t})=>t&&t.indexOf(e)!=-1)}function ur(e){var t;return(t=Co.navigator)&&(t=t.userAgent)||(t=""),t.indexOf(e)!=-1}function li(){return!!al&&!!qa&&0<qa.brands.length}function _o(){return li()?Ao("Chromium"):(ur("Chrome")||ur("CriOS"))&&!(!li()&&ur("Edge"))||ur("Silk")}qa=R1&&R1.userAgentData||null;var H2=!li()&&(ur("Trident")||ur("MSIE"));!ur("Android")||_o(),_o(),ur("Safari")&&(_o()||!li()&&ur("Coast")||!li()&&ur("Opera")||!li()&&ur("Edge")||(li()?Ao("Microsoft Edge"):ur("Edg/"))||li()&&Ao("Opera"));var nl={},Da=null;function U2(e){var t=e.length,r=3*t/4;r%3?r=Math.floor(r):"=.".indexOf(e[t-1])!=-1&&(r="=.".indexOf(e[t-2])!=-1?r-2:r-1);var i=new Uint8Array(r),n=0;return function(o,f){function R(Ie){for(;k<o.length;){var pe=o.charAt(k++),Te=Da[pe];if(Te!=null)return Te;if(!/^[\s\xa0]*$/.test(pe))throw Error("Unknown base64 encoding at char: "+pe)}return Ie}sl();for(var k=0;;){var F=R(-1),Q=R(0),ee=R(64),Ee=R(64);if(Ee===64&&F===-1)break;f(F<<2|Q>>4),ee!=64&&(f(Q<<4&240|ee>>2),Ee!=64&&f(ee<<6&192|Ee))}}(e,function(o){i[n++]=o}),n!==r?i.subarray(0,n):i}function sl(){if(!Da){Da={};for(var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),t=["+/=","+/","-_=","-_.","-_"],r=0;5>r;r++){var i=e.concat(t[r].split(""));nl[r]=i;for(var n=0;n<i.length;n++){var o=i[n];Da[o]===void 0&&(Da[o]=n)}}}}var ol=typeof Uint8Array<"u",ll=!H2&&typeof btoa=="function";function E1(e){if(!ll){var t;t===void 0&&(t=0),sl(),t=nl[t];var r=Array(Math.floor(e.length/3)),i=t[64]||"";let k=0,F=0;for(;k<e.length-2;k+=3){var n=e[k],o=e[k+1],f=e[k+2],R=t[n>>2];n=t[(3&n)<<4|o>>4],o=t[(15&o)<<2|f>>6],f=t[63&f],r[F++]=R+n+o+f}switch(R=0,f=i,e.length-k){case 2:f=t[(15&(R=e[k+1]))<<2]||i;case 1:e=e[k],r[F]=t[e>>2]+t[(3&e)<<4|R>>4]+f+i}return r.join("")}for(t="",r=0,i=e.length-10240;r<i;)t+=String.fromCharCode.apply(null,e.subarray(r,r+=10240));return t+=String.fromCharCode.apply(null,r?e.subarray(r):e),btoa(t)}var x1=/[-_.]/g,j2={"-":"+",_:"/",".":"="};function q2(e){return j2[e]||""}function cl(e){if(!ll)return U2(e);x1.test(e)&&(e=e.replace(x1,q2)),e=atob(e);let t=new Uint8Array(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}function os(e){return ol&&e!=null&&e instanceof Uint8Array}var X2;function ls(){return X2||=new Uint8Array(0)}var ca={},z2;function ul(e){if(e!==ca)throw Error("illegal external caller")}function ua(){return z2||=new ci(null,ca)}function Po(e){ul(ca);var t=e.D;return(t=t==null||os(t)?t:typeof t=="string"?cl(t):null)==null?t:e.D=t}var ci=class{constructor(e,t){if(ul(t),this.D=e,e!=null&&e.length===0)throw Error("ByteString should be constructed with non-empty values")}P(){let e=Po(this);return e?new Uint8Array(e):ls()}};function dl(e,t){return Error(`Invalid wire type: ${e} (at position ${t})`)}function Lo(){return Error("Failed to read varint, encoding is invalid.")}function hl(e,t){return Error(`Tried to read past the end of the data ${t} > ${e}`)}function fl(e){return e.length==0?ua():new ci(e,ca)}function No(e){if(typeof e=="string")return{buffer:cl(e),A:!1};if(Array.isArray(e))return{buffer:new Uint8Array(e),A:!1};if(e.constructor===Uint8Array)return{buffer:e,A:!1};if(e.constructor===ArrayBuffer)return{buffer:new Uint8Array(e),A:!1};if(e.constructor===ci)return{buffer:Po(e)||ls(),A:!0};if(e instanceof Uint8Array)return{buffer:new Uint8Array(e.buffer,e.byteOffset,e.byteLength),A:!1};throw Error("Type not convertible to a Uint8Array, expected a Uint8Array, an ArrayBuffer, a base64 encoded string, a ByteString or an Array of numbers")}function Fo(){return typeof BigInt=="function"}var g1=!Oo,T1=!Oo,G2=typeof Uint8Array.prototype.slice=="function",ml,dt=0,At=0;function la(e){let t=0>e,r=(e=Math.abs(e))>>>0;if(e=Math.floor((e-r)/4294967296),t){let[i,n]=Vo(r,e);e=n,r=i}dt=r>>>0,At=e>>>0}function _l(e){let t=ml||=new DataView(new ArrayBuffer(8));t.setFloat32(0,+e,!0),At=0,dt=t.getUint32(0,!0)}function wo(e,t){return 4294967296*t+(e>>>0)}function Do(e,t){let r=2147483648&t;return r&&(t=~t>>>0,(e=1+~e>>>0)==0&&(t=t+1>>>0)),e=wo(e,t),r?-e:e}function Yn(e,t){if(e>>>=0,2097151>=(t>>>=0))var r=""+(4294967296*t+e);else Fo()?r=""+(BigInt(t)<<BigInt(32)|BigInt(e)):(e=(16777215&e)+6777216*(r=16777215&(e>>>24|t<<8))+6710656*(t=t>>16&65535),r+=8147497*t,t*=2,1e7<=e&&(r+=Math.floor(e/1e7),e%=1e7),1e7<=r&&(t+=Math.floor(r/1e7),r%=1e7),r=t+M1(r)+M1(e));return r}function M1(e){return e=String(e),"0000000".slice(e.length)+e}function cs(e){if(16>e.length)la(Number(e));else if(Fo())e=BigInt(e),dt=Number(e&BigInt(4294967295))>>>0,At=Number(e>>BigInt(32)&BigInt(4294967295));else{let t=+(e[0]==="-");At=dt=0;let r=e.length;for(let i=t,n=(r-t)%6+t;n<=r;i=n,n+=6){let o=Number(e.slice(i,n));At*=1e6,dt=1e6*dt+o,4294967296<=dt&&(At+=Math.trunc(dt/4294967296),At>>>=0,dt>>>=0)}if(t){let[i,n]=Vo(dt,At);dt=i,At=n}}}function Vo(e,t){return t=~t,e?e=1+~e:t+=1,[e,t]}function Ho(e,t){let r,i=0,n=0,o=0,f=e.i,R=e.g;do r=f[R++],i|=(127&r)<<o,o+=7;while(32>o&&128&r);for(32<o&&(n|=(127&r)>>4),o=3;32>o&&128&r;o+=7)r=f[R++],n|=(127&r)<<o;if(Oi(e,R),128>r)return t(i>>>0,n>>>0);throw Lo()}function Uo(e){let t=0,r=e.g,i=r+10,n=e.i;for(;r<i;){let o=n[r++];if(t|=o,(128&o)==0)return Oi(e,r),!!(127&t)}throw Lo()}function Jt(e){let t=e.i,r=e.g,i=t[r++],n=127&i;if(128&i&&(i=t[r++],n|=(127&i)<<7,128&i&&(i=t[r++],n|=(127&i)<<14,128&i&&(i=t[r++],n|=(127&i)<<21,128&i&&(i=t[r++],n|=i<<28,128&i&&128&t[r++]&&128&t[r++]&&128&t[r++]&&128&t[r++]&&128&t[r++])))))throw Lo();return Oi(e,r),n}function Ro(e){var t=e.i;let r=e.g,i=t[r],n=t[r+1],o=t[r+2];return t=t[r+3],Oi(e,e.g+4),(i<<0|n<<8|o<<16|t<<24)>>>0}function Eo(e){var t=Ro(e);e=2*(t>>31)+1;let r=t>>>23&255;return t&=8388607,r==255?t?NaN:1/0*e:r==0?e*Math.pow(2,-149)*t:e*Math.pow(2,r-150)*(t+Math.pow(2,23))}function $2(e){return Jt(e)}function po(e,t,{F:r=!1}={}){e.F=r,t&&(t=No(t),e.i=t.buffer,e.m=t.A,e.u=0,e.j=e.i.length,e.g=e.u)}function Oi(e,t){if(e.g=t,t>e.j)throw hl(e.j,t)}function pl(e,t){if(0>t)throw Error(`Tried to read a negative byte length: ${t}`);let r=e.g,i=r+t;if(i>e.j)throw hl(t,e.j-r);return e.g=i,r}function vl(e,t){if(t==0)return ua();var r=pl(e,t);return e.F&&e.m?r=e.i.subarray(r,r+t):(e=e.i,r=r===(t=r+t)?ls():G2?e.slice(r,t):new Uint8Array(e.subarray(r,t))),fl(r)}var k1=[];function bl(e){var t=e.g;if(t.g==t.j)return!1;e.j=e.g.g;var r=Jt(e.g)>>>0;if(t=r>>>3,!(0<=(r&=7)&&5>=r))throw dl(r,e.j);if(1>t)throw Error(`Invalid field number: ${t} (at position ${e.j})`);return e.m=t,e.i=r,!0}function Xn(e){switch(e.i){case 0:e.i!=0?Xn(e):Uo(e.g);break;case 1:Oi(e=e.g,e.g+8);break;case 2:if(e.i!=2)Xn(e);else{var t=Jt(e.g)>>>0;Oi(e=e.g,e.g+t)}break;case 5:Oi(e=e.g,e.g+4);break;case 3:for(t=e.m;;){if(!bl(e))throw Error("Unmatched start-group tag: stream EOF");if(e.i==4){if(e.m!=t)throw Error("Unmatched end-group tag");break}Xn(e)}break;default:throw dl(e.i,e.j)}}function us(e,t,r){let i=e.g.j,n=Jt(e.g)>>>0,o=e.g.g+n,f=o-i;if(0>=f&&(e.g.j=o,r(t,e,void 0,void 0,void 0),f=o-e.g.g),f)throw Error(`Message parsing ended unexpectedly. Expected to read ${n} bytes, instead read ${n-f} bytes, either the data ended unexpectedly or the message misreported its own length`);e.g.g=o,e.g.j=i}function jo(e){var t=Jt(e.g)>>>0,r=pl(e=e.g,t);if(e=e.i,F2){var i,n=e;(i=mo)||(i=mo=new TextDecoder("utf-8",{fatal:!0})),t=r+t,n=r===0&&t===n.length?n:n.subarray(r,t);try{var o=i.decode(n)}catch(R){if(Un===void 0){try{i.decode(new Uint8Array([128]))}catch{}try{i.decode(new Uint8Array([97])),Un=!0}catch{Un=!1}}throw!Un&&(mo=void 0),R}}else{t=(o=r)+t,r=[];let R,k=null;for(;o<t;){var f=e[o++];128>f?r.push(f):224>f?o>=t?Bi():(R=e[o++],194>f||(192&R)!=128?(o--,Bi()):r.push((31&f)<<6|63&R)):240>f?o>=t-1?Bi():(R=e[o++],(192&R)!=128||f===224&&160>R||f===237&&160<=R||(192&(i=e[o++]))!=128?(o--,Bi()):r.push((15&f)<<12|(63&R)<<6|63&i)):244>=f?o>=t-2?Bi():(R=e[o++],(192&R)!=128||R-144+(f<<28)>>30!=0||(192&(i=e[o++]))!=128||(192&(n=e[o++]))!=128?(o--,Bi()):(f=(7&f)<<18|(63&R)<<12|(63&i)<<6|63&n,f-=65536,r.push(55296+(f>>10&1023),56320+(1023&f)))):Bi(),8192<=r.length&&(k=w1(k,r),r.length=0)}o=w1(k,r)}return o}function yl(e){let t=Jt(e.g)>>>0;return vl(e.g,t)}function qo(e,t,r){var i=Jt(e.g)>>>0;for(i=e.g.g+i;e.g.g<i;)r.push(t(e.g))}var jn=[];function B1(e){return e?/^\d+$/.test(e)?(cs(e),new I1(dt,At)):null:Y2||=new I1(0,0)}var I1=class{constructor(e,t){this.i=e>>>0,this.g=t>>>0}},Y2;function C1(e){return e?/^-?\d+$/.test(e)?(cs(e),new O1(dt,At)):null:W2||=new O1(0,0)}var O1=class{constructor(e,t){this.i=e>>>0,this.g=t>>>0}},W2;function Wn(e,t,r){for(;0<r||127<t;)e.g.push(127&t|128),t=(t>>>7|r<<25)>>>0,r>>>=7;e.g.push(t)}function ds(e,t){for(;127<t;)e.g.push(127&t|128),t>>>=7;e.g.push(t)}function hs(e,t){if(0<=t)ds(e,t);else{for(let r=0;9>r;r++)e.g.push(127&t|128),t>>=7;e.g.push(1)}}function Kn(e,t){e.g.push(t>>>0&255),e.g.push(t>>>8&255),e.g.push(t>>>16&255),e.g.push(t>>>24&255)}function da(e,t){t.length!==0&&(e.j.push(t),e.i+=t.length)}function Fr(e,t,r){ds(e.g,8*t+r)}function Xo(e,t){return Fr(e,t,2),t=e.g.end(),da(e,t),t.push(e.i),t}function zo(e,t){var r=t.pop();for(r=e.i+e.g.length()-r;127<r;)t.push(127&r|128),r>>>=7,e.i++;t.push(r),e.i++}function fs(e,t,r){Fr(e,t,2),ds(e.g,r.length),da(e,e.g.end()),da(e,r)}var Pr,Lr=class{constructor(t,r,i,n){this.g=t,this.i=r,this.j=i,this.N=n}};function er(e){return Array.prototype.slice.call(e)}var Go=(Pr=typeof Symbol=="function"&&typeof Symbol()=="symbol"?Symbol():void 0)?(e,t)=>{e[Pr]|=t}:(e,t)=>{e.o!==void 0?e.o|=t:Object.defineProperties(e,{o:{value:t,configurable:!0,writable:!0,enumerable:!1}})};function P1(e){let t=wt(e);(1&t)!=1&&(Object.isFrozen(e)&&(e=er(e)),_t(e,1|t))}var xo=Pr?(e,t)=>{e[Pr]&=~t}:(e,t)=>{e.o!==void 0&&(e.o&=~t)};function Bt(e,t,r){return r?e|t:e&~t}var wt=Pr?e=>0|e[Pr]:e=>0|e.o,et=Pr?e=>e[Pr]:e=>e.o,_t=Pr?(e,t)=>{e[Pr]=t}:(e,t)=>{e.o!==void 0?e.o=t:Object.defineProperties(e,{o:{value:t,configurable:!0,writable:!0,enumerable:!1}})};function L1(){var e=[];return Go(e,1),e}function K2(e,t){_t(t,-14591&(0|e))}function go(e,t){_t(t,-14557&(34|e))}function Zn(e){return(e=e>>14&1023)===0?536870912:e}var $a={},Z2={};function N1(e){return!(!e||typeof e!="object"||e.W!==Z2)}function Va(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)&&e.constructor===Object}var Sl=!Oo;function Al(e,t,r){if(e!=null){if(typeof e=="string")e=e?new ci(e,ca):ua();else if(e.constructor!==ci)if(os(e))e=r?fl(e):e.length?new ci(new Uint8Array(e),ca):ua();else{if(!t)throw Error();e=void 0}}return e}function To(e,t,r){if(!Array.isArray(e)||e.length)return!1;let i=wt(e);return!!(1&i)||!(!t||!(Array.isArray(t)?t.includes(r):t.has(r)))&&(_t(e,1|i),!0)}var Ci,F1=[];function Wr(e){if(2&e)throw Error()}var ui,Xa;function wl(e,t){(t=ui?t[ui]:void 0)&&(e[ui]=er(t))}_t(F1,55),Ci=Object.freeze(F1);function D1(){let e=Error("int32");return e.__closure__error__context__984382||(e.__closure__error__context__984382={}),e.__closure__error__context__984382.severity="warning",e}function Ya(e){return e==null||typeof e=="number"?e:e==="NaN"||e==="Infinity"||e==="-Infinity"?Number(e):void 0}function V1(e){if(e!=null&&typeof e!="boolean"){var t=typeof e;throw Error(`Expected boolean but got ${t!="object"?t:e?Array.isArray(e)?"array":t:"null"}: ${e}`)}return e}Object.freeze(new class{}),Object.freeze(new class{});var Q2=/^-?([1-9][0-9]*|0)(\.[0-9]+)?$/;function $o(e){let t=typeof e;return t==="number"?Number.isFinite(e):t==="string"&&Q2.test(e)}function Li(e){if(e==null)return e;if(typeof e=="string"){if(!e)return;e=+e}return typeof e=="number"&&Number.isFinite(e)?0|e:void 0}function H1(e){return e[0]!=="-"&&(20>e.length||e.length===20&&184467>Number(e.substring(0,6)))}function Rl(e){return e=Math.trunc(e),Number.isSafeInteger(e)||(la(e),e=Do(dt,At)),e}function El(e){var t=Math.trunc(Number(e));if(Number.isSafeInteger(t))return String(t);if((t=e.indexOf("."))!==-1&&(e=e.substring(0,t)),!(e[0]==="-"?20>e.length||e.length===20&&-922337<Number(e.substring(0,7)):19>e.length||e.length===19&&922337>Number(e.substring(0,6))))if(cs(e),e=dt,2147483648&(t=At))if(Fo())e=""+(BigInt(0|t)<<BigInt(32)|BigInt(e>>>0));else{let[r,i]=Vo(e,t);e="-"+Yn(r,i)}else e=Yn(e,t);return e}function xl(e){if(typeof e!="string")throw Error();return e}function Qn(e){if(e!=null&&typeof e!="string")throw Error();return e}function Pi(e){return e==null||typeof e=="string"?e:void 0}function gl(e,t,r){if(e!=null&&typeof e=="object"&&e.C===$a)return e;if(Array.isArray(e)){var i=wt(e),n=i;return n===0&&(n|=32&r),(n|=2&r)!==i&&_t(e,n),new t(e)}}var Jn,Yo,J2;function es(e){switch(typeof e){case"boolean":return Yo||=[0,void 0,!0];case"number":return 0<e?void 0:e===0?J2||=[0,void 0]:[-e,void 0];case"string":return[0,e];case"object":return e}}function za(e,t,r){if(e==null&&(e=Jn),Jn=void 0,e==null){var i=96;r?(e=[r],i|=512):e=[],t&&(i=-16760833&i|(1023&t)<<14)}else{if(!Array.isArray(e))throw Error();if(64&(i=wt(e)))return Xa&&delete e[Xa],e;if(i|=64,r&&(i|=512,r!==e[0]))throw Error();e:{let n=(r=e).length;if(n){let o=n-1;if(Va(r[o])){if(1024<=(t=o-(+!!(512&(i|=256))-1)))throw Error();i=-16760833&i|(1023&t)<<14;break e}}if(t){if(1024<(t=Math.max(t,n-(+!!(512&i)-1))))throw Error();i=-16760833&i|(1023&t)<<14}}}return _t(e,i),e}function Tl(e,t,r,i,n,o){if(e!=null){if(Array.isArray(e))e=n&&e.length==0&&1&wt(e)?void 0:o&&2&wt(e)?e:Wo(e,t,r,i!==void 0,n,o);else if(Va(e)){let f={};for(let R in e)f[R]=Tl(e[R],t,r,i,n,o);e=f}else e=t(e,i);return e}}function Wo(e,t,r,i,n,o){let f=i||r?wt(e):0;i=i?!!(32&f):void 0;let R=er(e);for(let k=0;k<R.length;k++)R[k]=Tl(R[k],t,r,i,n,o);return r&&(wl(R,e),r(f,R)),R}function ed(e){return e.C===$a?e.toJSON():function(t){switch(typeof t){case"number":return isFinite(t)?t:String(t);case"boolean":return t?1:0;case"object":if(t){if(Array.isArray(t))return Sl||!To(t,void 0,9999)?t:void 0;if(os(t))return E1(t);if(t instanceof ci){let r=t.D;return r==null?"":typeof r=="string"?r:t.D=E1(r)}}}return t}(e)}function Ml(e,t,r=go){if(e!=null){if(ol&&e instanceof Uint8Array)return t?e:new Uint8Array(e);if(Array.isArray(e)){var i=wt(e);return 2&i?e:(t&&=i===0||!!(32&i)&&!(64&i||!(16&i)),t?(_t(e,-12293&(34|i)),e):Wo(e,Ml,4&i?go:r,!0,!1,!0))}return e.C===$a&&(r=e.l,e=2&(i=et(r))?e:Ko(e,r,i,!0)),e}}function kl(e){let t=e.l;return Ko(e,t,et(t),!1)}function Ko(e,t,r,i){return e=e.constructor,Jn=t=Bl(t,r,i),t=new e(t),Jn=void 0,t}function Bl(e,t,r){let i=r||2&t?go:K2,n=!!(32&t);return e=function(o,f,R){let k=er(o);var F=k.length;let Q=256&f?k[F-1]:void 0;for(F+=Q?-1:0,f=512&f?1:0;f<F;f++)k[f]=R(k[f]);if(Q){f=k[f]={};for(let ee in Q)f[ee]=R(Q[ee])}return wl(k,o),k}(e,t,o=>Ml(o,n,i)),Go(e,32|(r?2:0)),e}function Zo(e){let t=e.l,r=et(t);return 2&r?Ko(e,t,r,!1):e}function Yr(e,t){return hi(e=e.l,et(e),t)}function hi(e,t,r,i){if(r===-1)return null;if(r>=Zn(t)){if(256&t)return e[e.length-1][r]}else{var n=e.length;if(i&&256&t&&(i=e[n-1][r])!=null)return i;if((t=r+(+!!(512&t)-1))<n)return e[t]}}function It(e,t,r,i){let n=e.l,o=et(n);return Wr(o),vt(n,o,t,r,i),e}function vt(e,t,r,i,n){var o=Zn(t);if(r>=o||n){if(n=t,256&t)o=e[e.length-1];else{if(i==null)return n;o=e[o+(+!!(512&t)-1)]={},n|=256}return o[r]=i,n!==t&&_t(e,n),n}return e[r+(+!!(512&t)-1)]=i,256&t&&r in(e=e[e.length-1])&&delete e[r],t}function Wa(e,t,r,i,n){var o=2&t;let f=hi(e,t,r,n);Array.isArray(f)||(f=Ci);let R=!(2&i);i=!(1&i);let k=!!(32&t),F=wt(f);return F!==0||!k||o||R?1&F||(F|=1,_t(f,F)):(F|=33,_t(f,F)),o?(e=!1,2&F||(Go(f,34),e=!!(4&F)),(i||e)&&Object.freeze(f)):(o=!!(2&F)||!!(2048&F),i&&o?(f=er(f),i=1,k&&!R&&(i|=32),_t(f,i),vt(e,t,r,f,n)):R&&32&F&&!o&&xo(f,32)),f}function Il(e){e=e.l;let t=et(e),r=hi(e,t,1),i=Al(r,!0,!!(34&t));return i!=null&&i!==r&&vt(e,t,1,i),i}function Cl(e,t){return e=hi(e,t,1),Array.isArray(e)?e:Ci}function Ol(e,t,r){return e===0&&(e=Ni(e,t,r)),Bt(e,1,!0)}function Ha(e){return!!(2&e)&&!!(4&e)||!!(2048&e)}function U1(e,t,r){{let f=e.l,R=et(f);if(Wr(R),r==null)vt(f,R,t);else{var i,n=e=wt(r),o=!!(2&e)||Object.isFrozen(r);if((i=!o)&&(i=!1),!(4&e))for(e=21,o&&(r=er(r),n=0,e=Ni(e,R,!0)),o=0;o<r.length;o++)r[o]=xl(r[o]);i&&(r=er(r),n=0,e=Ni(e,R,!0)),e!==n&&_t(r,e),vt(f,R,t,r)}}}function Pl(e,t){e=e.l;let r=et(e);Wr(r),vt(e,r,2,t===""?void 0:t)}function Ll(e,t,r,i){let n=et(e);Wr(n),e=Wa(e,n,t,2),i=r(i,!!(4&(t=wt(e)))&&!!(4096&t)),e.push(i)}function td(e){return e}function vo(e,t){return Qo(e=e.l,et(e),Sc)===t?t:-1}function Qo(e,t,r){let i=0;for(let n=0;n<r.length;n++){let o=r[n];hi(e,t,o)!=null&&(i!==0&&(t=vt(e,t,i)),i=o)}return i}function Jo(e,t,r,i){let n=et(e);Wr(n);let o=hi(e,n,r,i),f;if(o!=null&&o.C===$a)return(t=Zo(o))!==o&&vt(e,n,r,t,i),t.l;if(Array.isArray(o)){let R=wt(o);f=2&R?Bl(o,R,!1):o,f=za(f,t[0],t[1])}else f=za(void 0,t[0],t[1]);return f!==o&&vt(e,n,r,f,i),f}function Nl(e,t,r,i){e=e.l;let n=et(e),o=hi(e,n,r,i);return(t=gl(o,t,n))!==o&&t!=null&&vt(e,n,r,t,i),t}function wr(e,t,r){if((t=Nl(e,t,r,!1))==null)return t;e=e.l;let i=et(e);if(!(2&i)){let n=Zo(t);n!==t&&vt(e,i,r,t=n,!1)}return t}function Fl(e,t,r,i,n){var o=!!(2&t),f=o?1:2;let R=f===1;f=f===2,i=!!i,n&&=!o,o=Cl(e,t);var k=wt(o);let F=!!(4&k);if(!F){var Q,ee=o,Ee=t;(Q=!!(2&(k=Ol(k,t,i))))&&(Ee=Bt(Ee,2,!0));let Ie=!Q,pe=!0,Te=0,te=0;for(;Te<ee.length;Te++){let Ue=gl(ee[Te],r,Ee);if(Ue instanceof r){if(!Q){let De=!!(2&wt(Ue.l));Ie&&=!De,pe&&=De}ee[te++]=Ue}}te<Te&&(ee.length=te),k=Bt(k,4,!0),k=Bt(k,16,pe),k=Bt(k,8,Ie),_t(ee,k),Q&&Object.freeze(ee)}if(r=!!(8&k)||R&&!o.length,n&&!r){for(Ha(k)&&(o=er(o),k=Ni(k,t,i),t=vt(e,t,1,o)),n=o,r=k,ee=0;ee<n.length;ee++)(k=n[ee])!==(Ee=Zo(k))&&(n[ee]=Ee);r=Bt(r,8,!0),r=Bt(r,16,!n.length),_t(n,r),k=r}return Ha(k)||(n=k,R?k=Bt(k,!o.length||16&k&&(!F||32&k)?2:2048,!0):i||(k=Bt(k,32,!1)),k!==n&&_t(o,k),R&&Object.freeze(o)),f&&Ha(k)&&(o=er(o),k=Ni(k,t,i),_t(o,k),vt(e,t,1,o)),o}function e0(e,t){e=e.l;let r=et(e);return Fl(e,r,t,!1,!(2&r))}function Rr(e,t,r,i,n){return i==null&&(i=void 0),It(e,r,i,n)}function bo(e,t,r){var i=_c;r==null&&(r=void 0),e=e.l;let n=et(e);Wr(n),(i=Qo(e,n,i))&&i!==t&&r!=null&&(n=vt(e,n,i)),vt(e,n,t,r)}function Ni(e,t,r){return e=Bt(e,2,!!(2&t)),e=Bt(e,32,!!(32&t)&&r),Bt(e,2048,!1)}function Dl(e,t){var r=ys;e=e.l;let i=et(e);Wr(i),e=Fl(e,i,r,!0),t=t??new r,e.push(t),2&wt(t.l)?xo(e,8):xo(e,16)}function Mo(e){return(e=Yr(e,2))==null?e:$o(e)?typeof e=="number"?Rl(e):El(e):void 0}function Vl(e){return e??0}function Xt(e,t,r){Ll(e.l,t,xl,r)}function Hl(e,t,r){t.g?t.j(e,t.g,t.i,r,!0):t.j(e,t.i,r,!0)}var ht=class{constructor(e,t){this.l=za(e,t)}toJSON(){return Ul(this,Wo(this.l,ed,void 0,void 0,!1,!1),!0)}A(){return!!(2&wt(this.l))}};function Ul(e,t,r){let i=e.constructor.v;var n=et(r?e.l:t),o=Zn(n),f=!1;if(i&&Sl){if(!r){var R;if((t=er(t)).length&&Va(R=t[t.length-1])){for(f=0;f<i.length;f++)if(i[f]>=o){Object.assign(t[t.length-1]={},R);break}}f=!0}var k;o=t,r=!r,e=Zn(R=et(e.l)),R=+!!(512&R)-1;for(let te=0;te<i.length;te++){var F=i[te];if(F<e){var Q=o[F+=R];Q==null?o[F]=r?Ci:L1():r&&Q!==Ci&&P1(Q)}else{if(!k){var ee=void 0;o.length&&Va(ee=o[o.length-1])?k=ee:o.push(k={})}Q=k[F],k[F]==null?k[F]=r?Ci:L1():r&&Q!==Ci&&P1(Q)}}}if(!(k=t.length))return t;let Ee,Ie;if(Va(ee=t[k-1])){e:{var pe=ee;for(var Te in o={},r=!1,pe)e=pe[Te],Array.isArray(e)&&(R=e,(!T1&&To(e,i,+Te)||!g1&&N1(e)&&e.size===0)&&(e=null),e!=R&&(r=!0)),e!=null?o[Te]=e:r=!0;if(r){for(let te in o){pe=o;break e}pe=null}}pe!=ee&&(Ee=!0),k--}for(n=+!!(512&n)-1;0<k&&((ee=t[Te=k-1])==null||!T1&&To(ee,i,Te-n)||!g1&&N1(ee)&&ee.size===0);k--)Ie=!0;return(Ee||Ie)&&(t=f?t:Array.prototype.slice.call(t,0,k),f&&(t.length=k),pe&&t.push(pe)),t}function jl(e){return Array.isArray(e)?e[0]instanceof Lr?e:[hd,e]:[e,void 0]}function ms(e,t){if(Array.isArray(t)){var r=wt(t);if(4&r)return t;for(var i=0,n=0;i<t.length;i++){let o=e(t[i]);o!=null&&(t[n++]=o)}return n<i&&(t.length=n),_t(t,-12289&(5|r)),2&r&&Object.freeze(t),t}}ht.prototype.C=$a,ht.prototype.toString=function(){return Ul(this,this.l,!1).toString()};var j1=Symbol();function t0(e){let t=e[j1];if(!t){let r=zl(e),i=i0(e),n=i.g;t=n?(o,f)=>n(o,f,i):(o,f)=>{for(;bl(f)&&f.i!=4;){var R=f.m,k=i[R];if(!k){var F=i.K;F&&(F=F[R])&&(k=i[R]=rd(F))}k&&k(f,o,R)||(R=(k=f).j,Xn(k),k.J?k=void 0:(F=k.g.g-R,k.g.g=R,k=vl(k.g,F)),R=o,k&&(ui||=Symbol(),(F=R[ui])?F.push(k):R[ui]=[k]))}r===ql||r===Xl||r.T||(o[Xa||=Symbol()]=r)},e[j1]=t}return t}function rd(e){let t=(e=jl(e))[0].g;if(e=e[1]){let r=t0(e),i=i0(e).B;return(n,o,f)=>t(n,o,f,i,r)}return t}var ql,Xl,zn=Symbol();function id(e,t,r){let i=r[1],n;if(i){let o=i[zn];n=o?o.B:es(i[0]),e[t]=o??i}n&&n===Yo?(e.L||(e.L=[])).push(t):r[0]&&(e.M||(e.M=[])).push(t)}function q1(e,t){return[e.j,!t||0<t[0]?void 0:t]}function zl(e){var t=e[zn];if(t)return t;if(!(t=r0(e,e[zn]={},q1,q1,id)).M&&!t.L){let r=!0;for(let i in t){isNaN(i)||(r=!1);break}r?(t=es(e[0])===Yo,t=e[zn]=t?Xl||={B:es(!0)}:ql||={}):t.T=!0}return t}function ad(e,t,r){e[t]=r}function r0(e,t,r,i,n=ad){t.B=es(e[0]);let o=0;var f=e[++o];f&&f.constructor===Object&&(t.K=f,typeof(f=e[++o])=="function"&&(t.g=f,t.i=e[++o],f=e[++o]));let R={};for(;Array.isArray(f)&&typeof f[0]=="number"&&0<f[0];){for(var k=0;k<f.length;k++)R[f[k]]=f;f=e[++o]}for(k=1;f!==void 0;){let ee;typeof f=="number"&&(k+=f,f=e[++o]);var F=void 0;if(f instanceof Lr?ee=f:(ee=fd,o--),ee.N){f=e[++o],F=e;var Q=o;typeof f=="function"&&(f=f(),F[Q]=f),F=f}for(Q=k+1,typeof(f=e[++o])=="number"&&0>f&&(Q-=f,f=e[++o]);k<Q;k++){let Ee=R[k];n(t,k,F?i(ee,F,Ee):r(ee,Ee))}}return t}var X1=Symbol();function Gl(e){let t=e[X1];if(!t){let r=_s(e);t=(i,n)=>$l(i,n,r),e[X1]=t}return t}var Gn=Symbol();function nd(e){return e.i}function sd(e,t){let r,i,n=e.i;return(o,f,R)=>n(o,f,R,i||=_s(t).B,r||=Gl(t))}function _s(e){let t=e[Gn];return t||(t=r0(e,e[Gn]={},nd,sd),$n in e&&Gn in e&&(e.length=0),t)}var $n=Symbol();function od(e,t){let r=e.g;return t?(i,n,o)=>r(i,n,o,t):r}function ld(e,t,r){let i=e.g,n,o;return(f,R,k)=>i(f,R,k,o||=i0(t).B,n||=t0(t),r)}function i0(e){let t=e[$n];return t||(zl(e),t=r0(e,e[$n]={},od,ld),$n in e&&Gn in e&&(e.length=0),t)}function z1(e,t){var r=e[t];if(r)return r;if((r=e.K)&&(r=r[t])){var i=(r=jl(r))[0].i;if(r=r[1]){let n=Gl(r),o=_s(r).B;r=(r=e.i)?r(o,n):(f,R,k)=>i(f,R,k,o,n)}else r=i;return e[t]=r}}function $l(e,t,r){for(var i=et(e),n=+!!(512&i)-1,o=e.length,f=512&i?1:0,R=o+(256&i?-1:0);f<R;f++){let k=e[f];if(k==null)continue;let F=f-n,Q=z1(r,F);Q&&Q(t,k,F)}if(256&i){i=e[o-1];for(let k in i)n=+k,Number.isNaN(n)||(o=i[k])!=null&&(R=z1(r,n))&&R(t,o,n)}if(e=ui?e[ui]:void 0)for(da(t,t.g.end()),r=0;r<e.length;r++)da(t,Po(e[r])||ls())}function zt(e,t){return new Lr(e,t,!1,!1)}function ps(e,t){return new Lr(e,t,!0,!1)}function Gt(e,t,r){vt(e,et(e),t,r)}function Yl(e,t,r){e:if(t!=null){if($o(t)){if(typeof t=="string"){t=El(t);break e}if(typeof t=="number"){t=Rl(t);break e}}t=void 0}t!=null&&(typeof t=="string"&&C1(t),t!=null&&(Fr(e,r,0),typeof t=="number"?(e=e.g,la(t),Wn(e,dt,At)):(r=C1(t),Wn(e.g,r.i,r.g))))}function Wl(e,t,r){(t=Li(t))!=null&&t!=null&&(Fr(e,r,0),hs(e.g,t))}function Kl(e,t,r){(t=t==null||typeof t=="boolean"?t:typeof t=="number"?!!t:void 0)!=null&&(Fr(e,r,0),e.g.g.push(t?1:0))}function Zl(e,t,r){(t=Pi(t))!=null&&fs(e,r,il(t))}function vs(e,t,r,i,n){(t=t instanceof ht?t.l:Array.isArray(t)?za(t,i[0],i[1]):void 0)!=null&&(r=Xo(e,r),n(t,e),zo(e,r))}function Ql(e,t,r){(t=t==null||typeof t=="string"||os(t)||t instanceof ci?t:void 0)!=null&&fs(e,r,No(t).buffer)}var dr,cd=zt(function(e,t,r){if(e.i!==1)return!1;var i=e.g;e=Ro(i);let n=Ro(i);i=2*(n>>31)+1;let o=n>>>20&2047;return e=4294967296*(1048575&n)+e,Gt(t,r,o==2047?e?NaN:1/0*i:o==0?i*Math.pow(2,-1074)*e:i*Math.pow(2,o-1075)*(e+4503599627370496)),!0},function(e,t,r){(t=Ya(t))!=null&&(Fr(e,r,1),e=e.g,(r=ml||=new DataView(new ArrayBuffer(8))).setFloat64(0,+t,!0),dt=r.getUint32(0,!0),At=r.getUint32(4,!0),Kn(e,dt),Kn(e,At))}),Jl=zt(function(e,t,r){return e.i===5&&(Gt(t,r,Eo(e.g)),!0)},function(e,t,r){(t=Ya(t))!=null&&(Fr(e,r,5),e=e.g,_l(t),Kn(e,dt))}),ud=ps(function(e,t,r){return(e.i===5||e.i===2)&&(t=Wa(t,et(t),r,2,!1),e.i==2?qo(e,Eo,t):t.push(Eo(e.g)),!0)},function(e,t,r){if((t=ms(Ya,t))!=null&&t.length){Fr(e,r,2),ds(e.g,4*t.length);for(let i=0;i<t.length;i++)r=e.g,_l(t[i]),Kn(r,dt)}}),ts=zt(function(e,t,r){return e.i===0&&(Gt(t,r,Ho(e.g,Do)),!0)},Yl),yo=zt(function(e,t,r){return e.i===0&&(Gt(t,r,(e=Ho(e.g,Do))===0?void 0:e),!0)},Yl),dd=zt(function(e,t,r){return e.i===0&&(Gt(t,r,Ho(e.g,wo)),!0)},function(e,t,r){e:if(t!=null){if($o(t)){if(typeof t=="string"){var i=Math.trunc(Number(t));Number.isSafeInteger(i)&&0<=i?t=String(i):((i=t.indexOf("."))!==-1&&(t=t.substring(0,i)),H1(t)||(cs(t),t=Yn(dt,At)));break e}if(typeof t=="number"){t=0<=(t=Math.trunc(t))&&Number.isSafeInteger(t)?t:function(n){if(0>n){la(n);let o=Yn(dt,At);return n=Number(o),Number.isSafeInteger(n)?n:o}return H1(String(n))?n:(la(n),wo(dt,At))}(t);break e}}t=void 0}t!=null&&(typeof t=="string"&&B1(t),t!=null&&(Fr(e,r,0),typeof t=="number"?(e=e.g,la(t),Wn(e,dt,At)):(r=B1(t),Wn(e.g,r.i,r.g))))}),fi=zt(function(e,t,r){return e.i===0&&(Gt(t,r,Jt(e.g)),!0)},Wl),ec=ps(function(e,t,r){return(e.i===0||e.i===2)&&(t=Wa(t,et(t),r,2,!1),e.i==2?qo(e,Jt,t):t.push(Jt(e.g)),!0)},function(e,t,r){if((t=ms(Li,t))!=null&&t.length){r=Xo(e,r);for(let i=0;i<t.length;i++)hs(e.g,t[i]);zo(e,r)}}),ha=zt(function(e,t,r){return e.i===0&&(Gt(t,r,(e=Jt(e.g))===0?void 0:e),!0)},Wl),Nr=zt(function(e,t,r){return e.i===0&&(Gt(t,r,Uo(e.g)),!0)},Kl),Ua=zt(function(e,t,r){return e.i===0&&(Gt(t,r,(e=Uo(e.g))===!1?void 0:e),!0)},Kl),Er=ps(function(e,t,r){return e.i===2&&(Ll(t,r,td,e=jo(e)),!0)},function(e,t,r){if((t=ms(Pi,t))!=null)for(let f=0;f<t.length;f++){var i=e,n=r,o=t[f];o!=null&&fs(i,n,il(o))}}),di=zt(function(e,t,r){return e.i===2&&(Gt(t,r,(e=jo(e))===""?void 0:e),!0)},Zl),Ot=zt(function(e,t,r){return e.i===2&&(Gt(t,r,jo(e)),!0)},Zl),hd=new Lr(function(e,t,r,i,n){return e.i===2&&(us(e,Jo(t,i,r,!0),n),!0)},vs,!1,!0),fd=new Lr(function(e,t,r,i,n){return e.i===2&&(us(e,Jo(t,i,r),n),!0)},vs,!1,!0);dr=new Lr(function(e,t,r,i,n){if(e.i!==2)return!1;i=za(void 0,i[0],i[1]);let o=et(t);Wr(o);let f=Wa(t,o,r,3);return o=et(t),4&wt(f)&&(f=er(f),_t(f,-2079&(1|wt(f))),vt(t,o,r,f)),f.push(i),us(e,i,n),!0},function(e,t,r,i,n){if(Array.isArray(t))for(let o=0;o<t.length;o++)vs(e,t[o],r,i,n)},!0,!0);var hr=new Lr(function(e,t,r,i,n,o){if(e.i!==2)return!1;let f=et(t);return Wr(f),(o=Qo(t,f,o))&&r!==o&&vt(t,f,o),us(e,t=Jo(t,i,r),n),!0},vs,!1,!0),tc=zt(function(e,t,r){return e.i===2&&(Gt(t,r,yl(e)),!0)},Ql),Ga=zt(function(e,t,r){return e.i===0&&(Gt(t,r,Jt(e.g)),!0)},function(e,t,r){(t=Li(t))!=null&&(t=parseInt(t,10),Fr(e,r,0),hs(e.g,t))}),md=ps(function(e,t,r){return(e.i===0||e.i===2)&&(t=Wa(t,et(t),r,2,!1),e.i==2?qo(e,$2,t):t.push(Jt(e.g)),!0)},function(e,t,r){if((t=ms(Li,t))!=null&&t.length){r=Xo(e,r);for(let i=0;i<t.length;i++)hs(e.g,t[i]);zo(e,r)}}),rs=class{constructor(t,r){this.i=t,this.g=r,this.j=Rr,this.defaultValue=void 0}};function rc(e,t){return(r,i)=>{e:{if(jn.length){let o=jn.pop();o.s(i),po(o.g,r,i),r=o}else r=new class{constructor(o,f){if(k1.length){let R=k1.pop();po(R,o,f),o=R}else o=new class{constructor(R,k){this.i=null,this.m=!1,this.g=this.j=this.u=0,po(this,R,k)}clear(){this.i=null,this.m=!1,this.g=this.j=this.u=0,this.F=!1}}(o,f);this.g=o,this.j=this.g.g,this.i=this.m=-1,this.s(f)}s({J:o=!1}={}){this.J=o}}(r,i);try{let o=new e,f=o.l;t0(t)(f,r),Xa&&delete f[Xa];var n=o;break e}finally{r.g.clear(),r.m=-1,r.i=-1,100>jn.length&&jn.push(r)}n=void 0}return n}}var ic=[0,di,zt(function(e,t,r){return e.i===2&&(Gt(t,r,(e=yl(e))===ua()?void 0:e),!0)},function(e,t,r){if(t!=null){if(t instanceof ht){let i=t.X;return void(i&&(t=i(t),t!=null&&fs(e,r,No(t).buffer)))}if(Array.isArray(t))return}Ql(e,t,r)})],_d=[0,Ot],ac=[0,fi,Ga,Nr,-1,ec,Ga,-1],pd=[0,Nr,-1],nc=class extends ht{constructor(){super()}};nc.v=[6];var sc=[0,Nr,Ot,Nr,Ga,-1,md,Ot,-1,pd,Ga],oc=[0,Ot,-2],G1=class extends ht{constructor(){super()}},lc=[0],cc=[0,fi,Nr,-2],uc=class extends ht{constructor(e){super(e,2)}},bs={},vd=[-2,bs,Nr];bs[336783863]=[0,Ot,Nr,-1,fi,[0,[1,2,3,4,5],hr,lc,hr,sc,hr,oc,hr,cc,hr,ac],_d];var bd=[0,di,Ua],dc=[0,yo,-1,Ua,-3,yo,ec,di,ha,yo,-1,Ua,ha,Ua,-2,di],Ka=[-1,{}],hc=[0,Ot,1,Ka],fc=[0,Ot,Er,Ka],ys=class extends ht{constructor(e){super(e,500)}s(e){return Rr(this,0,7,e)}};ys.v=[3,4,5,6,8,13,17,1005];var $1,yd=[-500,di,-1,Er,-3,vd,dr,ic,ha,-1,hc,fc,dr,bd,di,dc,ha,Er,987,Er],Sd=[0,di,-1,Ka],Ad=[-500,Ot,-1,[-1,{}],998,Ot],wd=[-500,Ot,Er,-1,[-2,{},Nr],997,Er,-1],Rd=[-500,Ot,Er,Ka,998,Er],is=class extends ht{constructor(){super(void 0,500)}s(e){return Rr(this,0,1001,e)}};is.v=[1,6,7,9,10,15,16,17,14,1002],is.prototype.g=($1=[-500,dr,yd,4,dr,Ad,dr,wd,ha,dr,Rd,Er,ha,hc,fc,dr,Sd,Er,-2,dc,di,-1,Ua,979,Ka,dr,ic],function(){let e=new class{constructor(){this.j=[],this.i=0,this.g=new class{constructor(){this.g=[]}length(){return this.g.length}end(){let o=this.g;return this.g=[],o}}}};$l(this.l,e,_s($1)),da(e,e.g.end());let t=new Uint8Array(e.i),r=e.j,i=r.length,n=0;for(let o=0;o<i;o++){let f=r[o];t.set(f,n),n+=f.length}return e.j=[t],t});var Ed=class extends ht{constructor(e){super(e)}},xd=[0,fi,Jl,Ot,-1],mc=class extends ht{constructor(e){super(e)}g(){return e0(this,Ed)}};mc.v=[1];var gd=[0,dr,xd],ko=class extends ht{constructor(e){super(e)}};ko.v=[4,5];var Y1=class extends ht{constructor(e){super(e)}},_c=[1,2,3,4,5],as=class extends ht{constructor(e){super(e)}g(){return Il(this)!=null}i(){return Pi(Yr(this,2))!=null}},ns=class extends ht{constructor(e){super(e)}},pc=[0,[0,tc,Ot,[0,fi,ts,-1],[0,dd,ts]],Nr,[0,_c,hr,cc,hr,sc,hr,ac,hr,lc,hr,oc],Ga],vc=class extends ht{constructor(e){super(e)}},Td=new rs(451755788,vc);bs[451755788]=[0,pc,[0,Ot,fi,Jl,Er,-1],cd];var W1=class extends ht{constructor(e){super(e)}},bc=class extends ht{constructor(e){super(e)}},Md=new rs(487277289,bc);bs[487277289]=[0,pc,[0,Nr,-1]];var kd=class extends ht{constructor(e){super(e)}},Bd=[0,1,fi,Ot,gd],yc=class extends ht{constructor(e){super(e)}};yc.v=[1];var Id=rc(yc,[0,dr,Bd,ts]),Bo=class extends ht{constructor(e){super(e)}};Bo.v=[1];var Cd=class extends ht{constructor(e){super(e)}O(){let e=Il(this);return e??ua()}},Od=class extends ht{constructor(e){super(e)}},Sc=[1,2],Pd=[0,Sc,hr,[0,ud],hr,[0,tc],fi,Ot],Ac=class extends ht{constructor(e){super(e)}};Ac.v=[1];var K1=rc(Ac,[0,dr,Pd,ts]);async function Z1(e){if(typeof importScripts!="function"){let t=document.createElement("script");return t.src=e.toString(),t.crossOrigin="anonymous",new Promise((r,i)=>{t.addEventListener("load",()=>{r()},!1),t.addEventListener("error",n=>{i(n)},!1),document.body.appendChild(t)})}importScripts(e.toString())}function He(e,t,r){e.m||console.error("No wasm multistream support detected: ensure dependency inclusion of :gl_graph_runner_internal_multi_input target"),r(t=e.h.stringToNewUTF8(t)),e.h._free(t)}function Q1(e,t,r){e.m||console.error("No wasm multistream support detected: ensure dependency inclusion of :gl_graph_runner_internal_multi_input target");let i=new Uint32Array(t.length);for(let n=0;n<t.length;n++)i[n]=e.h.stringToNewUTF8(t[n]);t=e.h._malloc(4*i.length),e.h.HEAPU32.set(i,t>>2),r(t);for(let n of i)e.h._free(n);e.h._free(t)}function Ii(e,t,r){e.h.simpleListeners=e.h.simpleListeners||{},e.h.simpleListeners[t]=r}function na(e,t,r){let i=[];e.h.simpleListeners=e.h.simpleListeners||{},e.h.simpleListeners[t]=(n,o,f)=>{o?(r(i,f),i=[]):i.push(n)}}var Ld=function(e){return class extends e{U(){this.h._registerModelResourcesGraphService()}}}(class{constructor(e,t){this.j=!0,this.h=e,this.g=null,this.i=0,this.m=typeof this.h._addIntToInputStream=="function",t!==void 0?this.h.canvas=t:((e=typeof OffscreenCanvas>"u")||(e=(e=navigator.userAgent).includes("Safari")&&!e.includes("Chrome")),e?(console.warn("OffscreenCanvas not supported and GraphRunner constructor glCanvas parameter is undefined. Creating backup canvas."),this.h.canvas=document.createElement("canvas")):this.h.canvas=new OffscreenCanvas(1,1))}async initializeGraph(e){let t=await(await fetch(e)).arrayBuffer();e=!(e.endsWith(".pbtxt")||e.endsWith(".textproto")),this.setGraph(new Uint8Array(t),e)}setGraphFromString(e){this.setGraph(new TextEncoder().encode(e),!1)}setGraph(e,t){let r=e.length,i=this.h._malloc(r);this.h.HEAPU8.set(e,i),t?this.h._changeBinaryGraph(r,i):this.h._changeTextGraph(r,i),this.h._free(i)}configureAudio(e,t,r,i,n){this.h._configureAudio||console.warn('Attempting to use configureAudio without support for input audio. Is build dep ":gl_graph_runner_audio" missing?'),He(this,i||"input_audio",o=>{He(this,n=n||"audio_header",f=>{this.h._configureAudio(o,f,e,t,r)})})}setAutoResizeCanvas(e){this.j=e}setAutoRenderToScreen(e){this.h._setAutoRenderToScreen(e)}setGpuBufferVerticalFlip(e){this.h.gpuOriginForWebTexturesIsBottomLeft=e}attachErrorListener(e){this.h.errorListener=e}attachEmptyPacketListener(e,t){this.h.emptyPacketListeners=this.h.emptyPacketListeners||{},this.h.emptyPacketListeners[e]=t}addAudioToStream(e,t,r){this.addAudioToStreamWithShape(e,0,0,t,r)}addAudioToStreamWithShape(e,t,r,i,n){let o=4*e.length;this.i!==o&&(this.g&&this.h._free(this.g),this.g=this.h._malloc(o),this.i=o),this.h.HEAPF32.set(e,this.g/4),He(this,i,f=>{this.h._addAudioToInputStream(this.g,t,r,f,n)})}addGpuBufferToStream(e,t,r){He(this,t,i=>{if(!this.h.canvas)throw Error("No OpenGL canvas configured.");i?this.h._bindTextureToStream(i):this.h._bindTextureToCanvas();var n=this.h.canvas.getContext("webgl2")||this.h.canvas.getContext("webgl");if(!n)throw Error("Failed to obtain WebGL context from the provided canvas. `getContext()` should only be invoked with `webgl` or `webgl2`.");let o;this.h.gpuOriginForWebTexturesIsBottomLeft&&n.pixelStorei(n.UNPACK_FLIP_Y_WEBGL,!0),n.texImage2D(n.TEXTURE_2D,0,n.RGBA,n.RGBA,n.UNSIGNED_BYTE,e),this.h.gpuOriginForWebTexturesIsBottomLeft&&n.pixelStorei(n.UNPACK_FLIP_Y_WEBGL,!1),e.videoWidth?(n=e.videoWidth,o=e.videoHeight):e.naturalWidth?(n=e.naturalWidth,o=e.naturalHeight):(n=e.width,o=e.height),!this.j||n===this.h.canvas.width&&o===this.h.canvas.height||(this.h.canvas.width=n,this.h.canvas.height=o);let[f,R]=[n,o];this.h._addBoundTextureToStream(i,f,R,r)})}addBoolToStream(e,t,r){He(this,t,i=>{this.h._addBoolToInputStream(e,i,r)})}addDoubleToStream(e,t,r){He(this,t,i=>{this.h._addDoubleToInputStream(e,i,r)})}addFloatToStream(e,t,r){He(this,t,i=>{this.h._addFloatToInputStream(e,i,r)})}addIntToStream(e,t,r){He(this,t,i=>{this.h._addIntToInputStream(e,i,r)})}addStringToStream(e,t,r){He(this,t,i=>{He(this,e,n=>{this.h._addStringToInputStream(n,i,r)})})}addStringRecordToStream(e,t,r){He(this,t,i=>{Q1(this,Object.keys(e),n=>{Q1(this,Object.values(e),o=>{this.h._addFlatHashMapToInputStream(n,o,Object.keys(e).length,i,r)})})})}addProtoToStream(e,t,r,i){He(this,r,n=>{He(this,t,o=>{let f=this.h._malloc(e.length);this.h.HEAPU8.set(e,f),this.h._addProtoToInputStream(f,e.length,o,n,i),this.h._free(f)})})}addEmptyPacketToStream(e,t){He(this,e,r=>{this.h._addEmptyPacketToInputStream(r,t)})}addBoolVectorToStream(e,t,r){He(this,t,i=>{let n=this.h._allocateBoolVector(e.length);if(!n)throw Error("Unable to allocate new bool vector on heap.");for(let o of e)this.h._addBoolVectorEntry(n,o);this.h._addBoolVectorToInputStream(n,i,r)})}addDoubleVectorToStream(e,t,r){He(this,t,i=>{let n=this.h._allocateDoubleVector(e.length);if(!n)throw Error("Unable to allocate new double vector on heap.");for(let o of e)this.h._addDoubleVectorEntry(n,o);this.h._addDoubleVectorToInputStream(n,i,r)})}addFloatVectorToStream(e,t,r){He(this,t,i=>{let n=this.h._allocateFloatVector(e.length);if(!n)throw Error("Unable to allocate new float vector on heap.");for(let o of e)this.h._addFloatVectorEntry(n,o);this.h._addFloatVectorToInputStream(n,i,r)})}addIntVectorToStream(e,t,r){He(this,t,i=>{let n=this.h._allocateIntVector(e.length);if(!n)throw Error("Unable to allocate new int vector on heap.");for(let o of e)this.h._addIntVectorEntry(n,o);this.h._addIntVectorToInputStream(n,i,r)})}addStringVectorToStream(e,t,r){He(this,t,i=>{let n=this.h._allocateStringVector(e.length);if(!n)throw Error("Unable to allocate new string vector on heap.");for(let o of e)He(this,o,f=>{this.h._addStringVectorEntry(n,f)});this.h._addStringVectorToInputStream(n,i,r)})}addBoolToInputSidePacket(e,t){He(this,t,r=>{this.h._addBoolToInputSidePacket(e,r)})}addDoubleToInputSidePacket(e,t){He(this,t,r=>{this.h._addDoubleToInputSidePacket(e,r)})}addFloatToInputSidePacket(e,t){He(this,t,r=>{this.h._addFloatToInputSidePacket(e,r)})}addIntToInputSidePacket(e,t){He(this,t,r=>{this.h._addIntToInputSidePacket(e,r)})}addStringToInputSidePacket(e,t){He(this,t,r=>{He(this,e,i=>{this.h._addStringToInputSidePacket(i,r)})})}addProtoToInputSidePacket(e,t,r){He(this,r,i=>{He(this,t,n=>{let o=this.h._malloc(e.length);this.h.HEAPU8.set(e,o),this.h._addProtoToInputSidePacket(o,e.length,n,i),this.h._free(o)})})}addBoolVectorToInputSidePacket(e,t){He(this,t,r=>{let i=this.h._allocateBoolVector(e.length);if(!i)throw Error("Unable to allocate new bool vector on heap.");for(let n of e)this.h._addBoolVectorEntry(i,n);this.h._addBoolVectorToInputSidePacket(i,r)})}addDoubleVectorToInputSidePacket(e,t){He(this,t,r=>{let i=this.h._allocateDoubleVector(e.length);if(!i)throw Error("Unable to allocate new double vector on heap.");for(let n of e)this.h._addDoubleVectorEntry(i,n);this.h._addDoubleVectorToInputSidePacket(i,r)})}addFloatVectorToInputSidePacket(e,t){He(this,t,r=>{let i=this.h._allocateFloatVector(e.length);if(!i)throw Error("Unable to allocate new float vector on heap.");for(let n of e)this.h._addFloatVectorEntry(i,n);this.h._addFloatVectorToInputSidePacket(i,r)})}addIntVectorToInputSidePacket(e,t){He(this,t,r=>{let i=this.h._allocateIntVector(e.length);if(!i)throw Error("Unable to allocate new int vector on heap.");for(let n of e)this.h._addIntVectorEntry(i,n);this.h._addIntVectorToInputSidePacket(i,r)})}addStringVectorToInputSidePacket(e,t){He(this,t,r=>{let i=this.h._allocateStringVector(e.length);if(!i)throw Error("Unable to allocate new string vector on heap.");for(let n of e)He(this,n,o=>{this.h._addStringVectorEntry(i,o)});this.h._addStringVectorToInputSidePacket(i,r)})}attachBoolListener(e,t){Ii(this,e,t),He(this,e,r=>{this.h._attachBoolListener(r)})}attachBoolVectorListener(e,t){na(this,e,t),He(this,e,r=>{this.h._attachBoolVectorListener(r)})}attachIntListener(e,t){Ii(this,e,t),He(this,e,r=>{this.h._attachIntListener(r)})}attachIntVectorListener(e,t){na(this,e,t),He(this,e,r=>{this.h._attachIntVectorListener(r)})}attachDoubleListener(e,t){Ii(this,e,t),He(this,e,r=>{this.h._attachDoubleListener(r)})}attachDoubleVectorListener(e,t){na(this,e,t),He(this,e,r=>{this.h._attachDoubleVectorListener(r)})}attachFloatListener(e,t){Ii(this,e,t),He(this,e,r=>{this.h._attachFloatListener(r)})}attachFloatVectorListener(e,t){na(this,e,t),He(this,e,r=>{this.h._attachFloatVectorListener(r)})}attachStringListener(e,t){Ii(this,e,t),He(this,e,r=>{this.h._attachStringListener(r)})}attachStringVectorListener(e,t){na(this,e,t),He(this,e,r=>{this.h._attachStringVectorListener(r)})}attachProtoListener(e,t,r){Ii(this,e,t),He(this,e,i=>{this.h._attachProtoListener(i,r||!1)})}attachProtoVectorListener(e,t,r){na(this,e,t),He(this,e,i=>{this.h._attachProtoVectorListener(i,r||!1)})}attachAudioListener(e,t,r){this.h._attachAudioListener||console.warn('Attempting to use attachAudioListener without support for output audio. Is build dep ":gl_graph_runner_audio_out" missing?'),Ii(this,e,(i,n)=>{i=new Float32Array(i.buffer,i.byteOffset,i.length/4),t(i,n)}),He(this,e,i=>{this.h._attachAudioListener(i,r||!1)})}finishProcessing(){this.h._waitUntilIdle()}closeGraph(){this.h._closeGraph(),this.h.simpleListeners=void 0,this.h.emptyPacketListeners=void 0}}),wc=class extends Ld{};async function Nd(e,t,r){return e=await(async(i,n,o,f)=>{if(n&&await Z1(n),!self.ModuleFactory||o&&(await Z1(o),!self.ModuleFactory))throw Error("ModuleFactory not set.");return self.Module&&f&&((n=self.Module).locateFile=f.locateFile,f.mainScriptUrlOrBlob&&(n.mainScriptUrlOrBlob=f.mainScriptUrlOrBlob)),f=await self.ModuleFactory(self.Module||f),self.ModuleFactory=self.Module=void 0,new i(f,null)})(e,t.wasmLoaderPath,t.assetLoaderPath,{locateFile:i=>i.endsWith(".wasm")?t.wasmBinaryPath.toString():t.assetBinaryPath&&i.endsWith(".data")?t.assetBinaryPath.toString():i}),await e.s(r),e}async function Rc(e,t,r){return Nd(e,t,r)}function J1(e,t){let r=wr(e.baseOptions,as,1)||new as;typeof t=="string"?(It(r,2,Qn(t)),It(r,1)):t instanceof Uint8Array&&(It(r,1,Al(t,!1,!1)),It(r,2)),Rr(e.baseOptions,0,1,r)}function Ec(e,t){let r=t.baseOptions||{};if(t.baseOptions?.modelAssetBuffer&&t.baseOptions?.modelAssetPath)throw Error("Cannot set both baseOptions.modelAssetPath and baseOptions.modelAssetBuffer");if(!(wr(e.baseOptions,as,1)?.g()||wr(e.baseOptions,as,1)?.i()||t.baseOptions?.modelAssetBuffer||t.baseOptions?.modelAssetPath))throw Error("Either baseOptions.modelAssetPath or baseOptions.modelAssetBuffer must be set");return function(i,n){let o=wr(i.baseOptions,Y1,3);if(!o){var f=o=new Y1;bo(f,4,new G1)}"delegate"in n&&(n.delegate==="GPU"?bo(n=o,2,f=new nc):bo(n=o,4,f=new G1)),Rr(i.baseOptions,0,3,o)}(e,r),r.modelAssetPath?fetch(r.modelAssetPath.toString()).then(i=>{if(i.ok)return i.arrayBuffer();throw Error(`Failed to fetch model: ${r.modelAssetPath} (${i.status})`)}).then(i=>{try{e.g.h.FS_unlink("/model.dat")}catch{}e.g.h.FS_createDataFile("/","model.dat",new Uint8Array(i),!0,!1,!1),J1(e,"/model.dat"),e.I()}):(J1(e,r.modelAssetBuffer),e.I(),Promise.resolve())}function el(e){try{let t=e.j.length;if(t===1)throw Error(e.j[0].message);if(1<t)throw Error("Encountered multiple errors: "+e.j.map(r=>r.message).join(", "))}finally{e.j=[]}}function sa(e,t){e.u=Math.max(e.u,t)}var Io=class{constructor(e){this.g=e,this.j=[],this.u=0,this.g.setAutoRenderToScreen(!1)}setGraph(e,t){this.g.attachErrorListener((r,i)=>{this.j.push(Error(i))}),this.g.U(),this.g.setGraph(e,t),el(this)}finishProcessing(){this.g.finishProcessing(),el(this)}close(){this.g.closeGraph()}};async function ja(e,t,r){return Rc(e,t,r)}Io.prototype.close=Io.prototype.close;var ss=class extends Io{constructor(){super(...arguments),this.H=48e3}V(e){this.H=e}};function Fd(e){let t={classifications:e0(e,kd).map(r=>function(i,n=-1,o=""){return{categories:i.map(f=>{var R=Li(Yr(f,1))??0??-1;let k=f.l,F=et(k),Q=hi(k,F,2),ee=Ya(Q);return ee!=null&&ee!==Q&&vt(k,F,2,ee),{index:R,score:ee??0??0,categoryName:Pi(Yr(f,3))??""??"",displayName:Pi(Yr(f,4))??""??""}}),headIndex:n,headName:o}}(wr(r,mc,4)?.g()??[],Li(Yr(r,2))??0,Pi(Yr(r,3))??""))};return Mo(e)!=null&&(t.timestampMs=Vl(Mo(e))),t}ss.prototype.setDefaultSampleRate=ss.prototype.V;var cr=class extends ss{constructor(e,t){super(new wc(e,t)),this.m=[],Rr(e=this.i=new vc,0,1,t=new ns)}get baseOptions(){return wr(this.i,ns,1)}set baseOptions(e){Rr(this.i,0,1,e)}s(e){var t=this.i,r=wr(this.i,ko,2);if(r=r?kl(r):new ko,e.displayNamesLocale!==void 0?It(r,1,Qn(e.displayNamesLocale)):e.displayNamesLocale===void 0&&It(r,1),e.maxResults!==void 0){var i=e.maxResults;if(i!=null){if(typeof i!="number"||!Number.isFinite(i))throw D1();i|=0}It(r,2,i)}else"maxResults"in e&&It(r,2);if(e.scoreThreshold!==void 0){if((i=e.scoreThreshold)!=null&&typeof i!="number")throw Error(`Value of float/double field must be a number, found ${typeof i}: ${i}`);It(r,3,i)}else"scoreThreshold"in e&&It(r,3);return e.categoryAllowlist!==void 0?U1(r,4,e.categoryAllowlist):"categoryAllowlist"in e&&It(r,4),e.categoryDenylist!==void 0?U1(r,5,e.categoryDenylist):"categoryDenylist"in e&&It(r,5),Rr(t,0,2,r),Ec(this,e)}R(e,t){return this.G(e,t??this.H,this.u+1)}G(e,t,r){return this.g.addDoubleToStream(t,"sample_rate",r),this.g.addAudioToStreamWithShape(e,1,e.length,"audio_in",r),this.m=[],this.finishProcessing(),[...this.m]}I(){var e=new is;Xt(e,10,"audio_in"),Xt(e,10,"sample_rate"),Xt(e,15,"timestamped_classifications");let t=new uc;Hl(t,Td,this.i);let r=new ys;Pl(r,Qn("mediapipe.tasks.audio.audio_classifier.AudioClassifierGraph")),Xt(r,3,"AUDIO:audio_in"),Xt(r,3,"SAMPLE_RATE:sample_rate"),Xt(r,4,"TIMESTAMPED_CLASSIFICATIONS:timestamped_classifications"),r.s(t),Dl(e,r),this.g.attachProtoVectorListener("timestamped_classifications",(i,n)=>{(function(o,f){f.forEach(R=>{R=Id(R),o.m.push(Fd(R))})})(this,i),sa(this,n)}),this.g.attachEmptyPacketListener("timestamped_classifications",i=>{sa(this,i)}),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};function tl(e){return{embeddings:e0(e,Od).map(t=>{let r={headIndex:Li(Yr(t,3))??0??-1,headName:Pi(Yr(t,4))??""??""};if(Nl(t,Bo,vo(t,1))!==void 0){var i=void 0;t=wr(t,Bo,vo(t,1)).l;let R=et(t),k=2&R?1:2;i=!!i;let F=Cl(t,R);var n=wt(F);if(!(4&n)){(4&n||Object.isFrozen(F))&&(F=er(F),n=Ni(n,R,i),R=vt(t,R,1,F));for(var o=0,f=0;o<F.length;o++){let Q=Ya(F[o]);Q!=null&&(F[f++]=Q)}f<o&&(F.length=f),n=Bt(n=Ol(n,R,i),20,!0),n=Bt(n,4096,!1),n=Bt(n,8192,!1),_t(F,n),2&n&&Object.freeze(F)}Ha(n)||(o=n,(f=k===1)?n=Bt(n,2,!0):i||(n=Bt(n,32,!1)),n!==o&&_t(F,n),f&&Object.freeze(F)),k===2&&Ha(n)&&(F=er(F),n=Ni(n,R,i),_t(F,n),vt(t,R,1,F)),r.floatEmbedding=F}else i=new Uint8Array(0),r.quantizedEmbedding=wr(t,Cd,vo(t,2))?.O()?.P()??i;return r}),timestampMs:Vl(Mo(e))}}cr.prototype.classify=cr.prototype.R,cr.prototype.setOptions=cr.prototype.s,cr.createFromModelPath=function(e,t){return Rc(cr,e,{baseOptions:{modelAssetPath:t}})},cr.createFromModelBuffer=function(e,t){return ja(cr,e,{baseOptions:{modelAssetBuffer:t}})},cr.createFromOptions=function(e,t){return ja(cr,e,t)};var Or=class extends ss{constructor(e,t){super(new wc(e,t)),this.m=[],Rr(e=this.i=new bc,0,1,t=new ns)}get baseOptions(){return wr(this.i,ns,1)}set baseOptions(e){Rr(this.i,0,1,e)}s(e){var t=this.i,r=wr(this.i,W1,2);return r=r?kl(r):new W1,e.l2Normalize!==void 0?It(r,1,V1(e.l2Normalize)):"l2Normalize"in e&&It(r,1),e.quantize!==void 0?It(r,2,V1(e.quantize)):"quantize"in e&&It(r,2),Rr(t,0,2,r),Ec(this,e)}S(e,t){return this.G(e,t??this.H,this.u+1)}G(e,t,r){return this.g.addDoubleToStream(t,"sample_rate",r),this.g.addAudioToStreamWithShape(e,1,e.length,"audio_in",r),this.m=[],this.finishProcessing(),this.m}I(){var e=new is;Xt(e,10,"audio_in"),Xt(e,10,"sample_rate"),Xt(e,15,"embeddings_out"),Xt(e,15,"timestamped_embeddings_out");let t=new uc;Hl(t,Md,this.i);let r=new ys;Pl(r,Qn("mediapipe.tasks.audio.audio_embedder.AudioEmbedderGraph")),Xt(r,3,"AUDIO:audio_in"),Xt(r,3,"SAMPLE_RATE:sample_rate"),Xt(r,4,"EMBEDDINGS:embeddings_out"),Xt(r,4,"TIMESTAMPED_EMBEDDINGS:timestamped_embeddings_out"),r.s(t),Dl(e,r),this.g.attachProtoListener("embeddings_out",(i,n)=>{i=K1(i),this.m.push(tl(i)),sa(this,n)}),this.g.attachEmptyPacketListener("embeddings_out",i=>{sa(this,i)}),this.g.attachProtoVectorListener("timestamped_embeddings_out",(i,n)=>{for(let o of i)i=K1(o),this.m.push(tl(i));sa(this,n)}),this.g.attachEmptyPacketListener("timestamped_embeddings_out",i=>{sa(this,i)}),e=e.g(),this.setGraph(new Uint8Array(e),!0)}},qn;Or.prototype.embed=Or.prototype.S,Or.prototype.setOptions=Or.prototype.s,Or.createFromModelPath=function(e,t){return ja(Or,e,{baseOptions:{modelAssetPath:t}})},Or.createFromModelBuffer=function(e,t){return ja(Or,e,{baseOptions:{modelAssetBuffer:t}})},Or.createFromOptions=function(e,t){return ja(Or,e,t)};var Dd=new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11]);async function xc(){if(qn===void 0)try{await WebAssembly.instantiate(Dd),qn=!0}catch{qn=!1}return qn}async function So(e,t=""){let r=await xc()?"wasm_internal":"wasm_nosimd_internal";return{wasmLoaderPath:`${t}/${e}_${r}.js`,wasmBinaryPath:`${t}/${e}_${r}.wasm`}}var oa=class{};oa.forVisionTasks=function(e){return So("vision",e)},oa.forTextTasks=function(e){return So("text",e)},oa.forAudioTasks=function(e){return So("audio",e)},oa.isSimdSupported=function(){return xc()};var Ss=class{constructor(t,r,i,n,o,f,R){this.recordingInProgress=!1;this.recordIndex=1;this.countLoopTimes=0;this.examStartTime=0;this.recordingStartTime=0;this.recordingEndTime=0;this.isSpeech=!1;this.optionsProctoring=t,this.proctoringSession=r,this.paramsConfig=i,this.cameraRecorder=n,this.onRealtimeAlertsCallback=o,this.backend=f,this.backendToken=R}setProctoringId(t){this.proctoringId=t,this.proctoringId&&this.backend&&(this.upload=new $r(this.proctoringId,this.backend))}async startRecording(){this.examStartTime=Date.now(),this.audioRecorder=new aa(this.paramsConfig.audioBehaviourParameters),this.intervalNoiseDetection=setInterval(()=>this.onNoiseDetectedRecord(),200)}async stopRecording(){clearInterval(this.intervalNoiseDetection),await this.stopSoundRecord(),await this.volumeMeter.stop(),this.scriptProcessor&&this.scriptProcessor.disconnect()}async pauseRecording(){}async resumeRecording(){}async saveOnSession(t){}async onNoiseDetectedRecord(){!this.volumeMeter&&this.cameraRecorder.cameraStream&&(this.volumeMeter=new si(this.cameraRecorder.cameraStream),this.volumeMeter.start().catch(i=>{console.log(i),this.volumeMeter=void 0}));let t=this.paramsConfig.audioBehaviourParameters?.noiseLimit||40,r=this.volumeMeter?.getVolume()||0;this.recordingInProgress||(t=t+t*.25),r>=t&&!this.recordingInProgress?(this.recordingInProgress=!0,this.audioRecorder.startRecording(),this.recordingStartTime=Date.now()-this.examStartTime):r<t&&this.recordingInProgress&&(Date.now()-this.recordingStartTime>=3e3&&this.countLoopTimes>4&&(await this.stopSoundRecord(),this.recordingInProgress=!1,this.recordIndex++,this.countLoopTimes=0,this.isSpeech=!1),this.countLoopTimes++)}async stopSoundRecord(){if(await this.audioRecorder.stopRecording(),this.recordingEndTime=Date.now()-this.examStartTime,!this.isSpeech)return;let t=new File(this.audioRecorder.blobs,`EP_${this.proctoringSession.id}_${this.recordingStartTime}_${this.recordingEndTime}_${this.isSpeech?"speech":"noise"}.mp3`,{type:"audio/mp3"});this.uploadRecord(t),this.audioRecorder.blobs=[]}download(t){let r=URL.createObjectURL(t),i=document.createElement("a");document.body.appendChild(i),i.style.display="none",i.href=r,i.download=t.name,i.click(),window.URL.revokeObjectURL(r)}uploadRecord(t){t&&this.upload&&this.backendToken&&this.upload.upload({file:t},this.backendToken)}hasDesiredResult(t){if(t==null)return!1;for(let r of t)return r.name.toLowerCase().includes("speech");return!1}async createAudioClassifier(){let t=await oa.forAudioTasks("https://cdn.jsdelivr.net/npm/@mediapipe/tasks-audio@0.10.0/wasm");this.audioClassifier=await cr.createFromOptions(t,{scoreThreshold:.15,maxResults:1,baseOptions:{modelAssetPath:"https://storage.googleapis.com/mediapipe-models/audio_classifier/yamnet/float32/1/yamnet.tflite"}})}async streamingAudioClassification(){let t=new AudioContext({sampleRate:16e3}),r=t.createMediaStreamSource(this.cameraRecorder.cameraStream);this.scriptProcessor=t.createScriptProcessor(16384,1,1);let i=this;this.scriptProcessor.onaudioprocess=function(n){let f=n.inputBuffer.getChannelData(0),R=i.audioClassifier.classify(f),k=R[0].classifications[0].categories;R[0].classifications[0].categories.length>0&&(i.audioClassificationResult=[{name:k[0].categoryName,score:k[0].score.toFixed(3)}])},r.connect(this.scriptProcessor),this.scriptProcessor.connect(t.destination)}};var As=class{constructor(t){this.blobs=[];this.blobsFinal=[];this.options=t}setProctoringId(t){this.proctoringId=t}async startRecording(){this.startTime=new Date(Date.now());let{allowOnlyFirstMonitor:t,allowMultipleMonitors:r,onStopSharingScreenCallback:i,onBufferSizeErrorCallback:n}=this.options,o={video:{cursor:"always",width:854,height:480,displaySurface:"monitor"},audio:!1};this.screenStream=await navigator.mediaDevices.getDisplayMedia(o);let f=this.screenStream.getVideoTracks();if(f[0].onended=i,navigator.userAgent.indexOf("Firefox")>-1){let Ie=f.find(pe=>pe.label=="");if(Ie&&t||Ie&&!r)throw On}let k=f.find(Ie=>["screen:0:0","Primary Monitor"].includes(Ie.label))!=null,F=f.find(Ie=>["screen:0:0","Primary Monitor",""].includes(Ie.label)||["screen:"].some(pe=>Ie.label.includes(pe)))!=null,Q=f.find(Ie=>["web-contents-media-stream","window"].some(pe=>Ie.label.includes(pe)))!=null;if(!k&&t)throw f.forEach(Ie=>{Ie.stop()}),l1;if(!F||Q)throw f.forEach(Ie=>{Ie.stop()}),c1;let{startRecording:ee,stopRecording:Ee}=Ta(this.screenStream,this.blobs,this.proctoringId,this.options.onBufferSizeError,n);this.recordingStart=ee,this.recordingStop=Ee,this.recordingStart()}async pauseRecording(){}async resumeRecording(){}async stopRecording(){this.recordingStop&&await this.recordingStop()}async saveOnSession(t){t.addRecording({device:"",file:new File(this.blobs,`EP_${t.id}_screen_0.webm`,{type:"video/webm"}),origin:"Screen"})}};var Za=class{constructor(t,r){this.dbName="EasyProctorDb";this.dbVersion=2;this.storeName="exams2";this.dbName=t,this.storeName=r}async save(t){let{transaction:r,store:i}=await this.connectToStore("readwrite");return this.processRequest(i.put(t),r).then(()=>{})}async delete(t){let{transaction:r,store:i}=await this.connectToStore("readwrite");return this.processRequest(i.delete(t),r)}async get(t){let{transaction:r,store:i}=await this.connectToStore("readwrite");return this.processRequest(i.get(t),r).catch(()=>{})}async getDevices(t){let{transaction:r,store:i}=await this.connectToStore("readwrite");return this.processRequest(i.get(t),r).catch(()=>{})}async list(){let{transaction:t,store:r}=await this.connectToStore("readonly");return this.processRequest(r.getAll(),t)}async clear(){let{transaction:t,store:r}=await this.connectToStore("readwrite");return this.processRequest(r.clear(),t)}async processRequest(t,r){return new Promise((i,n)=>{t.onerror=o=>{n(t.error?.message)},t.onsuccess=o=>{r.commit(),i(t.result)}})}async hasSessions(){return(await this.list()).length>0}async connectToStore(t){let n=(await this.connect()).result.transaction(this.storeName,t),o=n.objectStore(this.storeName);return{transaction:n,store:o}}async connect(){return this.connection?this.connection:new Promise((t,r)=>{let i=window.indexedDB.open(this.dbName,this.dbVersion);i.onerror=n=>{r("Can't connect to IndexedDB")},i.onupgradeneeded=n=>{let o=i.result;o.onerror=f=>{},o.createObjectStore(this.storeName,{keyPath:"id"})},i.onsuccess=n=>{this.connection=i,t(i)}})}};function gc(){let e=navigator.userAgent,t;return e.match(/chrome|chromium|crios/i)?t="chrome":e.match(/firefox|fxios/i)?t="firefox":e.match(/safari/i)?t="safari":e.match(/opr\//i)?t="opera":e.match(/edg/i)?t="edge":t="No browser detection",t}function Tc(){return new Promise((e,t)=>{window.navigator.geolocation.getCurrentPosition(e,t)})}function Qa(){let e=window.navigator.userAgent.split("SEB/");return e.length>1?e[1]:"1.0.0.0"}var ws=class{constructor(t,r){this.cpf=t,this.backend=r,this.capturePhoto=new ea}async login(){let t=await this.capturePhoto.takePicture("Login com biometria facial","Encaixe seu rosto no formato e clique no bot\xE3o abaixo",{width:1080,height:720});return this.loading(),new Promise((r,i)=>{this.backend.loginAuth(this.cpf,t.base64.substr(22,t.base64.length)).then(n=>{this.token=n.token,document.querySelector("#authLoader")?.remove(),this.backend.token=this.token,r(this.token)}).catch(n=>{console.log(n),document.querySelector("#authLoader")?.remove(),i(n)})})}loading(){let t=document.createElement("div");t.setAttribute("id","authLoader"),t.style.backgroundColor="rgba(0,0,0,0.4)",t.style.zIndex="1000",t.style.position="fixed",t.style.top="0",t.style.left="0",t.style.height="100vh",t.style.width="100%",t.style.display="flex",t.style.alignItems="center",t.style.justifyContent="center";let r=document.createElement("div");r.setAttribute("class","loader"),t.appendChild(r),document.body.appendChild(t);let i=`
221
+ Size: ${t.file.size}`,s),n}}throw new Error("Could not upload")}};var Mn=class{constructor(t,r,i){this.alerts=[];this.onLostFocusCallback=t.onLostFocusCallback,this.onFocusCallback=t.onFocusCallback,this.optionsProctoring=r,this.cameraRecorder=i}async startRecording(){this.startTime=new Date(Date.now()),this.optionsProctoring.captureScreen&&(window.addEventListener("blur",()=>this.onLostFocus()),window.addEventListener("focus",()=>this.onReturnFocus()))}async pauseRecording(){window.removeEventListener("blur",()=>this.onLostFocus()),window.removeEventListener("focus",()=>this.onReturnFocus())}async resumeRecording(){this.optionsProctoring.captureScreen&&(window.addEventListener("blur",()=>this.onLostFocus()),window.addEventListener("focus",()=>this.onReturnFocus()))}async stopRecording(){window.removeEventListener("blur",()=>this.onLostFocus()),window.removeEventListener("focus",()=>this.onReturnFocus())}async saveOnSession(t){this.alerts.forEach(r=>{t.addAlert(r)})}onLostFocus(){Date.now()-this.startTime?.getTime()>1e4&&(this.onLostFocusCallback(),this.alerts.push({begin:Date.now()-this.startTime.getTime(),end:0,alert:25}))}onReturnFocus(){let t=this.alerts[this.alerts.length-1];t&&(this.onFocusCallback(),t.end=Date.now()-this.startTime.getTime())}};var Ln=class{constructor(t,r){this.blobs=[];this.options={cameraId:void 0,microphoneId:void 0};this.audioParams={recordingBitrate:128};r&&(this.audioParams=r),t&&(this.options=t)}async startRecording(){let t={audio:{deviceId:this.options.microphoneId||"default"}};this.audioStream=await navigator.mediaDevices.getUserMedia(t);let{startRecording:r,stopRecording:i,pauseRecording:o,resumeRecording:n}=ar(this.audioStream,this.blobs,void 0,void 0,void 0,!0);this.recordingStart=r,this.recordingStop=i,this.recordingPause=o,this.recordingResume=n,this.recordingStart()}async pauseRecording(){}async resumeRecording(){}async stopRecording(){await this.recordingStop()}async saveOnSession(t,r,i){t.addRecording({device:"",file:new File(this.blobs,`EP_${t.id}_audio_${r&&i&&`${r}_${i}`||"0"}.webm`,{type:"audio/webm"}),origin:"Mic"})}};var Tc=typeof self<"u"?self:{};function Yp(e,t){e:{for(var r=["CLOSURE_FLAGS"],i=Tc,o=0;o<r.length;o++)if((i=i[r[o]])==null){r=null;break e}r=i}return(e=r&&r[e])!=null?e:t}function mr(){throw Error("Invalid UTF8")}function yp(e,t){return t=String.fromCharCode.apply(null,t),e==null?t:e+t}var Un,cc,q0=typeof TextDecoder<"u",$0,X0=typeof TextEncoder<"u";function Zp(e){if(X0)e=($0||=new TextEncoder).encode(e);else{let r=0,i=new Uint8Array(3*e.length);for(let o=0;o<e.length;o++){var t=e.charCodeAt(o);if(128>t)i[r++]=t;else{if(2048>t)i[r++]=t>>6|192;else{if(55296<=t&&57343>=t){if(56319>=t&&o<e.length){let n=e.charCodeAt(++o);if(56320<=n&&57343>=n){t=1024*(t-55296)+n-56320+65536,i[r++]=t>>18|240,i[r++]=t>>12&63|128,i[r++]=t>>6&63|128,i[r++]=63&t|128;continue}o--}t=65533}i[r++]=t>>12|224,i[r++]=t>>6&63|128}i[r++]=63&t|128}}e=r===i.length?i:i.subarray(0,r)}return e}var Zi,Qp=Yp(610401301,!1),xc=Yp(572417392,!0),vp=Tc.navigator;function mc(e){return!!Qp&&!!Zi&&Zi.brands.some(({brand:t})=>t&&t.indexOf(e)!=-1)}function Je(e){var t;return(t=Tc.navigator)&&(t=t.userAgent)||(t=""),t.indexOf(e)!=-1}function tr(){return!!Qp&&!!Zi&&0<Zi.brands.length}function lc(){return tr()?mc("Chromium"):(Je("Chrome")||Je("CriOS"))&&!(!tr()&&Je("Edge"))||Je("Silk")}Zi=vp&&vp.userAgentData||null;var K0=!tr()&&(Je("Trident")||Je("MSIE"));!Je("Android")||lc(),lc(),Je("Safari")&&(lc()||!tr()&&Je("Coast")||!tr()&&Je("Opera")||!tr()&&Je("Edge")||(tr()?mc("Microsoft Edge"):Je("Edg/"))||tr()&&mc("Opera"));var ef={},$i=null;function J0(e){var t=e.length,r=3*t/4;r%3?r=Math.floor(r):"=.".indexOf(e[t-1])!=-1&&(r="=.".indexOf(e[t-2])!=-1?r-2:r-1);var i=new Uint8Array(r),o=0;return function(n,s){function a(g){for(;c<n.length;){var h=n.charAt(c++),m=$i[h];if(m!=null)return m;if(!/^[\s\xa0]*$/.test(h))throw Error("Unknown base64 encoding at char: "+h)}return g}tf();for(var c=0;;){var l=a(-1),u=a(0),d=a(64),f=a(64);if(f===64&&l===-1)break;s(l<<2|u>>4),d!=64&&(s(u<<4&240|d>>2),f!=64&&s(d<<6&192|f))}}(e,function(n){i[o++]=n}),o!==r?i.subarray(0,o):i}function tf(){if(!$i){$i={};for(var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),t=["+/=","+/","-_=","-_.","-_"],r=0;5>r;r++){var i=e.concat(t[r].split(""));ef[r]=i;for(var o=0;o<i.length;o++){var n=i[o];$i[n]===void 0&&($i[n]=o)}}}}var rf=typeof Uint8Array<"u",of=!K0&&typeof btoa=="function";function bp(e){if(!of){var t;t===void 0&&(t=0),tf(),t=ef[t];var r=Array(Math.floor(e.length/3)),i=t[64]||"";let c=0,l=0;for(;c<e.length-2;c+=3){var o=e[c],n=e[c+1],s=e[c+2],a=t[o>>2];o=t[(3&o)<<4|n>>4],n=t[(15&n)<<2|s>>6],s=t[63&s],r[l++]=a+o+n+s}switch(a=0,s=i,e.length-c){case 2:s=t[(15&(a=e[c+1]))<<2]||i;case 1:e=e[c],r[l]=t[e>>2]+t[(3&e)<<4|a>>4]+s+i}return r.join("")}for(t="",r=0,i=e.length-10240;r<i;)t+=String.fromCharCode.apply(null,e.subarray(r,r+=10240));return t+=String.fromCharCode.apply(null,r?e.subarray(r):e),btoa(t)}var wp=/[-_.]/g,Y0={"-":"+",_:"/",".":"="};function Z0(e){return Y0[e]||""}function nf(e){if(!of)return J0(e);wp.test(e)&&(e=e.replace(wp,Z0)),e=atob(e);let t=new Uint8Array(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}function os(e){return rf&&e!=null&&e instanceof Uint8Array}var Q0;function ns(){return Q0||=new Uint8Array(0)}var ri={},eg;function sf(e){if(e!==ri)throw Error("illegal external caller")}function ii(){return eg||=new rr(null,ri)}function Cc(e){sf(ri);var t=e.D;return(t=t==null||os(t)?t:typeof t=="string"?nf(t):null)==null?t:e.D=t}var rr=class{constructor(e,t){if(sf(t),this.D=e,e!=null&&e.length===0)throw Error("ByteString should be constructed with non-empty values")}P(){let e=Cc(this);return e?new Uint8Array(e):ns()}};function af(e,t){return Error(`Invalid wire type: ${e} (at position ${t})`)}function Rc(){return Error("Failed to read varint, encoding is invalid.")}function cf(e,t){return Error(`Tried to read past the end of the data ${t} > ${e}`)}function lf(e){return e.length==0?ii():new rr(e,ri)}function Pc(e){if(typeof e=="string")return{buffer:nf(e),A:!1};if(Array.isArray(e))return{buffer:new Uint8Array(e),A:!1};if(e.constructor===Uint8Array)return{buffer:e,A:!1};if(e.constructor===ArrayBuffer)return{buffer:new Uint8Array(e),A:!1};if(e.constructor===rr)return{buffer:Cc(e)||ns(),A:!0};if(e instanceof Uint8Array)return{buffer:new Uint8Array(e.buffer,e.byteOffset,e.byteLength),A:!1};throw Error("Type not convertible to a Uint8Array, expected a Uint8Array, an ArrayBuffer, a base64 encoded string, a ByteString or an Array of numbers")}function Ic(){return typeof BigInt=="function"}var Sp=!xc,Ep=!xc,tg=typeof Uint8Array.prototype.slice=="function",uf,H=0,te=0;function ti(e){let t=0>e,r=(e=Math.abs(e))>>>0;if(e=Math.floor((e-r)/4294967296),t){let[i,o]=Dc(r,e);e=o,r=i}H=r>>>0,te=e>>>0}function df(e){let t=uf||=new DataView(new ArrayBuffer(8));t.setFloat32(0,+e,!0),te=0,H=t.getUint32(0,!0)}function gc(e,t){return 4294967296*t+(e>>>0)}function Oc(e,t){let r=2147483648&t;return r&&(t=~t>>>0,(e=1+~e>>>0)==0&&(t=t+1>>>0)),e=gc(e,t),r?-e:e}function Wn(e,t){if(e>>>=0,2097151>=(t>>>=0))var r=""+(4294967296*t+e);else Ic()?r=""+(BigInt(t)<<BigInt(32)|BigInt(e)):(e=(16777215&e)+6777216*(r=16777215&(e>>>24|t<<8))+6710656*(t=t>>16&65535),r+=8147497*t,t*=2,1e7<=e&&(r+=Math.floor(e/1e7),e%=1e7),1e7<=r&&(t+=Math.floor(r/1e7),r%=1e7),r=t+_p(r)+_p(e));return r}function _p(e){return e=String(e),"0000000".slice(e.length)+e}function ss(e){if(16>e.length)ti(Number(e));else if(Ic())e=BigInt(e),H=Number(e&BigInt(4294967295))>>>0,te=Number(e>>BigInt(32)&BigInt(4294967295));else{let t=+(e[0]==="-");te=H=0;let r=e.length;for(let i=t,o=(r-t)%6+t;o<=r;i=o,o+=6){let n=Number(e.slice(i,o));te*=1e6,H=1e6*H+n,4294967296<=H&&(te+=Math.trunc(H/4294967296),te>>>=0,H>>>=0)}if(t){let[i,o]=Dc(H,te);H=i,te=o}}}function Dc(e,t){return t=~t,e?e=1+~e:t+=1,[e,t]}function Fc(e,t){let r,i=0,o=0,n=0,s=e.i,a=e.g;do r=s[a++],i|=(127&r)<<n,n+=7;while(32>n&&128&r);for(32<n&&(o|=(127&r)>>4),n=3;32>n&&128&r;n+=7)r=s[a++],o|=(127&r)<<n;if(vr(e,a),128>r)return t(i>>>0,o>>>0);throw Rc()}function Bc(e){let t=0,r=e.g,i=r+10,o=e.i;for(;r<i;){let n=o[r++];if(t|=n,(128&n)==0)return vr(e,r),!!(127&t)}throw Rc()}function Le(e){let t=e.i,r=e.g,i=t[r++],o=127&i;if(128&i&&(i=t[r++],o|=(127&i)<<7,128&i&&(i=t[r++],o|=(127&i)<<14,128&i&&(i=t[r++],o|=(127&i)<<21,128&i&&(i=t[r++],o|=i<<28,128&i&&128&t[r++]&&128&t[r++]&&128&t[r++]&&128&t[r++]&&128&t[r++])))))throw Rc();return vr(e,r),o}function yc(e){var t=e.i;let r=e.g,i=t[r],o=t[r+1],n=t[r+2];return t=t[r+3],vr(e,e.g+4),(i<<0|o<<8|n<<16|t<<24)>>>0}function vc(e){var t=yc(e);e=2*(t>>31)+1;let r=t>>>23&255;return t&=8388607,r==255?t?NaN:1/0*e:r==0?e*Math.pow(2,-149)*t:e*Math.pow(2,r-150)*(t+Math.pow(2,23))}function rg(e){return Le(e)}function uc(e,t,{F:r=!1}={}){e.F=r,t&&(t=Pc(t),e.i=t.buffer,e.m=t.A,e.u=0,e.j=e.i.length,e.g=e.u)}function vr(e,t){if(e.g=t,t>e.j)throw cf(e.j,t)}function hf(e,t){if(0>t)throw Error(`Tried to read a negative byte length: ${t}`);let r=e.g,i=r+t;if(i>e.j)throw cf(t,e.j-r);return e.g=i,r}function pf(e,t){if(t==0)return ii();var r=hf(e,t);return e.F&&e.m?r=e.i.subarray(r,r+t):(e=e.i,r=r===(t=r+t)?ns():tg?e.slice(r,t):new Uint8Array(e.subarray(r,t))),lf(r)}var kp=[];function ff(e){var t=e.g;if(t.g==t.j)return!1;e.j=e.g.g;var r=Le(e.g)>>>0;if(t=r>>>3,!(0<=(r&=7)&&5>=r))throw af(r,e.j);if(1>t)throw Error(`Invalid field number: ${t} (at position ${e.j})`);return e.m=t,e.i=r,!0}function Vn(e){switch(e.i){case 0:e.i!=0?Vn(e):Bc(e.g);break;case 1:vr(e=e.g,e.g+8);break;case 2:if(e.i!=2)Vn(e);else{var t=Le(e.g)>>>0;vr(e=e.g,e.g+t)}break;case 5:vr(e=e.g,e.g+4);break;case 3:for(t=e.m;;){if(!ff(e))throw Error("Unmatched start-group tag: stream EOF");if(e.i==4){if(e.m!=t)throw Error("Unmatched end-group tag");break}Vn(e)}break;default:throw af(e.i,e.j)}}function as(e,t,r){let i=e.g.j,o=Le(e.g)>>>0,n=e.g.g+o,s=n-i;if(0>=s&&(e.g.j=n,r(t,e,void 0,void 0,void 0),s=n-e.g.g),s)throw Error(`Message parsing ended unexpectedly. Expected to read ${o} bytes, instead read ${o-s} bytes, either the data ended unexpectedly or the message misreported its own length`);e.g.g=n,e.g.j=i}function Mc(e){var t=Le(e.g)>>>0,r=hf(e=e.g,t);if(e=e.i,q0){var i,o=e;(i=cc)||(i=cc=new TextDecoder("utf-8",{fatal:!0})),t=r+t,o=r===0&&t===o.length?o:o.subarray(r,t);try{var n=i.decode(o)}catch(a){if(Un===void 0){try{i.decode(new Uint8Array([128]))}catch{}try{i.decode(new Uint8Array([97])),Un=!0}catch{Un=!1}}throw!Un&&(cc=void 0),a}}else{t=(n=r)+t,r=[];let a,c=null;for(;n<t;){var s=e[n++];128>s?r.push(s):224>s?n>=t?mr():(a=e[n++],194>s||(192&a)!=128?(n--,mr()):r.push((31&s)<<6|63&a)):240>s?n>=t-1?mr():(a=e[n++],(192&a)!=128||s===224&&160>a||s===237&&160<=a||(192&(i=e[n++]))!=128?(n--,mr()):r.push((15&s)<<12|(63&a)<<6|63&i)):244>=s?n>=t-2?mr():(a=e[n++],(192&a)!=128||a-144+(s<<28)>>30!=0||(192&(i=e[n++]))!=128||(192&(o=e[n++]))!=128?(n--,mr()):(s=(7&s)<<18|(63&a)<<12|(63&i)<<6|63&o,s-=65536,r.push(55296+(s>>10&1023),56320+(1023&s)))):mr(),8192<=r.length&&(c=yp(c,r),r.length=0)}n=yp(c,r)}return n}function mf(e){let t=Le(e.g)>>>0;return pf(e.g,t)}function Lc(e,t,r){var i=Le(e.g)>>>0;for(i=e.g.g+i;e.g.g<i;)r.push(t(e.g))}var Nn=[];function Ap(e){return e?/^\d+$/.test(e)?(ss(e),new Tp(H,te)):null:ig||=new Tp(0,0)}var Tp=class{constructor(e,t){this.i=e>>>0,this.g=t>>>0}},ig;function xp(e){return e?/^-?\d+$/.test(e)?(ss(e),new Cp(H,te)):null:og||=new Cp(0,0)}var Cp=class{constructor(e,t){this.i=e>>>0,this.g=t>>>0}},og;function qn(e,t,r){for(;0<r||127<t;)e.g.push(127&t|128),t=(t>>>7|r<<25)>>>0,r>>>=7;e.g.push(t)}function cs(e,t){for(;127<t;)e.g.push(127&t|128),t>>>=7;e.g.push(t)}function ls(e,t){if(0<=t)cs(e,t);else{for(let r=0;9>r;r++)e.g.push(127&t|128),t>>=7;e.g.push(1)}}function $n(e,t){e.g.push(t>>>0&255),e.g.push(t>>>8&255),e.g.push(t>>>16&255),e.g.push(t>>>24&255)}function oi(e,t){t.length!==0&&(e.j.push(t),e.i+=t.length)}function At(e,t,r){cs(e.g,8*t+r)}function Uc(e,t){return At(e,t,2),t=e.g.end(),oi(e,t),t.push(e.i),t}function Nc(e,t){var r=t.pop();for(r=e.i+e.g.length()-r;127<r;)t.push(127&r|128),r>>>=7,e.i++;t.push(r),e.i++}function us(e,t,r){At(e,t,2),cs(e.g,r.length),oi(e,e.g.end()),oi(e,r)}var Et,_t=class{constructor(t,r,i,o){this.g=t,this.i=r,this.j=i,this.N=o}};function Ue(e){return Array.prototype.slice.call(e)}var jc=(Et=typeof Symbol=="function"&&typeof Symbol()=="symbol"?Symbol():void 0)?(e,t)=>{e[Et]|=t}:(e,t)=>{e.o!==void 0?e.o|=t:Object.defineProperties(e,{o:{value:t,configurable:!0,writable:!0,enumerable:!1}})};function Rp(e){let t=re(e);(1&t)!=1&&(Object.isFrozen(e)&&(e=Ue(e)),J(e,1|t))}var bc=Et?(e,t)=>{e[Et]&=~t}:(e,t)=>{e.o!==void 0&&(e.o&=~t)};function pe(e,t,r){return r?e|t:e&~t}var re=Et?e=>0|e[Et]:e=>0|e.o,O=Et?e=>e[Et]:e=>e.o,J=Et?(e,t)=>{e[Et]=t}:(e,t)=>{e.o!==void 0?e.o=t:Object.defineProperties(e,{o:{value:t,configurable:!0,writable:!0,enumerable:!1}})};function Pp(){var e=[];return jc(e,1),e}function ng(e,t){J(t,-14591&(0|e))}function wc(e,t){J(t,-14557&(34|e))}function Xn(e){return(e=e>>14&1023)===0?536870912:e}var ro={},sg={};function Ip(e){return!(!e||typeof e!="object"||e.W!==sg)}function Xi(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)&&e.constructor===Object}var gf=!xc;function yf(e,t,r){if(e!=null){if(typeof e=="string")e=e?new rr(e,ri):ii();else if(e.constructor!==rr)if(os(e))e=r?lf(e):e.length?new rr(new Uint8Array(e),ri):ii();else{if(!t)throw Error();e=void 0}}return e}function Sc(e,t,r){if(!Array.isArray(e)||e.length)return!1;let i=re(e);return!!(1&i)||!(!t||!(Array.isArray(t)?t.includes(r):t.has(r)))&&(J(e,1|i),!0)}var yr,Op=[];function Mt(e){if(2&e)throw Error()}var ir,Qi;function vf(e,t){(t=ir?t[ir]:void 0)&&(e[ir]=Ue(t))}J(Op,55),yr=Object.freeze(Op);function Dp(){let e=Error("int32");return e.__closure__error__context__984382||(e.__closure__error__context__984382={}),e.__closure__error__context__984382.severity="warning",e}function io(e){return e==null||typeof e=="number"?e:e==="NaN"||e==="Infinity"||e==="-Infinity"?Number(e):void 0}function Fp(e){if(e!=null&&typeof e!="boolean"){var t=typeof e;throw Error(`Expected boolean but got ${t!="object"?t:e?Array.isArray(e)?"array":t:"null"}: ${e}`)}return e}Object.freeze(new class{}),Object.freeze(new class{});var ag=/^-?([1-9][0-9]*|0)(\.[0-9]+)?$/;function Vc(e){let t=typeof e;return t==="number"?Number.isFinite(e):t==="string"&&ag.test(e)}function wr(e){if(e==null)return e;if(typeof e=="string"){if(!e)return;e=+e}return typeof e=="number"&&Number.isFinite(e)?0|e:void 0}function Bp(e){return e[0]!=="-"&&(20>e.length||e.length===20&&184467>Number(e.substring(0,6)))}function bf(e){return e=Math.trunc(e),Number.isSafeInteger(e)||(ti(e),e=Oc(H,te)),e}function wf(e){var t=Math.trunc(Number(e));if(Number.isSafeInteger(t))return String(t);if((t=e.indexOf("."))!==-1&&(e=e.substring(0,t)),!(e[0]==="-"?20>e.length||e.length===20&&-922337<Number(e.substring(0,7)):19>e.length||e.length===19&&922337>Number(e.substring(0,6))))if(ss(e),e=H,2147483648&(t=te))if(Ic())e=""+(BigInt(0|t)<<BigInt(32)|BigInt(e>>>0));else{let[r,i]=Dc(e,t);e="-"+Wn(r,i)}else e=Wn(e,t);return e}function Sf(e){if(typeof e!="string")throw Error();return e}function Kn(e){if(e!=null&&typeof e!="string")throw Error();return e}function br(e){return e==null||typeof e=="string"?e:void 0}function Ef(e,t,r){if(e!=null&&typeof e=="object"&&e.C===ro)return e;if(Array.isArray(e)){var i=re(e),o=i;return o===0&&(o|=32&r),(o|=2&r)!==i&&J(e,o),new t(e)}}var Jn,zc,cg;function Yn(e){switch(typeof e){case"boolean":return zc||=[0,void 0,!0];case"number":return 0<e?void 0:e===0?cg||=[0,void 0]:[-e,void 0];case"string":return[0,e];case"object":return e}}function eo(e,t,r){if(e==null&&(e=Jn),Jn=void 0,e==null){var i=96;r?(e=[r],i|=512):e=[],t&&(i=-16760833&i|(1023&t)<<14)}else{if(!Array.isArray(e))throw Error();if(64&(i=re(e)))return Qi&&delete e[Qi],e;if(i|=64,r&&(i|=512,r!==e[0]))throw Error();e:{let o=(r=e).length;if(o){let n=o-1;if(Xi(r[n])){if(1024<=(t=n-(+!!(512&(i|=256))-1)))throw Error();i=-16760833&i|(1023&t)<<14;break e}}if(t){if(1024<(t=Math.max(t,o-(+!!(512&i)-1))))throw Error();i=-16760833&i|(1023&t)<<14}}}return J(e,i),e}function _f(e,t,r,i,o,n){if(e!=null){if(Array.isArray(e))e=o&&e.length==0&&1&re(e)?void 0:n&&2&re(e)?e:Gc(e,t,r,i!==void 0,o,n);else if(Xi(e)){let s={};for(let a in e)s[a]=_f(e[a],t,r,i,o,n);e=s}else e=t(e,i);return e}}function Gc(e,t,r,i,o,n){let s=i||r?re(e):0;i=i?!!(32&s):void 0;let a=Ue(e);for(let c=0;c<a.length;c++)a[c]=_f(a[c],t,r,i,o,n);return r&&(vf(a,e),r(s,a)),a}function lg(e){return e.C===ro?e.toJSON():function(t){switch(typeof t){case"number":return isFinite(t)?t:String(t);case"boolean":return t?1:0;case"object":if(t){if(Array.isArray(t))return gf||!Sc(t,void 0,9999)?t:void 0;if(os(t))return bp(t);if(t instanceof rr){let r=t.D;return r==null?"":typeof r=="string"?r:t.D=bp(r)}}}return t}(e)}function kf(e,t,r=wc){if(e!=null){if(rf&&e instanceof Uint8Array)return t?e:new Uint8Array(e);if(Array.isArray(e)){var i=re(e);return 2&i?e:(t&&=i===0||!!(32&i)&&!(64&i||!(16&i)),t?(J(e,-12293&(34|i)),e):Gc(e,kf,4&i?wc:r,!0,!1,!0))}return e.C===ro&&(r=e.l,e=2&(i=O(r))?e:Hc(e,r,i,!0)),e}}function Af(e){let t=e.l;return Hc(e,t,O(t),!1)}function Hc(e,t,r,i){return e=e.constructor,Jn=t=Tf(t,r,i),t=new e(t),Jn=void 0,t}function Tf(e,t,r){let i=r||2&t?wc:ng,o=!!(32&t);return e=function(n,s,a){let c=Ue(n);var l=c.length;let u=256&s?c[l-1]:void 0;for(l+=u?-1:0,s=512&s?1:0;s<l;s++)c[s]=a(c[s]);if(u){s=c[s]={};for(let d in u)s[d]=a(u[d])}return vf(c,n),c}(e,t,n=>kf(n,o,i)),jc(e,32|(r?2:0)),e}function Wc(e){let t=e.l,r=O(t);return 2&r?Hc(e,t,r,!1):e}function Bt(e,t){return nr(e=e.l,O(e),t)}function nr(e,t,r,i){if(r===-1)return null;if(r>=Xn(t)){if(256&t)return e[e.length-1][r]}else{var o=e.length;if(i&&256&t&&(i=e[o-1][r])!=null)return i;if((t=r+(+!!(512&t)-1))<o)return e[t]}}function fe(e,t,r,i){let o=e.l,n=O(o);return Mt(n),Y(o,n,t,r,i),e}function Y(e,t,r,i,o){var n=Xn(t);if(r>=n||o){if(o=t,256&t)n=e[e.length-1];else{if(i==null)return o;n=e[n+(+!!(512&t)-1)]={},o|=256}return n[r]=i,o!==t&&J(e,o),o}return e[r+(+!!(512&t)-1)]=i,256&t&&r in(e=e[e.length-1])&&delete e[r],t}function oo(e,t,r,i,o){var n=2&t;let s=nr(e,t,r,o);Array.isArray(s)||(s=yr);let a=!(2&i);i=!(1&i);let c=!!(32&t),l=re(s);return l!==0||!c||n||a?1&l||(l|=1,J(s,l)):(l|=33,J(s,l)),n?(e=!1,2&l||(jc(s,34),e=!!(4&l)),(i||e)&&Object.freeze(s)):(n=!!(2&l)||!!(2048&l),i&&n?(s=Ue(s),i=1,c&&!a&&(i|=32),J(s,i),Y(e,t,r,s,o)):a&&32&l&&!n&&bc(s,32)),s}function xf(e){e=e.l;let t=O(e),r=nr(e,t,1),i=yf(r,!0,!!(34&t));return i!=null&&i!==r&&Y(e,t,1,i),i}function Cf(e,t){return e=nr(e,t,1),Array.isArray(e)?e:yr}function Rf(e,t,r){return e===0&&(e=Sr(e,t,r)),pe(e,1,!0)}function Ki(e){return!!(2&e)&&!!(4&e)||!!(2048&e)}function Mp(e,t,r){{let s=e.l,a=O(s);if(Mt(a),r==null)Y(s,a,t);else{var i,o=e=re(r),n=!!(2&e)||Object.isFrozen(r);if((i=!n)&&(i=!1),!(4&e))for(e=21,n&&(r=Ue(r),o=0,e=Sr(e,a,!0)),n=0;n<r.length;n++)r[n]=Sf(r[n]);i&&(r=Ue(r),o=0,e=Sr(e,a,!0)),e!==o&&J(r,e),Y(s,a,t,r)}}}function Pf(e,t){e=e.l;let r=O(e);Mt(r),Y(e,r,2,t===""?void 0:t)}function If(e,t,r,i){let o=O(e);Mt(o),e=oo(e,o,t,2),i=r(i,!!(4&(t=re(e)))&&!!(4096&t)),e.push(i)}function ug(e){return e}function dc(e,t){return qc(e=e.l,O(e),gm)===t?t:-1}function qc(e,t,r){let i=0;for(let o=0;o<r.length;o++){let n=r[o];nr(e,t,n)!=null&&(i!==0&&(t=Y(e,t,i)),i=n)}return i}function $c(e,t,r,i){let o=O(e);Mt(o);let n=nr(e,o,r,i),s;if(n!=null&&n.C===ro)return(t=Wc(n))!==n&&Y(e,o,r,t,i),t.l;if(Array.isArray(n)){let a=re(n);s=2&a?Tf(n,a,!1):n,s=eo(s,t[0],t[1])}else s=eo(void 0,t[0],t[1]);return s!==n&&Y(e,o,r,s,i),s}function Of(e,t,r,i){e=e.l;let o=O(e),n=nr(e,o,r,i);return(t=Ef(n,t,o))!==n&&t!=null&&Y(e,o,r,t,i),t}function at(e,t,r){if((t=Of(e,t,r,!1))==null)return t;e=e.l;let i=O(e);if(!(2&i)){let o=Wc(t);o!==t&&Y(e,i,r,t=o,!1)}return t}function Df(e,t,r,i,o){var n=!!(2&t),s=n?1:2;let a=s===1;s=s===2,i=!!i,o&&=!n,n=Cf(e,t);var c=re(n);let l=!!(4&c);if(!l){var u,d=n,f=t;(u=!!(2&(c=Rf(c,t,i))))&&(f=pe(f,2,!0));let g=!u,h=!0,m=0,y=0;for(;m<d.length;m++){let b=Ef(d[m],r,f);if(b instanceof r){if(!u){let k=!!(2&re(b.l));g&&=!k,h&&=k}d[y++]=b}}y<m&&(d.length=y),c=pe(c,4,!0),c=pe(c,16,h),c=pe(c,8,g),J(d,c),u&&Object.freeze(d)}if(r=!!(8&c)||a&&!n.length,o&&!r){for(Ki(c)&&(n=Ue(n),c=Sr(c,t,i),t=Y(e,t,1,n)),o=n,r=c,d=0;d<o.length;d++)(c=o[d])!==(f=Wc(c))&&(o[d]=f);r=pe(r,8,!0),r=pe(r,16,!o.length),J(o,r),c=r}return Ki(c)||(o=c,a?c=pe(c,!n.length||16&c&&(!l||32&c)?2:2048,!0):i||(c=pe(c,32,!1)),c!==o&&J(n,c),a&&Object.freeze(n)),s&&Ki(c)&&(n=Ue(n),c=Sr(c,t,i),J(n,c),Y(e,t,1,n)),n}function Xc(e,t){e=e.l;let r=O(e);return Df(e,r,t,!1,!(2&r))}function ct(e,t,r,i,o){return i==null&&(i=void 0),fe(e,r,i,o)}function hc(e,t,r){var i=dm;r==null&&(r=void 0),e=e.l;let o=O(e);Mt(o),(i=qc(e,o,i))&&i!==t&&r!=null&&(o=Y(e,o,i)),Y(e,o,t,r)}function Sr(e,t,r){return e=pe(e,2,!!(2&t)),e=pe(e,32,!!(32&t)&&r),pe(e,2048,!1)}function Ff(e,t){var r=gs;e=e.l;let i=O(e);Mt(i),e=Df(e,i,r,!0),t=t??new r,e.push(t),2&re(t.l)?bc(e,8):bc(e,16)}function Ec(e){return(e=Bt(e,2))==null?e:Vc(e)?typeof e=="number"?bf(e):wf(e):void 0}function Bf(e){return e??0}function Re(e,t,r){If(e.l,t,Sf,r)}function Mf(e,t,r){t.g?t.j(e,t.g,t.i,r,!0):t.j(e,t.i,r,!0)}var W=class{constructor(e,t){this.l=eo(e,t)}toJSON(){return Lf(this,Gc(this.l,lg,void 0,void 0,!1,!1),!0)}A(){return!!(2&re(this.l))}};function Lf(e,t,r){let i=e.constructor.v;var o=O(r?e.l:t),n=Xn(o),s=!1;if(i&&gf){if(!r){var a;if((t=Ue(t)).length&&Xi(a=t[t.length-1])){for(s=0;s<i.length;s++)if(i[s]>=n){Object.assign(t[t.length-1]={},a);break}}s=!0}var c;n=t,r=!r,e=Xn(a=O(e.l)),a=+!!(512&a)-1;for(let y=0;y<i.length;y++){var l=i[y];if(l<e){var u=n[l+=a];u==null?n[l]=r?yr:Pp():r&&u!==yr&&Rp(u)}else{if(!c){var d=void 0;n.length&&Xi(d=n[n.length-1])?c=d:n.push(c={})}u=c[l],c[l]==null?c[l]=r?yr:Pp():r&&u!==yr&&Rp(u)}}}if(!(c=t.length))return t;let f,g;if(Xi(d=t[c-1])){e:{var h=d;for(var m in n={},r=!1,h)e=h[m],Array.isArray(e)&&(a=e,(!Ep&&Sc(e,i,+m)||!Sp&&Ip(e)&&e.size===0)&&(e=null),e!=a&&(r=!0)),e!=null?n[m]=e:r=!0;if(r){for(let y in n){h=n;break e}h=null}}h!=d&&(f=!0),c--}for(o=+!!(512&o)-1;0<c&&((d=t[m=c-1])==null||!Ep&&Sc(d,i,m-o)||!Sp&&Ip(d)&&d.size===0);c--)g=!0;return(f||g)&&(t=s?t:Array.prototype.slice.call(t,0,c),s&&(t.length=c),h&&t.push(h)),t}function Uf(e){return Array.isArray(e)?e[0]instanceof _t?e:[Sg,e]:[e,void 0]}function ds(e,t){if(Array.isArray(t)){var r=re(t);if(4&r)return t;for(var i=0,o=0;i<t.length;i++){let n=e(t[i]);n!=null&&(t[o++]=n)}return o<i&&(t.length=o),J(t,-12289&(5|r)),2&r&&Object.freeze(t),t}}W.prototype.C=ro,W.prototype.toString=function(){return Lf(this,this.l,!1).toString()};var Lp=Symbol();function Kc(e){let t=e[Lp];if(!t){let r=Vf(e),i=Yc(e),o=i.g;t=o?(n,s)=>o(n,s,i):(n,s)=>{for(;ff(s)&&s.i!=4;){var a=s.m,c=i[a];if(!c){var l=i.K;l&&(l=l[a])&&(c=i[a]=dg(l))}c&&c(s,n,a)||(a=(c=s).j,Vn(c),c.J?c=void 0:(l=c.g.g-a,c.g.g=a,c=pf(c.g,l)),a=n,c&&(ir||=Symbol(),(l=a[ir])?l.push(c):a[ir]=[c]))}r===Nf||r===jf||r.T||(n[Qi||=Symbol()]=r)},e[Lp]=t}return t}function dg(e){let t=(e=Uf(e))[0].g;if(e=e[1]){let r=Kc(e),i=Yc(e).B;return(o,n,s)=>t(o,n,s,i,r)}return t}var Nf,jf,zn=Symbol();function hg(e,t,r){let i=r[1],o;if(i){let n=i[zn];o=n?n.B:Yn(i[0]),e[t]=n??i}o&&o===zc?(e.L||(e.L=[])).push(t):r[0]&&(e.M||(e.M=[])).push(t)}function Up(e,t){return[e.j,!t||0<t[0]?void 0:t]}function Vf(e){var t=e[zn];if(t)return t;if(!(t=Jc(e,e[zn]={},Up,Up,hg)).M&&!t.L){let r=!0;for(let i in t){isNaN(i)||(r=!1);break}r?(t=Yn(e[0])===zc,t=e[zn]=t?jf||={B:Yn(!0)}:Nf||={}):t.T=!0}return t}function pg(e,t,r){e[t]=r}function Jc(e,t,r,i,o=pg){t.B=Yn(e[0]);let n=0;var s=e[++n];s&&s.constructor===Object&&(t.K=s,typeof(s=e[++n])=="function"&&(t.g=s,t.i=e[++n],s=e[++n]));let a={};for(;Array.isArray(s)&&typeof s[0]=="number"&&0<s[0];){for(var c=0;c<s.length;c++)a[s[c]]=s;s=e[++n]}for(c=1;s!==void 0;){let d;typeof s=="number"&&(c+=s,s=e[++n]);var l=void 0;if(s instanceof _t?d=s:(d=Eg,n--),d.N){s=e[++n],l=e;var u=n;typeof s=="function"&&(s=s(),l[u]=s),l=s}for(u=c+1,typeof(s=e[++n])=="number"&&0>s&&(u-=s,s=e[++n]);c<u;c++){let f=a[c];o(t,c,l?i(d,l,f):r(d,f))}}return t}var Np=Symbol();function zf(e){let t=e[Np];if(!t){let r=hs(e);t=(i,o)=>Gf(i,o,r),e[Np]=t}return t}var Gn=Symbol();function fg(e){return e.i}function mg(e,t){let r,i,o=e.i;return(n,s,a)=>o(n,s,a,i||=hs(t).B,r||=zf(t))}function hs(e){let t=e[Gn];return t||(t=Jc(e,e[Gn]={},fg,mg),Hn in e&&Gn in e&&(e.length=0),t)}var Hn=Symbol();function gg(e,t){let r=e.g;return t?(i,o,n)=>r(i,o,n,t):r}function yg(e,t,r){let i=e.g,o,n;return(s,a,c)=>i(s,a,c,n||=Yc(t).B,o||=Kc(t),r)}function Yc(e){let t=e[Hn];return t||(Vf(e),t=Jc(e,e[Hn]={},gg,yg),Hn in e&&Gn in e&&(e.length=0),t)}function jp(e,t){var r=e[t];if(r)return r;if((r=e.K)&&(r=r[t])){var i=(r=Uf(r))[0].i;if(r=r[1]){let o=zf(r),n=hs(r).B;r=(r=e.i)?r(n,o):(s,a,c)=>i(s,a,c,n,o)}else r=i;return e[t]=r}}function Gf(e,t,r){for(var i=O(e),o=+!!(512&i)-1,n=e.length,s=512&i?1:0,a=n+(256&i?-1:0);s<a;s++){let c=e[s];if(c==null)continue;let l=s-o,u=jp(r,l);u&&u(t,c,l)}if(256&i){i=e[n-1];for(let c in i)o=+c,Number.isNaN(o)||(n=i[c])!=null&&(a=jp(r,o))&&a(t,n,o)}if(e=ir?e[ir]:void 0)for(oi(t,t.g.end()),r=0;r<e.length;r++)oi(t,Cc(e[r])||ns())}function Pe(e,t){return new _t(e,t,!1,!1)}function ps(e,t){return new _t(e,t,!0,!1)}function Ie(e,t,r){Y(e,O(e),t,r)}function Hf(e,t,r){e:if(t!=null){if(Vc(t)){if(typeof t=="string"){t=wf(t);break e}if(typeof t=="number"){t=bf(t);break e}}t=void 0}t!=null&&(typeof t=="string"&&xp(t),t!=null&&(At(e,r,0),typeof t=="number"?(e=e.g,ti(t),qn(e,H,te)):(r=xp(t),qn(e.g,r.i,r.g))))}function Wf(e,t,r){(t=wr(t))!=null&&t!=null&&(At(e,r,0),ls(e.g,t))}function qf(e,t,r){(t=t==null||typeof t=="boolean"?t:typeof t=="number"?!!t:void 0)!=null&&(At(e,r,0),e.g.g.push(t?1:0))}function $f(e,t,r){(t=br(t))!=null&&us(e,r,Zp(t))}function fs(e,t,r,i,o){(t=t instanceof W?t.l:Array.isArray(t)?eo(t,i[0],i[1]):void 0)!=null&&(r=Uc(e,r),o(t,e),Nc(e,r))}function Xf(e,t,r){(t=t==null||typeof t=="string"||os(t)||t instanceof rr?t:void 0)!=null&&us(e,r,Pc(t).buffer)}var Ye,vg=Pe(function(e,t,r){if(e.i!==1)return!1;var i=e.g;e=yc(i);let o=yc(i);i=2*(o>>31)+1;let n=o>>>20&2047;return e=4294967296*(1048575&o)+e,Ie(t,r,n==2047?e?NaN:1/0*i:n==0?i*Math.pow(2,-1074)*e:i*Math.pow(2,n-1075)*(e+4503599627370496)),!0},function(e,t,r){(t=io(t))!=null&&(At(e,r,1),e=e.g,(r=uf||=new DataView(new ArrayBuffer(8))).setFloat64(0,+t,!0),H=r.getUint32(0,!0),te=r.getUint32(4,!0),$n(e,H),$n(e,te))}),Kf=Pe(function(e,t,r){return e.i===5&&(Ie(t,r,vc(e.g)),!0)},function(e,t,r){(t=io(t))!=null&&(At(e,r,5),e=e.g,df(t),$n(e,H))}),bg=ps(function(e,t,r){return(e.i===5||e.i===2)&&(t=oo(t,O(t),r,2,!1),e.i==2?Lc(e,vc,t):t.push(vc(e.g)),!0)},function(e,t,r){if((t=ds(io,t))!=null&&t.length){At(e,r,2),cs(e.g,4*t.length);for(let i=0;i<t.length;i++)r=e.g,df(t[i]),$n(r,H)}}),Zn=Pe(function(e,t,r){return e.i===0&&(Ie(t,r,Fc(e.g,Oc)),!0)},Hf),pc=Pe(function(e,t,r){return e.i===0&&(Ie(t,r,(e=Fc(e.g,Oc))===0?void 0:e),!0)},Hf),wg=Pe(function(e,t,r){return e.i===0&&(Ie(t,r,Fc(e.g,gc)),!0)},function(e,t,r){e:if(t!=null){if(Vc(t)){if(typeof t=="string"){var i=Math.trunc(Number(t));Number.isSafeInteger(i)&&0<=i?t=String(i):((i=t.indexOf("."))!==-1&&(t=t.substring(0,i)),Bp(t)||(ss(t),t=Wn(H,te)));break e}if(typeof t=="number"){t=0<=(t=Math.trunc(t))&&Number.isSafeInteger(t)?t:function(o){if(0>o){ti(o);let n=Wn(H,te);return o=Number(n),Number.isSafeInteger(o)?o:n}return Bp(String(o))?o:(ti(o),gc(H,te))}(t);break e}}t=void 0}t!=null&&(typeof t=="string"&&Ap(t),t!=null&&(At(e,r,0),typeof t=="number"?(e=e.g,ti(t),qn(e,H,te)):(r=Ap(t),qn(e.g,r.i,r.g))))}),sr=Pe(function(e,t,r){return e.i===0&&(Ie(t,r,Le(e.g)),!0)},Wf),Jf=ps(function(e,t,r){return(e.i===0||e.i===2)&&(t=oo(t,O(t),r,2,!1),e.i==2?Lc(e,Le,t):t.push(Le(e.g)),!0)},function(e,t,r){if((t=ds(wr,t))!=null&&t.length){r=Uc(e,r);for(let i=0;i<t.length;i++)ls(e.g,t[i]);Nc(e,r)}}),ni=Pe(function(e,t,r){return e.i===0&&(Ie(t,r,(e=Le(e.g))===0?void 0:e),!0)},Wf),kt=Pe(function(e,t,r){return e.i===0&&(Ie(t,r,Bc(e.g)),!0)},qf),Ji=Pe(function(e,t,r){return e.i===0&&(Ie(t,r,(e=Bc(e.g))===!1?void 0:e),!0)},qf),lt=ps(function(e,t,r){return e.i===2&&(If(t,r,ug,e=Mc(e)),!0)},function(e,t,r){if((t=ds(br,t))!=null)for(let s=0;s<t.length;s++){var i=e,o=r,n=t[s];n!=null&&us(i,o,Zp(n))}}),or=Pe(function(e,t,r){return e.i===2&&(Ie(t,r,(e=Mc(e))===""?void 0:e),!0)},$f),ge=Pe(function(e,t,r){return e.i===2&&(Ie(t,r,Mc(e)),!0)},$f),Sg=new _t(function(e,t,r,i,o){return e.i===2&&(as(e,$c(t,i,r,!0),o),!0)},fs,!1,!0),Eg=new _t(function(e,t,r,i,o){return e.i===2&&(as(e,$c(t,i,r),o),!0)},fs,!1,!0);Ye=new _t(function(e,t,r,i,o){if(e.i!==2)return!1;i=eo(void 0,i[0],i[1]);let n=O(t);Mt(n);let s=oo(t,n,r,3);return n=O(t),4&re(s)&&(s=Ue(s),J(s,-2079&(1|re(s))),Y(t,n,r,s)),s.push(i),as(e,i,o),!0},function(e,t,r,i,o){if(Array.isArray(t))for(let n=0;n<t.length;n++)fs(e,t[n],r,i,o)},!0,!0);var Ze=new _t(function(e,t,r,i,o,n){if(e.i!==2)return!1;let s=O(t);return Mt(s),(n=qc(t,s,n))&&r!==n&&Y(t,s,n),as(e,t=$c(t,i,r),o),!0},fs,!1,!0),Yf=Pe(function(e,t,r){return e.i===2&&(Ie(t,r,mf(e)),!0)},Xf),to=Pe(function(e,t,r){return e.i===0&&(Ie(t,r,Le(e.g)),!0)},function(e,t,r){(t=wr(t))!=null&&(t=parseInt(t,10),At(e,r,0),ls(e.g,t))}),_g=ps(function(e,t,r){return(e.i===0||e.i===2)&&(t=oo(t,O(t),r,2,!1),e.i==2?Lc(e,rg,t):t.push(Le(e.g)),!0)},function(e,t,r){if((t=ds(wr,t))!=null&&t.length){r=Uc(e,r);for(let i=0;i<t.length;i++)ls(e.g,t[i]);Nc(e,r)}}),Qn=class{constructor(t,r){this.i=t,this.g=r,this.j=ct,this.defaultValue=void 0}};function Zf(e,t){return(r,i)=>{e:{if(Nn.length){let n=Nn.pop();n.s(i),uc(n.g,r,i),r=n}else r=new class{constructor(n,s){if(kp.length){let a=kp.pop();uc(a,n,s),n=a}else n=new class{constructor(a,c){this.i=null,this.m=!1,this.g=this.j=this.u=0,uc(this,a,c)}clear(){this.i=null,this.m=!1,this.g=this.j=this.u=0,this.F=!1}}(n,s);this.g=n,this.j=this.g.g,this.i=this.m=-1,this.s(s)}s({J:n=!1}={}){this.J=n}}(r,i);try{let n=new e,s=n.l;Kc(t)(s,r),Qi&&delete s[Qi];var o=n;break e}finally{r.g.clear(),r.m=-1,r.i=-1,100>Nn.length&&Nn.push(r)}o=void 0}return o}}var Qf=[0,or,Pe(function(e,t,r){return e.i===2&&(Ie(t,r,(e=mf(e))===ii()?void 0:e),!0)},function(e,t,r){if(t!=null){if(t instanceof W){let i=t.X;return void(i&&(t=i(t),t!=null&&us(e,r,Pc(t).buffer)))}if(Array.isArray(t))return}Xf(e,t,r)})],kg=[0,ge],em=[0,sr,to,kt,-1,Jf,to,-1],Ag=[0,kt,-1],tm=class extends W{constructor(){super()}};tm.v=[6];var rm=[0,kt,ge,kt,to,-1,_g,ge,-1,Ag,to],im=[0,ge,-2],Vp=class extends W{constructor(){super()}},om=[0],nm=[0,sr,kt,-2],sm=class extends W{constructor(e){super(e,2)}},ms={},Tg=[-2,ms,kt];ms[336783863]=[0,ge,kt,-1,sr,[0,[1,2,3,4,5],Ze,om,Ze,rm,Ze,im,Ze,nm,Ze,em],kg];var xg=[0,or,Ji],am=[0,pc,-1,Ji,-3,pc,Jf,or,ni,pc,-1,Ji,ni,Ji,-2,or],no=[-1,{}],cm=[0,ge,1,no],lm=[0,ge,lt,no],gs=class extends W{constructor(e){super(e,500)}s(e){return ct(this,0,7,e)}};gs.v=[3,4,5,6,8,13,17,1005];var zp,Cg=[-500,or,-1,lt,-3,Tg,Ye,Qf,ni,-1,cm,lm,Ye,xg,or,am,ni,lt,987,lt],Rg=[0,or,-1,no],Pg=[-500,ge,-1,[-1,{}],998,ge],Ig=[-500,ge,lt,-1,[-2,{},kt],997,lt,-1],Og=[-500,ge,lt,no,998,lt],es=class extends W{constructor(){super(void 0,500)}s(e){return ct(this,0,1001,e)}};es.v=[1,6,7,9,10,15,16,17,14,1002],es.prototype.g=(zp=[-500,Ye,Cg,4,Ye,Pg,Ye,Ig,ni,Ye,Og,lt,ni,cm,lm,Ye,Rg,lt,-2,am,or,-1,Ji,979,no,Ye,Qf],function(){let e=new class{constructor(){this.j=[],this.i=0,this.g=new class{constructor(){this.g=[]}length(){return this.g.length}end(){let n=this.g;return this.g=[],n}}}};Gf(this.l,e,hs(zp)),oi(e,e.g.end());let t=new Uint8Array(e.i),r=e.j,i=r.length,o=0;for(let n=0;n<i;n++){let s=r[n];t.set(s,o),o+=s.length}return e.j=[t],t});var Dg=class extends W{constructor(e){super(e)}},Fg=[0,sr,Kf,ge,-1],um=class extends W{constructor(e){super(e)}g(){return Xc(this,Dg)}};um.v=[1];var Bg=[0,Ye,Fg],_c=class extends W{constructor(e){super(e)}};_c.v=[4,5];var Gp=class extends W{constructor(e){super(e)}},dm=[1,2,3,4,5],ts=class extends W{constructor(e){super(e)}g(){return xf(this)!=null}i(){return br(Bt(this,2))!=null}},rs=class extends W{constructor(e){super(e)}},hm=[0,[0,Yf,ge,[0,sr,Zn,-1],[0,wg,Zn]],kt,[0,dm,Ze,nm,Ze,rm,Ze,em,Ze,om,Ze,im],to],pm=class extends W{constructor(e){super(e)}},Mg=new Qn(451755788,pm);ms[451755788]=[0,hm,[0,ge,sr,Kf,lt,-1],vg];var Hp=class extends W{constructor(e){super(e)}},fm=class extends W{constructor(e){super(e)}},Lg=new Qn(487277289,fm);ms[487277289]=[0,hm,[0,kt,-1]];var Ug=class extends W{constructor(e){super(e)}},Ng=[0,1,sr,ge,Bg],mm=class extends W{constructor(e){super(e)}};mm.v=[1];var jg=Zf(mm,[0,Ye,Ng,Zn]),kc=class extends W{constructor(e){super(e)}};kc.v=[1];var Vg=class extends W{constructor(e){super(e)}O(){let e=xf(this);return e??ii()}},zg=class extends W{constructor(e){super(e)}},gm=[1,2],Gg=[0,gm,Ze,[0,bg],Ze,[0,Yf],sr,ge],ym=class extends W{constructor(e){super(e)}};ym.v=[1];var Wp=Zf(ym,[0,Ye,Gg,Zn]);async function qp(e){if(typeof importScripts!="function"){let t=document.createElement("script");return t.src=e.toString(),t.crossOrigin="anonymous",new Promise((r,i)=>{t.addEventListener("load",()=>{r()},!1),t.addEventListener("error",o=>{i(o)},!1),document.body.appendChild(t)})}importScripts(e.toString())}function E(e,t,r){e.m||console.error("No wasm multistream support detected: ensure dependency inclusion of :gl_graph_runner_internal_multi_input target"),r(t=e.h.stringToNewUTF8(t)),e.h._free(t)}function $p(e,t,r){e.m||console.error("No wasm multistream support detected: ensure dependency inclusion of :gl_graph_runner_internal_multi_input target");let i=new Uint32Array(t.length);for(let o=0;o<t.length;o++)i[o]=e.h.stringToNewUTF8(t[o]);t=e.h._malloc(4*i.length),e.h.HEAPU32.set(i,t>>2),r(t);for(let o of i)e.h._free(o);e.h._free(t)}function gr(e,t,r){e.h.simpleListeners=e.h.simpleListeners||{},e.h.simpleListeners[t]=r}function Zr(e,t,r){let i=[];e.h.simpleListeners=e.h.simpleListeners||{},e.h.simpleListeners[t]=(o,n,s)=>{n?(r(i,s),i=[]):i.push(o)}}var Hg=function(e){return class extends e{U(){this.h._registerModelResourcesGraphService()}}}(class{constructor(e,t){this.j=!0,this.h=e,this.g=null,this.i=0,this.m=typeof this.h._addIntToInputStream=="function",t!==void 0?this.h.canvas=t:((e=typeof OffscreenCanvas>"u")||(e=(e=navigator.userAgent).includes("Safari")&&!e.includes("Chrome")),e?(console.warn("OffscreenCanvas not supported and GraphRunner constructor glCanvas parameter is undefined. Creating backup canvas."),this.h.canvas=document.createElement("canvas")):this.h.canvas=new OffscreenCanvas(1,1))}async initializeGraph(e){let t=await(await fetch(e)).arrayBuffer();e=!(e.endsWith(".pbtxt")||e.endsWith(".textproto")),this.setGraph(new Uint8Array(t),e)}setGraphFromString(e){this.setGraph(new TextEncoder().encode(e),!1)}setGraph(e,t){let r=e.length,i=this.h._malloc(r);this.h.HEAPU8.set(e,i),t?this.h._changeBinaryGraph(r,i):this.h._changeTextGraph(r,i),this.h._free(i)}configureAudio(e,t,r,i,o){this.h._configureAudio||console.warn('Attempting to use configureAudio without support for input audio. Is build dep ":gl_graph_runner_audio" missing?'),E(this,i||"input_audio",n=>{E(this,o=o||"audio_header",s=>{this.h._configureAudio(n,s,e,t,r)})})}setAutoResizeCanvas(e){this.j=e}setAutoRenderToScreen(e){this.h._setAutoRenderToScreen(e)}setGpuBufferVerticalFlip(e){this.h.gpuOriginForWebTexturesIsBottomLeft=e}attachErrorListener(e){this.h.errorListener=e}attachEmptyPacketListener(e,t){this.h.emptyPacketListeners=this.h.emptyPacketListeners||{},this.h.emptyPacketListeners[e]=t}addAudioToStream(e,t,r){this.addAudioToStreamWithShape(e,0,0,t,r)}addAudioToStreamWithShape(e,t,r,i,o){let n=4*e.length;this.i!==n&&(this.g&&this.h._free(this.g),this.g=this.h._malloc(n),this.i=n),this.h.HEAPF32.set(e,this.g/4),E(this,i,s=>{this.h._addAudioToInputStream(this.g,t,r,s,o)})}addGpuBufferToStream(e,t,r){E(this,t,i=>{if(!this.h.canvas)throw Error("No OpenGL canvas configured.");i?this.h._bindTextureToStream(i):this.h._bindTextureToCanvas();var o=this.h.canvas.getContext("webgl2")||this.h.canvas.getContext("webgl");if(!o)throw Error("Failed to obtain WebGL context from the provided canvas. `getContext()` should only be invoked with `webgl` or `webgl2`.");let n;this.h.gpuOriginForWebTexturesIsBottomLeft&&o.pixelStorei(o.UNPACK_FLIP_Y_WEBGL,!0),o.texImage2D(o.TEXTURE_2D,0,o.RGBA,o.RGBA,o.UNSIGNED_BYTE,e),this.h.gpuOriginForWebTexturesIsBottomLeft&&o.pixelStorei(o.UNPACK_FLIP_Y_WEBGL,!1),e.videoWidth?(o=e.videoWidth,n=e.videoHeight):e.naturalWidth?(o=e.naturalWidth,n=e.naturalHeight):(o=e.width,n=e.height),!this.j||o===this.h.canvas.width&&n===this.h.canvas.height||(this.h.canvas.width=o,this.h.canvas.height=n);let[s,a]=[o,n];this.h._addBoundTextureToStream(i,s,a,r)})}addBoolToStream(e,t,r){E(this,t,i=>{this.h._addBoolToInputStream(e,i,r)})}addDoubleToStream(e,t,r){E(this,t,i=>{this.h._addDoubleToInputStream(e,i,r)})}addFloatToStream(e,t,r){E(this,t,i=>{this.h._addFloatToInputStream(e,i,r)})}addIntToStream(e,t,r){E(this,t,i=>{this.h._addIntToInputStream(e,i,r)})}addStringToStream(e,t,r){E(this,t,i=>{E(this,e,o=>{this.h._addStringToInputStream(o,i,r)})})}addStringRecordToStream(e,t,r){E(this,t,i=>{$p(this,Object.keys(e),o=>{$p(this,Object.values(e),n=>{this.h._addFlatHashMapToInputStream(o,n,Object.keys(e).length,i,r)})})})}addProtoToStream(e,t,r,i){E(this,r,o=>{E(this,t,n=>{let s=this.h._malloc(e.length);this.h.HEAPU8.set(e,s),this.h._addProtoToInputStream(s,e.length,n,o,i),this.h._free(s)})})}addEmptyPacketToStream(e,t){E(this,e,r=>{this.h._addEmptyPacketToInputStream(r,t)})}addBoolVectorToStream(e,t,r){E(this,t,i=>{let o=this.h._allocateBoolVector(e.length);if(!o)throw Error("Unable to allocate new bool vector on heap.");for(let n of e)this.h._addBoolVectorEntry(o,n);this.h._addBoolVectorToInputStream(o,i,r)})}addDoubleVectorToStream(e,t,r){E(this,t,i=>{let o=this.h._allocateDoubleVector(e.length);if(!o)throw Error("Unable to allocate new double vector on heap.");for(let n of e)this.h._addDoubleVectorEntry(o,n);this.h._addDoubleVectorToInputStream(o,i,r)})}addFloatVectorToStream(e,t,r){E(this,t,i=>{let o=this.h._allocateFloatVector(e.length);if(!o)throw Error("Unable to allocate new float vector on heap.");for(let n of e)this.h._addFloatVectorEntry(o,n);this.h._addFloatVectorToInputStream(o,i,r)})}addIntVectorToStream(e,t,r){E(this,t,i=>{let o=this.h._allocateIntVector(e.length);if(!o)throw Error("Unable to allocate new int vector on heap.");for(let n of e)this.h._addIntVectorEntry(o,n);this.h._addIntVectorToInputStream(o,i,r)})}addStringVectorToStream(e,t,r){E(this,t,i=>{let o=this.h._allocateStringVector(e.length);if(!o)throw Error("Unable to allocate new string vector on heap.");for(let n of e)E(this,n,s=>{this.h._addStringVectorEntry(o,s)});this.h._addStringVectorToInputStream(o,i,r)})}addBoolToInputSidePacket(e,t){E(this,t,r=>{this.h._addBoolToInputSidePacket(e,r)})}addDoubleToInputSidePacket(e,t){E(this,t,r=>{this.h._addDoubleToInputSidePacket(e,r)})}addFloatToInputSidePacket(e,t){E(this,t,r=>{this.h._addFloatToInputSidePacket(e,r)})}addIntToInputSidePacket(e,t){E(this,t,r=>{this.h._addIntToInputSidePacket(e,r)})}addStringToInputSidePacket(e,t){E(this,t,r=>{E(this,e,i=>{this.h._addStringToInputSidePacket(i,r)})})}addProtoToInputSidePacket(e,t,r){E(this,r,i=>{E(this,t,o=>{let n=this.h._malloc(e.length);this.h.HEAPU8.set(e,n),this.h._addProtoToInputSidePacket(n,e.length,o,i),this.h._free(n)})})}addBoolVectorToInputSidePacket(e,t){E(this,t,r=>{let i=this.h._allocateBoolVector(e.length);if(!i)throw Error("Unable to allocate new bool vector on heap.");for(let o of e)this.h._addBoolVectorEntry(i,o);this.h._addBoolVectorToInputSidePacket(i,r)})}addDoubleVectorToInputSidePacket(e,t){E(this,t,r=>{let i=this.h._allocateDoubleVector(e.length);if(!i)throw Error("Unable to allocate new double vector on heap.");for(let o of e)this.h._addDoubleVectorEntry(i,o);this.h._addDoubleVectorToInputSidePacket(i,r)})}addFloatVectorToInputSidePacket(e,t){E(this,t,r=>{let i=this.h._allocateFloatVector(e.length);if(!i)throw Error("Unable to allocate new float vector on heap.");for(let o of e)this.h._addFloatVectorEntry(i,o);this.h._addFloatVectorToInputSidePacket(i,r)})}addIntVectorToInputSidePacket(e,t){E(this,t,r=>{let i=this.h._allocateIntVector(e.length);if(!i)throw Error("Unable to allocate new int vector on heap.");for(let o of e)this.h._addIntVectorEntry(i,o);this.h._addIntVectorToInputSidePacket(i,r)})}addStringVectorToInputSidePacket(e,t){E(this,t,r=>{let i=this.h._allocateStringVector(e.length);if(!i)throw Error("Unable to allocate new string vector on heap.");for(let o of e)E(this,o,n=>{this.h._addStringVectorEntry(i,n)});this.h._addStringVectorToInputSidePacket(i,r)})}attachBoolListener(e,t){gr(this,e,t),E(this,e,r=>{this.h._attachBoolListener(r)})}attachBoolVectorListener(e,t){Zr(this,e,t),E(this,e,r=>{this.h._attachBoolVectorListener(r)})}attachIntListener(e,t){gr(this,e,t),E(this,e,r=>{this.h._attachIntListener(r)})}attachIntVectorListener(e,t){Zr(this,e,t),E(this,e,r=>{this.h._attachIntVectorListener(r)})}attachDoubleListener(e,t){gr(this,e,t),E(this,e,r=>{this.h._attachDoubleListener(r)})}attachDoubleVectorListener(e,t){Zr(this,e,t),E(this,e,r=>{this.h._attachDoubleVectorListener(r)})}attachFloatListener(e,t){gr(this,e,t),E(this,e,r=>{this.h._attachFloatListener(r)})}attachFloatVectorListener(e,t){Zr(this,e,t),E(this,e,r=>{this.h._attachFloatVectorListener(r)})}attachStringListener(e,t){gr(this,e,t),E(this,e,r=>{this.h._attachStringListener(r)})}attachStringVectorListener(e,t){Zr(this,e,t),E(this,e,r=>{this.h._attachStringVectorListener(r)})}attachProtoListener(e,t,r){gr(this,e,t),E(this,e,i=>{this.h._attachProtoListener(i,r||!1)})}attachProtoVectorListener(e,t,r){Zr(this,e,t),E(this,e,i=>{this.h._attachProtoVectorListener(i,r||!1)})}attachAudioListener(e,t,r){this.h._attachAudioListener||console.warn('Attempting to use attachAudioListener without support for output audio. Is build dep ":gl_graph_runner_audio_out" missing?'),gr(this,e,(i,o)=>{i=new Float32Array(i.buffer,i.byteOffset,i.length/4),t(i,o)}),E(this,e,i=>{this.h._attachAudioListener(i,r||!1)})}finishProcessing(){this.h._waitUntilIdle()}closeGraph(){this.h._closeGraph(),this.h.simpleListeners=void 0,this.h.emptyPacketListeners=void 0}}),vm=class extends Hg{};async function Wg(e,t,r){return e=await(async(i,o,n,s)=>{if(o&&await qp(o),!self.ModuleFactory||n&&(await qp(n),!self.ModuleFactory))throw Error("ModuleFactory not set.");return self.Module&&s&&((o=self.Module).locateFile=s.locateFile,s.mainScriptUrlOrBlob&&(o.mainScriptUrlOrBlob=s.mainScriptUrlOrBlob)),s=await self.ModuleFactory(self.Module||s),self.ModuleFactory=self.Module=void 0,new i(s,null)})(e,t.wasmLoaderPath,t.assetLoaderPath,{locateFile:i=>i.endsWith(".wasm")?t.wasmBinaryPath.toString():t.assetBinaryPath&&i.endsWith(".data")?t.assetBinaryPath.toString():i}),await e.s(r),e}async function bm(e,t,r){return Wg(e,t,r)}function Xp(e,t){let r=at(e.baseOptions,ts,1)||new ts;typeof t=="string"?(fe(r,2,Kn(t)),fe(r,1)):t instanceof Uint8Array&&(fe(r,1,yf(t,!1,!1)),fe(r,2)),ct(e.baseOptions,0,1,r)}function wm(e,t){let r=t.baseOptions||{};if(t.baseOptions?.modelAssetBuffer&&t.baseOptions?.modelAssetPath)throw Error("Cannot set both baseOptions.modelAssetPath and baseOptions.modelAssetBuffer");if(!(at(e.baseOptions,ts,1)?.g()||at(e.baseOptions,ts,1)?.i()||t.baseOptions?.modelAssetBuffer||t.baseOptions?.modelAssetPath))throw Error("Either baseOptions.modelAssetPath or baseOptions.modelAssetBuffer must be set");return function(i,o){let n=at(i.baseOptions,Gp,3);if(!n){var s=n=new Gp;hc(s,4,new Vp)}"delegate"in o&&(o.delegate==="GPU"?hc(o=n,2,s=new tm):hc(o=n,4,s=new Vp)),ct(i.baseOptions,0,3,n)}(e,r),r.modelAssetPath?fetch(r.modelAssetPath.toString()).then(i=>{if(i.ok)return i.arrayBuffer();throw Error(`Failed to fetch model: ${r.modelAssetPath} (${i.status})`)}).then(i=>{try{e.g.h.FS_unlink("/model.dat")}catch{}e.g.h.FS_createDataFile("/","model.dat",new Uint8Array(i),!0,!1,!1),Xp(e,"/model.dat"),e.I()}):(Xp(e,r.modelAssetBuffer),e.I(),Promise.resolve())}function Kp(e){try{let t=e.j.length;if(t===1)throw Error(e.j[0].message);if(1<t)throw Error("Encountered multiple errors: "+e.j.map(r=>r.message).join(", "))}finally{e.j=[]}}function Qr(e,t){e.u=Math.max(e.u,t)}var Ac=class{constructor(e){this.g=e,this.j=[],this.u=0,this.g.setAutoRenderToScreen(!1)}setGraph(e,t){this.g.attachErrorListener((r,i)=>{this.j.push(Error(i))}),this.g.U(),this.g.setGraph(e,t),Kp(this)}finishProcessing(){this.g.finishProcessing(),Kp(this)}close(){this.g.closeGraph()}};async function Yi(e,t,r){return bm(e,t,r)}Ac.prototype.close=Ac.prototype.close;var is=class extends Ac{constructor(){super(...arguments),this.H=48e3}V(e){this.H=e}};function qg(e){let t={classifications:Xc(e,Ug).map(r=>function(i,o=-1,n=""){return{categories:i.map(s=>{var a=wr(Bt(s,1))??0??-1;let c=s.l,l=O(c),u=nr(c,l,2),d=io(u);return d!=null&&d!==u&&Y(c,l,2,d),{index:a,score:d??0??0,categoryName:br(Bt(s,3))??""??"",displayName:br(Bt(s,4))??""??""}}),headIndex:o,headName:n}}(at(r,um,4)?.g()??[],wr(Bt(r,2))??0,br(Bt(r,3))??""))};return Ec(e)!=null&&(t.timestampMs=Bf(Ec(e))),t}is.prototype.setDefaultSampleRate=is.prototype.V;var Ke=class extends is{constructor(e,t){super(new vm(e,t)),this.m=[],ct(e=this.i=new pm,0,1,t=new rs)}get baseOptions(){return at(this.i,rs,1)}set baseOptions(e){ct(this.i,0,1,e)}s(e){var t=this.i,r=at(this.i,_c,2);if(r=r?Af(r):new _c,e.displayNamesLocale!==void 0?fe(r,1,Kn(e.displayNamesLocale)):e.displayNamesLocale===void 0&&fe(r,1),e.maxResults!==void 0){var i=e.maxResults;if(i!=null){if(typeof i!="number"||!Number.isFinite(i))throw Dp();i|=0}fe(r,2,i)}else"maxResults"in e&&fe(r,2);if(e.scoreThreshold!==void 0){if((i=e.scoreThreshold)!=null&&typeof i!="number")throw Error(`Value of float/double field must be a number, found ${typeof i}: ${i}`);fe(r,3,i)}else"scoreThreshold"in e&&fe(r,3);return e.categoryAllowlist!==void 0?Mp(r,4,e.categoryAllowlist):"categoryAllowlist"in e&&fe(r,4),e.categoryDenylist!==void 0?Mp(r,5,e.categoryDenylist):"categoryDenylist"in e&&fe(r,5),ct(t,0,2,r),wm(this,e)}R(e,t){return this.G(e,t??this.H,this.u+1)}G(e,t,r){return this.g.addDoubleToStream(t,"sample_rate",r),this.g.addAudioToStreamWithShape(e,1,e.length,"audio_in",r),this.m=[],this.finishProcessing(),[...this.m]}I(){var e=new es;Re(e,10,"audio_in"),Re(e,10,"sample_rate"),Re(e,15,"timestamped_classifications");let t=new sm;Mf(t,Mg,this.i);let r=new gs;Pf(r,Kn("mediapipe.tasks.audio.audio_classifier.AudioClassifierGraph")),Re(r,3,"AUDIO:audio_in"),Re(r,3,"SAMPLE_RATE:sample_rate"),Re(r,4,"TIMESTAMPED_CLASSIFICATIONS:timestamped_classifications"),r.s(t),Ff(e,r),this.g.attachProtoVectorListener("timestamped_classifications",(i,o)=>{(function(n,s){s.forEach(a=>{a=jg(a),n.m.push(qg(a))})})(this,i),Qr(this,o)}),this.g.attachEmptyPacketListener("timestamped_classifications",i=>{Qr(this,i)}),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};function Jp(e){return{embeddings:Xc(e,zg).map(t=>{let r={headIndex:wr(Bt(t,3))??0??-1,headName:br(Bt(t,4))??""??""};if(Of(t,kc,dc(t,1))!==void 0){var i=void 0;t=at(t,kc,dc(t,1)).l;let a=O(t),c=2&a?1:2;i=!!i;let l=Cf(t,a);var o=re(l);if(!(4&o)){(4&o||Object.isFrozen(l))&&(l=Ue(l),o=Sr(o,a,i),a=Y(t,a,1,l));for(var n=0,s=0;n<l.length;n++){let u=io(l[n]);u!=null&&(l[s++]=u)}s<n&&(l.length=s),o=pe(o=Rf(o,a,i),20,!0),o=pe(o,4096,!1),o=pe(o,8192,!1),J(l,o),2&o&&Object.freeze(l)}Ki(o)||(n=o,(s=c===1)?o=pe(o,2,!0):i||(o=pe(o,32,!1)),o!==n&&J(l,o),s&&Object.freeze(l)),c===2&&Ki(o)&&(l=Ue(l),o=Sr(o,a,i),J(l,o),Y(t,a,1,l)),r.floatEmbedding=l}else i=new Uint8Array(0),r.quantizedEmbedding=at(t,Vg,dc(t,2))?.O()?.P()??i;return r}),timestampMs:Bf(Ec(e))}}Ke.prototype.classify=Ke.prototype.R,Ke.prototype.setOptions=Ke.prototype.s,Ke.createFromModelPath=function(e,t){return bm(Ke,e,{baseOptions:{modelAssetPath:t}})},Ke.createFromModelBuffer=function(e,t){return Yi(Ke,e,{baseOptions:{modelAssetBuffer:t}})},Ke.createFromOptions=function(e,t){return Yi(Ke,e,t)};var St=class extends is{constructor(e,t){super(new vm(e,t)),this.m=[],ct(e=this.i=new fm,0,1,t=new rs)}get baseOptions(){return at(this.i,rs,1)}set baseOptions(e){ct(this.i,0,1,e)}s(e){var t=this.i,r=at(this.i,Hp,2);return r=r?Af(r):new Hp,e.l2Normalize!==void 0?fe(r,1,Fp(e.l2Normalize)):"l2Normalize"in e&&fe(r,1),e.quantize!==void 0?fe(r,2,Fp(e.quantize)):"quantize"in e&&fe(r,2),ct(t,0,2,r),wm(this,e)}S(e,t){return this.G(e,t??this.H,this.u+1)}G(e,t,r){return this.g.addDoubleToStream(t,"sample_rate",r),this.g.addAudioToStreamWithShape(e,1,e.length,"audio_in",r),this.m=[],this.finishProcessing(),this.m}I(){var e=new es;Re(e,10,"audio_in"),Re(e,10,"sample_rate"),Re(e,15,"embeddings_out"),Re(e,15,"timestamped_embeddings_out");let t=new sm;Mf(t,Lg,this.i);let r=new gs;Pf(r,Kn("mediapipe.tasks.audio.audio_embedder.AudioEmbedderGraph")),Re(r,3,"AUDIO:audio_in"),Re(r,3,"SAMPLE_RATE:sample_rate"),Re(r,4,"EMBEDDINGS:embeddings_out"),Re(r,4,"TIMESTAMPED_EMBEDDINGS:timestamped_embeddings_out"),r.s(t),Ff(e,r),this.g.attachProtoListener("embeddings_out",(i,o)=>{i=Wp(i),this.m.push(Jp(i)),Qr(this,o)}),this.g.attachEmptyPacketListener("embeddings_out",i=>{Qr(this,i)}),this.g.attachProtoVectorListener("timestamped_embeddings_out",(i,o)=>{for(let n of i)i=Wp(n),this.m.push(Jp(i));Qr(this,o)}),this.g.attachEmptyPacketListener("timestamped_embeddings_out",i=>{Qr(this,i)}),e=e.g(),this.setGraph(new Uint8Array(e),!0)}},jn;St.prototype.embed=St.prototype.S,St.prototype.setOptions=St.prototype.s,St.createFromModelPath=function(e,t){return Yi(St,e,{baseOptions:{modelAssetPath:t}})},St.createFromModelBuffer=function(e,t){return Yi(St,e,{baseOptions:{modelAssetBuffer:t}})},St.createFromOptions=function(e,t){return Yi(St,e,t)};var $g=new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11]);async function Sm(){if(jn===void 0)try{await WebAssembly.instantiate($g),jn=!0}catch{jn=!1}return jn}async function fc(e,t=""){let r=await Sm()?"wasm_internal":"wasm_nosimd_internal";return{wasmLoaderPath:`${t}/${e}_${r}.js`,wasmBinaryPath:`${t}/${e}_${r}.wasm`}}var ei=class{};ei.forVisionTasks=function(e){return fc("vision",e)},ei.forTextTasks=function(e){return fc("text",e)},ei.forAudioTasks=function(e){return fc("audio",e)},ei.isSimdSupported=function(){return Sm()};var ys=class{constructor(t,r,i,o,n,s,a){this.recordingInProgress=!1;this.recordIndex=1;this.countLoopTimes=0;this.examStartTime=0;this.recordingStartTime=0;this.recordingEndTime=0;this.isSpeech=!1;this.optionsProctoring=t,this.proctoringSession=r,this.paramsConfig=i,this.cameraRecorder=o,this.onRealtimeAlertsCallback=n,this.backend=s,this.backendToken=a}setProctoringId(t){this.proctoringId=t,this.proctoringId&&this.backend&&(this.upload=new Ct(this.proctoringId,this.backend))}async startRecording(){this.examStartTime=Date.now(),await this.createAudioClassifier(),this.audioRecorder=new Ln(void 0,this.paramsConfig.audioBehaviourParameters),this.intervalNoiseDetection=setInterval(()=>this.onNoiseDetectedRecord(),200),this.streamingAudioClassification()}async stopRecording(){clearInterval(this.intervalNoiseDetection),await this.stopSoundRecord(),await this.volumeMeter.stop(),this.audioWorkletNode&&this.audioWorkletNode.disconnect()}async pauseRecording(){}async resumeRecording(){}async saveOnSession(t){}async onNoiseDetectedRecord(){!this.volumeMeter&&this.cameraRecorder.cameraStream&&(this.volumeMeter=new Qt(this.cameraRecorder.cameraStream),this.volumeMeter.start().catch(i=>{console.log(i),this.volumeMeter=void 0}));let t=this.paramsConfig.audioBehaviourParameters?.noiseLimit||40,r=this.volumeMeter?.getVolume()||0;this.isSpeech=this.isSpeech||this.hasDesiredResult(this.audioClassificationResult),!this.isSpeech&&!this.recordingInProgress&&(t=t+t*.25),r>=t&&!this.recordingInProgress?(this.recordingInProgress=!0,this.audioRecorder.startRecording(),this.recordingStartTime=Date.now()-this.examStartTime):r<t&&this.recordingInProgress&&(Date.now()-this.recordingStartTime>=3e3&&this.countLoopTimes>4&&(await this.stopSoundRecord(),this.paramsConfig.videoBehaviourParameters?.detectNoise&&!this.isSpeech&&this.onRealtimeAlertsCallback({status:"ALERT",description:"Barulho detectado",type:"audio_detection_on_stream"}),this.paramsConfig.videoBehaviourParameters?.detectSpeech&&this.isSpeech&&this.onRealtimeAlertsCallback({status:"ALERT",description:"Fala detectada",type:"audio_detection_on_stream"}),this.recordingInProgress=!1,this.recordIndex++,this.countLoopTimes=0,this.isSpeech=!1),this.countLoopTimes++)}async stopSoundRecord(){if(await this.audioRecorder.stopRecording(),this.recordingEndTime=Date.now()-this.examStartTime,this.optionsProctoring.proctoringType!=="REALTIME")return;let t=new File(this.audioRecorder.blobs,`EP_${this.proctoringSession.id}_${this.recordingStartTime}_${this.recordingEndTime}_${this.isSpeech?"speech":"noise"}.webm`,{type:"audio/webm"});this.uploadRecord(t),this.audioRecorder.blobs=[]}download(t){let r=URL.createObjectURL(t),i=document.createElement("a");document.body.appendChild(i),i.style.display="none",i.href=r,i.download=t.name,i.click(),window.URL.revokeObjectURL(r)}uploadRecord(t){t&&this.upload&&this.backendToken&&this.upload.upload({file:t},this.backendToken)}hasDesiredResult(t){if(t==null)return!1;for(let r of t){let i=r.name.toLowerCase().includes("speech");if(this.optionsProctoring.proctoringType!=="REALTIME")return i;i&&console.log(parseFloat(r.score));let o=parseFloat(r.score)>.22;if(i&&o)return!0}return!1}async createAudioClassifier(){let t=await ei.forAudioTasks("https://cdn.jsdelivr.net/npm/@mediapipe/tasks-audio@0.10.0/wasm");this.audioClassifier=await Ke.createFromOptions(t,{scoreThreshold:.15,maxResults:1,baseOptions:{modelAssetPath:"https://storage.googleapis.com/mediapipe-models/audio_classifier/yamnet/float32/1/yamnet.tflite"}})}async streamingAudioClassification(){this.context=new AudioContext({sampleRate:16e3});try{await this.context.audioWorklet.addModule("./src/new-flow/recorders/audio-processor.js")}catch{throw new Error("\u274C Error loading audio worklet module")}let t=this.context.createMediaStreamSource(this.cameraRecorder.cameraStream);this.audioWorkletNode=new AudioWorkletNode(this.context,"audio-processor"),this.audioWorkletNode.port.onmessage=r=>{let i=r.data,n=this.audioClassifier.classify(i)[0].classifications[0].categories;n.length>0&&(this.audioClassificationResult=[{name:n[0].categoryName,score:n[0].score.toFixed(3)}])},t.connect(this.audioWorkletNode),this.audioWorkletNode.connect(this.context.destination)}};var vs=class{constructor(t){this.blobs=[];this.blobsFinal=[];this.options=t}setProctoringId(t){this.proctoringId=t}async startRecording(){this.startTime=new Date(Date.now());let{allowOnlyFirstMonitor:t,allowMultipleMonitors:r,onStopSharingScreenCallback:i,onBufferSizeErrorCallback:o}=this.options,n={video:{cursor:"always",width:854,height:480,displaySurface:"monitor"},audio:!1};this.screenStream=await navigator.mediaDevices.getDisplayMedia(n);let s=this.screenStream.getVideoTracks();if(s[0].onended=i,navigator.userAgent.indexOf("Firefox")>-1){let g=s.find(h=>h.label=="");if(g&&t||g&&!r)throw Vo}let c=s.find(g=>["screen:0:0","Primary Monitor"].includes(g.label))!=null,l=s.find(g=>["screen:0:0","Primary Monitor",""].includes(g.label)||["screen:"].some(h=>g.label.includes(h)))!=null,u=s.find(g=>["web-contents-media-stream","window"].some(h=>g.label.includes(h)))!=null;if(!c&&t)throw s.forEach(g=>{g.stop()}),Xl;if(!l||u)throw s.forEach(g=>{g.stop()}),Kl;let{startRecording:d,stopRecording:f}=ar(this.screenStream,this.blobs,this.proctoringId,this.options.onBufferSizeError,o);this.recordingStart=d,this.recordingStop=f,this.recordingStart()}async pauseRecording(){}async resumeRecording(){}async stopRecording(){this.recordingStop&&await this.recordingStop()}async saveOnSession(t){t.addRecording({device:"",file:new File(this.blobs,`EP_${t.id}_screen_0.webm`,{type:"video/webm"}),origin:"Screen"})}};var so=class{constructor(t,r){this.dbName="EasyProctorDb";this.dbVersion=2;this.storeName="exams2";this.dbName=t,this.storeName=r}async save(t){let{transaction:r,store:i}=await this.connectToStore("readwrite");return this.processRequest(i.put(t),r).then(()=>{})}async delete(t){let{transaction:r,store:i}=await this.connectToStore("readwrite");return this.processRequest(i.delete(t),r)}async get(t){let{transaction:r,store:i}=await this.connectToStore("readwrite");return this.processRequest(i.get(t),r).catch(()=>{})}async getDevices(t){let{transaction:r,store:i}=await this.connectToStore("readwrite");return this.processRequest(i.get(t),r).catch(()=>{})}async list(){let{transaction:t,store:r}=await this.connectToStore("readonly");return this.processRequest(r.getAll(),t)}async clear(){let{transaction:t,store:r}=await this.connectToStore("readwrite");return this.processRequest(r.clear(),t)}async processRequest(t,r){return new Promise((i,o)=>{t.onerror=n=>{o(t.error?.message)},t.onsuccess=n=>{r.commit(),i(t.result)}})}async hasSessions(){return(await this.list()).length>0}async connectToStore(t){let o=(await this.connect()).result.transaction(this.storeName,t),n=o.objectStore(this.storeName);return{transaction:o,store:n}}async connect(){return this.connection?this.connection:new Promise((t,r)=>{let i=window.indexedDB.open(this.dbName,this.dbVersion);i.onerror=o=>{r("Can't connect to IndexedDB")},i.onupgradeneeded=o=>{let n=i.result;n.onerror=s=>{},n.createObjectStore(this.storeName,{keyPath:"id"})},i.onsuccess=o=>{this.connection=i,t(i)}})}};function Em(){let e=navigator.userAgent,t;return e.match(/chrome|chromium|crios/i)?t="chrome":e.match(/firefox|fxios/i)?t="firefox":e.match(/safari/i)?t="safari":e.match(/opr\//i)?t="opera":e.match(/edg/i)?t="edge":t="No browser detection",t}function _m(){return new Promise((e,t)=>{window.navigator.geolocation.getCurrentPosition(e,t)})}function ao(){let e=window.navigator.userAgent.split("SEB/");return e.length>1?e[1]:"1.0.0.0"}var bs=class{constructor(t,r){this.cpf=t,this.backend=r,this.capturePhoto=new Xr}async login(){let t=await this.capturePhoto.takePicture("Login com biometria facial","Encaixe seu rosto no formato e clique no bot\xE3o abaixo",{width:1280,height:720});return this.loading(),new Promise((r,i)=>{this.backend.loginAuth(this.cpf,t.base64.substr(22,t.base64.length)).then(o=>{this.token=o.token,document.querySelector("#authLoader")?.remove(),this.backend.token=this.token,r(this.token)}).catch(o=>{console.log(o),document.querySelector("#authLoader")?.remove(),i(o)})})}loading(){let t=document.createElement("div");t.setAttribute("id","authLoader"),t.style.backgroundColor="rgba(0,0,0,0.4)",t.style.zIndex="1000",t.style.position="fixed",t.style.top="0",t.style.left="0",t.style.height="100vh",t.style.width="100%",t.style.display="flex",t.style.alignItems="center",t.style.justifyContent="center";let r=document.createElement("div");r.setAttribute("class","loader"),t.appendChild(r),document.body.appendChild(t);let i=`
184
222
  .loader {
185
223
  border: 6px solid #f3f3f3;
186
224
  border-radius: 50%;
@@ -201,17 +239,17 @@ Para iniciar um exame utilize uma outra c\xE2mera.`),o.setAttribute("class","che
201
239
  0% { transform: rotate(0deg); }
202
240
  100% { transform: rotate(360deg); }
203
241
  }
204
- `,n=document.createElement("style");n.innerHTML=i,document.head.appendChild(n)}};var Rs=class{constructor(t){this.context=t;this.paramsConfig={audioBehaviourParameters:{recordingBitrate:128,noiseLimit:40},imageBehaviourParameters:{frames:40,useUploadImage:!0,uploadInterval:20,saveVideo:!0},videoBehaviourParameters:{detectFace:!1,detectPerson:!1,detectCellPhone:!1,detectNoise:!1,detectSpeech:!1}};this.proctoringId="";this.insights=void 0;this.state="Stop";this.serviceType="Upload";this.onStopSharingScreenCallback=()=>{};this.onLostFocusCallback=()=>{};this.onFocusCallback=()=>{};this.onChangeDevicesCallback=t=>{};this.onRealtimeAlertsCallback=t=>{};this.onBufferSizeErrorCallback=()=>{};this.backend=new ta({type:t.type||"prod",token:t.token}),this.repository=new Za("EasyProctorDb","exams2"),this.repositoryDevices=new Za("EasyProctorDbDevices","devices"),this.context.credentials?.cpf&&(this.auth=new ws(this.context.credentials.cpf,this.backend))}setOnStopSharingScreenCallback(t){this.onStopSharingScreenCallback=()=>{Je.registerStopSharingScreen(this.proctoringId,"Stop sharing screen"),t()}}setOnLostFocusCallback(t){this.onLostFocusCallback=()=>t()}setOnFocusCallback(t){this.onFocusCallback=()=>t()}async onChangeDevices(t={}){new Dn(this.repositoryDevices,this.proctoringId).startRecording(t),this.onChangeDevicesCallback=i=>t.status&&t.status(i)}async onRealtimeAlerts(t={}){this.onRealtimeAlertsCallback=r=>t.data&&t.data(r)}setOnBufferSizeErrorCallback(t){this.onBufferSizeErrorCallback=()=>t()}createRecorders(t=oi){this.onChangeDevices();let r=new Cr({cameraId:this.sessionOptions.cameraId,microphoneId:this.sessionOptions.microphoneId,onBufferSizeError:this.sessionOptions.onBufferSizeError,onBufferSizeErrorCallback:()=>this.onBufferSizeErrorCallback(),proctoringType:this.sessionOptions.proctoringType,onChangeDevicesCallback:k=>this.onChangeDevicesCallback(k),onRealtimeAlertsCallback:k=>this.onRealtimeAlertsCallback(k)},{width:this.videoOptions.width,height:this.videoOptions.height,minWidth:this.videoOptions.minWidth,minHeight:this.videoOptions.minHeight},this.paramsConfig,this.backend,this.context.token),i=this.sessionOptions.captureScreen?new As({allowOnlyFirstMonitor:this.sessionOptions.allowOnlyFirstMonitor??!0,allowMultipleMonitors:this.sessionOptions.allowMultipleMonitors??!0,onStopSharingScreenCallback:()=>this.onStopSharingScreenCallback(),onBufferSizeError:this.sessionOptions.onBufferSizeError,onBufferSizeErrorCallback:()=>this.onBufferSizeErrorCallback()}):void 0,n=new Hn({onFocusCallback:()=>this.onFocusCallback(),onLostFocusCallback:()=>this.onLostFocusCallback()},t,r),o=new Ss(t,this.proctoringSession,this.paramsConfig,r,k=>this.onRealtimeAlertsCallback(k),this.backend,this.context.token),f=new aa(this.paramsConfig.audioBehaviourParameters),R=[r,i,n].filter(Boolean);return this.sessionOptions.proctoringType=="REALTIME"?R.push(o):R.push(f),this.recorder=new Vn(this.proctoringSession,R),{cameraRecorder:r,audioRecorder:f,screenRecorder:i,alertRecorder:n,noiseRecorder:o}}async login(){if(!this.context.credentials?.cpf)throw _1;this.context.token=await this.auth.login()}async start(t=oi,r={}){try{if(this.context.token===void 0)throw m1;this.extension=new Fn,this.extension.addEventListener();let i=this.backend.selectBaseUrl(this.context.type),n=await yr();if(await this.repositoryDevices.save({...n,id:"devices"}),this.sessionOptions={...oi,...t},this.videoOptions=Ln(r),await this.initConfig(t.useGeolocation),await this.verifyBrowser(),this.sessionOptions.captureScreen&&await this.verifyMultipleMonitors(this.sessionOptions),this.state!="Stop")throw u1;this.state="Starting",await this.repository.hasSessions()&&await this.repository.clear(),this.proctoringSession=new vn,this.allRecorders=this.createRecorders(this.sessionOptions),await this.recorder.startAll();let o=await this.backend.confirmStart({clientId:this.context.clientId,examId:this.context.examId,token:this.context.token},this.sessionOptions.proctoringType,this.geolocation?this.geolocation.coords.latitude:void 0,this.geolocation?this.geolocation.coords.longitude:void 0);this.proctoringId=o.id,this.allRecorders.cameraRecorder.setProctoringId(this.proctoringId),this.allRecorders.noiseRecorder.setProctoringId(this.proctoringId),this.proctoringSession.setProctoringId(this.proctoringId),await this.repository.save(this.proctoringSession);let f={};for(let R in navigator)f[R]=navigator[R];return Je.registerStart(this.proctoringId,!0,`Version: ${Qa()}
205
- Navigator: ${JSON.stringify(f)}`),o.cameraStream=this.allRecorders.cameraRecorder.cameraStream,this.allRecorders.screenRecorder&&(o.screenStream=this.allRecorders.screenRecorder.screenStream),this.state="Recording",o}catch(i){throw await this.cancel(),this.proctoringId&&Je.registerStart(this.proctoringId,!1,`Token: ${this.context.token}
206
- Version: ${Qa()}
242
+ `,o=document.createElement("style");o.innerHTML=i,document.head.appendChild(o)}};var ws=class{constructor(t){this.context=t;this.paramsConfig={audioBehaviourParameters:{recordingBitrate:128,noiseLimit:40},imageBehaviourParameters:{frames:40,useUploadImage:!0,uploadInterval:20,saveVideo:!0},videoBehaviourParameters:{detectFace:!1,detectPerson:!1,detectCellPhone:!1,detectNoise:!1,detectSpeech:!1}};this.proctoringId="";this.insights=void 0;this.state="Stop";this.serviceType="Upload";this.onStopSharingScreenCallback=()=>{};this.onLostFocusCallback=()=>{};this.onFocusCallback=()=>{};this.onChangeDevicesCallback=t=>{};this.onRealtimeAlertsCallback=t=>{};this.onBufferSizeErrorCallback=()=>{};this.backend=new Kr({type:t.type||"prod",token:t.token}),this.repository=new so("EasyProctorDb","exams2"),this.repositoryDevices=new so("EasyProctorDbDevices","devices"),this.context.credentials?.cpf&&(this.auth=new bs(this.context.credentials.cpf,this.backend))}setOnStopSharingScreenCallback(t){this.onStopSharingScreenCallback=()=>{I.registerStopSharingScreen(this.proctoringId,"Stop sharing screen"),t()}}setOnLostFocusCallback(t){this.onLostFocusCallback=()=>t()}setOnFocusCallback(t){this.onFocusCallback=()=>t()}async onChangeDevices(t={}){new Fn(this.repositoryDevices,this.proctoringId).startRecording(t),this.onChangeDevicesCallback=i=>t.status&&t.status(i)}async onRealtimeAlerts(t={}){this.onRealtimeAlertsCallback=r=>t.data&&t.data(r)}setOnBufferSizeErrorCallback(t){this.onBufferSizeErrorCallback=()=>t()}createRecorders(t=er){this.onChangeDevices();let r=new wt({cameraId:this.sessionOptions.cameraId,microphoneId:this.sessionOptions.microphoneId,onBufferSizeError:this.sessionOptions.onBufferSizeError,onBufferSizeErrorCallback:()=>this.onBufferSizeErrorCallback(),proctoringType:this.sessionOptions.proctoringType,onChangeDevicesCallback:a=>this.onChangeDevicesCallback(a),onRealtimeAlertsCallback:a=>this.onRealtimeAlertsCallback(a)},{width:this.videoOptions.width,height:this.videoOptions.height,minWidth:this.videoOptions.minWidth,minHeight:this.videoOptions.minHeight},this.paramsConfig,this.backend,this.context.token),i=this.sessionOptions.captureScreen?new vs({allowOnlyFirstMonitor:this.sessionOptions.allowOnlyFirstMonitor??!0,allowMultipleMonitors:this.sessionOptions.allowMultipleMonitors??!0,onStopSharingScreenCallback:()=>this.onStopSharingScreenCallback(),onBufferSizeError:this.sessionOptions.onBufferSizeError,onBufferSizeErrorCallback:()=>this.onBufferSizeErrorCallback()}):void 0,o=new Mn({onFocusCallback:()=>this.onFocusCallback(),onLostFocusCallback:()=>this.onLostFocusCallback()},t,r),n=new ys(t,this.proctoringSession,this.paramsConfig,r,a=>this.onRealtimeAlertsCallback(a),this.backend,this.context.token),s=[r,i,o].filter(Boolean);return s.push(n),this.recorder=new Bn(this.proctoringSession,s),{cameraRecorder:r,screenRecorder:i,alertRecorder:o,noiseRecorder:n}}async login(){if(!this.context.credentials?.cpf)throw tu;this.context.token=await this.auth.login()}async start(t=er,r={}){try{if(this.context.token===void 0)throw eu;this.extension=new Dn,this.extension.addEventListener();let i=this.backend.selectBaseUrl(this.context.type),o=await Qe();if(await this.repositoryDevices.save({...o,id:"devices"}),this.sessionOptions={...er,...t},this.videoOptions=In(r),await this.initConfig(t.useGeolocation),await this.verifyBrowser(),this.sessionOptions.captureScreen&&await this.verifyMultipleMonitors(this.sessionOptions),this.state!="Stop")throw Jl;this.state="Starting",await this.repository.hasSessions()&&await this.repository.clear(),this.proctoringSession=new Ao,this.allRecorders=this.createRecorders(this.sessionOptions),await this.recorder.startAll();let n=await this.backend.confirmStart({clientId:this.context.clientId,examId:this.context.examId,token:this.context.token},this.sessionOptions.proctoringType,this.geolocation?this.geolocation.coords.latitude:void 0,this.geolocation?this.geolocation.coords.longitude:void 0);this.proctoringId=n.id,this.allRecorders.cameraRecorder.setProctoringId(this.proctoringId),this.allRecorders.noiseRecorder.setProctoringId(this.proctoringId),this.proctoringSession.setProctoringId(this.proctoringId),await this.repository.save(this.proctoringSession);let s={};for(let a in navigator)s[a]=navigator[a];return I.registerStart(this.proctoringId,!0,`Version: ${ao()}
243
+ Navigator: ${JSON.stringify(s)}`),n.cameraStream=this.allRecorders.cameraRecorder.cameraStream,this.allRecorders.screenRecorder&&(n.screenStream=this.allRecorders.screenRecorder.screenStream),this.state="Recording",n}catch(i){throw await this.cancel(),this.proctoringId&&I.registerStart(this.proctoringId,!1,`Token: ${this.context.token}
244
+ Version: ${ao()}
207
245
  Navigator: ${navigator}
208
- Error: ${i}`),this.state="Stop",i}}async cancel(){(this.state==="Recording"||this.state==="Starting")&&await this.recorder.stopAll(),this.state="Stop"}async finish(t={}){try{if(this.extension.options=t,this.state!=="Recording")throw Pn;await this.recorder.stopAll(),await this.recorder.saveAllOnSession(),await this.repository.save(this.proctoringSession);let r,i;Qa()!=="1.0.0.0"?(r=new ia(this.proctoringSession,this.proctoringId,[new ra(this.proctoringId)]),i="Download",this.serviceType="Download"):(r=new ia(this.proctoringSession,this.proctoringId,[new $r(this.proctoringId,this.backend),new ra(this.proctoringId)]),i="Upload",this.serviceType="Upload");let n=!1;this.extension.hasExtension&&await this.extension.start().then(o=>{n=o}).catch(o=>{n=!1}),(!n||!this.extension.hasExtension)&&(await r.upload(this.context.token,t.onProgress).catch(async o=>{Je.registerUpload(this.proctoringSession.id,!1,`upload error: ${o}
246
+ Error: ${i}`),this.state="Stop",i}}async cancel(){(this.state==="Recording"||this.state==="Starting")&&await this.recorder.stopAll(),this.state="Stop"}async finish(t={}){try{if(this.extension.options=t,this.state!=="Recording")throw zo;await this.recorder.stopAll(),await this.recorder.saveAllOnSession(),await this.repository.save(this.proctoringSession);let r,i;ao()!=="1.0.0.0"?(r=new Yr(this.proctoringSession,this.proctoringId,[new Jr(this.proctoringId)]),i="Download",this.serviceType="Download"):(r=new Yr(this.proctoringSession,this.proctoringId,[new Ct(this.proctoringId,this.backend),new Jr(this.proctoringId)]),i="Upload",this.serviceType="Upload");let o=!1;this.extension.hasExtension&&await this.extension.start().then(n=>{o=n}).catch(n=>{o=!1}),(!o||!this.extension.hasExtension)&&(await r.upload(this.context.token,t.onProgress).catch(async n=>{I.registerUpload(this.proctoringSession.id,!1,`upload error: ${n}
209
247
 
210
- Upload Services: ${i}`,this.serviceType),Qa()!=="1.0.0.0"&&(r=new ia(this.proctoringSession,this.proctoringId,[new $r(this.proctoringId,this.backend),new ra(this.proctoringId)]),i="Upload",this.serviceType="Upload",i="Download",this.serviceType="Download",await r.upload(this.context.token,t.onProgress).catch(f=>{Je.registerUpload(this.proctoringSession.id,!1,`upload backup error: ${f}
248
+ Upload Services: ${i}`,this.serviceType),ao()!=="1.0.0.0"&&(r=new Yr(this.proctoringSession,this.proctoringId,[new Ct(this.proctoringId,this.backend),new Jr(this.proctoringId)]),i="Upload",this.serviceType="Upload",i="Download",this.serviceType="Download",await r.upload(this.context.token,t.onProgress).catch(s=>{I.registerUpload(this.proctoringSession.id,!1,`upload backup error: ${s}
211
249
 
212
250
  Upload Services: ${i}
213
- Upload backup for Safe Browser`,this.serviceType)}))}),Je.registerUpload(this.proctoringSession.id,!0,`upload success
251
+ Upload backup for Safe Browser`,this.serviceType)}))}),I.registerUpload(this.proctoringSession.id,!0,`upload success
214
252
 
215
- Upload Services: ${i}`,this.serviceType)),await this.backend.saveScreenAlerts(this.context,this.proctoringSession).catch(o=>{Je.registerFinish(this.proctoringSession.id,!1,"save-screen error: "+o)}),await this.backend.finishAndSendUrls(this.context,this.proctoringSession).then(()=>{Je.registerFinish(this.proctoringSession.id,!0,"")}).catch(o=>{Je.registerFinish(this.proctoringSession.id,!1,"finish error: "+o)}),this.state="Stop"}catch(r){throw await this.cancel(),Je.registerFinish(this.proctoringId,!1,`Token: ${this.context.token}
216
- Error: `+r),this.state="Stop",r}}async verifyMultipleMonitors(t){if(!t.allowMultipleMonitors&&await pn())throw Je.registerError(this.proctoringId,"Multiplas telas detectadas!"),On}async verifyBrowser(){let t=await gc();if(t!=="chrome"&&t!=="firefox")throw Je.registerBrowserNotSupported(this.proctoringId,`Browser n\xE3o suportado:
217
- Tentativa utilizando o browser ${t}`),f1}async initConfig(t){try{let r=await this.backend.getParamsConfig(this.context);this.paramsConfig={...this.paramsConfig,...r,audioBehaviourParameters:{...this.paramsConfig.audioBehaviourParameters,...r.audioBehaviourParameters},imageBehaviourParameters:{...this.paramsConfig.imageBehaviourParameters,...r.imageBehaviourParameters},videoBehaviourParameters:{...this.paramsConfig.videoBehaviourParameters,...r.videoBehaviourParameters}},t&&(this.geolocation=await Tc().then(i=>i).catch(i=>{throw i.message})),k0(this.backend)}catch(r){throw this.proctoringId&&Je.registerError(this.proctoringId,"Erro no initConfig!"),await this.cancel(),r}}async getServerDate(){let t=await this.backend.getServerHour(this.context.token).catch(i=>{Je.registerError(this.proctoringId,"N\xE3o foi poss\xEDvel requisitar a data do servidor!")});return t?new Date(t.toString()):new Date}async pause(){if(this.state!=="Recording")throw Je.registerError(this.proctoringId,"Proctoring n\xE3o iniciado!"),Pn;await this.recorder.stopAll(),await this.recorder.saveAllOnSession(),await this.repository.save(this.proctoringSession),this.state="Paused"}async resume(){if(this.state!="Paused")throw Pn;return await this.verifyBrowser(),await this.verifyMultipleMonitors(this.sessionOptions),await this.recorder.startAll(),this.proctoringSession.recordings=[],await this.repository.save(this.proctoringSession),this.state="Recording",{cameraStream:this.allRecorders.cameraRecorder.cameraStream,_screenStream:this.allRecorders.screenRecorder?.screenStream}}};function a0(e,t="prod"){let r=new Rs({type:t,clientId:e.clientId,examId:e.examId,token:e.token,credentials:e.credentials}),i=new Nn({type:t,clientId:e.clientId,examId:e.examId,token:e.token,credentials:e.credentials}),n=new ea,o=r.login.bind(r),f=r.start.bind(r),R=r.finish.bind(r),k=r.pause.bind(r),F=r.resume.bind(r),Q=r.setOnFocusCallback.bind(r),ee=r.setOnLostFocusCallback.bind(r),Ee=r.onChangeDevices.bind(r),Ie=r.setOnBufferSizeErrorCallback.bind(r),pe=r.setOnStopSharingScreenCallback.bind(r),Te=r.onRealtimeAlerts.bind(r),te=i.checkDevices.bind(i),Ue=n.takePicture.bind(n);return{login:o,start:f,finish:R,onFocus:Q,onLostFocus:ee,onChangeDevices:Ee,onBufferSizeError:Ie,onRealtimeAlerts:Te,checkDevices:te,capturePhoto:Ue,pause:k,resume:F,enumarateDevices:yr,checkPermissions:_n,checkIfhasMultipleMonitors:pn,onStopSharingScreen:pe}}typeof window<"u"&&(window.useProctoring=a0);})();
253
+ Upload Services: ${i}`,this.serviceType)),await this.backend.saveScreenAlerts(this.context,this.proctoringSession).catch(n=>{I.registerFinish(this.proctoringSession.id,!1,"save-screen error: "+n)}),await this.backend.finishAndSendUrls(this.context,this.proctoringSession).then(()=>{I.registerFinish(this.proctoringSession.id,!0,"")}).catch(n=>{I.registerFinish(this.proctoringSession.id,!1,"finish error: "+n)}),this.state="Stop"}catch(r){throw await this.cancel(),I.registerFinish(this.proctoringId,!1,`Token: ${this.context.token}
254
+ Error: `+r),this.state="Stop",r}}async verifyMultipleMonitors(t){if(!t.allowMultipleMonitors&&await ko())throw I.registerError(this.proctoringId,"Multiplas telas detectadas!"),Vo}async verifyBrowser(){let t=await Em();if(t!=="chrome"&&t!=="firefox")throw I.registerBrowserNotSupported(this.proctoringId,`Browser n\xE3o suportado:
255
+ Tentativa utilizando o browser ${t}`),Ql}async initConfig(t){try{let r=await this.backend.getParamsConfig(this.context);this.paramsConfig={...this.paramsConfig,...r,audioBehaviourParameters:{...this.paramsConfig.audioBehaviourParameters,...r.audioBehaviourParameters},imageBehaviourParameters:{...this.paramsConfig.imageBehaviourParameters,...r.imageBehaviourParameters},videoBehaviourParameters:{...this.paramsConfig.videoBehaviourParameters,...r.videoBehaviourParameters}},t&&(this.geolocation=await _m().then(i=>i).catch(i=>{throw i.message})),ml(this.backend)}catch(r){throw this.proctoringId&&I.registerError(this.proctoringId,"Erro no initConfig!"),await this.cancel(),r}}async getServerDate(){let t=await this.backend.getServerHour(this.context.token).catch(i=>{I.registerError(this.proctoringId,"N\xE3o foi poss\xEDvel requisitar a data do servidor!")});return t?new Date(t.toString()):new Date}async pause(){if(this.state!=="Recording")throw I.registerError(this.proctoringId,"Proctoring n\xE3o iniciado!"),zo;await this.recorder.stopAll(),await this.recorder.saveAllOnSession(),await this.repository.save(this.proctoringSession),this.state="Paused"}async resume(){if(this.state!="Paused")throw zo;return await this.verifyBrowser(),await this.verifyMultipleMonitors(this.sessionOptions),await this.recorder.startAll(),this.proctoringSession.recordings=[],await this.repository.save(this.proctoringSession),this.state="Recording",{cameraStream:this.allRecorders.cameraRecorder.cameraStream,_screenStream:this.allRecorders.screenRecorder?.screenStream}}};function Zc(e,t="prod"){let r=new ws({type:t,clientId:e.clientId,examId:e.examId,token:e.token,credentials:e.credentials}),i=new On({type:t,clientId:e.clientId,examId:e.examId,token:e.token,credentials:e.credentials}),o=new Xr,n=r.login.bind(r),s=r.start.bind(r),a=r.finish.bind(r),c=r.pause.bind(r),l=r.resume.bind(r),u=r.setOnFocusCallback.bind(r),d=r.setOnLostFocusCallback.bind(r),f=r.onChangeDevices.bind(r),g=r.setOnBufferSizeErrorCallback.bind(r),h=r.setOnStopSharingScreenCallback.bind(r),m=r.onRealtimeAlerts.bind(r),y=i.checkDevices.bind(i),b=o.takePicture.bind(o);return{login:n,start:s,finish:a,onFocus:u,onLostFocus:d,onChangeDevices:f,onBufferSizeError:g,onRealtimeAlerts:m,checkDevices:y,capturePhoto:b,enumarateDevices:Qe,checkPermissions:_o,checkIfhasMultipleMonitors:ko,onStopSharingScreen:h}}console.log=()=>{};typeof window<"u"&&(window.useProctoring=Zc);})();