easyproctor-hml 0.0.15 → 0.0.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm/index.js +6 -3
- package/extension/extension.d.ts +2 -0
- package/index.js +6 -3
- package/package.json +1 -1
- package/unpkg/easyproctor.min.js +2 -2
package/esm/index.js
CHANGED
|
@@ -14707,14 +14707,16 @@ var Extension = class {
|
|
|
14707
14707
|
window.postMessage({ type: "easyproctor", func: "verifyExtensionEasyproctor" }, "*");
|
|
14708
14708
|
}
|
|
14709
14709
|
verify(event) {
|
|
14710
|
-
|
|
14711
|
-
|
|
14710
|
+
if (event.source == window && event.data.sender && event.data.sender === "easyproctor-extension" && event.data.message_name && event.data.message_name === "progress") {
|
|
14711
|
+
console.log("progress complete");
|
|
14712
|
+
this.onProgress(100);
|
|
14713
|
+
}
|
|
14712
14714
|
return new Promise((resolve, reject) => {
|
|
14713
14715
|
if (event.source == window && event.data.sender && event.data.sender === "easyproctor-extension" && event.data.message_name && event.data.message_name === "version") {
|
|
14714
14716
|
console.log("have extension");
|
|
14715
14717
|
this.hasExtension = true;
|
|
14718
|
+
resolve(this.hasExtension);
|
|
14716
14719
|
}
|
|
14717
|
-
resolve(this.hasExtension);
|
|
14718
14720
|
});
|
|
14719
14721
|
}
|
|
14720
14722
|
addEventListener() {
|
|
@@ -25259,6 +25261,7 @@ var Proctoring = class {
|
|
|
25259
25261
|
this.state = "Stop" /* Stop */;
|
|
25260
25262
|
}
|
|
25261
25263
|
async finish(options = {}) {
|
|
25264
|
+
this.extension.onProgress = () => options.onProgress;
|
|
25262
25265
|
console.log("proctoring.finish", options);
|
|
25263
25266
|
console.log("state ", this.state);
|
|
25264
25267
|
console.log("ProctoringState.Recording ", "Recording" /* Recording */);
|
package/extension/extension.d.ts
CHANGED
package/index.js
CHANGED
|
@@ -33648,14 +33648,16 @@ var Extension = class {
|
|
|
33648
33648
|
window.postMessage({ type: "easyproctor", func: "verifyExtensionEasyproctor" }, "*");
|
|
33649
33649
|
}
|
|
33650
33650
|
verify(event) {
|
|
33651
|
-
|
|
33652
|
-
|
|
33651
|
+
if (event.source == window && event.data.sender && event.data.sender === "easyproctor-extension" && event.data.message_name && event.data.message_name === "progress") {
|
|
33652
|
+
console.log("progress complete");
|
|
33653
|
+
this.onProgress(100);
|
|
33654
|
+
}
|
|
33653
33655
|
return new Promise((resolve, reject) => {
|
|
33654
33656
|
if (event.source == window && event.data.sender && event.data.sender === "easyproctor-extension" && event.data.message_name && event.data.message_name === "version") {
|
|
33655
33657
|
console.log("have extension");
|
|
33656
33658
|
this.hasExtension = true;
|
|
33659
|
+
resolve(this.hasExtension);
|
|
33657
33660
|
}
|
|
33658
|
-
resolve(this.hasExtension);
|
|
33659
33661
|
});
|
|
33660
33662
|
}
|
|
33661
33663
|
addEventListener() {
|
|
@@ -36793,6 +36795,7 @@ var Proctoring = class {
|
|
|
36793
36795
|
this.state = "Stop" /* Stop */;
|
|
36794
36796
|
}
|
|
36795
36797
|
async finish(options = {}) {
|
|
36798
|
+
this.extension.onProgress = () => options.onProgress;
|
|
36796
36799
|
console.log("proctoring.finish", options);
|
|
36797
36800
|
console.log("state ", this.state);
|
|
36798
36801
|
console.log("ProctoringState.Recording ", "Recording" /* Recording */);
|
package/package.json
CHANGED
package/unpkg/easyproctor.min.js
CHANGED
|
@@ -11,14 +11,14 @@ data bits: %d
|
|
|
11
11
|
total bits: %d (remainder: %d)
|
|
12
12
|
bitsperframe: %d
|
|
13
13
|
`,8*d.main_data_begin,u.ResvSize,d.resvDrain_post,d.resvDrain_pre,8*u.sideinfo_len,l-d.resvDrain_post-8*u.sideinfo_len,l,l%8,b),Nn.err.println("This is a fatal error. It has several possible causes:"),Nn.err.println("90%% LAME compiled with buggy version of gcc using advanced optimizations"),Nn.err.println(" 9%% Your system is overclocked"),Nn.err.println(" 1%% bug in LAME encoding library"),u.ResvSize=d.main_data_begin*8),ft(De%8==0),De>1e9){var m;for(m=0;m<Bt.MAX_HEADER_BUF;++m)u.header[m].write_timing-=De;De=0}return 0},this.copy_buffer=function(y,u,d,b,l){var m=j+1;if(m<=0)return 0;if(b!=0&&m>b)return-1;if(Nn.arraycopy(Be,0,u,d,m),j=-1,fe=0,l!=0){var g=sd(1);if(g[0]=y.nMusicCRC,ve.updateMusicCRC(g,u,d,m),y.nMusicCRC=g[0],m>0&&(y.VBR_seek_table.nBytesWritten+=m),y.decode_on_the_fly){for(var E=od([2,1152]),G=m,U=-1,z;U!=0;)if(U=ge.hip_decode1_unclipped(y.hip,u,d,G,E[0],E[1]),G=0,U==-1&&(U=0),U>0){if(ft(U<=1152),y.findPeakSample){for(z=0;z<U;z++)E[0][z]>y.PeakSample?y.PeakSample=E[0][z]:-E[0][z]>y.PeakSample&&(y.PeakSample=-E[0][z]);if(y.channels_out>1)for(z=0;z<U;z++)E[1][z]>y.PeakSample?y.PeakSample=E[1][z]:-E[1][z]>y.PeakSample&&(y.PeakSample=-E[1][z])}if(y.findReplayGain&&$.AnalyzeSamples(y.rgdata,E[0],0,E[1],0,U,y.channels_out)==zi.GAIN_ANALYSIS_ERROR)return-6}}}return m},this.init_bit_stream_w=function(y){Be=id(At.LAME_MAXMP3BUFFER),y.h_ptr=y.w_ptr=0,y.header[y.h_ptr].write_timing=0,j=-1,fe=0,De=0}}var ea=Vo,ld=N.System,Dt=N.VbrMode,l0=N.ShortBlock,Ta=N.new_float,I1=N.new_int_n,cd=N.new_short_n,Gr=N.assert;function tr(){var C=this,Y=128*1024;tr.V9=410,tr.V8=420,tr.V7=430,tr.V6=440,tr.V5=450,tr.V4=460,tr.V3=470,tr.V2=480,tr.V1=490,tr.V0=500,tr.R3MIX=1e3,tr.STANDARD=1001,tr.EXTREME=1002,tr.INSANE=1003,tr.STANDARD_FAST=1004,tr.EXTREME_FAST=1005,tr.MEDIUM=1006,tr.MEDIUM_FAST=1007;var re=16384+Y;tr.LAME_MAXMP3BUFFER=re;var $,ge,Z,ve,Be,De=new Ar,j,fe,he,M;this.enc=new R,this.setModules=function(f,S,ce,pe,Oe,Ue,je,ze,nt){$=f,ge=S,Z=ce,ve=pe,Be=Oe,j=Ue,fe=je,he=ze,M=nt,this.enc.setModules(ge,De,ve,j)};function X(){this.mask_adjust=0,this.mask_adjust_short=0,this.bo_l_weight=Ta(R.SBMAX_l),this.bo_s_weight=Ta(R.SBMAX_s)}function i(){this.lowerlimit=0}function I(f,S){this.lowpass=S}var H=4294479419;function D(f){var S;return f.class_id=H,S=f.internal_flags=new Bt,f.mode=rr.NOT_SET,f.original=1,f.in_samplerate=44100,f.num_channels=2,f.num_samples=-1,f.bWriteVbrTag=!0,f.quality=-1,f.short_blocks=null,S.subblock_gain=-1,f.lowpassfreq=0,f.highpassfreq=0,f.lowpasswidth=-1,f.highpasswidth=-1,f.VBR=Dt.vbr_off,f.VBR_q=4,f.ATHcurve=-1,f.VBR_mean_bitrate_kbps=128,f.VBR_min_bitrate_kbps=0,f.VBR_max_bitrate_kbps=0,f.VBR_hard_min=0,S.VBR_min_bitrate=1,S.VBR_max_bitrate=13,f.quant_comp=-1,f.quant_comp_short=-1,f.msfix=-1,S.resample_ratio=1,S.OldValue[0]=180,S.OldValue[1]=180,S.CurrentStep[0]=4,S.CurrentStep[1]=4,S.masking_lower=1,S.nsPsy.attackthre=-1,S.nsPsy.attackthre_s=-1,f.scale=-1,f.athaa_type=-1,f.ATHtype=-1,f.athaa_loudapprox=-1,f.athaa_sensitivity=0,f.useTemporal=null,f.interChRatio=-1,S.mf_samples_to_encode=R.ENCDELAY+R.POSTDELAY,f.encoder_padding=0,S.mf_size=R.ENCDELAY-R.MDCTDELAY,f.findReplayGain=!1,f.decode_on_the_fly=!1,S.decode_on_the_fly=!1,S.findReplayGain=!1,S.findPeakSample=!1,S.RadioGain=0,S.AudiophileGain=0,S.noclipGainChange=0,S.noclipScale=-1,f.preset=0,f.write_id3tag_automatic=!0,0}this.lame_init=function(){var f=new n0,S=D(f);return S!=0?null:(f.lame_allocated_gfp=1,f)};function x(f){return f>1?0:f<=0?1:Math.cos(Math.PI/2*f)}this.nearestBitrateFullIndex=function(f){var S=[8,16,24,32,40,48,56,64,80,96,112,128,160,192,224,256,320],ce=0,pe=0,Oe=0,Ue=0;Ue=S[16],Oe=16,pe=S[16],ce=16;for(var je=0;je<16;je++)if(Math.max(f,S[je+1])!=f){Ue=S[je+1],Oe=je+1,pe=S[je],ce=je;break}return Ue-f>f-pe?ce:Oe};function p(f,S){var ce=44100;return S>=48e3?ce=48e3:S>=44100?ce=44100:S>=32e3?ce=32e3:S>=24e3?ce=24e3:S>=22050?ce=22050:S>=16e3?ce=16e3:S>=12e3?ce=12e3:S>=11025?ce=11025:S>=8e3&&(ce=8e3),f==-1?ce:(f<=15960&&(ce=44100),f<=15250&&(ce=32e3),f<=11220&&(ce=24e3),f<=9970&&(ce=22050),f<=7230&&(ce=16e3),f<=5420&&(ce=12e3),f<=4510&&(ce=11025),f<=3970&&(ce=8e3),S<ce?S>44100?48e3:S>32e3?44100:S>24e3?32e3:S>22050?24e3:S>16e3?22050:S>12e3?16e3:S>11025?12e3:S>8e3?11025:8e3:ce)}function B(f,S){switch(f){case 44100:return S.version=1,0;case 48e3:return S.version=1,1;case 32e3:return S.version=1,2;case 22050:return S.version=0,0;case 24e3:return S.version=0,1;case 16e3:return S.version=0,2;case 11025:return S.version=0,0;case 12e3:return S.version=0,1;case 8e3:return S.version=0,2;default:return S.version=0,-1}}function q(f,S,ce){ce<16e3&&(S=2);for(var pe=bt.bitrate_table[S][1],Oe=2;Oe<=14;Oe++)bt.bitrate_table[S][Oe]>0&&Math.abs(bt.bitrate_table[S][Oe]-f)<Math.abs(pe-f)&&(pe=bt.bitrate_table[S][Oe]);return pe}function T(f,S,ce){ce<16e3&&(S=2);for(var pe=0;pe<=14;pe++)if(bt.bitrate_table[S][pe]>0&&bt.bitrate_table[S][pe]==f)return pe;return-1}function c(f,S){var ce=[new I(8,2e3),new I(16,3700),new I(24,3900),new I(32,5500),new I(40,7e3),new I(48,7500),new I(56,1e4),new I(64,11e3),new I(80,13500),new I(96,15100),new I(112,15600),new I(128,17e3),new I(160,17500),new I(192,18600),new I(224,19400),new I(256,19700),new I(320,20500)],pe=C.nearestBitrateFullIndex(S);f.lowerlimit=ce[pe].lowpass}function O(f){var S=f.internal_flags,ce=32,pe=-1;if(S.lowpass1>0){for(var Oe=999,Ue=0;Ue<=31;Ue++){var je=Ue/31;je>=S.lowpass2&&(ce=Math.min(ce,Ue)),S.lowpass1<je&&je<S.lowpass2&&(Oe=Math.min(Oe,Ue))}Oe==999?S.lowpass1=(ce-.75)/31:S.lowpass1=(Oe-.75)/31,S.lowpass2=ce/31}if(S.highpass2>0&&S.highpass2<.9*(.75/31)&&(S.highpass1=0,S.highpass2=0,ld.err.println(`Warning: highpass filter disabled. highpass frequency too small
|
|
14
|
-
`)),S.highpass2>0){for(var ze=-1,Ue=0;Ue<=31;Ue++){var je=Ue/31;je<=S.highpass1&&(pe=Math.max(pe,Ue)),S.highpass1<je&&je<S.highpass2&&(ze=Math.max(ze,Ue))}S.highpass1=pe/31,ze==-1?S.highpass2=(pe+.75)/31:S.highpass2=(ze+.75)/31}for(var Ue=0;Ue<32;Ue++){var nt,Xe,je=Ue/31;S.highpass2>S.highpass1?nt=x((S.highpass2-je)/(S.highpass2-S.highpass1+1e-20)):nt=1,S.lowpass2>S.lowpass1?Xe=x((je-S.lowpass1)/(S.lowpass2-S.lowpass1+1e-20)):Xe=1,S.amp_filter[Ue]=nt*Xe}}function y(f){var S=f.internal_flags;switch(f.quality){default:case 9:S.psymodel=0,S.noise_shaping=0,S.noise_shaping_amp=0,S.noise_shaping_stop=0,S.use_best_huffman=0,S.full_outer_loop=0;break;case 8:f.quality=7;case 7:S.psymodel=1,S.noise_shaping=0,S.noise_shaping_amp=0,S.noise_shaping_stop=0,S.use_best_huffman=0,S.full_outer_loop=0;break;case 6:S.psymodel=1,S.noise_shaping==0&&(S.noise_shaping=1),S.noise_shaping_amp=0,S.noise_shaping_stop=0,S.subblock_gain==-1&&(S.subblock_gain=1),S.use_best_huffman=0,S.full_outer_loop=0;break;case 5:S.psymodel=1,S.noise_shaping==0&&(S.noise_shaping=1),S.noise_shaping_amp=0,S.noise_shaping_stop=0,S.subblock_gain==-1&&(S.subblock_gain=1),S.use_best_huffman=0,S.full_outer_loop=0;break;case 4:S.psymodel=1,S.noise_shaping==0&&(S.noise_shaping=1),S.noise_shaping_amp=0,S.noise_shaping_stop=0,S.subblock_gain==-1&&(S.subblock_gain=1),S.use_best_huffman=1,S.full_outer_loop=0;break;case 3:S.psymodel=1,S.noise_shaping==0&&(S.noise_shaping=1),S.noise_shaping_amp=1,S.noise_shaping_stop=1,S.subblock_gain==-1&&(S.subblock_gain=1),S.use_best_huffman=1,S.full_outer_loop=0;break;case 2:S.psymodel=1,S.noise_shaping==0&&(S.noise_shaping=1),S.substep_shaping==0&&(S.substep_shaping=2),S.noise_shaping_amp=1,S.noise_shaping_stop=1,S.subblock_gain==-1&&(S.subblock_gain=1),S.use_best_huffman=1,S.full_outer_loop=0;break;case 1:S.psymodel=1,S.noise_shaping==0&&(S.noise_shaping=1),S.substep_shaping==0&&(S.substep_shaping=2),S.noise_shaping_amp=2,S.noise_shaping_stop=1,S.subblock_gain==-1&&(S.subblock_gain=1),S.use_best_huffman=1,S.full_outer_loop=0;break;case 0:S.psymodel=1,S.noise_shaping==0&&(S.noise_shaping=1),S.substep_shaping==0&&(S.substep_shaping=2),S.noise_shaping_amp=2,S.noise_shaping_stop=1,S.subblock_gain==-1&&(S.subblock_gain=1),S.use_best_huffman=1,S.full_outer_loop=0;break}}function u(f){var S=f.internal_flags;f.frameNum=0,f.write_id3tag_automatic&&he.id3tag_write_v2(f),S.bitrate_stereoMode_Hist=I1([16,4+1]),S.bitrate_blockType_Hist=I1([16,4+1+1]),S.PeakSample=0,f.bWriteVbrTag&&j.InitVbrTag(f)}this.lame_init_params=function(f){var S=f.internal_flags;if(S.Class_ID=0,S.ATH==null&&(S.ATH=new Wf),S.PSY==null&&(S.PSY=new X),S.rgdata==null&&(S.rgdata=new $f),S.channels_in=f.num_channels,S.channels_in==1&&(f.mode=rr.MONO),S.channels_out=f.mode==rr.MONO?1:2,S.mode_ext=R.MPG_MD_MS_LR,f.mode==rr.MONO&&(f.force_ms=!1),f.VBR==Dt.vbr_off&&f.VBR_mean_bitrate_kbps!=128&&f.brate==0&&(f.brate=f.VBR_mean_bitrate_kbps),f.VBR==Dt.vbr_off||f.VBR==Dt.vbr_mtrh||f.VBR==Dt.vbr_mt||(f.free_format=!1),f.VBR==Dt.vbr_off&&f.brate==0&&ea.EQ(f.compression_ratio,0)&&(f.compression_ratio=11.025),f.VBR==Dt.vbr_off&&f.compression_ratio>0&&(f.out_samplerate==0&&(f.out_samplerate=map2MP3Frequency(int(.97*f.in_samplerate))),f.brate=0|f.out_samplerate*16*S.channels_out/(1e3*f.compression_ratio),S.samplerate_index=B(f.out_samplerate,f),f.free_format||(f.brate=q(f.brate,f.version,f.out_samplerate))),f.out_samplerate!=0&&(f.out_samplerate<16e3?(f.VBR_mean_bitrate_kbps=Math.max(f.VBR_mean_bitrate_kbps,8),f.VBR_mean_bitrate_kbps=Math.min(f.VBR_mean_bitrate_kbps,64)):f.out_samplerate<32e3?(f.VBR_mean_bitrate_kbps=Math.max(f.VBR_mean_bitrate_kbps,8),f.VBR_mean_bitrate_kbps=Math.min(f.VBR_mean_bitrate_kbps,160)):(f.VBR_mean_bitrate_kbps=Math.max(f.VBR_mean_bitrate_kbps,32),f.VBR_mean_bitrate_kbps=Math.min(f.VBR_mean_bitrate_kbps,320))),f.lowpassfreq==0){var ce=16e3;switch(f.VBR){case Dt.vbr_off:{var pe=new i;c(pe,f.brate),ce=pe.lowerlimit;break}case Dt.vbr_abr:{var pe=new i;c(pe,f.VBR_mean_bitrate_kbps),ce=pe.lowerlimit;break}case Dt.vbr_rh:{var Oe=[19500,19e3,18600,18e3,17500,16e3,15600,14900,12500,1e4,3950];if(0<=f.VBR_q&&f.VBR_q<=9){var Ue=Oe[f.VBR_q],je=Oe[f.VBR_q+1],ze=f.VBR_q_frac;ce=linear_int(Ue,je,ze)}else ce=19500;break}default:{var Oe=[19500,19e3,18500,18e3,17500,16500,15500,14500,12500,9500,3950];if(0<=f.VBR_q&&f.VBR_q<=9){var Ue=Oe[f.VBR_q],je=Oe[f.VBR_q+1],ze=f.VBR_q_frac;ce=linear_int(Ue,je,ze)}else ce=19500}}f.mode==rr.MONO&&(f.VBR==Dt.vbr_off||f.VBR==Dt.vbr_abr)&&(ce*=1.5),f.lowpassfreq=ce|0}if(f.out_samplerate==0&&(2*f.lowpassfreq>f.in_samplerate&&(f.lowpassfreq=f.in_samplerate/2),f.out_samplerate=p(f.lowpassfreq|0,f.in_samplerate)),f.lowpassfreq=Math.min(20500,f.lowpassfreq),f.lowpassfreq=Math.min(f.out_samplerate/2,f.lowpassfreq),f.VBR==Dt.vbr_off&&(f.compression_ratio=f.out_samplerate*16*S.channels_out/(1e3*f.brate)),f.VBR==Dt.vbr_abr&&(f.compression_ratio=f.out_samplerate*16*S.channels_out/(1e3*f.VBR_mean_bitrate_kbps)),f.bWriteVbrTag||(f.findReplayGain=!1,f.decode_on_the_fly=!1,S.findPeakSample=!1),S.findReplayGain=f.findReplayGain,S.decode_on_the_fly=f.decode_on_the_fly,S.decode_on_the_fly&&(S.findPeakSample=!0),S.findReplayGain&&$.InitGainAnalysis(S.rgdata,f.out_samplerate)==zi.INIT_GAIN_ANALYSIS_ERROR)return f.internal_flags=null,-6;switch(S.decode_on_the_fly&&!f.decode_only&&(S.hip!=null&&M.hip_decode_exit(S.hip),S.hip=M.hip_decode_init()),S.mode_gr=f.out_samplerate<=24e3?1:2,f.framesize=576*S.mode_gr,f.encoder_delay=R.ENCDELAY,S.resample_ratio=f.in_samplerate/f.out_samplerate,f.VBR){case Dt.vbr_mt:case Dt.vbr_rh:case Dt.vbr_mtrh:{var nt=[5.7,6.5,7.3,8.2,10,11.9,13,14,15,16.5];f.compression_ratio=nt[f.VBR_q]}break;case Dt.vbr_abr:f.compression_ratio=f.out_samplerate*16*S.channels_out/(1e3*f.VBR_mean_bitrate_kbps);break;default:f.compression_ratio=f.out_samplerate*16*S.channels_out/(1e3*f.brate);break}if(f.mode==rr.NOT_SET&&(f.mode=rr.JOINT_STEREO),f.highpassfreq>0?(S.highpass1=2*f.highpassfreq,f.highpasswidth>=0?S.highpass2=2*(f.highpassfreq+f.highpasswidth):S.highpass2=(1+0)*2*f.highpassfreq,S.highpass1/=f.out_samplerate,S.highpass2/=f.out_samplerate):(S.highpass1=0,S.highpass2=0),f.lowpassfreq>0?(S.lowpass2=2*f.lowpassfreq,f.lowpasswidth>=0?(S.lowpass1=2*(f.lowpassfreq-f.lowpasswidth),S.lowpass1<0&&(S.lowpass1=0)):S.lowpass1=(1-0)*2*f.lowpassfreq,S.lowpass1/=f.out_samplerate,S.lowpass2/=f.out_samplerate):(S.lowpass1=0,S.lowpass2=0),O(f),S.samplerate_index=B(f.out_samplerate,f),S.samplerate_index<0)return f.internal_flags=null,-1;if(f.VBR==Dt.vbr_off){if(f.free_format)S.bitrate_index=0;else if(f.brate=q(f.brate,f.version,f.out_samplerate),S.bitrate_index=T(f.brate,f.version,f.out_samplerate),S.bitrate_index<=0)return f.internal_flags=null,-1}else S.bitrate_index=1;f.analysis&&(f.bWriteVbrTag=!1),S.pinfo!=null&&(f.bWriteVbrTag=!1),ge.init_bit_stream_w(S);for(var Xe=S.samplerate_index+3*f.version+6*(f.out_samplerate<16e3?1:0),Ve=0;Ve<R.SBMAX_l+1;Ve++)S.scalefac_band.l[Ve]=ve.sfBandIndex[Xe].l[Ve];for(var Ve=0;Ve<R.PSFB21+1;Ve++){var gt=(S.scalefac_band.l[22]-S.scalefac_band.l[21])/R.PSFB21,Ft=S.scalefac_band.l[21]+Ve*gt;S.scalefac_band.psfb21[Ve]=Ft}S.scalefac_band.psfb21[R.PSFB21]=576;for(var Ve=0;Ve<R.SBMAX_s+1;Ve++)S.scalefac_band.s[Ve]=ve.sfBandIndex[Xe].s[Ve];for(var Ve=0;Ve<R.PSFB12+1;Ve++){var gt=(S.scalefac_band.s[13]-S.scalefac_band.s[12])/R.PSFB12,Ft=S.scalefac_band.s[12]+Ve*gt;S.scalefac_band.psfb12[Ve]=Ft}S.scalefac_band.psfb12[R.PSFB12]=192,f.version==1?S.sideinfo_len=S.channels_out==1?4+17:4+32:S.sideinfo_len=S.channels_out==1?4+9:4+17,f.error_protection&&(S.sideinfo_len+=2),u(f),S.Class_ID=H;{var wt;for(wt=0;wt<19;wt++)S.nsPsy.pefirbuf[wt]=700*S.mode_gr*S.channels_out;f.ATHtype==-1&&(f.ATHtype=4)}switch(Gr(f.VBR_q<=9),Gr(f.VBR_q>=0),f.VBR){case Dt.vbr_mt:f.VBR=Dt.vbr_mtrh;case Dt.vbr_mtrh:{f.useTemporal==null&&(f.useTemporal=!1),Z.apply_preset(f,500-f.VBR_q*10,0),f.quality<0&&(f.quality=LAME_DEFAULT_QUALITY),f.quality<5&&(f.quality=0),f.quality>5&&(f.quality=5),S.PSY.mask_adjust=f.maskingadjust,S.PSY.mask_adjust_short=f.maskingadjust_short,f.experimentalY?S.sfb21_extra=!1:S.sfb21_extra=f.out_samplerate>44e3,S.iteration_loop=new VBRNewIterationLoop(Be);break}case Dt.vbr_rh:{Z.apply_preset(f,500-f.VBR_q*10,0),S.PSY.mask_adjust=f.maskingadjust,S.PSY.mask_adjust_short=f.maskingadjust_short,f.experimentalY?S.sfb21_extra=!1:S.sfb21_extra=f.out_samplerate>44e3,f.quality>6&&(f.quality=6),f.quality<0&&(f.quality=LAME_DEFAULT_QUALITY),S.iteration_loop=new VBROldIterationLoop(Be);break}default:{var kt;S.sfb21_extra=!1,f.quality<0&&(f.quality=LAME_DEFAULT_QUALITY),kt=f.VBR,kt==Dt.vbr_off&&(f.VBR_mean_bitrate_kbps=f.brate),Z.apply_preset(f,f.VBR_mean_bitrate_kbps,0),f.VBR=kt,S.PSY.mask_adjust=f.maskingadjust,S.PSY.mask_adjust_short=f.maskingadjust_short,kt==Dt.vbr_off?S.iteration_loop=new ed(Be):S.iteration_loop=new ABRIterationLoop(Be);break}}if(Gr(f.scale>=0),f.VBR!=Dt.vbr_off){if(S.VBR_min_bitrate=1,S.VBR_max_bitrate=14,f.out_samplerate<16e3&&(S.VBR_max_bitrate=8),f.VBR_min_bitrate_kbps!=0&&(f.VBR_min_bitrate_kbps=q(f.VBR_min_bitrate_kbps,f.version,f.out_samplerate),S.VBR_min_bitrate=T(f.VBR_min_bitrate_kbps,f.version,f.out_samplerate),S.VBR_min_bitrate<0)||f.VBR_max_bitrate_kbps!=0&&(f.VBR_max_bitrate_kbps=q(f.VBR_max_bitrate_kbps,f.version,f.out_samplerate),S.VBR_max_bitrate=T(f.VBR_max_bitrate_kbps,f.version,f.out_samplerate),S.VBR_max_bitrate<0))return-1;f.VBR_min_bitrate_kbps=bt.bitrate_table[f.version][S.VBR_min_bitrate],f.VBR_max_bitrate_kbps=bt.bitrate_table[f.version][S.VBR_max_bitrate],f.VBR_mean_bitrate_kbps=Math.min(bt.bitrate_table[f.version][S.VBR_max_bitrate],f.VBR_mean_bitrate_kbps),f.VBR_mean_bitrate_kbps=Math.max(bt.bitrate_table[f.version][S.VBR_min_bitrate],f.VBR_mean_bitrate_kbps)}return f.tune&&(S.PSY.mask_adjust+=f.tune_value_a,S.PSY.mask_adjust_short+=f.tune_value_a),y(f),Gr(f.scale>=0),f.athaa_type<0?S.ATH.useAdjust=3:S.ATH.useAdjust=f.athaa_type,S.ATH.aaSensitivityP=Math.pow(10,f.athaa_sensitivity/-10),f.short_blocks==null&&(f.short_blocks=l0.short_block_allowed),f.short_blocks==l0.short_block_allowed&&(f.mode==rr.JOINT_STEREO||f.mode==rr.STEREO)&&(f.short_blocks=l0.short_block_coupled),f.quant_comp<0&&(f.quant_comp=1),f.quant_comp_short<0&&(f.quant_comp_short=0),f.msfix<0&&(f.msfix=0),f.exp_nspsytune=f.exp_nspsytune|1,f.internal_flags.nsPsy.attackthre<0&&(f.internal_flags.nsPsy.attackthre=Ar.NSATTACKTHRE),f.internal_flags.nsPsy.attackthre_s<0&&(f.internal_flags.nsPsy.attackthre_s=Ar.NSATTACKTHRE_S),Gr(f.scale>=0),f.scale<0&&(f.scale=1),f.ATHtype<0&&(f.ATHtype=4),f.ATHcurve<0&&(f.ATHcurve=4),f.athaa_loudapprox<0&&(f.athaa_loudapprox=2),f.interChRatio<0&&(f.interChRatio=0),f.useTemporal==null&&(f.useTemporal=!0),S.slot_lag=S.frac_SpF=0,f.VBR==Dt.vbr_off&&(S.slot_lag=S.frac_SpF=(f.version+1)*72e3*f.brate%f.out_samplerate|0),ve.iteration_init(f),De.psymodel_init(f),Gr(f.scale>=0),0};function d(f,S){(f.in_buffer_0==null||f.in_buffer_nsamples<S)&&(f.in_buffer_0=Ta(S),f.in_buffer_1=Ta(S),f.in_buffer_nsamples=S)}this.lame_encode_flush=function(f,S,ce,pe){var Oe=f.internal_flags,Ue=cd([2,1152]),je=0,ze,nt,Xe,Ve,gt=Oe.mf_samples_to_encode-R.POSTDELAY,Ft=b(f);if(Oe.mf_samples_to_encode<1)return 0;for(ze=0,f.in_samplerate!=f.out_samplerate&&(gt+=16*f.out_samplerate/f.in_samplerate),Xe=f.framesize-gt%f.framesize,Xe<576&&(Xe+=f.framesize),f.encoder_padding=Xe,Ve=(gt+Xe)/f.framesize;Ve>0&&je>=0;){var wt=Ft-Oe.mf_size,kt=f.frameNum;wt*=f.in_samplerate,wt/=f.out_samplerate,wt>1152&&(wt=1152),wt<1&&(wt=1),nt=pe-ze,pe==0&&(nt=0),je=this.lame_encode_buffer(f,Ue[0],Ue[1],wt,S,ce,nt),ce+=je,ze+=je,Ve-=kt!=f.frameNum?1:0}if(Oe.mf_samples_to_encode=0,je<0||(nt=pe-ze,pe==0&&(nt=0),ge.flush_bitstream(f),je=ge.copy_buffer(Oe,S,ce,nt,1),je<0))return je;if(ce+=je,ze+=je,nt=pe-ze,pe==0&&(nt=0),f.write_id3tag_automatic){if(he.id3tag_write_v1(f),je=ge.copy_buffer(Oe,S,ce,nt,0),je<0)return je;ze+=je}return ze},this.lame_encode_buffer=function(f,S,ce,pe,Oe,Ue,je){var ze=f.internal_flags,nt=[null,null];if(ze.Class_ID!=H)return-3;if(pe==0)return 0;d(ze,pe),nt[0]=ze.in_buffer_0,nt[1]=ze.in_buffer_1;for(var Xe=0;Xe<pe;Xe++)nt[0][Xe]=S[Xe],ze.channels_in>1&&(nt[1][Xe]=ce[Xe]);return l(f,nt[0],nt[1],pe,Oe,Ue,je)};function b(f){var S=R.BLKSIZE+f.framesize-R.FFTOFFSET;return S=Math.max(S,512+f.framesize-32),Gr(Bt.MFSIZE>=S),S}function l(f,S,ce,pe,Oe,Ue,je){var ze=f.internal_flags,nt=0,Xe,Ve,gt,Ft,wt,kt=[null,null],jt=[null,null];if(ze.Class_ID!=H)return-3;if(pe==0)return 0;if(wt=ge.copy_buffer(ze,Oe,Ue,je,0),wt<0)return wt;if(Ue+=wt,nt+=wt,jt[0]=S,jt[1]=ce,ea.NEQ(f.scale,0)&&ea.NEQ(f.scale,1))for(Ve=0;Ve<pe;++Ve)jt[0][Ve]*=f.scale,ze.channels_out==2&&(jt[1][Ve]*=f.scale);if(ea.NEQ(f.scale_left,0)&&ea.NEQ(f.scale_left,1))for(Ve=0;Ve<pe;++Ve)jt[0][Ve]*=f.scale_left;if(ea.NEQ(f.scale_right,0)&&ea.NEQ(f.scale_right,1))for(Ve=0;Ve<pe;++Ve)jt[1][Ve]*=f.scale_right;if(f.num_channels==2&&ze.channels_out==1)for(Ve=0;Ve<pe;++Ve)jt[0][Ve]=.5*(jt[0][Ve]+jt[1][Ve]),jt[1][Ve]=0;Ft=b(f),kt[0]=ze.mfbuf[0],kt[1]=ze.mfbuf[1];for(var Kt=0;pe>0;){var pr=[null,null],Fn=0,kr=0;pr[0]=jt[0],pr[1]=jt[1];var Lr=new g;if(Se(f,kt,pr,Kt,pe,Lr),Fn=Lr.n_in,kr=Lr.n_out,ze.findReplayGain&&!ze.decode_on_the_fly&&$.AnalyzeSamples(ze.rgdata,kt[0],ze.mf_size,kt[1],ze.mf_size,kr,ze.channels_out)==zi.GAIN_ANALYSIS_ERROR)return-6;if(pe-=Fn,Kt+=Fn,ze.channels_out==2,ze.mf_size+=kr,Gr(ze.mf_size<=Bt.MFSIZE),ze.mf_samples_to_encode<1&&(ze.mf_samples_to_encode=R.ENCDELAY+R.POSTDELAY),ze.mf_samples_to_encode+=kr,ze.mf_size>=Ft){var pn=je-nt;if(je==0&&(pn=0),Xe=m(f,kt[0],kt[1],Oe,Ue,pn),Xe<0)return Xe;for(Ue+=Xe,nt+=Xe,ze.mf_size-=f.framesize,ze.mf_samples_to_encode-=f.framesize,gt=0;gt<ze.channels_out;gt++)for(Ve=0;Ve<ze.mf_size;Ve++)kt[gt][Ve]=kt[gt][Ve+f.framesize]}}return Gr(pe==0),nt}function m(f,S,ce,pe,Oe,Ue){var je=C.enc.lame_encode_mp3_frame(f,S,ce,pe,Oe,Ue);return f.frameNum++,je}function g(){this.n_in=0,this.n_out=0}function E(){this.num_used=0}function G(f,S){return S!=0?G(S,f%S):f}function U(f,S,ce){var pe=Math.PI*S;f/=ce,f<0&&(f=0),f>1&&(f=1);var Oe=f-.5,Ue=.42-.5*Math.cos(2*f*Math.PI)+.08*Math.cos(4*f*Math.PI);return Math.abs(Oe)<1e-9?pe/Math.PI:Ue*Math.sin(ce*pe*Oe)/(Math.PI*ce*Oe)}function z(f,S,ce,pe,Oe,Ue,je,ze,nt){var Xe=f.internal_flags,Ve,gt=0,Ft,wt=f.out_samplerate/G(f.out_samplerate,f.in_samplerate);wt>Bt.BPC&&(wt=Bt.BPC);var kt=Math.abs(Xe.resample_ratio-Math.floor(.5+Xe.resample_ratio))<1e-4?1:0,jt=1/Xe.resample_ratio;jt>1&&(jt=1);var Kt=31;Kt%2==0&&--Kt,Kt+=kt;var pr=Kt+1;if(Xe.fill_buffer_resample_init==0){for(Xe.inbuf_old[0]=Ta(pr),Xe.inbuf_old[1]=Ta(pr),Ve=0;Ve<=2*wt;++Ve)Xe.blackfilt[Ve]=Ta(pr);for(Xe.itime[0]=0,Xe.itime[1]=0,gt=0;gt<=2*wt;gt++){var Fn=0,kr=(gt-wt)/(2*wt);for(Ve=0;Ve<=Kt;Ve++)Fn+=Xe.blackfilt[gt][Ve]=U(Ve-kr,jt,Kt);for(Ve=0;Ve<=Kt;Ve++)Xe.blackfilt[gt][Ve]/=Fn}Xe.fill_buffer_resample_init=1}var Lr=Xe.inbuf_old[nt];for(Ft=0;Ft<pe;Ft++){var pn,wa;if(pn=Ft*Xe.resample_ratio,gt=0|Math.floor(pn-Xe.itime[nt]),Kt+gt-Kt/2>=je)break;var kr=pn-Xe.itime[nt]-(gt+.5*(Kt%2));Gr(Math.abs(kr)<=.501),wa=0|Math.floor(kr*2*wt+wt+.5);var Ra=0;for(Ve=0;Ve<=Kt;++Ve){var Sn=Ve+gt-Kt/2,Cr;Gr(Sn<je),Gr(Sn+pr>=0),Cr=Sn<0?Lr[pr+Sn]:Oe[Ue+Sn],Ra+=Cr*Xe.blackfilt[wa][Ve]}S[ce+Ft]=Ra}if(ze.num_used=Math.min(je,Kt+gt-Kt/2),Xe.itime[nt]+=ze.num_used-Ft*Xe.resample_ratio,ze.num_used>=pr)for(Ve=0;Ve<pr;Ve++)Lr[Ve]=Oe[Ue+ze.num_used+Ve-pr];else{var ra=pr-ze.num_used;for(Ve=0;Ve<ra;++Ve)Lr[Ve]=Lr[Ve+ze.num_used];for(gt=0;Ve<pr;++Ve,++gt)Lr[Ve]=Oe[Ue+gt];Gr(gt==ze.num_used)}return Ft}function Se(f,S,ce,pe,Oe,Ue){var je=f.internal_flags;if(je.resample_ratio<.9999||je.resample_ratio>1.0001)for(var ze=0;ze<je.channels_out;ze++){var nt=new E;Ue.n_out=z(f,S[ze],je.mf_size,f.framesize,ce[ze],pe,Oe,nt,ze),Ue.n_in=nt.num_used}else{Ue.n_out=Math.min(f.framesize,Oe),Ue.n_in=Ue.n_out;for(var Xe=0;Xe<Ue.n_out;++Xe)S[0][je.mf_size+Xe]=ce[0][pe+Xe],je.channels_out==2&&(S[1][je.mf_size+Xe]=ce[1][pe+Xe])}}}var ud=tr,Dn=N.VbrMode;function fd(){function C(j,fe,he,M,X,i,I,H,D,x,p,B,q,T,c){this.vbr_q=j,this.quant_comp=fe,this.quant_comp_s=he,this.expY=M,this.st_lrm=X,this.st_s=i,this.masking_adj=I,this.masking_adj_short=H,this.ath_lower=D,this.ath_curve=x,this.ath_sensitivity=p,this.interch=B,this.safejoint=q,this.sfb21mod=T,this.msfix=c}function Y(j,fe,he,M,X,i,I,H,D,x,p,B,q,T){this.quant_comp=fe,this.quant_comp_s=he,this.safejoint=M,this.nsmsfix=X,this.st_lrm=i,this.st_s=I,this.nsbass=H,this.scale=D,this.masking_adj=x,this.ath_lower=p,this.ath_curve=B,this.interch=q,this.sfscale=T}var re;this.setModules=function(j){re=j};var $=[new C(0,9,9,0,5.2,125,-4.2,-6.3,4.8,1,0,0,2,21,.97),new C(1,9,9,0,5.3,125,-3.6,-5.6,4.5,1.5,0,0,2,21,1.35),new C(2,9,9,0,5.6,125,-2.2,-3.5,2.8,2,0,0,2,21,1.49),new C(3,9,9,1,5.8,130,-1.8,-2.8,2.6,3,-4,0,2,20,1.64),new C(4,9,9,1,6,135,-.7,-1.1,1.1,3.5,-8,0,2,0,1.79),new C(5,9,9,1,6.4,140,.5,.4,-7.5,4,-12,2e-4,0,0,1.95),new C(6,9,9,1,6.6,145,.67,.65,-14.7,6.5,-19,4e-4,0,0,2.3),new C(7,9,9,1,6.6,145,.8,.75,-19.7,8,-22,6e-4,0,0,2.7),new C(8,9,9,1,6.6,145,1.2,1.15,-27.5,10,-23,7e-4,0,0,0),new C(9,9,9,1,6.6,145,1.6,1.6,-36,11,-25,8e-4,0,0,0),new C(10,9,9,1,6.6,145,2,2,-36,12,-25,8e-4,0,0,0)],ge=[new C(0,9,9,0,4.2,25,-7,-4,7.5,1,0,0,2,26,.97),new C(1,9,9,0,4.2,25,-5.6,-3.6,4.5,1.5,0,0,2,21,1.35),new C(2,9,9,0,4.2,25,-4.4,-1.8,2,2,0,0,2,18,1.49),new C(3,9,9,1,4.2,25,-3.4,-1.25,1.1,3,-4,0,2,15,1.64),new C(4,9,9,1,4.2,25,-2.2,.1,0,3.5,-8,0,2,0,1.79),new C(5,9,9,1,4.2,25,-1,1.65,-7.7,4,-12,2e-4,0,0,1.95),new C(6,9,9,1,4.2,25,-0,2.47,-7.7,6.5,-19,4e-4,0,0,2),new C(7,9,9,1,4.2,25,.5,2,-14.5,8,-22,6e-4,0,0,2),new C(8,9,9,1,4.2,25,1,2.4,-22,10,-23,7e-4,0,0,2),new C(9,9,9,1,4.2,25,1.5,2.95,-30,11,-25,8e-4,0,0,2),new C(10,9,9,1,4.2,25,2,2.95,-36,12,-30,8e-4,0,0,2)];function Z(j,fe,he){var M=j.VBR==Dn.vbr_rh?$:ge,X=j.VBR_q_frac,i=M[fe],I=M[fe+1],H=i;i.st_lrm=i.st_lrm+X*(I.st_lrm-i.st_lrm),i.st_s=i.st_s+X*(I.st_s-i.st_s),i.masking_adj=i.masking_adj+X*(I.masking_adj-i.masking_adj),i.masking_adj_short=i.masking_adj_short+X*(I.masking_adj_short-i.masking_adj_short),i.ath_lower=i.ath_lower+X*(I.ath_lower-i.ath_lower),i.ath_curve=i.ath_curve+X*(I.ath_curve-i.ath_curve),i.ath_sensitivity=i.ath_sensitivity+X*(I.ath_sensitivity-i.ath_sensitivity),i.interch=i.interch+X*(I.interch-i.interch),i.msfix=i.msfix+X*(I.msfix-i.msfix),De(j,H.vbr_q),he!=0?j.quant_comp=H.quant_comp:Math.abs(j.quant_comp- -1)>0||(j.quant_comp=H.quant_comp),he!=0?j.quant_comp_short=H.quant_comp_s:Math.abs(j.quant_comp_short- -1)>0||(j.quant_comp_short=H.quant_comp_s),H.expY!=0&&(j.experimentalY=H.expY!=0),he!=0?j.internal_flags.nsPsy.attackthre=H.st_lrm:Math.abs(j.internal_flags.nsPsy.attackthre- -1)>0||(j.internal_flags.nsPsy.attackthre=H.st_lrm),he!=0?j.internal_flags.nsPsy.attackthre_s=H.st_s:Math.abs(j.internal_flags.nsPsy.attackthre_s- -1)>0||(j.internal_flags.nsPsy.attackthre_s=H.st_s),he!=0?j.maskingadjust=H.masking_adj:Math.abs(j.maskingadjust-0)>0||(j.maskingadjust=H.masking_adj),he!=0?j.maskingadjust_short=H.masking_adj_short:Math.abs(j.maskingadjust_short-0)>0||(j.maskingadjust_short=H.masking_adj_short),he!=0?j.ATHlower=-H.ath_lower/10:Math.abs(-j.ATHlower*10-0)>0||(j.ATHlower=-H.ath_lower/10),he!=0?j.ATHcurve=H.ath_curve:Math.abs(j.ATHcurve- -1)>0||(j.ATHcurve=H.ath_curve),he!=0?j.athaa_sensitivity=H.ath_sensitivity:Math.abs(j.athaa_sensitivity- -1)>0||(j.athaa_sensitivity=H.ath_sensitivity),H.interch>0&&(he!=0?j.interChRatio=H.interch:Math.abs(j.interChRatio- -1)>0||(j.interChRatio=H.interch)),H.safejoint>0&&(j.exp_nspsytune=j.exp_nspsytune|H.safejoint),H.sfb21mod>0&&(j.exp_nspsytune=j.exp_nspsytune|H.sfb21mod<<20),he!=0?j.msfix=H.msfix:Math.abs(j.msfix- -1)>0||(j.msfix=H.msfix),he==0&&(j.VBR_q=fe,j.VBR_q_frac=X)}var ve=[new Y(8,9,9,0,0,6.6,145,0,.95,0,-30,11,.0012,1),new Y(16,9,9,0,0,6.6,145,0,.95,0,-25,11,.001,1),new Y(24,9,9,0,0,6.6,145,0,.95,0,-20,11,.001,1),new Y(32,9,9,0,0,6.6,145,0,.95,0,-15,11,.001,1),new Y(40,9,9,0,0,6.6,145,0,.95,0,-10,11,9e-4,1),new Y(48,9,9,0,0,6.6,145,0,.95,0,-10,11,9e-4,1),new Y(56,9,9,0,0,6.6,145,0,.95,0,-6,11,8e-4,1),new Y(64,9,9,0,0,6.6,145,0,.95,0,-2,11,8e-4,1),new Y(80,9,9,0,0,6.6,145,0,.95,0,0,8,7e-4,1),new Y(96,9,9,0,2.5,6.6,145,0,.95,0,1,5.5,6e-4,1),new Y(112,9,9,0,2.25,6.6,145,0,.95,0,2,4.5,5e-4,1),new Y(128,9,9,0,1.95,6.4,140,0,.95,0,3,4,2e-4,1),new Y(160,9,9,1,1.79,6,135,0,.95,-2,5,3.5,0,1),new Y(192,9,9,1,1.49,5.6,125,0,.97,-4,7,3,0,0),new Y(224,9,9,1,1.25,5.2,125,0,.98,-6,9,2,0,0),new Y(256,9,9,1,.97,5.2,125,0,1,-8,10,1,0,0),new Y(320,9,9,1,.9,5.2,125,0,1,-10,12,0,0,0)];function Be(j,fe,he){var M=fe,X=re.nearestBitrateFullIndex(fe);if(j.VBR=Dn.vbr_abr,j.VBR_mean_bitrate_kbps=M,j.VBR_mean_bitrate_kbps=Math.min(j.VBR_mean_bitrate_kbps,320),j.VBR_mean_bitrate_kbps=Math.max(j.VBR_mean_bitrate_kbps,8),j.brate=j.VBR_mean_bitrate_kbps,j.VBR_mean_bitrate_kbps>320&&(j.disable_reservoir=!0),ve[X].safejoint>0&&(j.exp_nspsytune=j.exp_nspsytune|2),ve[X].sfscale>0&&(j.internal_flags.noise_shaping=2),Math.abs(ve[X].nsbass)>0){var i=int(ve[X].nsbass*4);i<0&&(i+=64),j.exp_nspsytune=j.exp_nspsytune|i<<2}return he!=0?j.quant_comp=ve[X].quant_comp:Math.abs(j.quant_comp- -1)>0||(j.quant_comp=ve[X].quant_comp),he!=0?j.quant_comp_short=ve[X].quant_comp_s:Math.abs(j.quant_comp_short- -1)>0||(j.quant_comp_short=ve[X].quant_comp_s),he!=0?j.msfix=ve[X].nsmsfix:Math.abs(j.msfix- -1)>0||(j.msfix=ve[X].nsmsfix),he!=0?j.internal_flags.nsPsy.attackthre=ve[X].st_lrm:Math.abs(j.internal_flags.nsPsy.attackthre- -1)>0||(j.internal_flags.nsPsy.attackthre=ve[X].st_lrm),he!=0?j.internal_flags.nsPsy.attackthre_s=ve[X].st_s:Math.abs(j.internal_flags.nsPsy.attackthre_s- -1)>0||(j.internal_flags.nsPsy.attackthre_s=ve[X].st_s),he!=0?j.scale=ve[X].scale:Math.abs(j.scale- -1)>0||(j.scale=ve[X].scale),he!=0?j.maskingadjust=ve[X].masking_adj:Math.abs(j.maskingadjust-0)>0||(j.maskingadjust=ve[X].masking_adj),ve[X].masking_adj>0?he!=0?j.maskingadjust_short=ve[X].masking_adj*.9:Math.abs(j.maskingadjust_short-0)>0||(j.maskingadjust_short=ve[X].masking_adj*.9):he!=0?j.maskingadjust_short=ve[X].masking_adj*1.1:Math.abs(j.maskingadjust_short-0)>0||(j.maskingadjust_short=ve[X].masking_adj*1.1),he!=0?j.ATHlower=-ve[X].ath_lower/10:Math.abs(-j.ATHlower*10-0)>0||(j.ATHlower=-ve[X].ath_lower/10),he!=0?j.ATHcurve=ve[X].ath_curve:Math.abs(j.ATHcurve- -1)>0||(j.ATHcurve=ve[X].ath_curve),he!=0?j.interChRatio=ve[X].interch:Math.abs(j.interChRatio- -1)>0||(j.interChRatio=ve[X].interch),fe}this.apply_preset=function(j,fe,he){switch(fe){case At.R3MIX:{fe=At.V3,j.VBR=Dn.vbr_mtrh;break}case At.MEDIUM:{fe=At.V4,j.VBR=Dn.vbr_rh;break}case At.MEDIUM_FAST:{fe=At.V4,j.VBR=Dn.vbr_mtrh;break}case At.STANDARD:{fe=At.V2,j.VBR=Dn.vbr_rh;break}case At.STANDARD_FAST:{fe=At.V2,j.VBR=Dn.vbr_mtrh;break}case At.EXTREME:{fe=At.V0,j.VBR=Dn.vbr_rh;break}case At.EXTREME_FAST:{fe=At.V0,j.VBR=Dn.vbr_mtrh;break}case At.INSANE:return fe=320,j.preset=fe,Be(j,fe,he),j.VBR=Dn.vbr_off,fe}switch(j.preset=fe,fe){case At.V9:return Z(j,9,he),fe;case At.V8:return Z(j,8,he),fe;case At.V7:return Z(j,7,he),fe;case At.V6:return Z(j,6,he),fe;case At.V5:return Z(j,5,he),fe;case At.V4:return Z(j,4,he),fe;case At.V3:return Z(j,3,he),fe;case At.V2:return Z(j,2,he),fe;case At.V1:return Z(j,1,he),fe;case At.V0:return Z(j,0,he),fe;default:break}return 8<=fe&&fe<=320?Be(j,fe,he):(j.preset=0,fe)};function De(j,fe){var he=0;return 0>fe&&(he=-1,fe=0),9<fe&&(he=-1,fe=9),j.VBR_q=fe,j.VBR_q_frac=0,he}}var dd=fd;function vd(){var C,Y;this.setModules=function(re,$){C=re,Y=$}}var md=vd;function hd(){this.over_noise=0,this.tot_noise=0,this.max_noise=0,this.over_count=0,this.over_SSD=0,this.bits=0}var c0=hd,C1=N.new_float,_d=N.new_int;function pd(){this.global_gain=0,this.sfb_count1=0,this.step=_d(39),this.noise=C1(39),this.noise_log=C1(39)}var Sd=pd,ta=N.System,M1=N.VbrMode,u0=N.Util,Qa=N.Arrays,Vi=N.new_float,ln=N.assert;function xd(){var C;this.rv=null;var Y;this.qupvt=null;var re,$=new md,ge;this.setModules=function(D,x,p,B){C=D,Y=x,this.rv=x,re=p,this.qupvt=p,ge=B,$.setModules(re,ge)},this.ms_convert=function(D,x){for(var p=0;p<576;++p){var B=D.tt[x][0].xr[p],q=D.tt[x][1].xr[p];D.tt[x][0].xr[p]=(B+q)*(u0.SQRT2*.5),D.tt[x][1].xr[p]=(B-q)*(u0.SQRT2*.5)}};function Z(D,x,p,B){B=0;for(var q=0;q<=p;++q){var T=Math.abs(D.xr[q]);B+=T,x[q]=Math.sqrt(T*Math.sqrt(T)),x[q]>D.xrpow_max&&(D.xrpow_max=x[q])}return B}this.init_xrpow=function(D,x,p){var B=0,q=0|x.max_nonzero_coeff;if(ln(p!=null),x.xrpow_max=0,ln(0<=q&&q<=575),Qa.fill(p,q,576,0),B=Z(x,p,q,B),B>1e-20){var T=0;(D.substep_shaping&2)!=0&&(T=1);for(var c=0;c<x.psymax;c++)D.pseudohalf[c]=T;return!0}return Qa.fill(x.l3_enc,0,576,0),!1};function ve(D,x){var p=D.ATH,B=x.xr;if(x.block_type!=R.SHORT_TYPE)for(var q=!1,T=R.PSFB21-1;T>=0&&!q;T--){var c=D.scalefac_band.psfb21[T],O=D.scalefac_band.psfb21[T+1],y=re.athAdjust(p.adjust,p.psfb21[T],p.floor);D.nsPsy.longfact[21]>1e-12&&(y*=D.nsPsy.longfact[21]);for(var u=O-1;u>=c;u--)if(Math.abs(B[u])<y)B[u]=0;else{q=!0;break}}else for(var d=0;d<3;d++)for(var q=!1,T=R.PSFB12-1;T>=0&&!q;T--){var c=D.scalefac_band.s[12]*3+(D.scalefac_band.s[13]-D.scalefac_band.s[12])*d+(D.scalefac_band.psfb12[T]-D.scalefac_band.psfb12[0]),O=c+(D.scalefac_band.psfb12[T+1]-D.scalefac_band.psfb12[T]),b=re.athAdjust(p.adjust,p.psfb12[T],p.floor);D.nsPsy.shortfact[12]>1e-12&&(b*=D.nsPsy.shortfact[12]);for(var u=O-1;u>=c;u--)if(Math.abs(B[u])<b)B[u]=0;else{q=!0;break}}}this.init_outer_loop=function(D,x){x.part2_3_length=0,x.big_values=0,x.count1=0,x.global_gain=210,x.scalefac_compress=0,x.table_select[0]=0,x.table_select[1]=0,x.table_select[2]=0,x.subblock_gain[0]=0,x.subblock_gain[1]=0,x.subblock_gain[2]=0,x.subblock_gain[3]=0,x.region0_count=0,x.region1_count=0,x.preflag=0,x.scalefac_scale=0,x.count1table_select=0,x.part2_length=0,x.sfb_lmax=R.SBPSY_l,x.sfb_smin=R.SBPSY_s,x.psy_lmax=D.sfb21_extra?R.SBMAX_l:R.SBPSY_l,x.psymax=x.psy_lmax,x.sfbmax=x.sfb_lmax,x.sfbdivide=11;for(var p=0;p<R.SBMAX_l;p++)x.width[p]=D.scalefac_band.l[p+1]-D.scalefac_band.l[p],x.window[p]=3;if(x.block_type==R.SHORT_TYPE){var B=Vi(576);x.sfb_smin=0,x.sfb_lmax=0,x.mixed_block_flag!=0&&(x.sfb_smin=3,x.sfb_lmax=D.mode_gr*2+4),x.psymax=x.sfb_lmax+3*((D.sfb21_extra?R.SBMAX_s:R.SBPSY_s)-x.sfb_smin),x.sfbmax=x.sfb_lmax+3*(R.SBPSY_s-x.sfb_smin),x.sfbdivide=x.sfbmax-18,x.psy_lmax=x.sfb_lmax;var q=D.scalefac_band.l[x.sfb_lmax];ta.arraycopy(x.xr,0,B,0,576);for(var p=x.sfb_smin;p<R.SBMAX_s;p++)for(var T=D.scalefac_band.s[p],c=D.scalefac_band.s[p+1],O=0;O<3;O++)for(var y=T;y<c;y++)x.xr[q++]=B[3*y+O];for(var u=x.sfb_lmax,p=x.sfb_smin;p<R.SBMAX_s;p++)x.width[u]=x.width[u+1]=x.width[u+2]=D.scalefac_band.s[p+1]-D.scalefac_band.s[p],x.window[u]=0,x.window[u+1]=1,x.window[u+2]=2,u+=3}x.count1bits=0,x.sfb_partition_table=re.nr_of_sfb_block[0][0],x.slen[0]=0,x.slen[1]=0,x.slen[2]=0,x.slen[3]=0,x.max_nonzero_coeff=575,Qa.fill(x.scalefac,0),ve(D,x)};function Be(D){this.ordinal=D}Be.BINSEARCH_NONE=new Be(0),Be.BINSEARCH_UP=new Be(1),Be.BINSEARCH_DOWN=new Be(2);function De(D,x,p,B,q){var T,c=D.CurrentStep[B],O=!1,y=D.OldValue[B],u=Be.BINSEARCH_NONE;for(x.global_gain=y,p-=x.part2_length,ln(c!=0);;){var d;if(T=ge.count_bits(D,q,x,null),c==1||T==p)break;T>p?(u==Be.BINSEARCH_DOWN&&(O=!0),O&&(c/=2),u=Be.BINSEARCH_UP,d=c):(u==Be.BINSEARCH_UP&&(O=!0),O&&(c/=2),u=Be.BINSEARCH_DOWN,d=-c),x.global_gain+=d,x.global_gain<0&&(x.global_gain=0,O=!0),x.global_gain>255&&(x.global_gain=255,O=!0)}for(ln(x.global_gain>=0),ln(x.global_gain<256);T>p&&x.global_gain<255;)x.global_gain++,T=ge.count_bits(D,q,x,null);return D.CurrentStep[B]=y-x.global_gain>=4?4:2,D.OldValue[B]=x.global_gain,x.part2_3_length=T,T}this.trancate_smallspectrums=function(D,x,p,B){var q=Vi(Sa.SFBMAX);if(!((D.substep_shaping&4)==0&&x.block_type==R.SHORT_TYPE||(D.substep_shaping&128)!=0)){re.calc_noise(x,p,q,new c0,null);for(var c=0;c<576;c++){var T=0;x.l3_enc[c]!=0&&(T=Math.abs(x.xr[c])),B[c]=T}var c=0,O=8;x.block_type==R.SHORT_TYPE&&(O=6);do{var y,u,d,b,l=x.width[O];if(c+=l,!(q[O]>=1)&&(Qa.sort(B,c-l,l),!jn.EQ(B[c-1],0))){y=(1-q[O])*p[O],u=0,b=0;do{var m;for(d=1;b+d<l&&!jn.NEQ(B[b+c-l],B[b+c+d-l]);d++);if(m=B[b+c-l]*B[b+c-l]*d,y<m){b!=0&&(u=B[b+c-l-1]);break}y-=m,b+=d}while(b<l);if(!jn.EQ(u,0))do Math.abs(x.xr[c-l])<=u&&(x.l3_enc[c-l]=0);while(--l>0)}}while(++O<x.psymax);x.part2_3_length=ge.noquant_count_bits(D,x,null)}};function j(D){for(var x=0;x<D.sfbmax;x++)if(D.scalefac[x]+D.subblock_gain[D.window[x]]==0)return!1;return!0}function fe(D){return u0.FAST_LOG10(.368+.632*D*D*D)}function he(D,x){for(var p=1e-37,B=0;B<x.psymax;B++)p+=fe(D[B]);return Math.max(1e-20,p)}function M(D,x,p,B,q){var T;switch(D){default:case 9:{x.over_count>0?(T=p.over_SSD<=x.over_SSD,p.over_SSD==x.over_SSD&&(T=p.bits<x.bits)):T=p.max_noise<0&&p.max_noise*10+p.bits<=x.max_noise*10+x.bits;break}case 0:T=p.over_count<x.over_count||p.over_count==x.over_count&&p.over_noise<x.over_noise||p.over_count==x.over_count&&jn.EQ(p.over_noise,x.over_noise)&&p.tot_noise<x.tot_noise;break;case 8:p.max_noise=he(q,B);case 1:T=p.max_noise<x.max_noise;break;case 2:T=p.tot_noise<x.tot_noise;break;case 3:T=p.tot_noise<x.tot_noise&&p.max_noise<x.max_noise;break;case 4:T=p.max_noise<=0&&x.max_noise>.2||p.max_noise<=0&&x.max_noise<0&&x.max_noise>p.max_noise-.2&&p.tot_noise<x.tot_noise||p.max_noise<=0&&x.max_noise>0&&x.max_noise>p.max_noise-.2&&p.tot_noise<x.tot_noise+x.over_noise||p.max_noise>0&&x.max_noise>-.05&&x.max_noise>p.max_noise-.1&&p.tot_noise+p.over_noise<x.tot_noise+x.over_noise||p.max_noise>0&&x.max_noise>-.1&&x.max_noise>p.max_noise-.15&&p.tot_noise+p.over_noise+p.over_noise<x.tot_noise+x.over_noise+x.over_noise;break;case 5:T=p.over_noise<x.over_noise||jn.EQ(p.over_noise,x.over_noise)&&p.tot_noise<x.tot_noise;break;case 6:T=p.over_noise<x.over_noise||jn.EQ(p.over_noise,x.over_noise)&&(p.max_noise<x.max_noise||jn.EQ(p.max_noise,x.max_noise)&&p.tot_noise<=x.tot_noise);break;case 7:T=p.over_count<x.over_count||p.over_noise<x.over_noise;break}return x.over_count==0&&(T=T&&p.bits<x.bits),T}function X(D,x,p,B,q){var T=D.internal_flags,c;x.scalefac_scale==0?c=1.2968395546510096:c=1.6817928305074292;for(var O=0,y=0;y<x.sfbmax;y++)O<p[y]&&(O=p[y]);var u=T.noise_shaping_amp;switch(u==3&&(q?u=2:u=1),u){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<x.sfbmax;y++){var b=x.width[y],l;if(d+=b,!(p[y]<O)){if((T.substep_shaping&2)!=0&&(T.pseudohalf[y]=T.pseudohalf[y]==0?1:0,T.pseudohalf[y]==0&&T.noise_shaping_amp==2))return;for(x.scalefac[y]++,l=-b;l<0;l++)B[d+l]*=c,B[d+l]>x.xrpow_max&&(x.xrpow_max=B[d+l]);if(T.noise_shaping_amp==2)return}}}function i(D,x){for(var p=1.2968395546510096,B=0,q=0;q<D.sfbmax;q++){var T=D.width[q],c=D.scalefac[q];if(D.preflag!=0&&(c+=re.pretab[q]),B+=T,(c&1)!=0){c++;for(var O=-T;O<0;O++)x[B+O]*=p,x[B+O]>D.xrpow_max&&(D.xrpow_max=x[B+O])}D.scalefac[q]=c>>1}D.preflag=0,D.scalefac_scale=1}function I(D,x,p){var B,q=x.scalefac;for(B=0;B<x.sfb_lmax;B++)if(q[B]>=16)return!0;for(var T=0;T<3;T++){var c=0,O=0;for(B=x.sfb_lmax+T;B<x.sfbdivide;B+=3)c<q[B]&&(c=q[B]);for(;B<x.sfbmax;B+=3)O<q[B]&&(O=q[B]);if(!(c<16&&O<8)){if(x.subblock_gain[T]>=7)return!0;x.subblock_gain[T]++;var y=D.scalefac_band.l[x.sfb_lmax];for(B=x.sfb_lmax+T;B<x.sfbmax;B+=3){var u,d=x.width[B],b=q[B];if(ln(b>=0),b=b-(4>>x.scalefac_scale),b>=0){q[B]=b,y+=d*3;continue}q[B]=0;{var l=210+(b<<x.scalefac_scale+1);u=re.IPOW20(l)}y+=d*(T+1);for(var m=-d;m<0;m++)p[y+m]*=u,p[y+m]>x.xrpow_max&&(x.xrpow_max=p[y+m]);y+=d*(3-T-1)}{var u=re.IPOW20(202);y+=x.width[B]*(T+1);for(var m=-x.width[B];m<0;m++)p[y+m]*=u,p[y+m]>x.xrpow_max&&(x.xrpow_max=p[y+m])}}}return!1}function H(D,x,p,B,q){var T=D.internal_flags;X(D,x,p,B,q);var c=j(x);return c?!1:(T.mode_gr==2?c=ge.scale_bitcount(x):c=ge.scale_bitcount_lsf(T,x),c?(T.noise_shaping>1&&(Qa.fill(T.pseudohalf,0),x.scalefac_scale==0?(i(x,B),c=!1):x.block_type==R.SHORT_TYPE&&T.subblock_gain>0&&(c=I(T,x,B)||j(x))),c||(T.mode_gr==2?c=ge.scale_bitcount(x):c=ge.scale_bitcount_lsf(T,x)),!c):!0)}this.outer_loop=function(D,x,p,B,q,T){var c=D.internal_flags,O=new Fo,y=Vi(576),u=Vi(Sa.SFBMAX),d=new c0,b,l=new Sd,m=9999999,g=!1,E=!1,G=0;if(De(c,x,T,q,B),c.noise_shaping==0)return 100;re.calc_noise(x,p,u,d,l),d.bits=x.part2_3_length,O.assign(x);var U=0;for(ta.arraycopy(B,0,y,0,576);!g;){do{var z=new c0,Se,f=255;if((c.substep_shaping&2)!=0?Se=20:Se=3,c.sfb21_extra&&(u[O.sfbmax]>1||O.block_type==R.SHORT_TYPE&&(u[O.sfbmax+1]>1||u[O.sfbmax+2]>1))||!H(D,O,u,B,E))break;O.scalefac_scale!=0&&(f=254);var S=T-O.part2_length;if(S<=0)break;for(;(O.part2_3_length=ge.count_bits(c,B,O,l))>S&&O.global_gain<=f;)O.global_gain++;if(O.global_gain>f)break;if(d.over_count==0){for(;(O.part2_3_length=ge.count_bits(c,B,O,l))>m&&O.global_gain<=f;)O.global_gain++;if(O.global_gain>f)break}if(re.calc_noise(O,p,u,z,l),z.bits=O.part2_3_length,x.block_type!=R.SHORT_TYPE?b=D.quant_comp:b=D.quant_comp_short,b=M(b,d,z,O,u)?1:0,b!=0)m=x.part2_3_length,d=z,x.assign(O),U=0,ta.arraycopy(B,0,y,0,576);else if(c.full_outer_loop==0&&(++U>Se&&d.over_count==0||c.noise_shaping_amp==3&&E&&U>30||c.noise_shaping_amp==3&&E&&O.global_gain-G>15))break}while(O.global_gain+O.scalefac_scale<255);c.noise_shaping_amp==3?E?g=!0:(O.assign(x),ta.arraycopy(y,0,B,0,576),U=0,G=O.global_gain,E=!0):g=!0}return ln(x.global_gain+x.scalefac_scale<=255),D.VBR==M1.vbr_rh||D.VBR==M1.vbr_mtrh?ta.arraycopy(y,0,B,0,576):(c.substep_shaping&1)!=0&&trancate_smallspectrums(c,x,p,B),d.over_count},this.iteration_finish_one=function(D,x,p){var B=D.l3_side,q=B.tt[x][p];ge.best_scalefac_store(D,x,p,B),D.use_best_huffman==1&&ge.best_huffman_divide(D,q),Y.ResvAdjust(D,q)},this.VBR_encode_granule=function(D,x,p,B,q,T,c){var O=D.internal_flags,y=new Fo,u=Vi(576),d=c,b=c+1,l=(c+T)/2,m,g,E=0,G=O.sfb21_extra;ln(d<=LameInternalFlags.MAX_BITS_PER_CHANNEL),Qa.fill(y.l3_enc,0);do ln(l>=T),ln(l<=c),ln(T<=c),l>d-42?O.sfb21_extra=!1:O.sfb21_extra=G,g=outer_loop(D,x,p,B,q,l),g<=0?(E=1,b=x.part2_3_length,y.assign(x),ta.arraycopy(B,0,u,0,576),c=b-32,m=c-T,l=(c+T)/2):(T=l+32,m=c-T,l=(c+T)/2,E!=0&&(E=2,x.assign(y),ta.arraycopy(u,0,B,0,576)));while(m>12);O.sfb21_extra=G,E==2&&ta.arraycopy(y.l3_enc,0,x.l3_enc,0,576),ln(x.part2_3_length<=d)},this.get_framebits=function(D,x){var p=D.internal_flags;p.bitrate_index=p.VBR_min_bitrate;var B=C.getframebits(D);p.bitrate_index=1,B=C.getframebits(D);for(var q=1;q<=p.VBR_max_bitrate;q++){p.bitrate_index=q;var T=new MeanBits(B);x[q]=Y.ResvFrameBegin(D,T),B=T.bits}},this.VBR_old_prepare=function(D,x,p,B,q,T,c,O,y){var u=D.internal_flags,d,b=0,l=1,m=0;u.bitrate_index=u.VBR_max_bitrate;var g=Y.ResvFrameBegin(D,new MeanBits(0))/u.mode_gr;get_framebits(D,T);for(var E=0;E<u.mode_gr;E++){var G=re.on_pe(D,x,O[E],g,E,0);u.mode_ext==R.MPG_MD_MS_LR&&(ms_convert(u.l3_side,E),re.reduce_side(O[E],p[E],g,G));for(var U=0;U<u.channels_out;++U){var z=u.l3_side.tt[E][U];z.block_type!=R.SHORT_TYPE?(b=1.28/(1+Math.exp(3.5-x[E][U]/300))-.05,d=u.PSY.mask_adjust-b):(b=2.56/(1+Math.exp(3.5-x[E][U]/300))-.14,d=u.PSY.mask_adjust_short-b),u.masking_lower=Math.pow(10,d*.1),init_outer_loop(u,z),y[E][U]=re.calc_xmin(D,B[E][U],z,q[E][U]),y[E][U]!=0&&(l=0),c[E][U]=126,m+=O[E][U]}}for(var E=0;E<u.mode_gr;E++)for(var U=0;U<u.channels_out;U++)m>T[u.VBR_max_bitrate]&&(O[E][U]*=T[u.VBR_max_bitrate],O[E][U]/=m),c[E][U]>O[E][U]&&(c[E][U]=O[E][U]);return l},this.bitpressure_strategy=function(D,x,p,B){for(var q=0;q<D.mode_gr;q++)for(var T=0;T<D.channels_out;T++){for(var c=D.l3_side.tt[q][T],O=x[q][T],y=0,u=0;u<c.psy_lmax;u++)O[y++]*=1+.029*u*u/R.SBMAX_l/R.SBMAX_l;if(c.block_type==R.SHORT_TYPE)for(var u=c.sfb_smin;u<R.SBMAX_s;u++)O[y++]*=1+.029*u*u/R.SBMAX_s/R.SBMAX_s,O[y++]*=1+.029*u*u/R.SBMAX_s/R.SBMAX_s,O[y++]*=1+.029*u*u/R.SBMAX_s/R.SBMAX_s;B[q][T]=0|Math.max(p[q][T],.9*B[q][T])}},this.VBR_new_prepare=function(D,x,p,B,q,T){var c=D.internal_flags,O=1,y=0,u=0,d;if(D.free_format){c.bitrate_index=0;var b=new MeanBits(y);d=Y.ResvFrameBegin(D,b),y=b.bits,q[0]=d}else{c.bitrate_index=c.VBR_max_bitrate;var b=new MeanBits(y);Y.ResvFrameBegin(D,b),y=b.bits,get_framebits(D,q),d=q[c.VBR_max_bitrate]}for(var l=0;l<c.mode_gr;l++){re.on_pe(D,x,T[l],y,l,0),c.mode_ext==R.MPG_MD_MS_LR&&ms_convert(c.l3_side,l);for(var m=0;m<c.channels_out;++m){var g=c.l3_side.tt[l][m];c.masking_lower=Math.pow(10,c.PSY.mask_adjust*.1),init_outer_loop(c,g),re.calc_xmin(D,p[l][m],g,B[l][m])!=0&&(O=0),u+=T[l][m]}}for(var l=0;l<c.mode_gr;l++)for(var m=0;m<c.channels_out;m++)u>d&&(T[l][m]*=d,T[l][m]/=u);return O},this.calc_target_bits=function(D,x,p,B,q,T){var c=D.internal_flags,O=c.l3_side,y,u,d,b,l=0;c.bitrate_index=c.VBR_max_bitrate;var m=new MeanBits(l);for(T[0]=Y.ResvFrameBegin(D,m),l=m.bits,c.bitrate_index=1,l=C.getframebits(D)-c.sideinfo_len*8,q[0]=l/(c.mode_gr*c.channels_out),l=D.VBR_mean_bitrate_kbps*D.framesize*1e3,(c.substep_shaping&1)!=0&&(l*=1.09),l/=D.out_samplerate,l-=c.sideinfo_len*8,l/=c.mode_gr*c.channels_out,y=.93+.07*(11-D.compression_ratio)/(11-5.5),y<.9&&(y=.9),y>1&&(y=1),u=0;u<c.mode_gr;u++){var g=0;for(d=0;d<c.channels_out;d++){if(B[u][d]=int(y*l),x[u][d]>700){var E=int((x[u][d]-700)/1.4),G=O.tt[u][d];B[u][d]=int(y*l),G.block_type==R.SHORT_TYPE&&E<l/2&&(E=l/2),E>l*3/2?E=l*3/2:E<0&&(E=0),B[u][d]+=E}B[u][d]>LameInternalFlags.MAX_BITS_PER_CHANNEL&&(B[u][d]=LameInternalFlags.MAX_BITS_PER_CHANNEL),g+=B[u][d]}if(g>LameInternalFlags.MAX_BITS_PER_GRANULE)for(d=0;d<c.channels_out;++d)B[u][d]*=LameInternalFlags.MAX_BITS_PER_GRANULE,B[u][d]/=g}if(c.mode_ext==R.MPG_MD_MS_LR)for(u=0;u<c.mode_gr;u++)re.reduce_side(B[u],p[u],l*c.channels_out,LameInternalFlags.MAX_BITS_PER_GRANULE);for(b=0,u=0;u<c.mode_gr;u++)for(d=0;d<c.channels_out;d++)B[u][d]>LameInternalFlags.MAX_BITS_PER_CHANNEL&&(B[u][d]=LameInternalFlags.MAX_BITS_PER_CHANNEL),b+=B[u][d];if(b>T[0])for(u=0;u<c.mode_gr;u++)for(d=0;d<c.channels_out;d++)B[u][d]*=T[0],B[u][d]/=b}}var bd=xd,qo=N.assert;function gd(){var C;this.setModules=function(Y){C=Y},this.ResvFrameBegin=function(Y,re){var $=Y.internal_flags,ge,Z=$.l3_side,ve=C.getframebits(Y);re.bits=(ve-$.sideinfo_len*8)/$.mode_gr;var Be=8*256*$.mode_gr-8;Y.brate>320?ge=8*int(Y.brate*1e3/(Y.out_samplerate/1152)/8+.5):(ge=8*1440,Y.strict_ISO&&(ge=8*int(32e4/(Y.out_samplerate/1152)/8+.5))),$.ResvMax=ge-ve,$.ResvMax>Be&&($.ResvMax=Be),($.ResvMax<0||Y.disable_reservoir)&&($.ResvMax=0);var De=re.bits*$.mode_gr+Math.min($.ResvSize,$.ResvMax);return De>ge&&(De=ge),qo($.ResvMax%8==0),qo($.ResvMax>=0),Z.resvDrain_pre=0,$.pinfo!=null&&($.pinfo.mean_bits=re.bits/2,$.pinfo.resvsize=$.ResvSize),De},this.ResvMaxBits=function(Y,re,$,ge){var Z=Y.internal_flags,ve,Be=Z.ResvSize,De=Z.ResvMax;ge!=0&&(Be+=re),(Z.substep_shaping&1)!=0&&(De*=.9),$.bits=re,Be*10>De*9?(ve=Be-De*9/10,$.bits+=ve,Z.substep_shaping|=128):(ve=0,Z.substep_shaping&=127,!Y.disable_reservoir&&(Z.substep_shaping&1)==0&&($.bits-=.1*re));var j=Be<Z.ResvMax*6/10?Be:Z.ResvMax*6/10;return j-=ve,j<0&&(j=0),j},this.ResvAdjust=function(Y,re){Y.ResvSize-=re.part2_3_length+re.part2_length},this.ResvFrameEnd=function(Y,re){var $,ge=Y.l3_side;Y.ResvSize+=re*Y.mode_gr;var Z=0;ge.resvDrain_post=0,ge.resvDrain_pre=0,($=Y.ResvSize%8)!=0&&(Z+=$),$=Y.ResvSize-Z-Y.ResvMax,$>0&&(qo($%8==0),qo($>=0),Z+=$);{var ve=Math.min(ge.main_data_begin*8,Z)/8;ge.resvDrain_pre+=8*ve,Z-=8*ve,Y.ResvSize-=8*ve,ge.main_data_begin-=ve}ge.resvDrain_post+=Z,Y.ResvSize-=Z}}var yd=gd;function Ed(){var C="http://www.mp3dev.org/",Y=3,re=98,$=4,ge=0,Z=93;this.getLameVersion=function(){return Y+"."+re+"."+$},this.getLameShortVersion=function(){return Y+"."+re+"."+$},this.getLameVeryShortVersion=function(){return"LAME"+Y+"."+re+"r"},this.getPsyVersion=function(){return ge+"."+Z},this.getLameUrl=function(){return C},this.getLameOsBitness=function(){return"32bits"}}var Td=Ed,wd=N.System,f0=N.VbrMode,P1=N.ShortBlock,Rd=N.Arrays,zo=N.new_byte,Ad=N.assert;qi.NUMTOCENTRIES=100,qi.MAXFRAMESIZE=2880;function qi(){var C,Y,re;this.setModules=function(l,m,g){C=l,Y=m,re=g};var $=1,ge=2,Z=4,ve=8,Be=qi.NUMTOCENTRIES,De=qi.MAXFRAMESIZE,j=Be+4+4+4+4+4,fe=j+9+1+1+8+1+1+3+1+1+2+4+2+2,he=128,M=64,X=32,i=null,I="Xing",H="Info",D=[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 x(l,m){if(l.nVbrNumFrames++,l.sum+=m,l.seen++,!(l.seen<l.want)&&(l.pos<l.size&&(l.bag[l.pos]=l.sum,l.pos++,l.seen=0),l.pos==l.size)){for(var g=1;g<l.size;g+=2)l.bag[g/2]=l.bag[g];l.want*=2,l.pos/=2}}function p(l,m){if(!(l.pos<=0))for(var g=1;g<Be;++g){var E=g/Be,G,U,z=0|Math.floor(E*l.pos);z>l.pos-1&&(z=l.pos-1),G=l.bag[z],U=l.sum;var Se=0|256*G/U;Se>255&&(Se=255),m[g]=255&Se}}this.addVbrFrame=function(l){var m=l.internal_flags,g=Tables.bitrate_table[l.version][m.bitrate_index];Ad(m.VBR_seek_table.bag!=null),x(m.VBR_seek_table,g)};function B(l,m){var g=l[m+0]&255;return g<<=8,g|=l[m+1]&255,g<<=8,g|=l[m+2]&255,g<<=8,g|=l[m+3]&255,g}function q(l,m,g){l[m+0]=255&(g>>24&255),l[m+1]=255&(g>>16&255),l[m+2]=255&(g>>8&255),l[m+3]=255&(g&255)}function T(l,m,g){l[m+0]=255&(g>>8&255),l[m+1]=255&(g&255)}function c(l,m){return new String(l,m,I.length(),i).equals(I)||new String(l,m,H.length(),i).equals(H)}function O(l,m,g){return 255&(l<<m|g&~(-1<<m))}function y(l,m){var g=l.internal_flags;m[0]=O(m[0],8,255),m[1]=O(m[1],3,7),m[1]=O(m[1],1,l.out_samplerate<16e3?0:1),m[1]=O(m[1],1,l.version),m[1]=O(m[1],2,4-3),m[1]=O(m[1],1,l.error_protection?0:1),m[2]=O(m[2],4,g.bitrate_index),m[2]=O(m[2],2,g.samplerate_index),m[2]=O(m[2],1,0),m[2]=O(m[2],1,l.extension),m[3]=O(m[3],2,l.mode.ordinal()),m[3]=O(m[3],2,g.mode_ext),m[3]=O(m[3],1,l.copyright),m[3]=O(m[3],1,l.original),m[3]=O(m[3],2,l.emphasis),m[0]=255;var E=255&(m[1]&241),G;l.version==1?G=he:l.out_samplerate<16e3?G=X:G=M,l.VBR==f0.vbr_off&&(G=l.brate);var U;l.free_format?U=0:U=255&16*C.BitrateIndex(G,l.version,l.out_samplerate),l.version==1?(m[1]=255&(E|10),E=255&(m[2]&13),m[2]=255&(U|E)):(m[1]=255&(E|2),E=255&(m[2]&13),m[2]=255&(U|E))}this.getVbrTag=function(l){var m=new VBRTagData,g=0;m.flags=0;var E=l[g+1]>>3&1,G=l[g+2]>>2&3,U=l[g+3]>>6&3,z=l[g+2]>>4&15;if(z=Tables.bitrate_table[E][z],l[g+1]>>4==14?m.samprate=Tables.samplerate_table[2][G]:m.samprate=Tables.samplerate_table[E][G],E!=0?U!=3?g+=32+4:g+=17+4:U!=3?g+=17+4:g+=9+4,!c(l,g))return null;g+=4,m.hId=E;var Se=m.flags=B(l,g);if(g+=4,(Se&$)!=0&&(m.frames=B(l,g),g+=4),(Se&ge)!=0&&(m.bytes=B(l,g),g+=4),(Se&Z)!=0){if(m.toc!=null)for(var f=0;f<Be;f++)m.toc[f]=l[g+f];g+=Be}m.vbrScale=-1,(Se&ve)!=0&&(m.vbrScale=B(l,g),g+=4),m.headersize=(E+1)*72e3*z/m.samprate,g+=21;var S=l[g+0]<<4;S+=l[g+1]>>4;var ce=(l[g+1]&15)<<8;return ce+=l[g+2]&255,(S<0||S>3e3)&&(S=-1),(ce<0||ce>3e3)&&(ce=-1),m.encDelay=S,m.encPadding=ce,m},this.InitVbrTag=function(l){var m=l.internal_flags,g;l.version==1?g=he:l.out_samplerate<16e3?g=X:g=M,l.VBR==f0.vbr_off&&(g=l.brate);var E=(l.version+1)*72e3*g/l.out_samplerate,G=m.sideinfo_len+fe;if(m.VBR_seek_table.TotalFrameSize=E,E<G||E>De){l.bWriteVbrTag=!1;return}m.VBR_seek_table.nVbrNumFrames=0,m.VBR_seek_table.nBytesWritten=0,m.VBR_seek_table.sum=0,m.VBR_seek_table.seen=0,m.VBR_seek_table.want=1,m.VBR_seek_table.pos=0,m.VBR_seek_table.bag==null&&(m.VBR_seek_table.bag=new int[400],m.VBR_seek_table.size=400);var U=zo(De);y(l,U);for(var z=m.VBR_seek_table.TotalFrameSize,Se=0;Se<z;++Se)Y.add_dummy_byte(l,U[Se]&255,1)};function u(l,m){var g=m^l;return m=m>>8^D[g&255],m}this.updateMusicCRC=function(l,m,g,E){for(var G=0;G<E;++G)l[0]=u(m[g+G],l[0])};function d(l,m,g,E,G){var U=l.internal_flags,z=0,Se=l.encoder_delay,f=l.encoder_padding,S=100-10*l.VBR_q-l.quality,ce=re.getLameVeryShortVersion(),pe,Oe=0,Ue,je=[1,5,3,2,4,0,3],ze=0|(l.lowpassfreq/100+.5>255?255:l.lowpassfreq/100+.5),nt=0,Xe=0,Ve=0,gt=l.internal_flags.noise_shaping,Ft=0,wt=0,kt=0,jt=0,Kt=0,pr=(l.exp_nspsytune&1)!=0,Fn=(l.exp_nspsytune&2)!=0,kr=!1,Lr=!1,pn=l.internal_flags.nogap_total,wa=l.internal_flags.nogap_current,Ra=l.ATHtype,Sn=0,Cr;switch(l.VBR){case vbr_abr:Cr=l.VBR_mean_bitrate_kbps;break;case vbr_off:Cr=l.brate;break;default:Cr=l.VBR_min_bitrate_kbps}switch(l.VBR.ordinal()<je.length?pe=je[l.VBR.ordinal()]:pe=0,Ue=16*Oe+pe,U.findReplayGain&&(U.RadioGain>510&&(U.RadioGain=510),U.RadioGain<-510&&(U.RadioGain=-510),Xe=8192,Xe|=3072,U.RadioGain>=0?Xe|=U.RadioGain:(Xe|=512,Xe|=-U.RadioGain)),U.findPeakSample&&(nt=Math.abs(0|U.PeakSample/32767*Math.pow(2,23)+.5)),pn!=-1&&(wa>0&&(Lr=!0),wa<pn-1&&(kr=!0)),Sn=Ra+((pr?1:0)<<4)+((Fn?1:0)<<5)+((kr?1:0)<<6)+((Lr?1:0)<<7),S<0&&(S=0),l.mode){case MONO:Ft=0;break;case STEREO:Ft=1;break;case DUAL_CHANNEL:Ft=2;break;case JOINT_STEREO:l.force_ms?Ft=4:Ft=3;break;case NOT_SET:default:Ft=7;break}l.in_samplerate<=32e3?kt=0:l.in_samplerate==48e3?kt=2:l.in_samplerate>48e3?kt=3:kt=1,(l.short_blocks==P1.short_block_forced||l.short_blocks==P1.short_block_dispensed||l.lowpassfreq==-1&&l.highpassfreq==-1||l.scale_left<l.scale_right||l.scale_left>l.scale_right||l.disable_reservoir&&l.brate<320||l.noATH||l.ATHonly||Ra==0||l.in_samplerate<=32e3)&&(wt=1),jt=gt+(Ft<<2)+(wt<<5)+(kt<<6),Kt=U.nMusicCRC,q(g,E+z,S),z+=4;for(var ra=0;ra<9;ra++)g[E+z+ra]=255&ce.charAt(ra);z+=9,g[E+z]=255&Ue,z++,g[E+z]=255&ze,z++,q(g,E+z,nt),z+=4,T(g,E+z,Xe),z+=2,T(g,E+z,Ve),z+=2,g[E+z]=255&Sn,z++,Cr>=255?g[E+z]=255:g[E+z]=255&Cr,z++,g[E+z]=255&Se>>4,g[E+z+1]=255&(Se<<4)+(f>>8),g[E+z+2]=255&f,z+=3,g[E+z]=255&jt,z++,g[E+z++]=0,T(g,E+z,l.preset),z+=2,q(g,E+z,m),z+=4,T(g,E+z,Kt),z+=2;for(var ji=0;ji<z;ji++)G=u(g[E+ji],G);return T(g,E+z,G),z+=2,z}function b(l){l.seek(0);var m=zo(10);l.readFully(m);var g;return new String(m,"ISO-8859-1").startsWith("ID3")?g=0:g=((m[6]&127)<<21|(m[7]&127)<<14|(m[8]&127)<<7|m[9]&127)+m.length,g}this.getLameTagFrame=function(l,m){var g=l.internal_flags;if(!l.bWriteVbrTag||g.Class_ID!=At.LAME_ID||g.VBR_seek_table.pos<=0)return 0;if(m.length<g.VBR_seek_table.TotalFrameSize)return g.VBR_seek_table.TotalFrameSize;Rd.fill(m,0,g.VBR_seek_table.TotalFrameSize,0),y(l,m);var E=zo(Be);if(l.free_format)for(var G=1;G<Be;++G)E[G]=255&255*G/100;else p(g.VBR_seek_table,E);var U=g.sideinfo_len;l.error_protection&&(U-=2),l.VBR==f0.vbr_off?(m[U++]=255&H.charAt(0),m[U++]=255&H.charAt(1),m[U++]=255&H.charAt(2),m[U++]=255&H.charAt(3)):(m[U++]=255&I.charAt(0),m[U++]=255&I.charAt(1),m[U++]=255&I.charAt(2),m[U++]=255&I.charAt(3)),q(m,U,$+ge+Z+ve),U+=4,q(m,U,g.VBR_seek_table.nVbrNumFrames),U+=4;var z=g.VBR_seek_table.nBytesWritten+g.VBR_seek_table.TotalFrameSize;q(m,U,0|z),U+=4,wd.arraycopy(E,0,m,U,E.length),U+=E.length,l.error_protection&&Y.CRC_writeheader(g,m);for(var Se=0,G=0;G<U;G++)Se=u(m[G],Se);return U+=d(l,z,m,U,Se),g.VBR_seek_table.TotalFrameSize},this.putVbrTag=function(l,m){var g=l.internal_flags;if(g.VBR_seek_table.pos<=0||(m.seek(m.length()),m.length()==0))return-1;var E=b(m);m.seek(E);var G=zo(De),U=getLameTagFrame(l,G);return U>G.length?-1:(U<1||m.write(G,0,U),0)}}var Id=qi,B1=N.new_byte,N1=N.assert,At=ud,Cd=dd,zi=Ir,Md=Jn,Pd=bd,Bd=s0,Nd=yd,rr=$a,jn=ea;function Dd(){var C,Y;this.setModules=function(re,$){C=re,Y=$}}function Od(){var C,Y,re;this.setModules=function($,ge,Z){C=$,Y=ge,re=Z}}function Fd(){}function kd(){var C,Y;this.setModules=function(re,$){C=re,Y=$}}function Ld(C,Y,re){arguments.length!=3&&(console.error("WARN: Mp3Encoder(channels, samplerate, kbps) not specified"),C=1,Y=44100,re=128);var $=new At,ge=new Dd,Z=new zi,ve=new jn,Be=new Cd,De=new Md,j=new Pd,fe=new Id,he=new Td,M=new kd,X=new Nd,i=new Bd,I=new Od,H=new Fd;$.setModules(Z,ve,Be,De,j,fe,he,M,H),ve.setModules(Z,H,he,fe),M.setModules(ve,he),Be.setModules($),j.setModules(ve,X,De,i),De.setModules(i,X,$.enc.psy),X.setModules(ve),i.setModules(De),fe.setModules($,ve,he),ge.setModules(I,H),I.setModules(he,M,Be);var D=$.lame_init();D.num_channels=C,D.in_samplerate=Y,D.brate=re,D.mode=rr.STEREO,D.quality=3,D.bWriteVbrTag=!1,D.disable_reservoir=!0,D.write_id3tag_automatic=!1;var x=$.lame_init_params(D);N1(x==0);var p=1152,B=0|1.25*p+7200,q=B1(B);this.encodeBuffer=function(T,c){C==1&&(c=T),N1(T.length==c.length),T.length>p&&(p=T.length,B=0|1.25*p+7200,q=B1(B));var O=$.lame_encode_buffer(D,T,c,T.length,q,0,B);return new Int8Array(q.subarray(0,O))},this.flush=function(){var T=$.lame_encode_flush(D,q,0,B);return new Int8Array(q.subarray(0,T))}}function On(){this.dataOffset=0,this.dataLen=0,this.channels=0,this.sampleRate=0}function jo(C){return C.charCodeAt(0)<<24|C.charCodeAt(1)<<16|C.charCodeAt(2)<<8|C.charCodeAt(3)}On.RIFF=jo("RIFF"),On.WAVE=jo("WAVE"),On.fmt_=jo("fmt "),On.data=jo("data"),On.readHeader=function(C){var Y=new On,re=C.getUint32(0,!1);if(On.RIFF==re){var $=C.getUint32(4,!0);if(On.WAVE==C.getUint32(8,!1)&&On.fmt_==C.getUint32(12,!1)){var ge=C.getUint32(16,!0),Z=16+4;switch(ge){case 16:case 18:Y.channels=C.getUint16(Z+2,!0),Y.sampleRate=C.getUint32(Z+4,!0);break;default:throw"extended fmt chunk not implemented"}Z+=ge;for(var ve=On.data,Be=0;ve!=re&&(re=C.getUint32(Z,!1),Be=C.getUint32(Z+4,!0),ve!=re);)Z+=Be+8;return Y.dataLen=Be,Y.dataOffset=Z+8,Y}}};var Ud=Ld,D1=function(C,Y){if(!(C instanceof Y))throw new TypeError("Cannot call a class as a function")},O1=function(){function C(Y,re){for(var $=0;$<re.length;$++){var ge=re[$];ge.enumerable=ge.enumerable||!1,ge.configurable=!0,"value"in ge&&(ge.writable=!0),Object.defineProperty(Y,ge.key,ge)}}return function(Y,re,$){return re&&C(Y.prototype,re),$&&C(Y,$),Y}}(),Hd=function(){function C(Y){D1(this,C),this.config={sampleRate:44100,bitRate:128},Object.assign(this.config,Y),this.mp3Encoder=new Ud(1,this.config.sampleRate,this.config.bitRate),this.maxSamples=1152,this.samplesMono=null,this.clearBuffer()}return O1(C,[{key:"clearBuffer",value:function(){this.dataBuffer=[]}},{key:"appendToBuffer",value:function(re){this.dataBuffer.push(new Int8Array(re))}},{key:"floatTo16BitPCM",value:function(re,$){for(var ge=0;ge<re.length;ge++){var Z=Math.max(-1,Math.min(1,re[ge]));$[ge]=Z<0?Z*32768:Z*32767}}},{key:"convertBuffer",value:function(re){var $=new Float32Array(re),ge=new Int16Array(re.length);return this.floatTo16BitPCM($,ge),ge}},{key:"encode",value:function(re){this.samplesMono=this.convertBuffer(re);for(var $=this.samplesMono.length,ge=0;$>=0;ge+=this.maxSamples){var Z=this.samplesMono.subarray(ge,ge+this.maxSamples),ve=this.mp3Encoder.encodeBuffer(Z);this.appendToBuffer(ve),$-=this.maxSamples}}},{key:"finish",value:function(){return this.appendToBuffer(this.mp3Encoder.flush()),this.dataBuffer}}]),C}(),Vd=function(){function C(Y){D1(this,C),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,Y)}return O1(C,[{key:"addMicrophoneListener",value:function(re){var $=this;this.activeStream=re,this.timerToStart=setTimeout(function(){delete $.timerToStart},this.config.startRecordingAt),this.microphone=this.context.createMediaStreamSource(re),this.processor=this.context.createScriptProcessor(0,1,1),this.processor.onaudioprocess=function(ge){$.timerToStart||$.lameEncoder.encode(ge.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(re){return re.stop()})),this}},{key:"start",value:function(){var re=this,$=window.AudioContext||window.webkitAudioContext;this.context=new $,this.config.sampleRate=this.context.sampleRate,this.lameEncoder=new Hd(this.config);var ge=this.config.deviceId?{deviceId:{exact:this.config.deviceId}}:!0;return new Promise(function(Z,ve){navigator.mediaDevices.getUserMedia({audio:ge}).then(function(Be){re.addMicrophoneListener(Be),Z(Be)}).catch(function(Be){ve(Be)})})}},{key:"getMp3",value:function(){var re=this,$=this.lameEncoder.finish();return new Promise(function(ge,Z){$.length===0?Z(new Error("No buffer to send")):(ge([$,new Blob($,{type:"audio/mp3"})]),re.lameEncoder.clearBuffer())})}}]),C}();return Vd})});async function Ko(){console.log("checkPermissions()");try{let t={audio:!0,video:!0};return(await navigator.mediaDevices.getUserMedia(t)).getTracks().forEach(r=>{r.stop()}),!0}catch{return!1}}async function Wo(){return console.log("checkIfhasMultipleMonitors()"),new Promise((t,e)=>{typeof PresentationRequest>"u"&&t(!1),new PresentationRequest("receiver.html").getAvailability().then(n=>{let a=n.value;n.addEventListener("change",function(){a=n.value}),setTimeout(()=>{t(a)},1e3)}).catch(n=>e(n))})}async function Ca(){console.log("enumarateDevices()");let t=await navigator.mediaDevices.enumerateDevices();return{cameras:t.filter(r=>r.kind=="videoinput"&&r.deviceId).map(r=>({label:r.label||"Generic Device",id:r.deviceId})),microphones:t.filter(r=>r.kind=="audioinput"&&r.deviceId).map(r=>({label:r.label||"Generic Device",id:r.deviceId}))}}var Yo=class{constructor(e){this.sessionDuration=0;this.id=e,this.state="Created",this.startedAt=new Date,this.alerts=[],this.recordings=[]}get hasSomethingToUpload(){for(let e of this.recordings)if(!e.upload)return!0;return!1}start(){this.state="Recording",this.startedAt=new Date(Date.now())}stop(){this.state="Ended",this.sessionDuration=Date.now()-this.startedAt.getTime()}setEndConfirmed(){this.state="EndConfirmed"}setUploaded(){this.state="Uploaded"}setUploadConfirmed(){this.state="UploadConfirmed"}addAlert(e){this.alerts.push(e)}addRecording(e){this.recordings.push(e)}};function Yi(t,e){let r,n={mimeType:"video/webm;codecs=vp9",videoBitsPerSecond:128e3,audioBitsPerSecond:64e3},a=new MediaRecorder(t,n);a.ondataavailable=s=>{s.data.size>0&&e.push(s.data),r&&r()},a.start();function o(){return new Promise(s=>{a.state=="recording"?(r=s,a.stop(),t.getTracks().forEach(h=>{h.stop()})):s()})}return o}var ti=class{constructor(e,r){this.blobs=[];this.options={cameraId:void 0,microphoneId:void 0};this.videoOptions={width:640,height:480};this.options=e,this.videoOptions=r}async startRecording(){console.log("Starting...");let{cameraId:e,microphoneId:r}=this.options,n={audio:{deviceId:r},video:{deviceId:e,width:this.videoOptions.width,height:this.videoOptions.height,frameRate:15}};this.cameraStream=await navigator.mediaDevices.getUserMedia(n);let a=Yi(this.cameraStream,this.blobs);this.recordingStop=a}async stopRecording(){console.log("Stoping..."),await this.recordingStop(),console.log("Stoped")}async saveOnSession(e){console.log("video buffer",this.blobs),e.addRecording({device:"",file:new File(this.blobs,`EP_${e.id}_camera_0.webm`,{type:"video/webm"}),origin:"Camera"})}};var K1="not_shared_first_screen",$o="multiple_monitors_detected",W1="proctoring_already_started",Zo="proctoring_not_started";var ri=class{constructor(e){this.blobs=[];this.options=e}async startRecording(){this.startTime=new Date(Date.now());let{allowOnlyFirstMonitor:e,onStopSharingScreenCallback:r}=this.options,n={video:{cursor:"always"},audio:!1};this.screenStream=await navigator.mediaDevices.getDisplayMedia(n);let a=this.screenStream.getVideoTracks();if(a[0].onended=r,navigator.userAgent.indexOf("Firefox")>-1&&!a.find(_=>_.label=="Primary Monitor")&&e)throw $o;if(!(a.find(v=>["screen:0:0","Primary Monitor"].includes(v.label))!=null)&&e)throw a.forEach(v=>{v.stop()}),K1;let h=Yi(this.screenStream,this.blobs);this.recordingStop=h}async stopRecording(){await this.recordingStop()}async saveOnSession(e){console.log("screen buffer",this.blobs),e.addRecording({device:"",file:new File(this.blobs,`EP_${e.id}_screen_0.webm`,{type:"video/webm"}),origin:"Screen"})}};function Ma(){return{cameraId:void 0,microphoneId:void 0,allowMultipleMonitors:!1,allowOnlyFirstMonitor:!0,captureScreen:!0,proctoringType:"IMAGE",insights:""}}function Qo(t){return!!t.width&&!!t.height?{width:t.width,height:t.height}:{width:640,height:480}}var Jo=class{constructor(){}async checkDevices(e=Ma(),r){this.checkDevicesInterface();let{cameraStream:n,_screenStream:a}=await this.startCheckDevices(e,r);this.videoDeviceInterface(n),this.audioDeviceInterface(n)}checkDevicesInterface(){let e=document.createElement("div");e.setAttribute("id","checkDevices"),e.style.backgroundColor="rgba(0,0,0,0.4)",e.style.zIndex="1000",e.style.position="absolute",e.style.top="0",e.style.left="0",e.style.height="100vh",e.style.width="100%",e.style.display="flex",e.style.alignItems="center",e.style.justifyContent="center";let r=document.createElement("div");r.style.backgroundColor="#fff",r.style.zIndex="1001",r.style.width="400px",r.style.borderRadius="10px",r.style.padding="20px 10px",r.style.display="flex",r.style.flexDirection="column",r.style.alignItems="center";let n=document.createElement("h3");n.innerText="Verificar dispositivos",n.style.color="rgb(22, 163, 74)",n.style.fontWeight="bold",n.style.fontSize="26px",n.style.marginBottom="15px",r.appendChild(n);let a=document.createElement("video");a.setAttribute("id","cameraStream"),a.style.width="20rem",a.style.backgroundColor="#000",a.style.borderRadius="10px",a.style.marginBottom="15px",r.appendChild(a);let o=document.createElement("meter");o.setAttribute("id","audioStream"),o.setAttribute("high","0.25"),o.setAttribute("max","1"),o.style.width="20rem",o.style.borderRadius="10px",o.style.marginBottom="15px",r.appendChild(o);let s=document.createElement("button");s.setAttribute("id","confirmBtn"),s.innerText="Confirmar",s.style.width="200px",s.style.height="50px",s.style.backgroundColor="rgb(22, 163, 74)",s.style.color="#fff",s.style.borderRadius="10px",s.addEventListener("click",()=>this.closeCheckDevices()),r.appendChild(s),e.appendChild(r),document.body.appendChild(e)}videoDeviceInterface(e){let r=document.querySelector("#cameraStream");r&&(r.srcObject=e,r.play())}audioDeviceInterface(e){let r=document.querySelector("#audioStream"),n=new AudioContext,a=n.createMediaStreamSource(e),o=n.createAnalyser();a.connect(o);let s=new Float32Array(o.fftSize),h=()=>{o.getFloatTimeDomainData(s);let v=0;for(let _ of s)v+=_*_;r.value=Math.sqrt(v/s.length),window.requestAnimationFrame(h)};window.requestAnimationFrame(h)}async startCheckDevices(e=Ma(),r){return console.log("deviceChecker.checkDevices",e,r),this.videoOptions=Qo(r),await Ko(),this.cameraRecorder=new ti({cameraId:e.cameraId,microphoneId:e.microphoneId},{width:this.videoOptions.width,height:this.videoOptions.height}),this.screenRecorder=e.captureScreen?new ri({allowOnlyFirstMonitor:!!(e.allowOnlyFirstMonitor||e.allowOnlyFirstMonitor==null),onStopSharingScreenCallback:()=>{}}):void 0,await this.cameraRecorder.startRecording(),this.screenRecorder&&await this.screenRecorder.startRecording(),{cameraStream:this.cameraRecorder.cameraStream,_screenStream:this.screenRecorder?.screenStream}}async closeCheckDevices(){console.log("deviceChecker.closeCheckDevices"),document.querySelector("#checkDevices")?.remove(),await this.cameraRecorder.stopRecording(),this.screenRecorder&&await this.screenRecorder.stopRecording()}};var es=class{constructor(){this.hasExtension=!1}start(){window.postMessage({type:"easyproctor",func:"startExtensionEasyproctor"},"*")}sendVerifyMsg(){console.log("Enviando mensagem..."),window.postMessage({type:"easyproctor",func:"verifyExtensionEasyproctor"},"*")}verify(e){return console.log("Verificando se recebi mensagem..."),console.log(e),new Promise((r,n)=>{e.source==window&&e.data.sender&&e.data.sender==="easyproctor-extension"&&e.data.message_name&&e.data.message_name==="version"&&(console.log("have extension"),this.hasExtension=!0),r(this.hasExtension)})}addEventListener(){window.addEventListener("message",e=>this.verify(e)),setTimeout(()=>this.sendVerifyMsg(),5e3)}};var Y1={Unknown:0,NonRetryableStatus:1,InvalidEvent:2,SizeLimitExceeded:3,KillSwitch:4,QueueFull:5};var gn="function",Vr="object",yn="undefined",Gt="prototype",$i="hasOwnProperty";var Yr=Object,ni=Yr[Gt],ai=Yr.assign,ts=Yr.create,rs=Yr.defineProperty,aa=ni[$i];var ii=null;function cn(t){return t===void 0&&(t=!0),(!ii||!t)&&(typeof globalThis!==yn&&globalThis&&(ii=globalThis),typeof self!==yn&&self&&(ii=self),typeof window!==yn&&window&&(ii=window),typeof global!==yn&&global&&(ii=global)),ii}function oi(t){throw new TypeError(t)}function si(t){var e=ts;if(e)return e(t);if(t==null)return{};var r=typeof t;r!==Vr&&r!==gn&&oi("Object prototype may only be an Object:"+t);function n(){}return n[Gt]=t,new n}var mh=(cn()||{}).Symbol,hh=(cn()||{}).Reflect;var Zd=function(t){for(var e,r=1,n=arguments.length;r<n;r++){e=arguments[r];for(var a in e)ni[$i].call(e,a)&&(t[a]=e[a])}return t},Zt=ai||Zd,g0=function(t,e){return g0=Yr.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var a in n)n[$i](a)&&(r[a]=n[a])},g0(t,e)};function ut(t,e){typeof e!==gn&&e!==null&&oi("Class extends value "+String(e)+" is not a constructor or null"),g0(t,e);function r(){this.constructor=t}t[Gt]=e===null?si(e):(r[Gt]=e[Gt],new r)}function ns(t,e){for(var r=0,n=e.length,a=t.length;r<n;r++,a++)t[a]=e[r];return t}var as="constructor",Gn="prototype",is="function",os="_dynInstFuncs",T0="_isDynProxy",li="_dynClass",Qd="_dynCls$",w0="_dynInstChk",Zi=w0,J1="_dfOpts",$1="_unknown_",Jd="__proto__",y0="useBaseInst",Z1="setInstFuncs",cs=Object,Qi=cs.getPrototypeOf,Q1=0;function ia(t,e){return t&&cs[Gn].hasOwnProperty.call(t,e)}function ec(t){return t&&(t===cs[Gn]||t===Array[Gn])}function R0(t){return ec(t)||t===Function[Gn]}function Pa(t){if(t){if(Qi)return Qi(t);var e=t[Jd]||t[Gn]||(t[as]?t[as][Gn]:null);if(e)return e}return null}function ss(t,e){var r=[],n=cs.getOwnPropertyNames;if(n)r=n(t);else for(var a in t)typeof a=="string"&&ia(t,a)&&r.push(a);if(r&&r.length>0)for(var o=0;o<r.length;o++)e(r[o])}function A0(t,e,r){return e!==as&&typeof t[e]===is&&(r||ia(t,e))}function ls(t){throw new TypeError("DynamicProto: "+t)}function e2(t){var e={};return ss(t,function(r){!e[r]&&A0(t,r,!1)&&(e[r]=t[r])}),e}function I0(t,e){for(var r=t.length-1;r>=0;r--)if(t[r]===e)return!0;return!1}function t2(t,e,r,n){function a(v,_,L){var J=_[L];if(J[T0]&&n){var ne=v[os]||{};ne[Zi]!==!1&&(J=(ne[_[li]]||{})[L]||J)}return function(){return J.apply(v,arguments)}}var o={};ss(r,function(v){o[v]=a(e,r,v)});for(var s=Pa(t),h=[];s&&!R0(s)&&!I0(h,s);)ss(s,function(v){!o[v]&&A0(s,v,!Qi)&&(o[v]=a(e,s,v))}),h.push(s),s=Pa(s);return o}function r2(t,e,r,n){var a=null;if(t&&ia(r,li)){var o=t[os]||{};if(a=(o[r[li]]||{})[e],a||ls("Missing ["+e+"] "+is),!a[w0]&&o[Zi]!==!1){for(var s=!ia(t,e),h=Pa(t),v=[];s&&h&&!R0(h)&&!I0(v,h);){var _=h[e];if(_){s=_===n;break}v.push(h),h=Pa(h)}try{s&&(t[e]=a),a[w0]=1}catch{o[Zi]=!1}}}return a}function n2(t,e,r){var n=e[t];return n===r&&(n=Pa(e)[t]),typeof n!==is&&ls("["+t+"] is not a "+is),n}function a2(t,e,r,n,a){function o(v,_){var L=function(){var J=r2(this,_,v,L)||n2(_,v,L);return J.apply(this,arguments)};return L[T0]=1,L}if(!ec(t)){var s=r[os]=r[os]||{},h=s[e]=s[e]||{};s[Zi]!==!1&&(s[Zi]=!!a),ss(r,function(v){A0(r,v,!1)&&r[v]!==n[v]&&(h[v]=r[v],delete r[v],(!ia(t,v)||t[v]&&!t[v][T0])&&(t[v]=o(t,v)))})}}function i2(t,e){if(Qi)for(var r=[],n=Pa(e);n&&!R0(n)&&!I0(r,n);){if(n===t)return!0;r.push(n),n=Pa(n)}return!1}function E0(t,e){return ia(t,Gn)?t.name||e||$1:((t||{})[as]||{}).name||e||$1}function C0(t,e,r,n){ia(t,Gn)||ls("theClass is an invalid class definition.");var a=t[Gn];i2(a,e)||ls("["+E0(t)+"] is not in class hierarchy of ["+E0(e)+"]");var o=null;ia(a,li)?o=a[li]:(o=Qd+E0(t,"_")+"$"+Q1,Q1++,a[li]=o);var s=C0[J1],h=!!s[y0];h&&n&&n[y0]!==void 0&&(h=!!n[y0]);var v=e2(e),_=t2(a,e,v,h);r(e,_);var L=!!Qi&&!!s[Z1];L&&n&&(L=!!n[Z1]),a2(a,o,e,v,L!==!1)}var o2={setInstFuncs:!0,useBaseInst:!0};C0[J1]=o2;var xt=C0;var Me;(function(t){t[t.CRITICAL=1]="CRITICAL",t[t.WARNING=2]="WARNING"})(Me||(Me={}));var Ee={BrowserDoesNotSupportLocalStorage:0,BrowserCannotReadLocalStorage:1,BrowserCannotReadSessionStorage:2,BrowserCannotWriteLocalStorage:3,BrowserCannotWriteSessionStorage:4,BrowserFailedRemovalFromLocalStorage:5,BrowserFailedRemovalFromSessionStorage:6,CannotSendEmptyTelemetry:7,ClientPerformanceMathError:8,ErrorParsingAISessionCookie:9,ErrorPVCalc:10,ExceptionWhileLoggingError:11,FailedAddingTelemetryToBuffer:12,FailedMonitorAjaxAbort:13,FailedMonitorAjaxDur:14,FailedMonitorAjaxOpen:15,FailedMonitorAjaxRSC:16,FailedMonitorAjaxSend:17,FailedMonitorAjaxGetCorrelationHeader:18,FailedToAddHandlerForOnBeforeUnload:19,FailedToSendQueuedTelemetry:20,FailedToReportDataLoss:21,FlushFailed:22,MessageLimitPerPVExceeded:23,MissingRequiredFieldSpecification:24,NavigationTimingNotSupported:25,OnError:26,SessionRenewalDateIsZero:27,SenderNotInitialized:28,StartTrackEventFailed:29,StopTrackEventFailed:30,StartTrackFailed:31,StopTrackFailed:32,TelemetrySampledAndNotSent:33,TrackEventFailed:34,TrackExceptionFailed:35,TrackMetricFailed:36,TrackPVFailed:37,TrackPVFailedCalc:38,TrackTraceFailed:39,TransmissionFailed:40,FailedToSetStorageBuffer:41,FailedToRestoreStorageBuffer:42,InvalidBackendResponse:43,FailedToFixDepricatedValues:44,InvalidDurationValue:45,TelemetryEnvelopeInvalid:46,CreateEnvelopeError:47,CannotSerializeObject:48,CannotSerializeObjectNonSerializable:49,CircularReferenceDetected:50,ClearAuthContextFailed:51,ExceptionTruncated:52,IllegalCharsInName:53,ItemNotInArray:54,MaxAjaxPerPVExceeded:55,MessageTruncated:56,NameTooLong:57,SampleRateOutOfRange:58,SetAuthContextFailed:59,SetAuthContextFailedAccountName:60,StringValueTooLong:61,StartCalledMoreThanOnce:62,StopCalledWithoutStart:63,TelemetryInitializerFailed:64,TrackArgumentsNotSpecified:65,UrlTooLong:66,SessionStorageBufferFull:67,CannotAccessCookie:68,IdTooLong:69,InvalidEvent:70,FailedMonitorAjaxSetRequestHeader:71,SendBrowserInfoOnUserInit:72,PluginException:73,NotificationException:74,SnippetScriptLoadFailure:99,InvalidInstrumentationKey:100,CannotParseAiBlobValue:101,InvalidContentBlob:102,TrackPageActionEventFailed:103,FailedAddingCustomDefinedRequestContext:104,InMemoryStorageBufferFull:105};var s2="on",tc="attachEvent",rc="addEventListener";var uc="toISOString",fc="endsWith",l2="startsWith",nc="indexOf",ac="map",ic="reduce",P0="trim",dc="toString",c2="__proto__",u2="constructor",oc=rs,Uh=Yr.freeze,Hh=Yr.seal,sc=Yr.keys,B0=String[Gt],f2=B0[P0],d2=B0[fc],Vh=B0[l2],v2=Date[Gt],m2=v2[uc],h2=Array.isArray,vc=ni[dc],_2=aa[dc],qh=_2.call(Yr),p2=/-([a-z])/g,S2=/([^\w\d_$])/g,x2=/^(\d+[\w\d_$])/,lc=Object.getPrototypeOf;function mc(t){if(t){if(lc)return lc(t);var e=t[c2]||t[Gt]||t[u2];if(e)return e}return null}function Wt(t){return t===void 0||typeof t===yn}function Ne(t){return t===null||Wt(t)}function N0(t){return!Ne(t)}function Ji(t,e){return!!(t&&aa.call(t,e))}function En(t){return!!(t&&typeof t===Vr)}function it(t){return!!(t&&typeof t===gn)}function Tn(t,e,r,n){n===void 0&&(n=!1);var a=!1;if(!Ne(t))try{Ne(t[rc])?Ne(t[tc])||(t[tc](s2+e,r),a=!0):(t[rc](e,r,n),a=!0)}catch{}return a}function D0(t){var e=t;return e&&Je(e)&&(e=e.replace(p2,function(r,n){return n.toUpperCase()}),e=e.replace(S2,"_"),e=e.replace(x2,function(r,n){return"_"+n})),e}function Rt(t,e){if(t)for(var r in t)aa.call(t,r)&&e.call(t,r,t[r])}function O0(t,e){var r=!1;return t&&e&&!(r=t===e)&&(r=d2?t[fc](e):b2(t,e)),r}function b2(t,e){var r=!1,n=e?e.length:0,a=t?t.length:0;if(n&&a&&a>=n&&!(r=t===e)){for(var o=a-1,s=n-1;s>=0;s--){if(t[o]!=e[s])return!1;o--}r=!0}return r}function lr(t,e){return t&&e?t.indexOf(e)!==-1:!1}var cr=h2||g2;function g2(t){return!!(t&&vc.call(t)==="[object Array]")}function ci(t){return!!(t&&vc.call(t)==="[object Error]")}function Je(t){return typeof t=="string"}function ui(t){return typeof t=="number"}function Mr(t){if(t)return m2?t[uc]():y2(t)}function y2(t){if(t&&t.getUTCFullYear){var e=function(r){var n=String(r);return n.length===1&&(n="0"+n),n};return t.getUTCFullYear()+"-"+e(t.getUTCMonth()+1)+"-"+e(t.getUTCDate())+"T"+e(t.getUTCHours())+":"+e(t.getUTCMinutes())+":"+e(t.getUTCSeconds())+"."+String((t.getUTCMilliseconds()/1e3).toFixed(3)).slice(2,5)+"Z"}}function et(t,e,r){var n=t.length;try{for(var a=0;a<n&&!(a in t&&e.call(r||t,t[a],a,t)===-1);a++);}catch{}}function Ln(t,e,r){if(t){if(t[nc])return t[nc](e,r);var n=t.length,a=r||0;try{for(var o=Math.max(a>=0?a:n-Math.abs(a),0);o<n;o++)if(o in t&&t[o]===e)return o}catch{}}return-1}function Ba(t,e,r){var n;if(t){if(t[ac])return t[ac](e,r);var a=t.length,o=r||t;n=new Array(a);try{for(var s=0;s<a;s++)s in t&&(n[s]=e.call(o,t[s],t))}catch{}}return n}function us(t,e,r){var n;if(t){if(t[ic])return t[ic](e,r);var a=t.length,o=0;if(arguments.length>=3)n=arguments[2];else{for(;o<a&&!(o in t);)o++;n=t[o++]}for(;o<a;)o in t&&(n=e(n,t[o],o,t)),o++}return n}function Qt(t){return t&&(t=f2&&t[P0]?t[P0]():t.replace?t.replace(/^\s+|\s+$/g,""):t),t}var cc=!{toString:null}.propertyIsEnumerable("toString"),M0=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"];function un(t){var e=typeof t;if(e!==gn&&(e!==Vr||t===null)&&oi("objKeys called on non-object"),!cc&&sc)return sc(t);var r=[];for(var n in t)t&&aa.call(t,n)&&r.push(n);if(cc)for(var a=M0.length,o=0;o<a;o++)t&&aa.call(t,M0[o])&&r.push(M0[o]);return r}function oa(t,e,r,n){if(oc)try{var a={enumerable:!0,configurable:!0};return r&&(a.get=r),n&&(a.set=n),oc(t,e,a),!0}catch{}return!1}function ur(){var t=Date;return t.now?t.now():new t().getTime()}function _t(t){return ci(t)?t.name:""}function ht(t,e,r,n,a){var o=r;return t&&(o=t[e],o!==r&&(!a||a(o))&&(!n||n(r))&&(o=r,t[e]=o)),o}function fr(t,e,r){var n;return t?(n=t[e],!n&&Ne(n)&&(n=Wt(r)?{}:r,t[e]=n)):n=Wt(r)?{}:r,n}function fs(t){return!t}function fi(t){return!!t}function Tr(t){throw new Error(t)}function F0(t,e,r){if(t&&e&&t!==e&&En(t)&&En(e)){var n=function(o){if(Je(o)){var s=e[o];it(s)?(!r||r(o,!0,e,t))&&(t[o]=function(h){return function(){var v=arguments;return e[h].apply(e,v)}}(o)):(!r||r(o,!1,e,t))&&(Ji(t,o)&&delete t[o],oa(t,o,function(){return e[o]},function(h){e[o]=h})||(t[o]=s))}};for(var a in e)n(a)}return t}function k0(t){return function(){function e(){var r=this;t&&Rt(t,function(n,a){r[n]=a})}return e}()}function ds(t){return t&&ai&&(t=Yr(ai({},t))),t}var hc="window",E2="document",T2="documentMode",w2="navigator",R2="history",A2="location",I2="console",C2="performance",_c="JSON",M2="crypto",P2="msCrypto",B2="ReactNative",V0="msie",q0="trident/",L0=null,U0=null,N2=!1,di=null,H0=null;function pc(t,e){var r=!1;if(t){try{if(r=e in t,!r){var n=t[Gt];n&&(r=e in n)}}catch{}if(!r)try{var a=new t;r=!Wt(a[e])}catch{}}return r}function Jt(t){var e=cn();return e&&e[t]?e[t]:t===hc&&Na()?window:null}function Na(){return Boolean(typeof window===Vr&&window)}function Un(){return Na()?window:Jt(hc)}function vs(){return Boolean(typeof document===Vr&&document)}function nr(){return vs()?document:Jt(E2)}function z0(){return Boolean(typeof navigator===Vr&&navigator)}function wr(){return z0()?navigator:Jt(w2)}function Sc(){return Boolean(typeof history===Vr&&history)}function j0(){return Sc()?history:Jt(R2)}function $r(t){if(t&&N2){var e=Jt("__mockLocation");if(e)return e}return typeof location===Vr&&location?location:Jt(A2)}function G0(){return typeof console!==yn?console:Jt(I2)}function Zr(){return Jt(C2)}function wn(){return Boolean(typeof JSON===Vr&&JSON||Jt(_c)!==null)}function dr(){return wn()?JSON||Jt(_c):null}function X0(){return Jt(M2)}function K0(){return Jt(P2)}function W0(){var t=wr();return t&&t.product?t.product===B2:!1}function Da(){var t=wr();if(t&&(t.userAgent!==U0||L0===null)){U0=t.userAgent;var e=(U0||"").toLowerCase();L0=lr(e,V0)||lr(e,q0)}return L0}function vi(t){if(t===void 0&&(t=null),!t){var e=wr()||{};t=e?(e.userAgent||"").toLowerCase():""}var r=(t||"").toLowerCase();if(lr(r,V0)){var n=nr()||{};return Math.max(parseInt(r.split(V0)[1]),n[T2]||0)}else if(lr(r,q0)){var a=parseInt(r.split(q0)[1]);if(a)return a+4}return null}function at(t){var e=Object[Gt].toString.call(t),r="";return e==="[object Error]"?r="{ stack: '"+t.stack+"', message: '"+t.message+"', name: '"+t.name+"'":wn()&&(r=dr().stringify(t)),e+r}function Oa(){return H0===null&&(H0=z0()&&Boolean(wr().sendBeacon)),H0}function ms(t){var e=!1;try{var r=Jt("fetch");e=!!r;var n=Jt("Request");e&&t&&n&&(e=pc(n,"keepalive"))}catch{}return e}function hs(){return di===null&&(di=typeof XDomainRequest<"u",di&&Fa()&&(di=di&&!pc(Jt("XMLHttpRequest"),"withCredentials"))),di}function Fa(){var t=!1;try{var e=Jt("XMLHttpRequest");t=!!e}catch{}return t}var Y0=["eventsSent","eventsDiscarded","eventsSendRequest","perfEvent"],ps=null,_s;function D2(t,e){return function(){var r=arguments,n=$0(e);if(n){var a=n.listener;a&&a[t]&&a[t].apply(a,r)}}}function O2(){var t=Jt("Microsoft");return t&&(ps=t.ApplicationInsights),ps}function $0(t){var e=ps;return!e&&t.disableDbgExt!==!0&&(e=ps||O2()),e?e.ChromeDbgExt:null}function xc(t){if(!_s){_s={};for(var e=0;e<Y0.length;e++)_s[Y0[e]]=D2(Y0[e],t)}return _s}var F2="AI (Internal): ",k2="AI: ",L2="AITR_",U2="errorToConsole",H2="warnToConsole";function bc(t){return t?'"'+t.replace(/\"/g,"")+'"':""}function gc(t,e){var r=G0();if(r){var n="log";r[t]&&(n=t),it(r[n])&&r[n](e)}}var Xn=function(){function t(e,r,n,a){n===void 0&&(n=!1);var o=this;o.messageId=e,o.message=(n?k2:F2)+e;var s="";wn()&&(s=dr().stringify(a));var h=(r?" message:"+bc(r):"")+(a?" props:"+bc(s):"");o.message+=h}return t.dataType="MessageData",t}();function Kn(t,e){return(t||{}).logger||new mi(e)}var mi=function(){function t(e){this.identifier="DiagnosticLogger",this.queue=[];var r=0,n={};xt(t,this,function(a){Ne(e)&&(e={}),a.consoleLoggingLevel=function(){return o("loggingLevelConsole",0)},a.telemetryLoggingLevel=function(){return o("loggingLevelTelemetry",1)},a.maxInternalMessageLimit=function(){return o("maxMessageLimit",25)},a.enableDebugExceptions=function(){return o("enableDebugExceptions",!1)},a.throwInternal=function(v,_,L,J,ne){ne===void 0&&(ne=!1);var oe=new Xn(_,L,ne,J);if(a.enableDebugExceptions())throw oe;var F=v===Me.CRITICAL?U2:H2;if(Wt(oe.message))h("throw"+(v===Me.CRITICAL?"Critical":"Warning"),oe);else{var _e=a.consoleLoggingLevel();if(ne){var N=+oe.messageId;!n[N]&&_e>=v&&(a[F](oe.message),n[N]=!0)}else _e>=v&&a[F](oe.message);a.logInternalMessage(v,oe)}},a.warnToConsole=function(v){gc("warn",v),h("warning",v)},a.errorToConsole=function(v){gc("error",v),h("error",v)},a.resetInternalMessageCount=function(){r=0,n={}},a.logInternalMessage=function(v,_){if(!s()){var L=!0,J=L2+_.messageId;if(n[J]?L=!1:n[J]=!0,L&&(v<=a.telemetryLoggingLevel()&&(a.queue.push(_),r++,h(v===Me.CRITICAL?"error":"warn",_)),r===a.maxInternalMessageLimit())){var ne="Internal events throttle limit per PageView reached for this app.",oe=new Xn(Ee.MessageLimitPerPVExceeded,ne,!1);a.queue.push(oe),v===Me.CRITICAL?a.errorToConsole(ne):a.warnToConsole(ne)}}};function o(v,_){var L=e[v];return Ne(L)?_:L}function s(){return r>=a.maxInternalMessageLimit()}function h(v,_){var L=$0(e);L&&L.diagLog&&L.diagLog(v,_)}})}return t}();var hi="ctx",V2=null,eo=function(){function t(e,r,n){var a=this,o=!1;if(a.start=ur(),a.name=e,a.isAsync=n,a.isChildEvt=function(){return!1},it(r)){var s;o=oa(a,"payload",function(){return!s&&it(r)&&(s=r(),r=null),s})}a.getCtx=function(h){return h?h===t.ParentContextKey||h===t.ChildrenContextKey?a[h]:(a[hi]||{})[h]:null},a.setCtx=function(h,v){if(h)if(h===t.ParentContextKey)a[h]||(a.isChildEvt=function(){return!0}),a[h]=v;else if(h===t.ChildrenContextKey)a[h]=v;else{var _=a[hi]=a[hi]||{};_[h]=v}},a.complete=function(){var h=0,v=a.getCtx(t.ChildrenContextKey);if(cr(v))for(var _=0;_<v.length;_++){var L=v[_];L&&(h+=L.time)}a.time=ur()-a.start,a.exTime=a.time-h,a.complete=function(){},!o&&it(r)&&(a.payload=r())}}return t.ParentContextKey="parent",t.ChildrenContextKey="childEvts",t}();var Q0=function(){function t(e){this.ctx={},xt(t,this,function(r){r.create=function(n,a,o){return new eo(n,a,o)},r.fire=function(n){n&&(n.complete(),e&&it(e.perfEvent)&&e.perfEvent(n))},r.setCtx=function(n,a){if(n){var o=r[hi]=r[hi]||{};o[n]=a}},r.getCtx=function(n){return(r[hi]||{})[n]}})}return t}();var Z0="CoreUtils.doPerf";function Hn(t,e,r,n,a){if(t){var o=t;if(it(o.getPerfMgr)&&(o=o.getPerfMgr()),o){var s=void 0,h=o.getCtx(Z0);try{if(s=o.create(e(),n,a),s){if(h&&s.setCtx&&(s.setCtx(eo.ParentContextKey,h),h.getCtx&&h.setCtx)){var v=h.getCtx(eo.ChildrenContextKey);v||(v=[],h.setCtx(eo.ChildrenContextKey,v)),v.push(s)}return o.setCtx(Z0,s),r(s)}}catch(_){s&&s.setCtx&&s.setCtx("exception",_)}finally{s&&o.fire(s),o.setCtx(Z0,h)}}}return r()}function J0(){return V2}var yc=function(){function t(e,r){var n=this,a=null,o=it(e.processTelemetry),s=it(e.setNextPlugin);n._hasRun=!1,n.getPlugin=function(){return e},n.getNext=function(){return a},n.setNext=function(h){a=h},n.processTelemetry=function(h,v){v||(v=r);var _=e?e.identifier:"TelemetryPluginChain";Hn(v?v.core():null,function(){return _+":processTelemetry"},function(){if(e&&o){n._hasRun=!0;try{v.setNext(a),s&&e.setNextPlugin(a),a&&(a._hasRun=!1),e.processTelemetry(h,v)}catch(J){var L=a&&a._hasRun;(!a||!L)&&v.diagLog().throwInternal(Me.CRITICAL,Ee.PluginException,"Plugin ["+e.identifier+"] failed during processTelemetry - "+at(J)),a&&!L&&a.processTelemetry(h,v)}}else a&&(n._hasRun=!0,a.processTelemetry(h,v))},function(){return{item:h}},!h.sync)}}return t}();function el(t,e){var r=[];if(t&&t.length>0)for(var n=null,a=0;a<t.length;a++){var o=t[a];if(o&&it(o.processTelemetry)){var s=new yc(o,e);r.push(s),n&&n.setNext(s),n=s}}return r.length>0?r[0]:null}function q2(t,e,r){var n=[],a=!r;if(t)for(;t;){var o=t.getPlugin();(a||o===r)&&(a=!0,n.push(o)),t=t.getNext()}return a||n.push(r),el(n,e)}function z2(t,e,r){var n=t,a=!1;return r&&t&&(n=[],et(t,function(o){(a||o===r)&&(a=!0,n.push(o))})),r&&!a&&(n||(n=[]),n.push(r)),el(n,e)}var Wn=function(){function t(e,r,n,a){var o=this,s=null;a!==null&&(e&&it(e.getPlugin)?s=q2(e,o,a||e.getPlugin()):a?s=z2(e,o,a):Wt(a)&&(s=el(e,o))),o.core=function(){return n},o.diagLog=function(){return Kn(n,r)},o.getCfg=function(){return r},o.getExtCfg=function(h,v){v===void 0&&(v={});var _;if(r){var L=r.extensionConfig;L&&h&&(_=L[h])}return _||v},o.getConfig=function(h,v,_){_===void 0&&(_=!1);var L,J=o.getExtCfg(h,null);return J&&!Ne(J[v])?L=J[v]:r&&!Ne(r[v])&&(L=r[v]),Ne(L)?_:L},o.hasNext=function(){return s!=null},o.getNext=function(){return s},o.setNext=function(h){s=h},o.processNext=function(h){var v=s;v&&(s=v.getNext(),v.processTelemetry(h,o))},o.createNew=function(h,v){return h===void 0&&(h=null),new t(h||s,r,n,v)}}return t}();var Ec="iKey",Ss="extensionConfig";var xs="getPlugin",Rn=function(){function t(){var e=this,r=!1,n=null,a=null;e.core=null,e.diagLog=function(o){return e._getTelCtx(o).diagLog()},e.isInitialized=function(){return r},e.setInitialized=function(o){r=o},e.setNextPlugin=function(o){a=o},e.processNext=function(o,s){s?s.processNext(o):a&&it(a.processTelemetry)&&a.processTelemetry(o,null)},e._getTelCtx=function(o){o===void 0&&(o=null);var s=o;if(!s){var h=n||new Wn(null,{},e.core);a&&a[xs]?s=h.createNew(null,a[xs]):s=h.createNew(null,a)}return s},e._baseTelInit=function(o,s,h,v){o&&ht(o,Ss,[],null,Ne),!v&&s&&(v=s.getProcessTelContext().getNext());var _=a;a&&a[xs]&&(_=a[xs]()),e.core=s,n=new Wn(v,o,s,_),r=!0}}return t.prototype.initialize=function(e,r,n,a){this._baseTelInit(e,r,n,a)},t}();var tl="processTelemetry",Tc="priority",wc="setNextPlugin",Rc="isInitialized";function to(t,e){for(var r=[],n=null,a=t.getNext();a;){var o=a.getPlugin();o&&(n&&it(n[wc])&&it(o[tl])&&n[wc](o),(!it(o[Rc])||!o[Rc]())&&r.push(o),n=o,a=a.getNext())}et(r,function(s){s.initialize(t.getCfg(),t.core(),e,t.getNext())})}function rl(t){return t.sort(function(e,r){var n=0,a=it(r[tl]);return it(e[tl])?n=a?e[Tc]-r[Tc]:1:a&&(n=-1),n})}var nl=500,j2="Channel has invalid priority",Ac=function(t){ut(e,t);function e(){var r=t.call(this)||this;r.identifier="ChannelControllerPlugin",r.priority=nl;var n;xt(e,r,function(h,v){h.setNextPlugin=function(_){},h.processTelemetry=function(_,L){n&&et(n,function(J){if(J.length>0){var ne=r._getTelCtx(L).createNew(J);ne.processNext(_)}})},h.getChannelControls=function(){return n},h.initialize=function(_,L,J){h.isInitialized()||(v.initialize(_,L,J),s((_||{}).channels,J),et(n,function(ne){return to(new Wn(ne,_,L),J)}))}});function a(h){et(h,function(v){v.priority<nl&&Tr(j2+v.identifier)})}function o(h){h&&h.length>0&&(h=h.sort(function(v,_){return v.priority-_.priority}),a(h),n.push(h))}function s(h,v){if(n=[],h&&et(h,function(L){return o(L)}),v){var _=[];et(v,function(L){L.priority>nl&&_.push(L)}),o(_)}}return r}return e._staticInit=function(){var r=e.prototype;oa(r,"ChannelControls",r.getChannelControls),oa(r,"channelQueue",r.getChannelControls)}(),e}(Rn);var Ic="toGMTString",Cc="toUTCString",ll="cookie",al="expires",ol="enabled",Mc="isCookieUseDisabled",Pc="disableCookiesUsage",sa="_ckMgr",An="",bs=null,il=null,Bc=null,ro=nr(),Nc={},ys={};function G2(t,e){var r=ka[sa]||ys[sa];return r||(r=ka[sa]=ka(t,e),ys[sa]=r),r}function gs(t){return t?t.isEnabled():!0}function X2(t){var e=t.cookieCfg=t.cookieCfg||{};if(ht(e,"domain",t.cookieDomain,N0,Ne),ht(e,"path",t.cookiePath||"/",null,Ne),Ne(e[ol])){var r=void 0;Wt(t[Mc])||(r=!t[Mc]),Wt(t[Pc])||(r=!t[Pc]),e[ol]=r}return e}function La(t,e){var r;if(t)r=t.getCookieMgr();else if(e){var n=e.cookieCfg;n[sa]?r=n[sa]:r=ka(e)}return r||(r=G2(e,(t||{}).logger)),r}function ka(t,e){var r=X2(t||ys),n=r.path||"/",a=r.domain,o=r[ol]!==!1,s={isEnabled:function(){var h=o&&sl(e),v=ys[sa];return h&&v&&s!==v&&(h=gs(v)),h},setEnabled:function(h){o=h!==!1},set:function(h,v,_,L,J){var ne=!1;if(gs(s)){var oe={},F=Qt(v||An),_e=F.indexOf(";");if(_e!==-1&&(F=Qt(v.substring(0,_e)),oe=kc(v.substring(_e+1))),ht(oe,"domain",L||a,fi,Wt),!Ne(_)){var N=Da();if(Wt(oe[al])){var le=ur(),ue=le+_*1e3;if(ue>0){var Fe=new Date;Fe.setTime(ue),ht(oe,al,Dc(Fe,N?Ic:Cc)||Dc(Fe,N?Ic:Cc)||An,fi)}}N||ht(oe,"max-age",An+_,null,Wt)}var tt=$r();tt&&tt.protocol==="https:"&&(ht(oe,"secure",null,null,Wt),il===null&&(il=!cl((wr()||{}).userAgent)),il&&ht(oe,"SameSite","None",null,Wt)),ht(oe,"path",J||n,null,Wt);var ct=r.setCookie||Fc;ct(h,Oc(F,oe)),ne=!0}return ne},get:function(h){var v=An;return gs(s)&&(v=(r.getCookie||K2)(h)),v},del:function(h,v){var _=!1;return gs(s)&&(_=s.purge(h,v)),_},purge:function(h,v){var _,L=!1;if(sl(e)){var J=(_={},_.path=v||"/",_[al]="Thu, 01 Jan 1970 00:00:01 GMT",_);Da()||(J["max-age"]="0");var ne=r.delCookie||Fc;ne(h,Oc(An,J)),L=!0}return L}};return s[sa]=s,s}function sl(t){if(bs===null){bs=!1;try{var e=ro||{};bs=e[ll]!==void 0}catch(r){t&&t.throwInternal(Me.WARNING,Ee.CannotAccessCookie,"Cannot access document.cookie - "+_t(r),{exception:at(r)})}}return bs}function kc(t){var e={};if(t&&t.length){var r=Qt(t).split(";");et(r,function(n){if(n=Qt(n||An),n){var a=n.indexOf("=");a===-1?e[n]=null:e[Qt(n.substring(0,a))]=Qt(n.substring(a+1))}})}return e}function Dc(t,e){return it(t[e])?t[e]():null}function Oc(t,e){var r=t||An;return Rt(e,function(n,a){r+="; "+n+(Ne(a)?An:"="+a)}),r}function K2(t){var e=An;if(ro){var r=ro[ll]||An;Bc!==r&&(Nc=kc(r),Bc=r),e=Qt(Nc[t]||An)}return e}function Fc(t,e){ro&&(ro[ll]=t+"="+e)}function cl(t){return Je(t)?!!(lr(t,"CPU iPhone OS 12")||lr(t,"iPad; CPU OS 12")||lr(t,"Macintosh; Intel Mac OS X 10_14")&&lr(t,"Version/")&&lr(t,"Safari")||lr(t,"Macintosh; Intel Mac OS X 10_14")&&O0(t,"AppleWebKit/605.1.15 (KHTML, like Gecko)")||lr(t,"Chrome/5")||lr(t,"Chrome/6")||lr(t,"UnrealEngine")&&!lr(t,"Chrome")||lr(t,"UCBrowser/12")||lr(t,"UCBrowser/11")):!1}var W2="Extensions must provide callback to initialize",Lc="_notificationManager";function Y2(t,e){return new Q0(e)}var Uc=function(){function t(){var e=!1,r,n,a,o,s;xt(t,this,function(h){h._extensions=new Array,n=new Ac,h.logger=new mi({loggingLevelConsole:Me.CRITICAL}),r=[],h.isInitialized=function(){return e},h.initialize=function(v,_,L,J){h.isInitialized()&&Tr("Core should not be initialized more than once"),(!v||Ne(v.instrumentationKey))&&Tr("Please provide instrumentation key"),a=J,h[Lc]=J,h.config=v||{},J&&h.config.disableDbgExt!==!0&&J.addNotificationListener(xc(v)),h.config.enablePerfMgr&&ht(h.config,"createPerfMgr",Y2),v.extensions=Ne(v.extensions)?[]:v.extensions;var ne=fr(v,Ss);ne.NotificationManager=J,L&&(h.logger=L);var oe=[];oe.push.apply(oe,ns(ns([],_,!1),v.extensions,!1)),oe=rl(oe);var F=[],_e=[],N={};et(oe,function(le){(Ne(le)||Ne(le.initialize))&&Tr(W2);var ue=le.priority,Fe=le.identifier;le&&ue&&(Ne(N[ue])?N[ue]=Fe:L.warnToConsole("Two extensions have same priority #"+ue+" - "+N[ue]+", "+Fe)),!ue||ue<n.priority?F.push(le):_e.push(le)}),oe.push(n),F.push(n),oe=rl(oe),h._extensions=oe,to(new Wn([n],v,h),oe),to(new Wn(F,v,h),oe),h._extensions=F,h.getTransmissionControls().length===0&&Tr("No channels available"),e=!0,h.releaseQueue()},h.getTransmissionControls=function(){return n.getChannelControls()},h.track=function(v){ht(v,Ec,h.config.instrumentationKey,null,fs),ht(v,"time",Mr(new Date),null,fs),ht(v,"ver","4.0",null,Ne),h.isInitialized()?h.getProcessTelContext().processNext(v):r.push(v)},h.getProcessTelContext=function(){var v=h._extensions,_=v;return(!v||v.length===0)&&(_=[n]),new Wn(_,h.config,h)},h.getNotifyMgr=function(){return a||(a=si({addNotificationListener:function(v){},removeNotificationListener:function(v){},eventsSent:function(v){},eventsDiscarded:function(v,_){},eventsSendRequest:function(v,_){}}),h[Lc]=a),a},h.getCookieMgr=function(){return s||(s=ka(h.config,h.logger)),s},h.setCookieMgr=function(v){s=v},h.getPerfMgr=function(){return o||h.config&&h.config.enablePerfMgr&&it(h.config.createPerfMgr)&&(o=h.config.createPerfMgr(h,h.getNotifyMgr())),o||J0()},h.setPerfMgr=function(v){o=v},h.eventCnt=function(){return r.length},h.releaseQueue=function(){r.length>0&&(et(r,function(v){h.getProcessTelContext().processNext(v)}),r=[])}})}return t}();var Hc=function(){function t(e){this.listeners=[];var r=!!(e||{}).perfEvtsSendAll;xt(t,this,function(n){n.addNotificationListener=function(a){n.listeners.push(a)},n.removeNotificationListener=function(a){for(var o=Ln(n.listeners,a);o>-1;)n.listeners.splice(o,1),o=Ln(n.listeners,a)},n.eventsSent=function(a){et(n.listeners,function(o){o&&o.eventsSent&&setTimeout(function(){return o.eventsSent(a)},0)})},n.eventsDiscarded=function(a,o){et(n.listeners,function(s){s&&s.eventsDiscarded&&setTimeout(function(){return s.eventsDiscarded(a,o)},0)})},n.eventsSendRequest=function(a,o){et(n.listeners,function(s){if(s&&s.eventsSendRequest)if(o)setTimeout(function(){return s.eventsSendRequest(a,o)},0);else try{s.eventsSendRequest(a,o)}catch{}})},n.perfEvent=function(a){a&&(r||!a.isChildEvt())&&et(n.listeners,function(o){if(o&&o.perfEvent)if(a.isAsync)setTimeout(function(){return o.perfEvent(a)},0);else try{o.perfEvent(a)}catch{}})}})}return t}();var ul=function(t){ut(e,t);function e(){var r=t.call(this)||this,n=0;return xt(e,r,function(a,o){a.initialize=function(v,_,L,J){o.initialize(v,_,L||new mi(v),J||new Hc(v))},a.track=function(v){Hn(a.getPerfMgr(),function(){return"AppInsightsCore:track"},function(){v===null&&(h(v),Tr("Invalid telemetry item")),s(v),o.track(v)},function(){return{item:v}},!v.sync)},a.addNotificationListener=function(v){var _=a.getNotifyMgr();_&&_.addNotificationListener(v)},a.removeNotificationListener=function(v){var _=a.getNotifyMgr();_&&_.removeNotificationListener(v)},a.pollInternalLogs=function(v){var _=a.config.diagnosticLogInterval;return(!_||!(_>0))&&(_=1e4),n&&a.stopPollingInternalLogs(),n=setInterval(function(){var L=a.logger?a.logger.queue:[];et(L,function(J){var ne={name:v||"InternalMessageId: "+J.messageId,iKey:a.config.instrumentationKey,time:Mr(new Date),baseType:Xn.dataType,baseData:{message:J.message}};a.track(ne)}),L.length=0},_),n},a.stopPollingInternalLogs=function(){!n||(clearInterval(n),n=0)};function s(v){if(Ne(v.name))throw h(v),Error("telemetry name required")}function h(v){var _=a.getNotifyMgr();_&&_.eventsDiscarded([v],Y1.InvalidEvent)}}),r}return e}(Uc);var Vc=4294967296,Ua=4294967295,qc=!1,no=123456789,ao=987654321;function $2(t){t<0&&(t>>>=0),no=123456789+t&Ua,ao=987654321-t&Ua,qc=!0}function Z2(){try{var t=ur()&2147483647;$2((Math.random()*Vc^t)+t)}catch{}}function _i(t){var e,r=X0()||K0();return r&&r.getRandomValues?e=r.getRandomValues(new Uint32Array(1))[0]&Ua:Da()?(qc||Z2(),e=zc()&Ua):e=Math.floor(Vc*Math.random()|0),t||(e>>>=0),e}function zc(t){ao=36969*(ao&65535)+(ao>>16)&Ua,no=18e3*(no&65535)+(no>>16)&Ua;var e=(ao<<16)+(no&65535)>>>0&Ua|0;return t||(e>>>=0),e}var jc="visibilitychange",Gc="pagehide";function Es(t,e){var r=!1,n=Un();n&&(r=Tn(n,t,e),r=Tn(n.body,t,e)||r);var a=nr();return a&&(r=Tn(a,t,e)||r),r}function fl(t,e,r){var n=!1;if(e&&t&&cr(t)){var a=[];et(t,function(o){Je(o)&&(!r||Ln(r,o)===-1?n=Es(o,e)||n:a.push(o))}),!n&&a.length>0&&(n=fl(a,e))}return n}function dl(t,e){return fl(["beforeunload","unload","pagehide"],t,e)}function io(t,e){function r(a){var o=nr();t&&o&&o.visibilityState==="hidden"&&t(a)}var n=!1;return(!e||Ln(e,Gc)===-1)&&(n=Es(Gc,t)),(!e||Ln(e,jc)===-1)&&(n=Es(jc,r)||n),!n&&e&&(n=io(t)),n}function pi(t){t===void 0&&(t=22);for(var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r=_i()>>>0,n=0,a="";a.length<t;)n++,a+=e.charAt(r&63),r>>>=6,n===5&&(r=(_i()<<2&4294967295|r&3)>>>0,n=0);return a}function qr(){for(var t=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"],e="",r,n=0;n<4;n++)r=_i(),e+=t[r&15]+t[r>>4&15]+t[r>>8&15]+t[r>>12&15]+t[r>>16&15]+t[r>>20&15]+t[r>>24&15]+t[r>>28&15];var a=t[8+(_i()&3)|0];return e.substr(0,8)+e.substr(9,4)+"4"+e.substr(13,3)+a+e.substr(16,3)+e.substr(19,12)}var Kc="_aiHooks",Wc=["req","rsp","hkErr","fnErr"];function ml(t,e){if(t)for(var r=0;r<t.length&&!e(t[r],r);r++);}function vl(t,e,r,n,a){a>=0&&a<=2&&ml(t,function(o,s){var h=o.cbks,v=h[Wc[a]];if(v){e.ctx=function(){var J=n[s]=n[s]||{};return J};try{v.apply(e.inst,r)}catch(J){var _=e.err;try{var L=h[Wc[2]];L&&(e.err=J,L.apply(e.inst,r))}catch{}finally{e.err=_}}}})}function tv(t){return function(){var e=this,r=arguments,n=t.h,a={name:t.n,inst:e,ctx:null,set:v},o=[],s=h([a],r);function h(L,J){return ml(J,function(ne){L.push(ne)}),L}function v(L,J){r=h([],r),r[L]=J,s=h([a],r)}vl(n,a,s,o,0);var _=t.f;try{a.rslt=_.apply(e,r)}catch(L){throw a.err=L,vl(n,a,s,o,3),L}return vl(n,a,s,o,1),a.rslt}}function Yc(t,e,r){var n=null;return t&&(Ji(t,e)?n=t:r&&(n=Yc(mc(t),e,!1))),n}function hl(t,e,r){return t?oo(t[Gt],e,r,!1):null}function oo(t,e,r,n){if(n===void 0&&(n=!0),t&&e&&r){var a=Yc(t,e,n);if(a){var o=a[e];if(typeof o===gn){var s=o[Kc];if(!s){s={i:0,n:e,f:o,h:[]};var h=tv(s);h[Kc]=s,a[e]=h}var v={id:s.i,cbks:r,rm:function(){var _=this.id;ml(s.h,function(L,J){if(L.id===_)return s.h.splice(J,1),1})}};return s.i++,s.h.push(v),v}}}return null}var Ct={requestContextHeader:"Request-Context",requestContextTargetKey:"appId",requestContextAppIdFormat:"appId=cid-v1:",requestIdHeader:"Request-Id",traceParentHeader:"traceparent",traceStateHeader:"tracestate",sdkContextHeader:"Sdk-Context",sdkContextHeaderAppIdRequest:"appId",requestContextHeaderLowerCase:"request-context"};function _l(t,e,r){var n=e.length,a=$c(t,e);if(a.length!==n){for(var o=0,s=a;r[s]!==void 0;)o++,s=a.substring(0,150-3)+Zc(o);a=s}return a}function $c(t,e){var r;return e&&(e=Qt(e.toString()),e.length>150&&(r=e.substring(0,150),t&&t.throwInternal(Me.WARNING,Ee.NameTooLong,"name is too long. It has been truncated to "+150+" characters.",{name:e},!0))),r||e}function Mt(t,e,r){r===void 0&&(r=1024);var n;return e&&(r=r||1024,e=Qt(e),e.toString().length>r&&(n=e.toString().substring(0,r),t&&t.throwInternal(Me.WARNING,Ee.StringValueTooLong,"string value is too long. It has been truncated to "+r+" characters.",{value:e},!0))),n||e}function Yn(t,e){return xl(t,e,2048,Ee.UrlTooLong)}function so(t,e){var r;return e&&e.length>32768&&(r=e.substring(0,32768),t&&t.throwInternal(Me.WARNING,Ee.MessageTruncated,"message is too long, it has been truncated to "+32768+" characters.",{message:e},!0)),r||e}function pl(t,e){var r;if(e){var n=""+e;n.length>32768&&(r=n.substring(0,32768),t&&t.throwInternal(Me.WARNING,Ee.ExceptionTruncated,"exception is too long, it has been truncated to "+32768+" characters.",{exception:e},!0))}return r||e}function Pr(t,e){if(e){var r={};Rt(e,function(n,a){if(En(a)&&wn())try{a=dr().stringify(a)}catch(o){t&&t.throwInternal(Me.WARNING,Ee.CannotSerializeObjectNonSerializable,"custom property is not valid",{exception:o},!0)}a=Mt(t,a,8192),n=_l(t,n,r),r[n]=a}),e=r}return e}function Br(t,e){if(e){var r={};Rt(e,function(n,a){n=_l(t,n,r),r[n]=a}),e=r}return e}function Sl(t,e){return e&&xl(t,e,128,Ee.IdTooLong).toString()}function xl(t,e,r,n){var a;return e&&(e=Qt(e),e.length>r&&(a=e.substring(0,r),t&&t.throwInternal(Me.WARNING,n,"input is too long, it has been truncated to "+r+" characters.",{data:e},!0))),a||e}function Zc(t){var e="00"+t;return e.substr(e.length-3)}function Ha(t){var e=null;if(it(Event))e=new Event(t);else{var r=nr();r&&r.createEvent&&(e=r.createEvent("Event"),e.initEvent(t,!0,!0))}return e}function fn(t,e){return e===void 0&&(e=!1),t==null?e:t.toString().toLowerCase()==="true"}function Qr(t){(isNaN(t)||t<0)&&(t=0),t=Math.round(t);var e=""+t%1e3,r=""+Math.floor(t/1e3)%60,n=""+Math.floor(t/(1e3*60))%60,a=""+Math.floor(t/(1e3*60*60))%24,o=Math.floor(t/(1e3*60*60*24));return e=e.length===1?"00"+e:e.length===2?"0"+e:e,r=r.length<2?"0"+r:r,n=n.length<2?"0"+n:n,a=a.length<2?"0"+a:a,(o>0?o+".":"")+a+":"+n+":"+r+"."+e}function bl(t,e){var r=null;return et(t,function(n){if(n.identifier===e)return r=n,-1}),r}function gl(t,e,r,n,a){return!a&&Je(t)&&(t==="Script error."||t==="Script error")}var In="Microsoft_ApplicationInsights_BypassAjaxInstrumentation",Si="sampleRate",xi="ProcessLegacy",lo="http.method",Ts="https://dc.services.visualstudio.com",ar="not_specified",ws="iKey";var la;(function(t){t[t.LocalStorage=0]="LocalStorage",t[t.SessionStorage=1]="SessionStorage"})(la||(la={}));var dn;(function(t){t[t.AI=0]="AI",t[t.AI_AND_W3C=1]="AI_AND_W3C",t[t.W3C=2]="W3C"})(dn||(dn={}));var Va=void 0,qa=void 0;function yl(){return As()?Rs(la.LocalStorage):null}function Rs(t){try{if(Ne(cn()))return null;var e=new Date,r=Jt(t===la.LocalStorage?"localStorage":"sessionStorage");r.setItem(e.toString(),e.toString());var n=r.getItem(e.toString())!==e.toString();if(r.removeItem(e.toString()),!n)return r}catch{}return null}function El(){return za()?Rs(la.SessionStorage):null}function Tl(){Va=!1,qa=!1}function As(){return Va===void 0&&(Va=!!Rs(la.LocalStorage)),Va}function wl(t,e){var r=yl();if(r!==null)try{return r.getItem(e)}catch(n){Va=!1,t.throwInternal(Me.WARNING,Ee.BrowserCannotReadLocalStorage,"Browser failed read of local storage. "+_t(n),{exception:at(n)})}return null}function Rl(t,e,r){var n=yl();if(n!==null)try{return n.setItem(e,r),!0}catch(a){Va=!1,t.throwInternal(Me.WARNING,Ee.BrowserCannotWriteLocalStorage,"Browser failed write to local storage. "+_t(a),{exception:at(a)})}return!1}function Al(t,e){var r=yl();if(r!==null)try{return r.removeItem(e),!0}catch(n){Va=!1,t.throwInternal(Me.WARNING,Ee.BrowserFailedRemovalFromLocalStorage,"Browser failed removal of local storage item. "+_t(n),{exception:at(n)})}return!1}function za(){return qa===void 0&&(qa=!!Rs(la.SessionStorage)),qa}function bi(t,e){var r=El();if(r!==null)try{return r.getItem(e)}catch(n){qa=!1,t.throwInternal(Me.WARNING,Ee.BrowserCannotReadSessionStorage,"Browser failed read of session storage. "+_t(n),{exception:at(n)})}return null}function gi(t,e,r){var n=El();if(n!==null)try{return n.setItem(e,r),!0}catch(a){qa=!1,t.throwInternal(Me.WARNING,Ee.BrowserCannotWriteSessionStorage,"Browser failed write to session storage. "+_t(a),{exception:at(a)})}return!1}function Il(t,e){var r=El();if(r!==null)try{return r.removeItem(e),!0}catch(n){qa=!1,t.throwInternal(Me.WARNING,Ee.BrowserFailedRemovalFromSessionStorage,"Browser failed removal of session storage item. "+_t(n),{exception:at(n)})}return!1}var Qc=nr()||{},Jc=0,sv=[null,null,null,null,null];function co(t){var e=Jc,r=sv,n=r[e];return Qc.createElement?r[e]||(n=r[e]=Qc.createElement("a")):n={host:Cl(t,!0)},n.href=t,e++,e>=r.length&&(e=0),Jc=e,n}function Is(t){var e,r=co(t);return r&&(e=r.href),e}function Cs(t,e){return t?t.toUpperCase()+" "+e:e}function Cl(t,e){var r=Ms(t,e)||"";if(r){var n=r.match(/(www[0-9]?\.)?(.[^/:]+)(\:[\d]+)?/i);if(n!=null&&n.length>3&&Je(n[2])&&n[2].length>0)return n[2]+(n[3]||"")}return r}function Ms(t,e){var r=null;if(t){var n=t.match(/(\w*):\/\/(.[^/:]+)(\:[\d]+)?/i);if(n!=null&&n.length>2&&Je(n[2])&&n[2].length>0&&(r=n[2]||"",e&&n.length>2)){var a=(n[1]||"").toLowerCase(),o=n[3]||"";(a==="http"&&o===":80"||a==="https"&&o===":443")&&(o=""),r+=o}}return r}var cv=["https://dc.services.visualstudio.com/v2/track","https://breeze.aimon.applicationinsights.io/v2/track","https://dc-int.services.visualstudio.com/v2/track"];function ja(t){return cv.indexOf(t.toLowerCase())!==-1}var $n={correlationIdPrefix:"cid-v1:",canIncludeCorrelationHeader:function(t,e,r){if(!e||t&&t.disableCorrelationHeaders)return!1;if(t&&t.correlationHeaderExcludePatterns){for(var n=0;n<t.correlationHeaderExcludePatterns.length;n++)if(t.correlationHeaderExcludePatterns[n].test(e))return!1}var a=co(e).host.toLowerCase();if(a&&(a.indexOf(":443")!==-1||a.indexOf(":80")!==-1)&&(a=(Ms(e,!0)||"").toLowerCase()),(!t||!t.enableCorsCorrelation)&&a&&a!==r)return!1;var o=t&&t.correlationHeaderDomains;if(o){var s;if(et(o,function(_){var L=new RegExp(_.toLowerCase().replace(/\\/g,"\\\\").replace(/\./g,"\\.").replace(/\*/g,".*"));s=s||L.test(a)}),!s)return!1}var h=t&&t.correlationHeaderExcludedDomains;if(!h||h.length===0)return!0;for(var n=0;n<h.length;n++){var v=new RegExp(h[n].toLowerCase().replace(/\\/g,"\\\\").replace(/\./g,"\\.").replace(/\*/g,".*"));if(v.test(a))return!1}return a&&a.length>0},getCorrelationContext:function(t){if(t){var e=$n.getCorrelationContextValue(t,Ct.requestContextTargetKey);if(e&&e!==$n.correlationIdPrefix)return e}},getCorrelationContextValue:function(t,e){if(t)for(var r=t.split(","),n=0;n<r.length;++n){var a=r[n].split("=");if(a.length===2&&a[0]===e)return a[1]}}};function eu(t,e,r,n){var a,o=n,s=n;if(e&&e.length>0){var h=co(e);if(a=h.host,!o)if(h.pathname!=null){var v=h.pathname.length===0?"/":h.pathname;v.charAt(0)!=="/"&&(v="/"+v),s=h.pathname,o=Mt(t,r?r+" "+v:v)}else o=Mt(t,e)}else a=n,o=n;return{target:a,name:o,data:s}}function yi(){var t=Zr();if(t&&t.now&&t.timing){var e=t.now()+t.timing.navigationStart;if(e>0)return e}return ur()}function vr(t,e){var r=null;return t!==0&&e!==0&&!Ne(t)&&!Ne(e)&&(r=e-t),r}var uv=";",fv="=";function Ml(t){if(!t)return{};var e=t.split(uv),r=us(e,function(a,o){var s=o.split(fv);if(s.length===2){var h=s[0].toLowerCase(),v=s[1];a[h]=v}return a},{});if(un(r).length>0){if(r.endpointsuffix){var n=r.location?r.location+".":"";r.ingestionendpoint=r.ingestionendpoint||"https://"+n+"dc."+r.endpointsuffix}r.ingestionendpoint=r.ingestionendpoint||Ts}return r}var Pl=function(){function t(){}return t}();var Bl=function(t){ut(e,t);function e(){return t.call(this)||this}return e}(Pl);var tu=function(){function t(){this.ver=1,this.sampleRate=100,this.tags={}}return t}();var Ps=function(t){ut(e,t);function e(r,n,a){var o=t.call(this)||this;return o.name=Mt(r,a)||ar,o.data=n,o.time=Mr(new Date),o.aiDataContract={time:1,iKey:1,name:1,sampleRate:function(){return o.sampleRate===100?4:1},tags:1,data:1},o}return e}(tu);var Bs=function(){function t(){this.ver=2,this.properties={},this.measurements={}}return t}();var Jr=function(t){ut(e,t);function e(r,n,a,o){var s=t.call(this)||this;return s.aiDataContract={ver:1,name:1,properties:0,measurements:0},s.name=Mt(r,n)||ar,s.properties=Pr(r,a),s.measurements=Br(r,o),s}return e.envelopeType="Microsoft.ApplicationInsights.{0}.Event",e.dataType="EventData",e}(Bs);var ru=function(){function t(){}return t}();var nu=function(){function t(){this.ver=2,this.exceptions=[],this.properties={},this.measurements={}}return t}();var au=function(){function t(){this.hasFullStack=!0,this.parsedStack=[]}return t}();var dv="<no_method>",Ti="error",vn="stack",Dl="stackDetails",iu="errorSrc",Ol="message",lu="description";function Fl(t,e){var r=t;return r&&!Je(r)&&(JSON&&JSON.stringify?(r=JSON.stringify(t),e&&(!r||r==="{}")&&(it(t.toString)?r=t.toString():r=""+t)):r=""+t+" - (Missing JSON.stringify)"),r||""}function cu(t,e){var r=t;return t&&(r&&!Je(r)&&(r=t[Ol]||t[lu]||r),r&&!Je(r)&&(r=Fl(r,!0)),t.filename&&(r=r+" @"+(t.filename||"")+":"+(t.lineno||"?")+":"+(t.colno||"?"))),e&&e!=="String"&&e!=="Object"&&e!=="Error"&&(r||"").indexOf(e)===-1&&(r=e+": "+r),r||""}function vv(t){try{if(En(t))return"hasFullStack"in t&&"typeName"in t}catch{}return!1}function mv(t){try{if(En(t))return"ver"in t&&"exceptions"in t&&"properties"in t}catch{}return!1}function ou(t){return t&&t.src&&Je(t.src)&&t.obj&&cr(t.obj)}function Ei(t){var e=t||"";Je(e)||(Je(e[vn])?e=e[vn]:e=""+e);var r=e.split(`
|
|
14
|
+
`)),S.highpass2>0){for(var ze=-1,Ue=0;Ue<=31;Ue++){var je=Ue/31;je<=S.highpass1&&(pe=Math.max(pe,Ue)),S.highpass1<je&&je<S.highpass2&&(ze=Math.max(ze,Ue))}S.highpass1=pe/31,ze==-1?S.highpass2=(pe+.75)/31:S.highpass2=(ze+.75)/31}for(var Ue=0;Ue<32;Ue++){var nt,Xe,je=Ue/31;S.highpass2>S.highpass1?nt=x((S.highpass2-je)/(S.highpass2-S.highpass1+1e-20)):nt=1,S.lowpass2>S.lowpass1?Xe=x((je-S.lowpass1)/(S.lowpass2-S.lowpass1+1e-20)):Xe=1,S.amp_filter[Ue]=nt*Xe}}function y(f){var S=f.internal_flags;switch(f.quality){default:case 9:S.psymodel=0,S.noise_shaping=0,S.noise_shaping_amp=0,S.noise_shaping_stop=0,S.use_best_huffman=0,S.full_outer_loop=0;break;case 8:f.quality=7;case 7:S.psymodel=1,S.noise_shaping=0,S.noise_shaping_amp=0,S.noise_shaping_stop=0,S.use_best_huffman=0,S.full_outer_loop=0;break;case 6:S.psymodel=1,S.noise_shaping==0&&(S.noise_shaping=1),S.noise_shaping_amp=0,S.noise_shaping_stop=0,S.subblock_gain==-1&&(S.subblock_gain=1),S.use_best_huffman=0,S.full_outer_loop=0;break;case 5:S.psymodel=1,S.noise_shaping==0&&(S.noise_shaping=1),S.noise_shaping_amp=0,S.noise_shaping_stop=0,S.subblock_gain==-1&&(S.subblock_gain=1),S.use_best_huffman=0,S.full_outer_loop=0;break;case 4:S.psymodel=1,S.noise_shaping==0&&(S.noise_shaping=1),S.noise_shaping_amp=0,S.noise_shaping_stop=0,S.subblock_gain==-1&&(S.subblock_gain=1),S.use_best_huffman=1,S.full_outer_loop=0;break;case 3:S.psymodel=1,S.noise_shaping==0&&(S.noise_shaping=1),S.noise_shaping_amp=1,S.noise_shaping_stop=1,S.subblock_gain==-1&&(S.subblock_gain=1),S.use_best_huffman=1,S.full_outer_loop=0;break;case 2:S.psymodel=1,S.noise_shaping==0&&(S.noise_shaping=1),S.substep_shaping==0&&(S.substep_shaping=2),S.noise_shaping_amp=1,S.noise_shaping_stop=1,S.subblock_gain==-1&&(S.subblock_gain=1),S.use_best_huffman=1,S.full_outer_loop=0;break;case 1:S.psymodel=1,S.noise_shaping==0&&(S.noise_shaping=1),S.substep_shaping==0&&(S.substep_shaping=2),S.noise_shaping_amp=2,S.noise_shaping_stop=1,S.subblock_gain==-1&&(S.subblock_gain=1),S.use_best_huffman=1,S.full_outer_loop=0;break;case 0:S.psymodel=1,S.noise_shaping==0&&(S.noise_shaping=1),S.substep_shaping==0&&(S.substep_shaping=2),S.noise_shaping_amp=2,S.noise_shaping_stop=1,S.subblock_gain==-1&&(S.subblock_gain=1),S.use_best_huffman=1,S.full_outer_loop=0;break}}function u(f){var S=f.internal_flags;f.frameNum=0,f.write_id3tag_automatic&&he.id3tag_write_v2(f),S.bitrate_stereoMode_Hist=I1([16,4+1]),S.bitrate_blockType_Hist=I1([16,4+1+1]),S.PeakSample=0,f.bWriteVbrTag&&j.InitVbrTag(f)}this.lame_init_params=function(f){var S=f.internal_flags;if(S.Class_ID=0,S.ATH==null&&(S.ATH=new Wf),S.PSY==null&&(S.PSY=new X),S.rgdata==null&&(S.rgdata=new $f),S.channels_in=f.num_channels,S.channels_in==1&&(f.mode=rr.MONO),S.channels_out=f.mode==rr.MONO?1:2,S.mode_ext=R.MPG_MD_MS_LR,f.mode==rr.MONO&&(f.force_ms=!1),f.VBR==Dt.vbr_off&&f.VBR_mean_bitrate_kbps!=128&&f.brate==0&&(f.brate=f.VBR_mean_bitrate_kbps),f.VBR==Dt.vbr_off||f.VBR==Dt.vbr_mtrh||f.VBR==Dt.vbr_mt||(f.free_format=!1),f.VBR==Dt.vbr_off&&f.brate==0&&ea.EQ(f.compression_ratio,0)&&(f.compression_ratio=11.025),f.VBR==Dt.vbr_off&&f.compression_ratio>0&&(f.out_samplerate==0&&(f.out_samplerate=map2MP3Frequency(int(.97*f.in_samplerate))),f.brate=0|f.out_samplerate*16*S.channels_out/(1e3*f.compression_ratio),S.samplerate_index=B(f.out_samplerate,f),f.free_format||(f.brate=q(f.brate,f.version,f.out_samplerate))),f.out_samplerate!=0&&(f.out_samplerate<16e3?(f.VBR_mean_bitrate_kbps=Math.max(f.VBR_mean_bitrate_kbps,8),f.VBR_mean_bitrate_kbps=Math.min(f.VBR_mean_bitrate_kbps,64)):f.out_samplerate<32e3?(f.VBR_mean_bitrate_kbps=Math.max(f.VBR_mean_bitrate_kbps,8),f.VBR_mean_bitrate_kbps=Math.min(f.VBR_mean_bitrate_kbps,160)):(f.VBR_mean_bitrate_kbps=Math.max(f.VBR_mean_bitrate_kbps,32),f.VBR_mean_bitrate_kbps=Math.min(f.VBR_mean_bitrate_kbps,320))),f.lowpassfreq==0){var ce=16e3;switch(f.VBR){case Dt.vbr_off:{var pe=new i;c(pe,f.brate),ce=pe.lowerlimit;break}case Dt.vbr_abr:{var pe=new i;c(pe,f.VBR_mean_bitrate_kbps),ce=pe.lowerlimit;break}case Dt.vbr_rh:{var Oe=[19500,19e3,18600,18e3,17500,16e3,15600,14900,12500,1e4,3950];if(0<=f.VBR_q&&f.VBR_q<=9){var Ue=Oe[f.VBR_q],je=Oe[f.VBR_q+1],ze=f.VBR_q_frac;ce=linear_int(Ue,je,ze)}else ce=19500;break}default:{var Oe=[19500,19e3,18500,18e3,17500,16500,15500,14500,12500,9500,3950];if(0<=f.VBR_q&&f.VBR_q<=9){var Ue=Oe[f.VBR_q],je=Oe[f.VBR_q+1],ze=f.VBR_q_frac;ce=linear_int(Ue,je,ze)}else ce=19500}}f.mode==rr.MONO&&(f.VBR==Dt.vbr_off||f.VBR==Dt.vbr_abr)&&(ce*=1.5),f.lowpassfreq=ce|0}if(f.out_samplerate==0&&(2*f.lowpassfreq>f.in_samplerate&&(f.lowpassfreq=f.in_samplerate/2),f.out_samplerate=p(f.lowpassfreq|0,f.in_samplerate)),f.lowpassfreq=Math.min(20500,f.lowpassfreq),f.lowpassfreq=Math.min(f.out_samplerate/2,f.lowpassfreq),f.VBR==Dt.vbr_off&&(f.compression_ratio=f.out_samplerate*16*S.channels_out/(1e3*f.brate)),f.VBR==Dt.vbr_abr&&(f.compression_ratio=f.out_samplerate*16*S.channels_out/(1e3*f.VBR_mean_bitrate_kbps)),f.bWriteVbrTag||(f.findReplayGain=!1,f.decode_on_the_fly=!1,S.findPeakSample=!1),S.findReplayGain=f.findReplayGain,S.decode_on_the_fly=f.decode_on_the_fly,S.decode_on_the_fly&&(S.findPeakSample=!0),S.findReplayGain&&$.InitGainAnalysis(S.rgdata,f.out_samplerate)==zi.INIT_GAIN_ANALYSIS_ERROR)return f.internal_flags=null,-6;switch(S.decode_on_the_fly&&!f.decode_only&&(S.hip!=null&&M.hip_decode_exit(S.hip),S.hip=M.hip_decode_init()),S.mode_gr=f.out_samplerate<=24e3?1:2,f.framesize=576*S.mode_gr,f.encoder_delay=R.ENCDELAY,S.resample_ratio=f.in_samplerate/f.out_samplerate,f.VBR){case Dt.vbr_mt:case Dt.vbr_rh:case Dt.vbr_mtrh:{var nt=[5.7,6.5,7.3,8.2,10,11.9,13,14,15,16.5];f.compression_ratio=nt[f.VBR_q]}break;case Dt.vbr_abr:f.compression_ratio=f.out_samplerate*16*S.channels_out/(1e3*f.VBR_mean_bitrate_kbps);break;default:f.compression_ratio=f.out_samplerate*16*S.channels_out/(1e3*f.brate);break}if(f.mode==rr.NOT_SET&&(f.mode=rr.JOINT_STEREO),f.highpassfreq>0?(S.highpass1=2*f.highpassfreq,f.highpasswidth>=0?S.highpass2=2*(f.highpassfreq+f.highpasswidth):S.highpass2=(1+0)*2*f.highpassfreq,S.highpass1/=f.out_samplerate,S.highpass2/=f.out_samplerate):(S.highpass1=0,S.highpass2=0),f.lowpassfreq>0?(S.lowpass2=2*f.lowpassfreq,f.lowpasswidth>=0?(S.lowpass1=2*(f.lowpassfreq-f.lowpasswidth),S.lowpass1<0&&(S.lowpass1=0)):S.lowpass1=(1-0)*2*f.lowpassfreq,S.lowpass1/=f.out_samplerate,S.lowpass2/=f.out_samplerate):(S.lowpass1=0,S.lowpass2=0),O(f),S.samplerate_index=B(f.out_samplerate,f),S.samplerate_index<0)return f.internal_flags=null,-1;if(f.VBR==Dt.vbr_off){if(f.free_format)S.bitrate_index=0;else if(f.brate=q(f.brate,f.version,f.out_samplerate),S.bitrate_index=T(f.brate,f.version,f.out_samplerate),S.bitrate_index<=0)return f.internal_flags=null,-1}else S.bitrate_index=1;f.analysis&&(f.bWriteVbrTag=!1),S.pinfo!=null&&(f.bWriteVbrTag=!1),ge.init_bit_stream_w(S);for(var Xe=S.samplerate_index+3*f.version+6*(f.out_samplerate<16e3?1:0),Ve=0;Ve<R.SBMAX_l+1;Ve++)S.scalefac_band.l[Ve]=ve.sfBandIndex[Xe].l[Ve];for(var Ve=0;Ve<R.PSFB21+1;Ve++){var gt=(S.scalefac_band.l[22]-S.scalefac_band.l[21])/R.PSFB21,Ft=S.scalefac_band.l[21]+Ve*gt;S.scalefac_band.psfb21[Ve]=Ft}S.scalefac_band.psfb21[R.PSFB21]=576;for(var Ve=0;Ve<R.SBMAX_s+1;Ve++)S.scalefac_band.s[Ve]=ve.sfBandIndex[Xe].s[Ve];for(var Ve=0;Ve<R.PSFB12+1;Ve++){var gt=(S.scalefac_band.s[13]-S.scalefac_band.s[12])/R.PSFB12,Ft=S.scalefac_band.s[12]+Ve*gt;S.scalefac_band.psfb12[Ve]=Ft}S.scalefac_band.psfb12[R.PSFB12]=192,f.version==1?S.sideinfo_len=S.channels_out==1?4+17:4+32:S.sideinfo_len=S.channels_out==1?4+9:4+17,f.error_protection&&(S.sideinfo_len+=2),u(f),S.Class_ID=H;{var wt;for(wt=0;wt<19;wt++)S.nsPsy.pefirbuf[wt]=700*S.mode_gr*S.channels_out;f.ATHtype==-1&&(f.ATHtype=4)}switch(Gr(f.VBR_q<=9),Gr(f.VBR_q>=0),f.VBR){case Dt.vbr_mt:f.VBR=Dt.vbr_mtrh;case Dt.vbr_mtrh:{f.useTemporal==null&&(f.useTemporal=!1),Z.apply_preset(f,500-f.VBR_q*10,0),f.quality<0&&(f.quality=LAME_DEFAULT_QUALITY),f.quality<5&&(f.quality=0),f.quality>5&&(f.quality=5),S.PSY.mask_adjust=f.maskingadjust,S.PSY.mask_adjust_short=f.maskingadjust_short,f.experimentalY?S.sfb21_extra=!1:S.sfb21_extra=f.out_samplerate>44e3,S.iteration_loop=new VBRNewIterationLoop(Be);break}case Dt.vbr_rh:{Z.apply_preset(f,500-f.VBR_q*10,0),S.PSY.mask_adjust=f.maskingadjust,S.PSY.mask_adjust_short=f.maskingadjust_short,f.experimentalY?S.sfb21_extra=!1:S.sfb21_extra=f.out_samplerate>44e3,f.quality>6&&(f.quality=6),f.quality<0&&(f.quality=LAME_DEFAULT_QUALITY),S.iteration_loop=new VBROldIterationLoop(Be);break}default:{var kt;S.sfb21_extra=!1,f.quality<0&&(f.quality=LAME_DEFAULT_QUALITY),kt=f.VBR,kt==Dt.vbr_off&&(f.VBR_mean_bitrate_kbps=f.brate),Z.apply_preset(f,f.VBR_mean_bitrate_kbps,0),f.VBR=kt,S.PSY.mask_adjust=f.maskingadjust,S.PSY.mask_adjust_short=f.maskingadjust_short,kt==Dt.vbr_off?S.iteration_loop=new ed(Be):S.iteration_loop=new ABRIterationLoop(Be);break}}if(Gr(f.scale>=0),f.VBR!=Dt.vbr_off){if(S.VBR_min_bitrate=1,S.VBR_max_bitrate=14,f.out_samplerate<16e3&&(S.VBR_max_bitrate=8),f.VBR_min_bitrate_kbps!=0&&(f.VBR_min_bitrate_kbps=q(f.VBR_min_bitrate_kbps,f.version,f.out_samplerate),S.VBR_min_bitrate=T(f.VBR_min_bitrate_kbps,f.version,f.out_samplerate),S.VBR_min_bitrate<0)||f.VBR_max_bitrate_kbps!=0&&(f.VBR_max_bitrate_kbps=q(f.VBR_max_bitrate_kbps,f.version,f.out_samplerate),S.VBR_max_bitrate=T(f.VBR_max_bitrate_kbps,f.version,f.out_samplerate),S.VBR_max_bitrate<0))return-1;f.VBR_min_bitrate_kbps=bt.bitrate_table[f.version][S.VBR_min_bitrate],f.VBR_max_bitrate_kbps=bt.bitrate_table[f.version][S.VBR_max_bitrate],f.VBR_mean_bitrate_kbps=Math.min(bt.bitrate_table[f.version][S.VBR_max_bitrate],f.VBR_mean_bitrate_kbps),f.VBR_mean_bitrate_kbps=Math.max(bt.bitrate_table[f.version][S.VBR_min_bitrate],f.VBR_mean_bitrate_kbps)}return f.tune&&(S.PSY.mask_adjust+=f.tune_value_a,S.PSY.mask_adjust_short+=f.tune_value_a),y(f),Gr(f.scale>=0),f.athaa_type<0?S.ATH.useAdjust=3:S.ATH.useAdjust=f.athaa_type,S.ATH.aaSensitivityP=Math.pow(10,f.athaa_sensitivity/-10),f.short_blocks==null&&(f.short_blocks=l0.short_block_allowed),f.short_blocks==l0.short_block_allowed&&(f.mode==rr.JOINT_STEREO||f.mode==rr.STEREO)&&(f.short_blocks=l0.short_block_coupled),f.quant_comp<0&&(f.quant_comp=1),f.quant_comp_short<0&&(f.quant_comp_short=0),f.msfix<0&&(f.msfix=0),f.exp_nspsytune=f.exp_nspsytune|1,f.internal_flags.nsPsy.attackthre<0&&(f.internal_flags.nsPsy.attackthre=Ar.NSATTACKTHRE),f.internal_flags.nsPsy.attackthre_s<0&&(f.internal_flags.nsPsy.attackthre_s=Ar.NSATTACKTHRE_S),Gr(f.scale>=0),f.scale<0&&(f.scale=1),f.ATHtype<0&&(f.ATHtype=4),f.ATHcurve<0&&(f.ATHcurve=4),f.athaa_loudapprox<0&&(f.athaa_loudapprox=2),f.interChRatio<0&&(f.interChRatio=0),f.useTemporal==null&&(f.useTemporal=!0),S.slot_lag=S.frac_SpF=0,f.VBR==Dt.vbr_off&&(S.slot_lag=S.frac_SpF=(f.version+1)*72e3*f.brate%f.out_samplerate|0),ve.iteration_init(f),De.psymodel_init(f),Gr(f.scale>=0),0};function d(f,S){(f.in_buffer_0==null||f.in_buffer_nsamples<S)&&(f.in_buffer_0=Ta(S),f.in_buffer_1=Ta(S),f.in_buffer_nsamples=S)}this.lame_encode_flush=function(f,S,ce,pe){var Oe=f.internal_flags,Ue=cd([2,1152]),je=0,ze,nt,Xe,Ve,gt=Oe.mf_samples_to_encode-R.POSTDELAY,Ft=b(f);if(Oe.mf_samples_to_encode<1)return 0;for(ze=0,f.in_samplerate!=f.out_samplerate&&(gt+=16*f.out_samplerate/f.in_samplerate),Xe=f.framesize-gt%f.framesize,Xe<576&&(Xe+=f.framesize),f.encoder_padding=Xe,Ve=(gt+Xe)/f.framesize;Ve>0&&je>=0;){var wt=Ft-Oe.mf_size,kt=f.frameNum;wt*=f.in_samplerate,wt/=f.out_samplerate,wt>1152&&(wt=1152),wt<1&&(wt=1),nt=pe-ze,pe==0&&(nt=0),je=this.lame_encode_buffer(f,Ue[0],Ue[1],wt,S,ce,nt),ce+=je,ze+=je,Ve-=kt!=f.frameNum?1:0}if(Oe.mf_samples_to_encode=0,je<0||(nt=pe-ze,pe==0&&(nt=0),ge.flush_bitstream(f),je=ge.copy_buffer(Oe,S,ce,nt,1),je<0))return je;if(ce+=je,ze+=je,nt=pe-ze,pe==0&&(nt=0),f.write_id3tag_automatic){if(he.id3tag_write_v1(f),je=ge.copy_buffer(Oe,S,ce,nt,0),je<0)return je;ze+=je}return ze},this.lame_encode_buffer=function(f,S,ce,pe,Oe,Ue,je){var ze=f.internal_flags,nt=[null,null];if(ze.Class_ID!=H)return-3;if(pe==0)return 0;d(ze,pe),nt[0]=ze.in_buffer_0,nt[1]=ze.in_buffer_1;for(var Xe=0;Xe<pe;Xe++)nt[0][Xe]=S[Xe],ze.channels_in>1&&(nt[1][Xe]=ce[Xe]);return l(f,nt[0],nt[1],pe,Oe,Ue,je)};function b(f){var S=R.BLKSIZE+f.framesize-R.FFTOFFSET;return S=Math.max(S,512+f.framesize-32),Gr(Bt.MFSIZE>=S),S}function l(f,S,ce,pe,Oe,Ue,je){var ze=f.internal_flags,nt=0,Xe,Ve,gt,Ft,wt,kt=[null,null],jt=[null,null];if(ze.Class_ID!=H)return-3;if(pe==0)return 0;if(wt=ge.copy_buffer(ze,Oe,Ue,je,0),wt<0)return wt;if(Ue+=wt,nt+=wt,jt[0]=S,jt[1]=ce,ea.NEQ(f.scale,0)&&ea.NEQ(f.scale,1))for(Ve=0;Ve<pe;++Ve)jt[0][Ve]*=f.scale,ze.channels_out==2&&(jt[1][Ve]*=f.scale);if(ea.NEQ(f.scale_left,0)&&ea.NEQ(f.scale_left,1))for(Ve=0;Ve<pe;++Ve)jt[0][Ve]*=f.scale_left;if(ea.NEQ(f.scale_right,0)&&ea.NEQ(f.scale_right,1))for(Ve=0;Ve<pe;++Ve)jt[1][Ve]*=f.scale_right;if(f.num_channels==2&&ze.channels_out==1)for(Ve=0;Ve<pe;++Ve)jt[0][Ve]=.5*(jt[0][Ve]+jt[1][Ve]),jt[1][Ve]=0;Ft=b(f),kt[0]=ze.mfbuf[0],kt[1]=ze.mfbuf[1];for(var Kt=0;pe>0;){var pr=[null,null],Fn=0,kr=0;pr[0]=jt[0],pr[1]=jt[1];var Lr=new g;if(Se(f,kt,pr,Kt,pe,Lr),Fn=Lr.n_in,kr=Lr.n_out,ze.findReplayGain&&!ze.decode_on_the_fly&&$.AnalyzeSamples(ze.rgdata,kt[0],ze.mf_size,kt[1],ze.mf_size,kr,ze.channels_out)==zi.GAIN_ANALYSIS_ERROR)return-6;if(pe-=Fn,Kt+=Fn,ze.channels_out==2,ze.mf_size+=kr,Gr(ze.mf_size<=Bt.MFSIZE),ze.mf_samples_to_encode<1&&(ze.mf_samples_to_encode=R.ENCDELAY+R.POSTDELAY),ze.mf_samples_to_encode+=kr,ze.mf_size>=Ft){var pn=je-nt;if(je==0&&(pn=0),Xe=m(f,kt[0],kt[1],Oe,Ue,pn),Xe<0)return Xe;for(Ue+=Xe,nt+=Xe,ze.mf_size-=f.framesize,ze.mf_samples_to_encode-=f.framesize,gt=0;gt<ze.channels_out;gt++)for(Ve=0;Ve<ze.mf_size;Ve++)kt[gt][Ve]=kt[gt][Ve+f.framesize]}}return Gr(pe==0),nt}function m(f,S,ce,pe,Oe,Ue){var je=C.enc.lame_encode_mp3_frame(f,S,ce,pe,Oe,Ue);return f.frameNum++,je}function g(){this.n_in=0,this.n_out=0}function E(){this.num_used=0}function G(f,S){return S!=0?G(S,f%S):f}function U(f,S,ce){var pe=Math.PI*S;f/=ce,f<0&&(f=0),f>1&&(f=1);var Oe=f-.5,Ue=.42-.5*Math.cos(2*f*Math.PI)+.08*Math.cos(4*f*Math.PI);return Math.abs(Oe)<1e-9?pe/Math.PI:Ue*Math.sin(ce*pe*Oe)/(Math.PI*ce*Oe)}function z(f,S,ce,pe,Oe,Ue,je,ze,nt){var Xe=f.internal_flags,Ve,gt=0,Ft,wt=f.out_samplerate/G(f.out_samplerate,f.in_samplerate);wt>Bt.BPC&&(wt=Bt.BPC);var kt=Math.abs(Xe.resample_ratio-Math.floor(.5+Xe.resample_ratio))<1e-4?1:0,jt=1/Xe.resample_ratio;jt>1&&(jt=1);var Kt=31;Kt%2==0&&--Kt,Kt+=kt;var pr=Kt+1;if(Xe.fill_buffer_resample_init==0){for(Xe.inbuf_old[0]=Ta(pr),Xe.inbuf_old[1]=Ta(pr),Ve=0;Ve<=2*wt;++Ve)Xe.blackfilt[Ve]=Ta(pr);for(Xe.itime[0]=0,Xe.itime[1]=0,gt=0;gt<=2*wt;gt++){var Fn=0,kr=(gt-wt)/(2*wt);for(Ve=0;Ve<=Kt;Ve++)Fn+=Xe.blackfilt[gt][Ve]=U(Ve-kr,jt,Kt);for(Ve=0;Ve<=Kt;Ve++)Xe.blackfilt[gt][Ve]/=Fn}Xe.fill_buffer_resample_init=1}var Lr=Xe.inbuf_old[nt];for(Ft=0;Ft<pe;Ft++){var pn,wa;if(pn=Ft*Xe.resample_ratio,gt=0|Math.floor(pn-Xe.itime[nt]),Kt+gt-Kt/2>=je)break;var kr=pn-Xe.itime[nt]-(gt+.5*(Kt%2));Gr(Math.abs(kr)<=.501),wa=0|Math.floor(kr*2*wt+wt+.5);var Ra=0;for(Ve=0;Ve<=Kt;++Ve){var Sn=Ve+gt-Kt/2,Cr;Gr(Sn<je),Gr(Sn+pr>=0),Cr=Sn<0?Lr[pr+Sn]:Oe[Ue+Sn],Ra+=Cr*Xe.blackfilt[wa][Ve]}S[ce+Ft]=Ra}if(ze.num_used=Math.min(je,Kt+gt-Kt/2),Xe.itime[nt]+=ze.num_used-Ft*Xe.resample_ratio,ze.num_used>=pr)for(Ve=0;Ve<pr;Ve++)Lr[Ve]=Oe[Ue+ze.num_used+Ve-pr];else{var ra=pr-ze.num_used;for(Ve=0;Ve<ra;++Ve)Lr[Ve]=Lr[Ve+ze.num_used];for(gt=0;Ve<pr;++Ve,++gt)Lr[Ve]=Oe[Ue+gt];Gr(gt==ze.num_used)}return Ft}function Se(f,S,ce,pe,Oe,Ue){var je=f.internal_flags;if(je.resample_ratio<.9999||je.resample_ratio>1.0001)for(var ze=0;ze<je.channels_out;ze++){var nt=new E;Ue.n_out=z(f,S[ze],je.mf_size,f.framesize,ce[ze],pe,Oe,nt,ze),Ue.n_in=nt.num_used}else{Ue.n_out=Math.min(f.framesize,Oe),Ue.n_in=Ue.n_out;for(var Xe=0;Xe<Ue.n_out;++Xe)S[0][je.mf_size+Xe]=ce[0][pe+Xe],je.channels_out==2&&(S[1][je.mf_size+Xe]=ce[1][pe+Xe])}}}var ud=tr,Dn=N.VbrMode;function fd(){function C(j,fe,he,M,X,i,I,H,D,x,p,B,q,T,c){this.vbr_q=j,this.quant_comp=fe,this.quant_comp_s=he,this.expY=M,this.st_lrm=X,this.st_s=i,this.masking_adj=I,this.masking_adj_short=H,this.ath_lower=D,this.ath_curve=x,this.ath_sensitivity=p,this.interch=B,this.safejoint=q,this.sfb21mod=T,this.msfix=c}function Y(j,fe,he,M,X,i,I,H,D,x,p,B,q,T){this.quant_comp=fe,this.quant_comp_s=he,this.safejoint=M,this.nsmsfix=X,this.st_lrm=i,this.st_s=I,this.nsbass=H,this.scale=D,this.masking_adj=x,this.ath_lower=p,this.ath_curve=B,this.interch=q,this.sfscale=T}var re;this.setModules=function(j){re=j};var $=[new C(0,9,9,0,5.2,125,-4.2,-6.3,4.8,1,0,0,2,21,.97),new C(1,9,9,0,5.3,125,-3.6,-5.6,4.5,1.5,0,0,2,21,1.35),new C(2,9,9,0,5.6,125,-2.2,-3.5,2.8,2,0,0,2,21,1.49),new C(3,9,9,1,5.8,130,-1.8,-2.8,2.6,3,-4,0,2,20,1.64),new C(4,9,9,1,6,135,-.7,-1.1,1.1,3.5,-8,0,2,0,1.79),new C(5,9,9,1,6.4,140,.5,.4,-7.5,4,-12,2e-4,0,0,1.95),new C(6,9,9,1,6.6,145,.67,.65,-14.7,6.5,-19,4e-4,0,0,2.3),new C(7,9,9,1,6.6,145,.8,.75,-19.7,8,-22,6e-4,0,0,2.7),new C(8,9,9,1,6.6,145,1.2,1.15,-27.5,10,-23,7e-4,0,0,0),new C(9,9,9,1,6.6,145,1.6,1.6,-36,11,-25,8e-4,0,0,0),new C(10,9,9,1,6.6,145,2,2,-36,12,-25,8e-4,0,0,0)],ge=[new C(0,9,9,0,4.2,25,-7,-4,7.5,1,0,0,2,26,.97),new C(1,9,9,0,4.2,25,-5.6,-3.6,4.5,1.5,0,0,2,21,1.35),new C(2,9,9,0,4.2,25,-4.4,-1.8,2,2,0,0,2,18,1.49),new C(3,9,9,1,4.2,25,-3.4,-1.25,1.1,3,-4,0,2,15,1.64),new C(4,9,9,1,4.2,25,-2.2,.1,0,3.5,-8,0,2,0,1.79),new C(5,9,9,1,4.2,25,-1,1.65,-7.7,4,-12,2e-4,0,0,1.95),new C(6,9,9,1,4.2,25,-0,2.47,-7.7,6.5,-19,4e-4,0,0,2),new C(7,9,9,1,4.2,25,.5,2,-14.5,8,-22,6e-4,0,0,2),new C(8,9,9,1,4.2,25,1,2.4,-22,10,-23,7e-4,0,0,2),new C(9,9,9,1,4.2,25,1.5,2.95,-30,11,-25,8e-4,0,0,2),new C(10,9,9,1,4.2,25,2,2.95,-36,12,-30,8e-4,0,0,2)];function Z(j,fe,he){var M=j.VBR==Dn.vbr_rh?$:ge,X=j.VBR_q_frac,i=M[fe],I=M[fe+1],H=i;i.st_lrm=i.st_lrm+X*(I.st_lrm-i.st_lrm),i.st_s=i.st_s+X*(I.st_s-i.st_s),i.masking_adj=i.masking_adj+X*(I.masking_adj-i.masking_adj),i.masking_adj_short=i.masking_adj_short+X*(I.masking_adj_short-i.masking_adj_short),i.ath_lower=i.ath_lower+X*(I.ath_lower-i.ath_lower),i.ath_curve=i.ath_curve+X*(I.ath_curve-i.ath_curve),i.ath_sensitivity=i.ath_sensitivity+X*(I.ath_sensitivity-i.ath_sensitivity),i.interch=i.interch+X*(I.interch-i.interch),i.msfix=i.msfix+X*(I.msfix-i.msfix),De(j,H.vbr_q),he!=0?j.quant_comp=H.quant_comp:Math.abs(j.quant_comp- -1)>0||(j.quant_comp=H.quant_comp),he!=0?j.quant_comp_short=H.quant_comp_s:Math.abs(j.quant_comp_short- -1)>0||(j.quant_comp_short=H.quant_comp_s),H.expY!=0&&(j.experimentalY=H.expY!=0),he!=0?j.internal_flags.nsPsy.attackthre=H.st_lrm:Math.abs(j.internal_flags.nsPsy.attackthre- -1)>0||(j.internal_flags.nsPsy.attackthre=H.st_lrm),he!=0?j.internal_flags.nsPsy.attackthre_s=H.st_s:Math.abs(j.internal_flags.nsPsy.attackthre_s- -1)>0||(j.internal_flags.nsPsy.attackthre_s=H.st_s),he!=0?j.maskingadjust=H.masking_adj:Math.abs(j.maskingadjust-0)>0||(j.maskingadjust=H.masking_adj),he!=0?j.maskingadjust_short=H.masking_adj_short:Math.abs(j.maskingadjust_short-0)>0||(j.maskingadjust_short=H.masking_adj_short),he!=0?j.ATHlower=-H.ath_lower/10:Math.abs(-j.ATHlower*10-0)>0||(j.ATHlower=-H.ath_lower/10),he!=0?j.ATHcurve=H.ath_curve:Math.abs(j.ATHcurve- -1)>0||(j.ATHcurve=H.ath_curve),he!=0?j.athaa_sensitivity=H.ath_sensitivity:Math.abs(j.athaa_sensitivity- -1)>0||(j.athaa_sensitivity=H.ath_sensitivity),H.interch>0&&(he!=0?j.interChRatio=H.interch:Math.abs(j.interChRatio- -1)>0||(j.interChRatio=H.interch)),H.safejoint>0&&(j.exp_nspsytune=j.exp_nspsytune|H.safejoint),H.sfb21mod>0&&(j.exp_nspsytune=j.exp_nspsytune|H.sfb21mod<<20),he!=0?j.msfix=H.msfix:Math.abs(j.msfix- -1)>0||(j.msfix=H.msfix),he==0&&(j.VBR_q=fe,j.VBR_q_frac=X)}var ve=[new Y(8,9,9,0,0,6.6,145,0,.95,0,-30,11,.0012,1),new Y(16,9,9,0,0,6.6,145,0,.95,0,-25,11,.001,1),new Y(24,9,9,0,0,6.6,145,0,.95,0,-20,11,.001,1),new Y(32,9,9,0,0,6.6,145,0,.95,0,-15,11,.001,1),new Y(40,9,9,0,0,6.6,145,0,.95,0,-10,11,9e-4,1),new Y(48,9,9,0,0,6.6,145,0,.95,0,-10,11,9e-4,1),new Y(56,9,9,0,0,6.6,145,0,.95,0,-6,11,8e-4,1),new Y(64,9,9,0,0,6.6,145,0,.95,0,-2,11,8e-4,1),new Y(80,9,9,0,0,6.6,145,0,.95,0,0,8,7e-4,1),new Y(96,9,9,0,2.5,6.6,145,0,.95,0,1,5.5,6e-4,1),new Y(112,9,9,0,2.25,6.6,145,0,.95,0,2,4.5,5e-4,1),new Y(128,9,9,0,1.95,6.4,140,0,.95,0,3,4,2e-4,1),new Y(160,9,9,1,1.79,6,135,0,.95,-2,5,3.5,0,1),new Y(192,9,9,1,1.49,5.6,125,0,.97,-4,7,3,0,0),new Y(224,9,9,1,1.25,5.2,125,0,.98,-6,9,2,0,0),new Y(256,9,9,1,.97,5.2,125,0,1,-8,10,1,0,0),new Y(320,9,9,1,.9,5.2,125,0,1,-10,12,0,0,0)];function Be(j,fe,he){var M=fe,X=re.nearestBitrateFullIndex(fe);if(j.VBR=Dn.vbr_abr,j.VBR_mean_bitrate_kbps=M,j.VBR_mean_bitrate_kbps=Math.min(j.VBR_mean_bitrate_kbps,320),j.VBR_mean_bitrate_kbps=Math.max(j.VBR_mean_bitrate_kbps,8),j.brate=j.VBR_mean_bitrate_kbps,j.VBR_mean_bitrate_kbps>320&&(j.disable_reservoir=!0),ve[X].safejoint>0&&(j.exp_nspsytune=j.exp_nspsytune|2),ve[X].sfscale>0&&(j.internal_flags.noise_shaping=2),Math.abs(ve[X].nsbass)>0){var i=int(ve[X].nsbass*4);i<0&&(i+=64),j.exp_nspsytune=j.exp_nspsytune|i<<2}return he!=0?j.quant_comp=ve[X].quant_comp:Math.abs(j.quant_comp- -1)>0||(j.quant_comp=ve[X].quant_comp),he!=0?j.quant_comp_short=ve[X].quant_comp_s:Math.abs(j.quant_comp_short- -1)>0||(j.quant_comp_short=ve[X].quant_comp_s),he!=0?j.msfix=ve[X].nsmsfix:Math.abs(j.msfix- -1)>0||(j.msfix=ve[X].nsmsfix),he!=0?j.internal_flags.nsPsy.attackthre=ve[X].st_lrm:Math.abs(j.internal_flags.nsPsy.attackthre- -1)>0||(j.internal_flags.nsPsy.attackthre=ve[X].st_lrm),he!=0?j.internal_flags.nsPsy.attackthre_s=ve[X].st_s:Math.abs(j.internal_flags.nsPsy.attackthre_s- -1)>0||(j.internal_flags.nsPsy.attackthre_s=ve[X].st_s),he!=0?j.scale=ve[X].scale:Math.abs(j.scale- -1)>0||(j.scale=ve[X].scale),he!=0?j.maskingadjust=ve[X].masking_adj:Math.abs(j.maskingadjust-0)>0||(j.maskingadjust=ve[X].masking_adj),ve[X].masking_adj>0?he!=0?j.maskingadjust_short=ve[X].masking_adj*.9:Math.abs(j.maskingadjust_short-0)>0||(j.maskingadjust_short=ve[X].masking_adj*.9):he!=0?j.maskingadjust_short=ve[X].masking_adj*1.1:Math.abs(j.maskingadjust_short-0)>0||(j.maskingadjust_short=ve[X].masking_adj*1.1),he!=0?j.ATHlower=-ve[X].ath_lower/10:Math.abs(-j.ATHlower*10-0)>0||(j.ATHlower=-ve[X].ath_lower/10),he!=0?j.ATHcurve=ve[X].ath_curve:Math.abs(j.ATHcurve- -1)>0||(j.ATHcurve=ve[X].ath_curve),he!=0?j.interChRatio=ve[X].interch:Math.abs(j.interChRatio- -1)>0||(j.interChRatio=ve[X].interch),fe}this.apply_preset=function(j,fe,he){switch(fe){case At.R3MIX:{fe=At.V3,j.VBR=Dn.vbr_mtrh;break}case At.MEDIUM:{fe=At.V4,j.VBR=Dn.vbr_rh;break}case At.MEDIUM_FAST:{fe=At.V4,j.VBR=Dn.vbr_mtrh;break}case At.STANDARD:{fe=At.V2,j.VBR=Dn.vbr_rh;break}case At.STANDARD_FAST:{fe=At.V2,j.VBR=Dn.vbr_mtrh;break}case At.EXTREME:{fe=At.V0,j.VBR=Dn.vbr_rh;break}case At.EXTREME_FAST:{fe=At.V0,j.VBR=Dn.vbr_mtrh;break}case At.INSANE:return fe=320,j.preset=fe,Be(j,fe,he),j.VBR=Dn.vbr_off,fe}switch(j.preset=fe,fe){case At.V9:return Z(j,9,he),fe;case At.V8:return Z(j,8,he),fe;case At.V7:return Z(j,7,he),fe;case At.V6:return Z(j,6,he),fe;case At.V5:return Z(j,5,he),fe;case At.V4:return Z(j,4,he),fe;case At.V3:return Z(j,3,he),fe;case At.V2:return Z(j,2,he),fe;case At.V1:return Z(j,1,he),fe;case At.V0:return Z(j,0,he),fe;default:break}return 8<=fe&&fe<=320?Be(j,fe,he):(j.preset=0,fe)};function De(j,fe){var he=0;return 0>fe&&(he=-1,fe=0),9<fe&&(he=-1,fe=9),j.VBR_q=fe,j.VBR_q_frac=0,he}}var dd=fd;function vd(){var C,Y;this.setModules=function(re,$){C=re,Y=$}}var md=vd;function hd(){this.over_noise=0,this.tot_noise=0,this.max_noise=0,this.over_count=0,this.over_SSD=0,this.bits=0}var c0=hd,C1=N.new_float,_d=N.new_int;function pd(){this.global_gain=0,this.sfb_count1=0,this.step=_d(39),this.noise=C1(39),this.noise_log=C1(39)}var Sd=pd,ta=N.System,M1=N.VbrMode,u0=N.Util,Qa=N.Arrays,Vi=N.new_float,ln=N.assert;function xd(){var C;this.rv=null;var Y;this.qupvt=null;var re,$=new md,ge;this.setModules=function(D,x,p,B){C=D,Y=x,this.rv=x,re=p,this.qupvt=p,ge=B,$.setModules(re,ge)},this.ms_convert=function(D,x){for(var p=0;p<576;++p){var B=D.tt[x][0].xr[p],q=D.tt[x][1].xr[p];D.tt[x][0].xr[p]=(B+q)*(u0.SQRT2*.5),D.tt[x][1].xr[p]=(B-q)*(u0.SQRT2*.5)}};function Z(D,x,p,B){B=0;for(var q=0;q<=p;++q){var T=Math.abs(D.xr[q]);B+=T,x[q]=Math.sqrt(T*Math.sqrt(T)),x[q]>D.xrpow_max&&(D.xrpow_max=x[q])}return B}this.init_xrpow=function(D,x,p){var B=0,q=0|x.max_nonzero_coeff;if(ln(p!=null),x.xrpow_max=0,ln(0<=q&&q<=575),Qa.fill(p,q,576,0),B=Z(x,p,q,B),B>1e-20){var T=0;(D.substep_shaping&2)!=0&&(T=1);for(var c=0;c<x.psymax;c++)D.pseudohalf[c]=T;return!0}return Qa.fill(x.l3_enc,0,576,0),!1};function ve(D,x){var p=D.ATH,B=x.xr;if(x.block_type!=R.SHORT_TYPE)for(var q=!1,T=R.PSFB21-1;T>=0&&!q;T--){var c=D.scalefac_band.psfb21[T],O=D.scalefac_band.psfb21[T+1],y=re.athAdjust(p.adjust,p.psfb21[T],p.floor);D.nsPsy.longfact[21]>1e-12&&(y*=D.nsPsy.longfact[21]);for(var u=O-1;u>=c;u--)if(Math.abs(B[u])<y)B[u]=0;else{q=!0;break}}else for(var d=0;d<3;d++)for(var q=!1,T=R.PSFB12-1;T>=0&&!q;T--){var c=D.scalefac_band.s[12]*3+(D.scalefac_band.s[13]-D.scalefac_band.s[12])*d+(D.scalefac_band.psfb12[T]-D.scalefac_band.psfb12[0]),O=c+(D.scalefac_band.psfb12[T+1]-D.scalefac_band.psfb12[T]),b=re.athAdjust(p.adjust,p.psfb12[T],p.floor);D.nsPsy.shortfact[12]>1e-12&&(b*=D.nsPsy.shortfact[12]);for(var u=O-1;u>=c;u--)if(Math.abs(B[u])<b)B[u]=0;else{q=!0;break}}}this.init_outer_loop=function(D,x){x.part2_3_length=0,x.big_values=0,x.count1=0,x.global_gain=210,x.scalefac_compress=0,x.table_select[0]=0,x.table_select[1]=0,x.table_select[2]=0,x.subblock_gain[0]=0,x.subblock_gain[1]=0,x.subblock_gain[2]=0,x.subblock_gain[3]=0,x.region0_count=0,x.region1_count=0,x.preflag=0,x.scalefac_scale=0,x.count1table_select=0,x.part2_length=0,x.sfb_lmax=R.SBPSY_l,x.sfb_smin=R.SBPSY_s,x.psy_lmax=D.sfb21_extra?R.SBMAX_l:R.SBPSY_l,x.psymax=x.psy_lmax,x.sfbmax=x.sfb_lmax,x.sfbdivide=11;for(var p=0;p<R.SBMAX_l;p++)x.width[p]=D.scalefac_band.l[p+1]-D.scalefac_band.l[p],x.window[p]=3;if(x.block_type==R.SHORT_TYPE){var B=Vi(576);x.sfb_smin=0,x.sfb_lmax=0,x.mixed_block_flag!=0&&(x.sfb_smin=3,x.sfb_lmax=D.mode_gr*2+4),x.psymax=x.sfb_lmax+3*((D.sfb21_extra?R.SBMAX_s:R.SBPSY_s)-x.sfb_smin),x.sfbmax=x.sfb_lmax+3*(R.SBPSY_s-x.sfb_smin),x.sfbdivide=x.sfbmax-18,x.psy_lmax=x.sfb_lmax;var q=D.scalefac_band.l[x.sfb_lmax];ta.arraycopy(x.xr,0,B,0,576);for(var p=x.sfb_smin;p<R.SBMAX_s;p++)for(var T=D.scalefac_band.s[p],c=D.scalefac_band.s[p+1],O=0;O<3;O++)for(var y=T;y<c;y++)x.xr[q++]=B[3*y+O];for(var u=x.sfb_lmax,p=x.sfb_smin;p<R.SBMAX_s;p++)x.width[u]=x.width[u+1]=x.width[u+2]=D.scalefac_band.s[p+1]-D.scalefac_band.s[p],x.window[u]=0,x.window[u+1]=1,x.window[u+2]=2,u+=3}x.count1bits=0,x.sfb_partition_table=re.nr_of_sfb_block[0][0],x.slen[0]=0,x.slen[1]=0,x.slen[2]=0,x.slen[3]=0,x.max_nonzero_coeff=575,Qa.fill(x.scalefac,0),ve(D,x)};function Be(D){this.ordinal=D}Be.BINSEARCH_NONE=new Be(0),Be.BINSEARCH_UP=new Be(1),Be.BINSEARCH_DOWN=new Be(2);function De(D,x,p,B,q){var T,c=D.CurrentStep[B],O=!1,y=D.OldValue[B],u=Be.BINSEARCH_NONE;for(x.global_gain=y,p-=x.part2_length,ln(c!=0);;){var d;if(T=ge.count_bits(D,q,x,null),c==1||T==p)break;T>p?(u==Be.BINSEARCH_DOWN&&(O=!0),O&&(c/=2),u=Be.BINSEARCH_UP,d=c):(u==Be.BINSEARCH_UP&&(O=!0),O&&(c/=2),u=Be.BINSEARCH_DOWN,d=-c),x.global_gain+=d,x.global_gain<0&&(x.global_gain=0,O=!0),x.global_gain>255&&(x.global_gain=255,O=!0)}for(ln(x.global_gain>=0),ln(x.global_gain<256);T>p&&x.global_gain<255;)x.global_gain++,T=ge.count_bits(D,q,x,null);return D.CurrentStep[B]=y-x.global_gain>=4?4:2,D.OldValue[B]=x.global_gain,x.part2_3_length=T,T}this.trancate_smallspectrums=function(D,x,p,B){var q=Vi(Sa.SFBMAX);if(!((D.substep_shaping&4)==0&&x.block_type==R.SHORT_TYPE||(D.substep_shaping&128)!=0)){re.calc_noise(x,p,q,new c0,null);for(var c=0;c<576;c++){var T=0;x.l3_enc[c]!=0&&(T=Math.abs(x.xr[c])),B[c]=T}var c=0,O=8;x.block_type==R.SHORT_TYPE&&(O=6);do{var y,u,d,b,l=x.width[O];if(c+=l,!(q[O]>=1)&&(Qa.sort(B,c-l,l),!jn.EQ(B[c-1],0))){y=(1-q[O])*p[O],u=0,b=0;do{var m;for(d=1;b+d<l&&!jn.NEQ(B[b+c-l],B[b+c+d-l]);d++);if(m=B[b+c-l]*B[b+c-l]*d,y<m){b!=0&&(u=B[b+c-l-1]);break}y-=m,b+=d}while(b<l);if(!jn.EQ(u,0))do Math.abs(x.xr[c-l])<=u&&(x.l3_enc[c-l]=0);while(--l>0)}}while(++O<x.psymax);x.part2_3_length=ge.noquant_count_bits(D,x,null)}};function j(D){for(var x=0;x<D.sfbmax;x++)if(D.scalefac[x]+D.subblock_gain[D.window[x]]==0)return!1;return!0}function fe(D){return u0.FAST_LOG10(.368+.632*D*D*D)}function he(D,x){for(var p=1e-37,B=0;B<x.psymax;B++)p+=fe(D[B]);return Math.max(1e-20,p)}function M(D,x,p,B,q){var T;switch(D){default:case 9:{x.over_count>0?(T=p.over_SSD<=x.over_SSD,p.over_SSD==x.over_SSD&&(T=p.bits<x.bits)):T=p.max_noise<0&&p.max_noise*10+p.bits<=x.max_noise*10+x.bits;break}case 0:T=p.over_count<x.over_count||p.over_count==x.over_count&&p.over_noise<x.over_noise||p.over_count==x.over_count&&jn.EQ(p.over_noise,x.over_noise)&&p.tot_noise<x.tot_noise;break;case 8:p.max_noise=he(q,B);case 1:T=p.max_noise<x.max_noise;break;case 2:T=p.tot_noise<x.tot_noise;break;case 3:T=p.tot_noise<x.tot_noise&&p.max_noise<x.max_noise;break;case 4:T=p.max_noise<=0&&x.max_noise>.2||p.max_noise<=0&&x.max_noise<0&&x.max_noise>p.max_noise-.2&&p.tot_noise<x.tot_noise||p.max_noise<=0&&x.max_noise>0&&x.max_noise>p.max_noise-.2&&p.tot_noise<x.tot_noise+x.over_noise||p.max_noise>0&&x.max_noise>-.05&&x.max_noise>p.max_noise-.1&&p.tot_noise+p.over_noise<x.tot_noise+x.over_noise||p.max_noise>0&&x.max_noise>-.1&&x.max_noise>p.max_noise-.15&&p.tot_noise+p.over_noise+p.over_noise<x.tot_noise+x.over_noise+x.over_noise;break;case 5:T=p.over_noise<x.over_noise||jn.EQ(p.over_noise,x.over_noise)&&p.tot_noise<x.tot_noise;break;case 6:T=p.over_noise<x.over_noise||jn.EQ(p.over_noise,x.over_noise)&&(p.max_noise<x.max_noise||jn.EQ(p.max_noise,x.max_noise)&&p.tot_noise<=x.tot_noise);break;case 7:T=p.over_count<x.over_count||p.over_noise<x.over_noise;break}return x.over_count==0&&(T=T&&p.bits<x.bits),T}function X(D,x,p,B,q){var T=D.internal_flags,c;x.scalefac_scale==0?c=1.2968395546510096:c=1.6817928305074292;for(var O=0,y=0;y<x.sfbmax;y++)O<p[y]&&(O=p[y]);var u=T.noise_shaping_amp;switch(u==3&&(q?u=2:u=1),u){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<x.sfbmax;y++){var b=x.width[y],l;if(d+=b,!(p[y]<O)){if((T.substep_shaping&2)!=0&&(T.pseudohalf[y]=T.pseudohalf[y]==0?1:0,T.pseudohalf[y]==0&&T.noise_shaping_amp==2))return;for(x.scalefac[y]++,l=-b;l<0;l++)B[d+l]*=c,B[d+l]>x.xrpow_max&&(x.xrpow_max=B[d+l]);if(T.noise_shaping_amp==2)return}}}function i(D,x){for(var p=1.2968395546510096,B=0,q=0;q<D.sfbmax;q++){var T=D.width[q],c=D.scalefac[q];if(D.preflag!=0&&(c+=re.pretab[q]),B+=T,(c&1)!=0){c++;for(var O=-T;O<0;O++)x[B+O]*=p,x[B+O]>D.xrpow_max&&(D.xrpow_max=x[B+O])}D.scalefac[q]=c>>1}D.preflag=0,D.scalefac_scale=1}function I(D,x,p){var B,q=x.scalefac;for(B=0;B<x.sfb_lmax;B++)if(q[B]>=16)return!0;for(var T=0;T<3;T++){var c=0,O=0;for(B=x.sfb_lmax+T;B<x.sfbdivide;B+=3)c<q[B]&&(c=q[B]);for(;B<x.sfbmax;B+=3)O<q[B]&&(O=q[B]);if(!(c<16&&O<8)){if(x.subblock_gain[T]>=7)return!0;x.subblock_gain[T]++;var y=D.scalefac_band.l[x.sfb_lmax];for(B=x.sfb_lmax+T;B<x.sfbmax;B+=3){var u,d=x.width[B],b=q[B];if(ln(b>=0),b=b-(4>>x.scalefac_scale),b>=0){q[B]=b,y+=d*3;continue}q[B]=0;{var l=210+(b<<x.scalefac_scale+1);u=re.IPOW20(l)}y+=d*(T+1);for(var m=-d;m<0;m++)p[y+m]*=u,p[y+m]>x.xrpow_max&&(x.xrpow_max=p[y+m]);y+=d*(3-T-1)}{var u=re.IPOW20(202);y+=x.width[B]*(T+1);for(var m=-x.width[B];m<0;m++)p[y+m]*=u,p[y+m]>x.xrpow_max&&(x.xrpow_max=p[y+m])}}}return!1}function H(D,x,p,B,q){var T=D.internal_flags;X(D,x,p,B,q);var c=j(x);return c?!1:(T.mode_gr==2?c=ge.scale_bitcount(x):c=ge.scale_bitcount_lsf(T,x),c?(T.noise_shaping>1&&(Qa.fill(T.pseudohalf,0),x.scalefac_scale==0?(i(x,B),c=!1):x.block_type==R.SHORT_TYPE&&T.subblock_gain>0&&(c=I(T,x,B)||j(x))),c||(T.mode_gr==2?c=ge.scale_bitcount(x):c=ge.scale_bitcount_lsf(T,x)),!c):!0)}this.outer_loop=function(D,x,p,B,q,T){var c=D.internal_flags,O=new Fo,y=Vi(576),u=Vi(Sa.SFBMAX),d=new c0,b,l=new Sd,m=9999999,g=!1,E=!1,G=0;if(De(c,x,T,q,B),c.noise_shaping==0)return 100;re.calc_noise(x,p,u,d,l),d.bits=x.part2_3_length,O.assign(x);var U=0;for(ta.arraycopy(B,0,y,0,576);!g;){do{var z=new c0,Se,f=255;if((c.substep_shaping&2)!=0?Se=20:Se=3,c.sfb21_extra&&(u[O.sfbmax]>1||O.block_type==R.SHORT_TYPE&&(u[O.sfbmax+1]>1||u[O.sfbmax+2]>1))||!H(D,O,u,B,E))break;O.scalefac_scale!=0&&(f=254);var S=T-O.part2_length;if(S<=0)break;for(;(O.part2_3_length=ge.count_bits(c,B,O,l))>S&&O.global_gain<=f;)O.global_gain++;if(O.global_gain>f)break;if(d.over_count==0){for(;(O.part2_3_length=ge.count_bits(c,B,O,l))>m&&O.global_gain<=f;)O.global_gain++;if(O.global_gain>f)break}if(re.calc_noise(O,p,u,z,l),z.bits=O.part2_3_length,x.block_type!=R.SHORT_TYPE?b=D.quant_comp:b=D.quant_comp_short,b=M(b,d,z,O,u)?1:0,b!=0)m=x.part2_3_length,d=z,x.assign(O),U=0,ta.arraycopy(B,0,y,0,576);else if(c.full_outer_loop==0&&(++U>Se&&d.over_count==0||c.noise_shaping_amp==3&&E&&U>30||c.noise_shaping_amp==3&&E&&O.global_gain-G>15))break}while(O.global_gain+O.scalefac_scale<255);c.noise_shaping_amp==3?E?g=!0:(O.assign(x),ta.arraycopy(y,0,B,0,576),U=0,G=O.global_gain,E=!0):g=!0}return ln(x.global_gain+x.scalefac_scale<=255),D.VBR==M1.vbr_rh||D.VBR==M1.vbr_mtrh?ta.arraycopy(y,0,B,0,576):(c.substep_shaping&1)!=0&&trancate_smallspectrums(c,x,p,B),d.over_count},this.iteration_finish_one=function(D,x,p){var B=D.l3_side,q=B.tt[x][p];ge.best_scalefac_store(D,x,p,B),D.use_best_huffman==1&&ge.best_huffman_divide(D,q),Y.ResvAdjust(D,q)},this.VBR_encode_granule=function(D,x,p,B,q,T,c){var O=D.internal_flags,y=new Fo,u=Vi(576),d=c,b=c+1,l=(c+T)/2,m,g,E=0,G=O.sfb21_extra;ln(d<=LameInternalFlags.MAX_BITS_PER_CHANNEL),Qa.fill(y.l3_enc,0);do ln(l>=T),ln(l<=c),ln(T<=c),l>d-42?O.sfb21_extra=!1:O.sfb21_extra=G,g=outer_loop(D,x,p,B,q,l),g<=0?(E=1,b=x.part2_3_length,y.assign(x),ta.arraycopy(B,0,u,0,576),c=b-32,m=c-T,l=(c+T)/2):(T=l+32,m=c-T,l=(c+T)/2,E!=0&&(E=2,x.assign(y),ta.arraycopy(u,0,B,0,576)));while(m>12);O.sfb21_extra=G,E==2&&ta.arraycopy(y.l3_enc,0,x.l3_enc,0,576),ln(x.part2_3_length<=d)},this.get_framebits=function(D,x){var p=D.internal_flags;p.bitrate_index=p.VBR_min_bitrate;var B=C.getframebits(D);p.bitrate_index=1,B=C.getframebits(D);for(var q=1;q<=p.VBR_max_bitrate;q++){p.bitrate_index=q;var T=new MeanBits(B);x[q]=Y.ResvFrameBegin(D,T),B=T.bits}},this.VBR_old_prepare=function(D,x,p,B,q,T,c,O,y){var u=D.internal_flags,d,b=0,l=1,m=0;u.bitrate_index=u.VBR_max_bitrate;var g=Y.ResvFrameBegin(D,new MeanBits(0))/u.mode_gr;get_framebits(D,T);for(var E=0;E<u.mode_gr;E++){var G=re.on_pe(D,x,O[E],g,E,0);u.mode_ext==R.MPG_MD_MS_LR&&(ms_convert(u.l3_side,E),re.reduce_side(O[E],p[E],g,G));for(var U=0;U<u.channels_out;++U){var z=u.l3_side.tt[E][U];z.block_type!=R.SHORT_TYPE?(b=1.28/(1+Math.exp(3.5-x[E][U]/300))-.05,d=u.PSY.mask_adjust-b):(b=2.56/(1+Math.exp(3.5-x[E][U]/300))-.14,d=u.PSY.mask_adjust_short-b),u.masking_lower=Math.pow(10,d*.1),init_outer_loop(u,z),y[E][U]=re.calc_xmin(D,B[E][U],z,q[E][U]),y[E][U]!=0&&(l=0),c[E][U]=126,m+=O[E][U]}}for(var E=0;E<u.mode_gr;E++)for(var U=0;U<u.channels_out;U++)m>T[u.VBR_max_bitrate]&&(O[E][U]*=T[u.VBR_max_bitrate],O[E][U]/=m),c[E][U]>O[E][U]&&(c[E][U]=O[E][U]);return l},this.bitpressure_strategy=function(D,x,p,B){for(var q=0;q<D.mode_gr;q++)for(var T=0;T<D.channels_out;T++){for(var c=D.l3_side.tt[q][T],O=x[q][T],y=0,u=0;u<c.psy_lmax;u++)O[y++]*=1+.029*u*u/R.SBMAX_l/R.SBMAX_l;if(c.block_type==R.SHORT_TYPE)for(var u=c.sfb_smin;u<R.SBMAX_s;u++)O[y++]*=1+.029*u*u/R.SBMAX_s/R.SBMAX_s,O[y++]*=1+.029*u*u/R.SBMAX_s/R.SBMAX_s,O[y++]*=1+.029*u*u/R.SBMAX_s/R.SBMAX_s;B[q][T]=0|Math.max(p[q][T],.9*B[q][T])}},this.VBR_new_prepare=function(D,x,p,B,q,T){var c=D.internal_flags,O=1,y=0,u=0,d;if(D.free_format){c.bitrate_index=0;var b=new MeanBits(y);d=Y.ResvFrameBegin(D,b),y=b.bits,q[0]=d}else{c.bitrate_index=c.VBR_max_bitrate;var b=new MeanBits(y);Y.ResvFrameBegin(D,b),y=b.bits,get_framebits(D,q),d=q[c.VBR_max_bitrate]}for(var l=0;l<c.mode_gr;l++){re.on_pe(D,x,T[l],y,l,0),c.mode_ext==R.MPG_MD_MS_LR&&ms_convert(c.l3_side,l);for(var m=0;m<c.channels_out;++m){var g=c.l3_side.tt[l][m];c.masking_lower=Math.pow(10,c.PSY.mask_adjust*.1),init_outer_loop(c,g),re.calc_xmin(D,p[l][m],g,B[l][m])!=0&&(O=0),u+=T[l][m]}}for(var l=0;l<c.mode_gr;l++)for(var m=0;m<c.channels_out;m++)u>d&&(T[l][m]*=d,T[l][m]/=u);return O},this.calc_target_bits=function(D,x,p,B,q,T){var c=D.internal_flags,O=c.l3_side,y,u,d,b,l=0;c.bitrate_index=c.VBR_max_bitrate;var m=new MeanBits(l);for(T[0]=Y.ResvFrameBegin(D,m),l=m.bits,c.bitrate_index=1,l=C.getframebits(D)-c.sideinfo_len*8,q[0]=l/(c.mode_gr*c.channels_out),l=D.VBR_mean_bitrate_kbps*D.framesize*1e3,(c.substep_shaping&1)!=0&&(l*=1.09),l/=D.out_samplerate,l-=c.sideinfo_len*8,l/=c.mode_gr*c.channels_out,y=.93+.07*(11-D.compression_ratio)/(11-5.5),y<.9&&(y=.9),y>1&&(y=1),u=0;u<c.mode_gr;u++){var g=0;for(d=0;d<c.channels_out;d++){if(B[u][d]=int(y*l),x[u][d]>700){var E=int((x[u][d]-700)/1.4),G=O.tt[u][d];B[u][d]=int(y*l),G.block_type==R.SHORT_TYPE&&E<l/2&&(E=l/2),E>l*3/2?E=l*3/2:E<0&&(E=0),B[u][d]+=E}B[u][d]>LameInternalFlags.MAX_BITS_PER_CHANNEL&&(B[u][d]=LameInternalFlags.MAX_BITS_PER_CHANNEL),g+=B[u][d]}if(g>LameInternalFlags.MAX_BITS_PER_GRANULE)for(d=0;d<c.channels_out;++d)B[u][d]*=LameInternalFlags.MAX_BITS_PER_GRANULE,B[u][d]/=g}if(c.mode_ext==R.MPG_MD_MS_LR)for(u=0;u<c.mode_gr;u++)re.reduce_side(B[u],p[u],l*c.channels_out,LameInternalFlags.MAX_BITS_PER_GRANULE);for(b=0,u=0;u<c.mode_gr;u++)for(d=0;d<c.channels_out;d++)B[u][d]>LameInternalFlags.MAX_BITS_PER_CHANNEL&&(B[u][d]=LameInternalFlags.MAX_BITS_PER_CHANNEL),b+=B[u][d];if(b>T[0])for(u=0;u<c.mode_gr;u++)for(d=0;d<c.channels_out;d++)B[u][d]*=T[0],B[u][d]/=b}}var bd=xd,qo=N.assert;function gd(){var C;this.setModules=function(Y){C=Y},this.ResvFrameBegin=function(Y,re){var $=Y.internal_flags,ge,Z=$.l3_side,ve=C.getframebits(Y);re.bits=(ve-$.sideinfo_len*8)/$.mode_gr;var Be=8*256*$.mode_gr-8;Y.brate>320?ge=8*int(Y.brate*1e3/(Y.out_samplerate/1152)/8+.5):(ge=8*1440,Y.strict_ISO&&(ge=8*int(32e4/(Y.out_samplerate/1152)/8+.5))),$.ResvMax=ge-ve,$.ResvMax>Be&&($.ResvMax=Be),($.ResvMax<0||Y.disable_reservoir)&&($.ResvMax=0);var De=re.bits*$.mode_gr+Math.min($.ResvSize,$.ResvMax);return De>ge&&(De=ge),qo($.ResvMax%8==0),qo($.ResvMax>=0),Z.resvDrain_pre=0,$.pinfo!=null&&($.pinfo.mean_bits=re.bits/2,$.pinfo.resvsize=$.ResvSize),De},this.ResvMaxBits=function(Y,re,$,ge){var Z=Y.internal_flags,ve,Be=Z.ResvSize,De=Z.ResvMax;ge!=0&&(Be+=re),(Z.substep_shaping&1)!=0&&(De*=.9),$.bits=re,Be*10>De*9?(ve=Be-De*9/10,$.bits+=ve,Z.substep_shaping|=128):(ve=0,Z.substep_shaping&=127,!Y.disable_reservoir&&(Z.substep_shaping&1)==0&&($.bits-=.1*re));var j=Be<Z.ResvMax*6/10?Be:Z.ResvMax*6/10;return j-=ve,j<0&&(j=0),j},this.ResvAdjust=function(Y,re){Y.ResvSize-=re.part2_3_length+re.part2_length},this.ResvFrameEnd=function(Y,re){var $,ge=Y.l3_side;Y.ResvSize+=re*Y.mode_gr;var Z=0;ge.resvDrain_post=0,ge.resvDrain_pre=0,($=Y.ResvSize%8)!=0&&(Z+=$),$=Y.ResvSize-Z-Y.ResvMax,$>0&&(qo($%8==0),qo($>=0),Z+=$);{var ve=Math.min(ge.main_data_begin*8,Z)/8;ge.resvDrain_pre+=8*ve,Z-=8*ve,Y.ResvSize-=8*ve,ge.main_data_begin-=ve}ge.resvDrain_post+=Z,Y.ResvSize-=Z}}var yd=gd;function Ed(){var C="http://www.mp3dev.org/",Y=3,re=98,$=4,ge=0,Z=93;this.getLameVersion=function(){return Y+"."+re+"."+$},this.getLameShortVersion=function(){return Y+"."+re+"."+$},this.getLameVeryShortVersion=function(){return"LAME"+Y+"."+re+"r"},this.getPsyVersion=function(){return ge+"."+Z},this.getLameUrl=function(){return C},this.getLameOsBitness=function(){return"32bits"}}var Td=Ed,wd=N.System,f0=N.VbrMode,P1=N.ShortBlock,Rd=N.Arrays,zo=N.new_byte,Ad=N.assert;qi.NUMTOCENTRIES=100,qi.MAXFRAMESIZE=2880;function qi(){var C,Y,re;this.setModules=function(l,m,g){C=l,Y=m,re=g};var $=1,ge=2,Z=4,ve=8,Be=qi.NUMTOCENTRIES,De=qi.MAXFRAMESIZE,j=Be+4+4+4+4+4,fe=j+9+1+1+8+1+1+3+1+1+2+4+2+2,he=128,M=64,X=32,i=null,I="Xing",H="Info",D=[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 x(l,m){if(l.nVbrNumFrames++,l.sum+=m,l.seen++,!(l.seen<l.want)&&(l.pos<l.size&&(l.bag[l.pos]=l.sum,l.pos++,l.seen=0),l.pos==l.size)){for(var g=1;g<l.size;g+=2)l.bag[g/2]=l.bag[g];l.want*=2,l.pos/=2}}function p(l,m){if(!(l.pos<=0))for(var g=1;g<Be;++g){var E=g/Be,G,U,z=0|Math.floor(E*l.pos);z>l.pos-1&&(z=l.pos-1),G=l.bag[z],U=l.sum;var Se=0|256*G/U;Se>255&&(Se=255),m[g]=255&Se}}this.addVbrFrame=function(l){var m=l.internal_flags,g=Tables.bitrate_table[l.version][m.bitrate_index];Ad(m.VBR_seek_table.bag!=null),x(m.VBR_seek_table,g)};function B(l,m){var g=l[m+0]&255;return g<<=8,g|=l[m+1]&255,g<<=8,g|=l[m+2]&255,g<<=8,g|=l[m+3]&255,g}function q(l,m,g){l[m+0]=255&(g>>24&255),l[m+1]=255&(g>>16&255),l[m+2]=255&(g>>8&255),l[m+3]=255&(g&255)}function T(l,m,g){l[m+0]=255&(g>>8&255),l[m+1]=255&(g&255)}function c(l,m){return new String(l,m,I.length(),i).equals(I)||new String(l,m,H.length(),i).equals(H)}function O(l,m,g){return 255&(l<<m|g&~(-1<<m))}function y(l,m){var g=l.internal_flags;m[0]=O(m[0],8,255),m[1]=O(m[1],3,7),m[1]=O(m[1],1,l.out_samplerate<16e3?0:1),m[1]=O(m[1],1,l.version),m[1]=O(m[1],2,4-3),m[1]=O(m[1],1,l.error_protection?0:1),m[2]=O(m[2],4,g.bitrate_index),m[2]=O(m[2],2,g.samplerate_index),m[2]=O(m[2],1,0),m[2]=O(m[2],1,l.extension),m[3]=O(m[3],2,l.mode.ordinal()),m[3]=O(m[3],2,g.mode_ext),m[3]=O(m[3],1,l.copyright),m[3]=O(m[3],1,l.original),m[3]=O(m[3],2,l.emphasis),m[0]=255;var E=255&(m[1]&241),G;l.version==1?G=he:l.out_samplerate<16e3?G=X:G=M,l.VBR==f0.vbr_off&&(G=l.brate);var U;l.free_format?U=0:U=255&16*C.BitrateIndex(G,l.version,l.out_samplerate),l.version==1?(m[1]=255&(E|10),E=255&(m[2]&13),m[2]=255&(U|E)):(m[1]=255&(E|2),E=255&(m[2]&13),m[2]=255&(U|E))}this.getVbrTag=function(l){var m=new VBRTagData,g=0;m.flags=0;var E=l[g+1]>>3&1,G=l[g+2]>>2&3,U=l[g+3]>>6&3,z=l[g+2]>>4&15;if(z=Tables.bitrate_table[E][z],l[g+1]>>4==14?m.samprate=Tables.samplerate_table[2][G]:m.samprate=Tables.samplerate_table[E][G],E!=0?U!=3?g+=32+4:g+=17+4:U!=3?g+=17+4:g+=9+4,!c(l,g))return null;g+=4,m.hId=E;var Se=m.flags=B(l,g);if(g+=4,(Se&$)!=0&&(m.frames=B(l,g),g+=4),(Se&ge)!=0&&(m.bytes=B(l,g),g+=4),(Se&Z)!=0){if(m.toc!=null)for(var f=0;f<Be;f++)m.toc[f]=l[g+f];g+=Be}m.vbrScale=-1,(Se&ve)!=0&&(m.vbrScale=B(l,g),g+=4),m.headersize=(E+1)*72e3*z/m.samprate,g+=21;var S=l[g+0]<<4;S+=l[g+1]>>4;var ce=(l[g+1]&15)<<8;return ce+=l[g+2]&255,(S<0||S>3e3)&&(S=-1),(ce<0||ce>3e3)&&(ce=-1),m.encDelay=S,m.encPadding=ce,m},this.InitVbrTag=function(l){var m=l.internal_flags,g;l.version==1?g=he:l.out_samplerate<16e3?g=X:g=M,l.VBR==f0.vbr_off&&(g=l.brate);var E=(l.version+1)*72e3*g/l.out_samplerate,G=m.sideinfo_len+fe;if(m.VBR_seek_table.TotalFrameSize=E,E<G||E>De){l.bWriteVbrTag=!1;return}m.VBR_seek_table.nVbrNumFrames=0,m.VBR_seek_table.nBytesWritten=0,m.VBR_seek_table.sum=0,m.VBR_seek_table.seen=0,m.VBR_seek_table.want=1,m.VBR_seek_table.pos=0,m.VBR_seek_table.bag==null&&(m.VBR_seek_table.bag=new int[400],m.VBR_seek_table.size=400);var U=zo(De);y(l,U);for(var z=m.VBR_seek_table.TotalFrameSize,Se=0;Se<z;++Se)Y.add_dummy_byte(l,U[Se]&255,1)};function u(l,m){var g=m^l;return m=m>>8^D[g&255],m}this.updateMusicCRC=function(l,m,g,E){for(var G=0;G<E;++G)l[0]=u(m[g+G],l[0])};function d(l,m,g,E,G){var U=l.internal_flags,z=0,Se=l.encoder_delay,f=l.encoder_padding,S=100-10*l.VBR_q-l.quality,ce=re.getLameVeryShortVersion(),pe,Oe=0,Ue,je=[1,5,3,2,4,0,3],ze=0|(l.lowpassfreq/100+.5>255?255:l.lowpassfreq/100+.5),nt=0,Xe=0,Ve=0,gt=l.internal_flags.noise_shaping,Ft=0,wt=0,kt=0,jt=0,Kt=0,pr=(l.exp_nspsytune&1)!=0,Fn=(l.exp_nspsytune&2)!=0,kr=!1,Lr=!1,pn=l.internal_flags.nogap_total,wa=l.internal_flags.nogap_current,Ra=l.ATHtype,Sn=0,Cr;switch(l.VBR){case vbr_abr:Cr=l.VBR_mean_bitrate_kbps;break;case vbr_off:Cr=l.brate;break;default:Cr=l.VBR_min_bitrate_kbps}switch(l.VBR.ordinal()<je.length?pe=je[l.VBR.ordinal()]:pe=0,Ue=16*Oe+pe,U.findReplayGain&&(U.RadioGain>510&&(U.RadioGain=510),U.RadioGain<-510&&(U.RadioGain=-510),Xe=8192,Xe|=3072,U.RadioGain>=0?Xe|=U.RadioGain:(Xe|=512,Xe|=-U.RadioGain)),U.findPeakSample&&(nt=Math.abs(0|U.PeakSample/32767*Math.pow(2,23)+.5)),pn!=-1&&(wa>0&&(Lr=!0),wa<pn-1&&(kr=!0)),Sn=Ra+((pr?1:0)<<4)+((Fn?1:0)<<5)+((kr?1:0)<<6)+((Lr?1:0)<<7),S<0&&(S=0),l.mode){case MONO:Ft=0;break;case STEREO:Ft=1;break;case DUAL_CHANNEL:Ft=2;break;case JOINT_STEREO:l.force_ms?Ft=4:Ft=3;break;case NOT_SET:default:Ft=7;break}l.in_samplerate<=32e3?kt=0:l.in_samplerate==48e3?kt=2:l.in_samplerate>48e3?kt=3:kt=1,(l.short_blocks==P1.short_block_forced||l.short_blocks==P1.short_block_dispensed||l.lowpassfreq==-1&&l.highpassfreq==-1||l.scale_left<l.scale_right||l.scale_left>l.scale_right||l.disable_reservoir&&l.brate<320||l.noATH||l.ATHonly||Ra==0||l.in_samplerate<=32e3)&&(wt=1),jt=gt+(Ft<<2)+(wt<<5)+(kt<<6),Kt=U.nMusicCRC,q(g,E+z,S),z+=4;for(var ra=0;ra<9;ra++)g[E+z+ra]=255&ce.charAt(ra);z+=9,g[E+z]=255&Ue,z++,g[E+z]=255&ze,z++,q(g,E+z,nt),z+=4,T(g,E+z,Xe),z+=2,T(g,E+z,Ve),z+=2,g[E+z]=255&Sn,z++,Cr>=255?g[E+z]=255:g[E+z]=255&Cr,z++,g[E+z]=255&Se>>4,g[E+z+1]=255&(Se<<4)+(f>>8),g[E+z+2]=255&f,z+=3,g[E+z]=255&jt,z++,g[E+z++]=0,T(g,E+z,l.preset),z+=2,q(g,E+z,m),z+=4,T(g,E+z,Kt),z+=2;for(var ji=0;ji<z;ji++)G=u(g[E+ji],G);return T(g,E+z,G),z+=2,z}function b(l){l.seek(0);var m=zo(10);l.readFully(m);var g;return new String(m,"ISO-8859-1").startsWith("ID3")?g=0:g=((m[6]&127)<<21|(m[7]&127)<<14|(m[8]&127)<<7|m[9]&127)+m.length,g}this.getLameTagFrame=function(l,m){var g=l.internal_flags;if(!l.bWriteVbrTag||g.Class_ID!=At.LAME_ID||g.VBR_seek_table.pos<=0)return 0;if(m.length<g.VBR_seek_table.TotalFrameSize)return g.VBR_seek_table.TotalFrameSize;Rd.fill(m,0,g.VBR_seek_table.TotalFrameSize,0),y(l,m);var E=zo(Be);if(l.free_format)for(var G=1;G<Be;++G)E[G]=255&255*G/100;else p(g.VBR_seek_table,E);var U=g.sideinfo_len;l.error_protection&&(U-=2),l.VBR==f0.vbr_off?(m[U++]=255&H.charAt(0),m[U++]=255&H.charAt(1),m[U++]=255&H.charAt(2),m[U++]=255&H.charAt(3)):(m[U++]=255&I.charAt(0),m[U++]=255&I.charAt(1),m[U++]=255&I.charAt(2),m[U++]=255&I.charAt(3)),q(m,U,$+ge+Z+ve),U+=4,q(m,U,g.VBR_seek_table.nVbrNumFrames),U+=4;var z=g.VBR_seek_table.nBytesWritten+g.VBR_seek_table.TotalFrameSize;q(m,U,0|z),U+=4,wd.arraycopy(E,0,m,U,E.length),U+=E.length,l.error_protection&&Y.CRC_writeheader(g,m);for(var Se=0,G=0;G<U;G++)Se=u(m[G],Se);return U+=d(l,z,m,U,Se),g.VBR_seek_table.TotalFrameSize},this.putVbrTag=function(l,m){var g=l.internal_flags;if(g.VBR_seek_table.pos<=0||(m.seek(m.length()),m.length()==0))return-1;var E=b(m);m.seek(E);var G=zo(De),U=getLameTagFrame(l,G);return U>G.length?-1:(U<1||m.write(G,0,U),0)}}var Id=qi,B1=N.new_byte,N1=N.assert,At=ud,Cd=dd,zi=Ir,Md=Jn,Pd=bd,Bd=s0,Nd=yd,rr=$a,jn=ea;function Dd(){var C,Y;this.setModules=function(re,$){C=re,Y=$}}function Od(){var C,Y,re;this.setModules=function($,ge,Z){C=$,Y=ge,re=Z}}function Fd(){}function kd(){var C,Y;this.setModules=function(re,$){C=re,Y=$}}function Ld(C,Y,re){arguments.length!=3&&(console.error("WARN: Mp3Encoder(channels, samplerate, kbps) not specified"),C=1,Y=44100,re=128);var $=new At,ge=new Dd,Z=new zi,ve=new jn,Be=new Cd,De=new Md,j=new Pd,fe=new Id,he=new Td,M=new kd,X=new Nd,i=new Bd,I=new Od,H=new Fd;$.setModules(Z,ve,Be,De,j,fe,he,M,H),ve.setModules(Z,H,he,fe),M.setModules(ve,he),Be.setModules($),j.setModules(ve,X,De,i),De.setModules(i,X,$.enc.psy),X.setModules(ve),i.setModules(De),fe.setModules($,ve,he),ge.setModules(I,H),I.setModules(he,M,Be);var D=$.lame_init();D.num_channels=C,D.in_samplerate=Y,D.brate=re,D.mode=rr.STEREO,D.quality=3,D.bWriteVbrTag=!1,D.disable_reservoir=!0,D.write_id3tag_automatic=!1;var x=$.lame_init_params(D);N1(x==0);var p=1152,B=0|1.25*p+7200,q=B1(B);this.encodeBuffer=function(T,c){C==1&&(c=T),N1(T.length==c.length),T.length>p&&(p=T.length,B=0|1.25*p+7200,q=B1(B));var O=$.lame_encode_buffer(D,T,c,T.length,q,0,B);return new Int8Array(q.subarray(0,O))},this.flush=function(){var T=$.lame_encode_flush(D,q,0,B);return new Int8Array(q.subarray(0,T))}}function On(){this.dataOffset=0,this.dataLen=0,this.channels=0,this.sampleRate=0}function jo(C){return C.charCodeAt(0)<<24|C.charCodeAt(1)<<16|C.charCodeAt(2)<<8|C.charCodeAt(3)}On.RIFF=jo("RIFF"),On.WAVE=jo("WAVE"),On.fmt_=jo("fmt "),On.data=jo("data"),On.readHeader=function(C){var Y=new On,re=C.getUint32(0,!1);if(On.RIFF==re){var $=C.getUint32(4,!0);if(On.WAVE==C.getUint32(8,!1)&&On.fmt_==C.getUint32(12,!1)){var ge=C.getUint32(16,!0),Z=16+4;switch(ge){case 16:case 18:Y.channels=C.getUint16(Z+2,!0),Y.sampleRate=C.getUint32(Z+4,!0);break;default:throw"extended fmt chunk not implemented"}Z+=ge;for(var ve=On.data,Be=0;ve!=re&&(re=C.getUint32(Z,!1),Be=C.getUint32(Z+4,!0),ve!=re);)Z+=Be+8;return Y.dataLen=Be,Y.dataOffset=Z+8,Y}}};var Ud=Ld,D1=function(C,Y){if(!(C instanceof Y))throw new TypeError("Cannot call a class as a function")},O1=function(){function C(Y,re){for(var $=0;$<re.length;$++){var ge=re[$];ge.enumerable=ge.enumerable||!1,ge.configurable=!0,"value"in ge&&(ge.writable=!0),Object.defineProperty(Y,ge.key,ge)}}return function(Y,re,$){return re&&C(Y.prototype,re),$&&C(Y,$),Y}}(),Hd=function(){function C(Y){D1(this,C),this.config={sampleRate:44100,bitRate:128},Object.assign(this.config,Y),this.mp3Encoder=new Ud(1,this.config.sampleRate,this.config.bitRate),this.maxSamples=1152,this.samplesMono=null,this.clearBuffer()}return O1(C,[{key:"clearBuffer",value:function(){this.dataBuffer=[]}},{key:"appendToBuffer",value:function(re){this.dataBuffer.push(new Int8Array(re))}},{key:"floatTo16BitPCM",value:function(re,$){for(var ge=0;ge<re.length;ge++){var Z=Math.max(-1,Math.min(1,re[ge]));$[ge]=Z<0?Z*32768:Z*32767}}},{key:"convertBuffer",value:function(re){var $=new Float32Array(re),ge=new Int16Array(re.length);return this.floatTo16BitPCM($,ge),ge}},{key:"encode",value:function(re){this.samplesMono=this.convertBuffer(re);for(var $=this.samplesMono.length,ge=0;$>=0;ge+=this.maxSamples){var Z=this.samplesMono.subarray(ge,ge+this.maxSamples),ve=this.mp3Encoder.encodeBuffer(Z);this.appendToBuffer(ve),$-=this.maxSamples}}},{key:"finish",value:function(){return this.appendToBuffer(this.mp3Encoder.flush()),this.dataBuffer}}]),C}(),Vd=function(){function C(Y){D1(this,C),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,Y)}return O1(C,[{key:"addMicrophoneListener",value:function(re){var $=this;this.activeStream=re,this.timerToStart=setTimeout(function(){delete $.timerToStart},this.config.startRecordingAt),this.microphone=this.context.createMediaStreamSource(re),this.processor=this.context.createScriptProcessor(0,1,1),this.processor.onaudioprocess=function(ge){$.timerToStart||$.lameEncoder.encode(ge.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(re){return re.stop()})),this}},{key:"start",value:function(){var re=this,$=window.AudioContext||window.webkitAudioContext;this.context=new $,this.config.sampleRate=this.context.sampleRate,this.lameEncoder=new Hd(this.config);var ge=this.config.deviceId?{deviceId:{exact:this.config.deviceId}}:!0;return new Promise(function(Z,ve){navigator.mediaDevices.getUserMedia({audio:ge}).then(function(Be){re.addMicrophoneListener(Be),Z(Be)}).catch(function(Be){ve(Be)})})}},{key:"getMp3",value:function(){var re=this,$=this.lameEncoder.finish();return new Promise(function(ge,Z){$.length===0?Z(new Error("No buffer to send")):(ge([$,new Blob($,{type:"audio/mp3"})]),re.lameEncoder.clearBuffer())})}}]),C}();return Vd})});async function Ko(){console.log("checkPermissions()");try{let t={audio:!0,video:!0};return(await navigator.mediaDevices.getUserMedia(t)).getTracks().forEach(r=>{r.stop()}),!0}catch{return!1}}async function Wo(){return console.log("checkIfhasMultipleMonitors()"),new Promise((t,e)=>{typeof PresentationRequest>"u"&&t(!1),new PresentationRequest("receiver.html").getAvailability().then(n=>{let a=n.value;n.addEventListener("change",function(){a=n.value}),setTimeout(()=>{t(a)},1e3)}).catch(n=>e(n))})}async function Ca(){console.log("enumarateDevices()");let t=await navigator.mediaDevices.enumerateDevices();return{cameras:t.filter(r=>r.kind=="videoinput"&&r.deviceId).map(r=>({label:r.label||"Generic Device",id:r.deviceId})),microphones:t.filter(r=>r.kind=="audioinput"&&r.deviceId).map(r=>({label:r.label||"Generic Device",id:r.deviceId}))}}var Yo=class{constructor(e){this.sessionDuration=0;this.id=e,this.state="Created",this.startedAt=new Date,this.alerts=[],this.recordings=[]}get hasSomethingToUpload(){for(let e of this.recordings)if(!e.upload)return!0;return!1}start(){this.state="Recording",this.startedAt=new Date(Date.now())}stop(){this.state="Ended",this.sessionDuration=Date.now()-this.startedAt.getTime()}setEndConfirmed(){this.state="EndConfirmed"}setUploaded(){this.state="Uploaded"}setUploadConfirmed(){this.state="UploadConfirmed"}addAlert(e){this.alerts.push(e)}addRecording(e){this.recordings.push(e)}};function Yi(t,e){let r,n={mimeType:"video/webm;codecs=vp9",videoBitsPerSecond:128e3,audioBitsPerSecond:64e3},a=new MediaRecorder(t,n);a.ondataavailable=s=>{s.data.size>0&&e.push(s.data),r&&r()},a.start();function o(){return new Promise(s=>{a.state=="recording"?(r=s,a.stop(),t.getTracks().forEach(h=>{h.stop()})):s()})}return o}var ti=class{constructor(e,r){this.blobs=[];this.options={cameraId:void 0,microphoneId:void 0};this.videoOptions={width:640,height:480};this.options=e,this.videoOptions=r}async startRecording(){console.log("Starting...");let{cameraId:e,microphoneId:r}=this.options,n={audio:{deviceId:r},video:{deviceId:e,width:this.videoOptions.width,height:this.videoOptions.height,frameRate:15}};this.cameraStream=await navigator.mediaDevices.getUserMedia(n);let a=Yi(this.cameraStream,this.blobs);this.recordingStop=a}async stopRecording(){console.log("Stoping..."),await this.recordingStop(),console.log("Stoped")}async saveOnSession(e){console.log("video buffer",this.blobs),e.addRecording({device:"",file:new File(this.blobs,`EP_${e.id}_camera_0.webm`,{type:"video/webm"}),origin:"Camera"})}};var K1="not_shared_first_screen",$o="multiple_monitors_detected",W1="proctoring_already_started",Zo="proctoring_not_started";var ri=class{constructor(e){this.blobs=[];this.options=e}async startRecording(){this.startTime=new Date(Date.now());let{allowOnlyFirstMonitor:e,onStopSharingScreenCallback:r}=this.options,n={video:{cursor:"always"},audio:!1};this.screenStream=await navigator.mediaDevices.getDisplayMedia(n);let a=this.screenStream.getVideoTracks();if(a[0].onended=r,navigator.userAgent.indexOf("Firefox")>-1&&!a.find(_=>_.label=="Primary Monitor")&&e)throw $o;if(!(a.find(v=>["screen:0:0","Primary Monitor"].includes(v.label))!=null)&&e)throw a.forEach(v=>{v.stop()}),K1;let h=Yi(this.screenStream,this.blobs);this.recordingStop=h}async stopRecording(){await this.recordingStop()}async saveOnSession(e){console.log("screen buffer",this.blobs),e.addRecording({device:"",file:new File(this.blobs,`EP_${e.id}_screen_0.webm`,{type:"video/webm"}),origin:"Screen"})}};function Ma(){return{cameraId:void 0,microphoneId:void 0,allowMultipleMonitors:!1,allowOnlyFirstMonitor:!0,captureScreen:!0,proctoringType:"IMAGE",insights:""}}function Qo(t){return!!t.width&&!!t.height?{width:t.width,height:t.height}:{width:640,height:480}}var Jo=class{constructor(){}async checkDevices(e=Ma(),r){this.checkDevicesInterface();let{cameraStream:n,_screenStream:a}=await this.startCheckDevices(e,r);this.videoDeviceInterface(n),this.audioDeviceInterface(n)}checkDevicesInterface(){let e=document.createElement("div");e.setAttribute("id","checkDevices"),e.style.backgroundColor="rgba(0,0,0,0.4)",e.style.zIndex="1000",e.style.position="absolute",e.style.top="0",e.style.left="0",e.style.height="100vh",e.style.width="100%",e.style.display="flex",e.style.alignItems="center",e.style.justifyContent="center";let r=document.createElement("div");r.style.backgroundColor="#fff",r.style.zIndex="1001",r.style.width="400px",r.style.borderRadius="10px",r.style.padding="20px 10px",r.style.display="flex",r.style.flexDirection="column",r.style.alignItems="center";let n=document.createElement("h3");n.innerText="Verificar dispositivos",n.style.color="rgb(22, 163, 74)",n.style.fontWeight="bold",n.style.fontSize="26px",n.style.marginBottom="15px",r.appendChild(n);let a=document.createElement("video");a.setAttribute("id","cameraStream"),a.style.width="20rem",a.style.backgroundColor="#000",a.style.borderRadius="10px",a.style.marginBottom="15px",r.appendChild(a);let o=document.createElement("meter");o.setAttribute("id","audioStream"),o.setAttribute("high","0.25"),o.setAttribute("max","1"),o.style.width="20rem",o.style.borderRadius="10px",o.style.marginBottom="15px",r.appendChild(o);let s=document.createElement("button");s.setAttribute("id","confirmBtn"),s.innerText="Confirmar",s.style.width="200px",s.style.height="50px",s.style.backgroundColor="rgb(22, 163, 74)",s.style.color="#fff",s.style.borderRadius="10px",s.addEventListener("click",()=>this.closeCheckDevices()),r.appendChild(s),e.appendChild(r),document.body.appendChild(e)}videoDeviceInterface(e){let r=document.querySelector("#cameraStream");r&&(r.srcObject=e,r.play())}audioDeviceInterface(e){let r=document.querySelector("#audioStream"),n=new AudioContext,a=n.createMediaStreamSource(e),o=n.createAnalyser();a.connect(o);let s=new Float32Array(o.fftSize),h=()=>{o.getFloatTimeDomainData(s);let v=0;for(let _ of s)v+=_*_;r.value=Math.sqrt(v/s.length),window.requestAnimationFrame(h)};window.requestAnimationFrame(h)}async startCheckDevices(e=Ma(),r){return console.log("deviceChecker.checkDevices",e,r),this.videoOptions=Qo(r),await Ko(),this.cameraRecorder=new ti({cameraId:e.cameraId,microphoneId:e.microphoneId},{width:this.videoOptions.width,height:this.videoOptions.height}),this.screenRecorder=e.captureScreen?new ri({allowOnlyFirstMonitor:!!(e.allowOnlyFirstMonitor||e.allowOnlyFirstMonitor==null),onStopSharingScreenCallback:()=>{}}):void 0,await this.cameraRecorder.startRecording(),this.screenRecorder&&await this.screenRecorder.startRecording(),{cameraStream:this.cameraRecorder.cameraStream,_screenStream:this.screenRecorder?.screenStream}}async closeCheckDevices(){console.log("deviceChecker.closeCheckDevices"),document.querySelector("#checkDevices")?.remove(),await this.cameraRecorder.stopRecording(),this.screenRecorder&&await this.screenRecorder.stopRecording()}};var es=class{constructor(){this.hasExtension=!1}start(){window.postMessage({type:"easyproctor",func:"startExtensionEasyproctor"},"*")}sendVerifyMsg(){console.log("Enviando mensagem..."),window.postMessage({type:"easyproctor",func:"verifyExtensionEasyproctor"},"*")}verify(e){return e.source==window&&e.data.sender&&e.data.sender==="easyproctor-extension"&&e.data.message_name&&e.data.message_name==="progress"&&(console.log("progress complete"),this.onProgress(100)),new Promise((r,n)=>{e.source==window&&e.data.sender&&e.data.sender==="easyproctor-extension"&&e.data.message_name&&e.data.message_name==="version"&&(console.log("have extension"),this.hasExtension=!0,r(this.hasExtension))})}addEventListener(){window.addEventListener("message",e=>this.verify(e)),setTimeout(()=>this.sendVerifyMsg(),5e3)}};var Y1={Unknown:0,NonRetryableStatus:1,InvalidEvent:2,SizeLimitExceeded:3,KillSwitch:4,QueueFull:5};var gn="function",Vr="object",yn="undefined",Gt="prototype",$i="hasOwnProperty";var Yr=Object,ni=Yr[Gt],ai=Yr.assign,ts=Yr.create,rs=Yr.defineProperty,aa=ni[$i];var ii=null;function cn(t){return t===void 0&&(t=!0),(!ii||!t)&&(typeof globalThis!==yn&&globalThis&&(ii=globalThis),typeof self!==yn&&self&&(ii=self),typeof window!==yn&&window&&(ii=window),typeof global!==yn&&global&&(ii=global)),ii}function oi(t){throw new TypeError(t)}function si(t){var e=ts;if(e)return e(t);if(t==null)return{};var r=typeof t;r!==Vr&&r!==gn&&oi("Object prototype may only be an Object:"+t);function n(){}return n[Gt]=t,new n}var mh=(cn()||{}).Symbol,hh=(cn()||{}).Reflect;var Zd=function(t){for(var e,r=1,n=arguments.length;r<n;r++){e=arguments[r];for(var a in e)ni[$i].call(e,a)&&(t[a]=e[a])}return t},Zt=ai||Zd,g0=function(t,e){return g0=Yr.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var a in n)n[$i](a)&&(r[a]=n[a])},g0(t,e)};function ut(t,e){typeof e!==gn&&e!==null&&oi("Class extends value "+String(e)+" is not a constructor or null"),g0(t,e);function r(){this.constructor=t}t[Gt]=e===null?si(e):(r[Gt]=e[Gt],new r)}function ns(t,e){for(var r=0,n=e.length,a=t.length;r<n;r++,a++)t[a]=e[r];return t}var as="constructor",Gn="prototype",is="function",os="_dynInstFuncs",T0="_isDynProxy",li="_dynClass",Qd="_dynCls$",w0="_dynInstChk",Zi=w0,J1="_dfOpts",$1="_unknown_",Jd="__proto__",y0="useBaseInst",Z1="setInstFuncs",cs=Object,Qi=cs.getPrototypeOf,Q1=0;function ia(t,e){return t&&cs[Gn].hasOwnProperty.call(t,e)}function ec(t){return t&&(t===cs[Gn]||t===Array[Gn])}function R0(t){return ec(t)||t===Function[Gn]}function Pa(t){if(t){if(Qi)return Qi(t);var e=t[Jd]||t[Gn]||(t[as]?t[as][Gn]:null);if(e)return e}return null}function ss(t,e){var r=[],n=cs.getOwnPropertyNames;if(n)r=n(t);else for(var a in t)typeof a=="string"&&ia(t,a)&&r.push(a);if(r&&r.length>0)for(var o=0;o<r.length;o++)e(r[o])}function A0(t,e,r){return e!==as&&typeof t[e]===is&&(r||ia(t,e))}function ls(t){throw new TypeError("DynamicProto: "+t)}function e2(t){var e={};return ss(t,function(r){!e[r]&&A0(t,r,!1)&&(e[r]=t[r])}),e}function I0(t,e){for(var r=t.length-1;r>=0;r--)if(t[r]===e)return!0;return!1}function t2(t,e,r,n){function a(v,_,L){var J=_[L];if(J[T0]&&n){var ne=v[os]||{};ne[Zi]!==!1&&(J=(ne[_[li]]||{})[L]||J)}return function(){return J.apply(v,arguments)}}var o={};ss(r,function(v){o[v]=a(e,r,v)});for(var s=Pa(t),h=[];s&&!R0(s)&&!I0(h,s);)ss(s,function(v){!o[v]&&A0(s,v,!Qi)&&(o[v]=a(e,s,v))}),h.push(s),s=Pa(s);return o}function r2(t,e,r,n){var a=null;if(t&&ia(r,li)){var o=t[os]||{};if(a=(o[r[li]]||{})[e],a||ls("Missing ["+e+"] "+is),!a[w0]&&o[Zi]!==!1){for(var s=!ia(t,e),h=Pa(t),v=[];s&&h&&!R0(h)&&!I0(v,h);){var _=h[e];if(_){s=_===n;break}v.push(h),h=Pa(h)}try{s&&(t[e]=a),a[w0]=1}catch{o[Zi]=!1}}}return a}function n2(t,e,r){var n=e[t];return n===r&&(n=Pa(e)[t]),typeof n!==is&&ls("["+t+"] is not a "+is),n}function a2(t,e,r,n,a){function o(v,_){var L=function(){var J=r2(this,_,v,L)||n2(_,v,L);return J.apply(this,arguments)};return L[T0]=1,L}if(!ec(t)){var s=r[os]=r[os]||{},h=s[e]=s[e]||{};s[Zi]!==!1&&(s[Zi]=!!a),ss(r,function(v){A0(r,v,!1)&&r[v]!==n[v]&&(h[v]=r[v],delete r[v],(!ia(t,v)||t[v]&&!t[v][T0])&&(t[v]=o(t,v)))})}}function i2(t,e){if(Qi)for(var r=[],n=Pa(e);n&&!R0(n)&&!I0(r,n);){if(n===t)return!0;r.push(n),n=Pa(n)}return!1}function E0(t,e){return ia(t,Gn)?t.name||e||$1:((t||{})[as]||{}).name||e||$1}function C0(t,e,r,n){ia(t,Gn)||ls("theClass is an invalid class definition.");var a=t[Gn];i2(a,e)||ls("["+E0(t)+"] is not in class hierarchy of ["+E0(e)+"]");var o=null;ia(a,li)?o=a[li]:(o=Qd+E0(t,"_")+"$"+Q1,Q1++,a[li]=o);var s=C0[J1],h=!!s[y0];h&&n&&n[y0]!==void 0&&(h=!!n[y0]);var v=e2(e),_=t2(a,e,v,h);r(e,_);var L=!!Qi&&!!s[Z1];L&&n&&(L=!!n[Z1]),a2(a,o,e,v,L!==!1)}var o2={setInstFuncs:!0,useBaseInst:!0};C0[J1]=o2;var xt=C0;var Me;(function(t){t[t.CRITICAL=1]="CRITICAL",t[t.WARNING=2]="WARNING"})(Me||(Me={}));var Ee={BrowserDoesNotSupportLocalStorage:0,BrowserCannotReadLocalStorage:1,BrowserCannotReadSessionStorage:2,BrowserCannotWriteLocalStorage:3,BrowserCannotWriteSessionStorage:4,BrowserFailedRemovalFromLocalStorage:5,BrowserFailedRemovalFromSessionStorage:6,CannotSendEmptyTelemetry:7,ClientPerformanceMathError:8,ErrorParsingAISessionCookie:9,ErrorPVCalc:10,ExceptionWhileLoggingError:11,FailedAddingTelemetryToBuffer:12,FailedMonitorAjaxAbort:13,FailedMonitorAjaxDur:14,FailedMonitorAjaxOpen:15,FailedMonitorAjaxRSC:16,FailedMonitorAjaxSend:17,FailedMonitorAjaxGetCorrelationHeader:18,FailedToAddHandlerForOnBeforeUnload:19,FailedToSendQueuedTelemetry:20,FailedToReportDataLoss:21,FlushFailed:22,MessageLimitPerPVExceeded:23,MissingRequiredFieldSpecification:24,NavigationTimingNotSupported:25,OnError:26,SessionRenewalDateIsZero:27,SenderNotInitialized:28,StartTrackEventFailed:29,StopTrackEventFailed:30,StartTrackFailed:31,StopTrackFailed:32,TelemetrySampledAndNotSent:33,TrackEventFailed:34,TrackExceptionFailed:35,TrackMetricFailed:36,TrackPVFailed:37,TrackPVFailedCalc:38,TrackTraceFailed:39,TransmissionFailed:40,FailedToSetStorageBuffer:41,FailedToRestoreStorageBuffer:42,InvalidBackendResponse:43,FailedToFixDepricatedValues:44,InvalidDurationValue:45,TelemetryEnvelopeInvalid:46,CreateEnvelopeError:47,CannotSerializeObject:48,CannotSerializeObjectNonSerializable:49,CircularReferenceDetected:50,ClearAuthContextFailed:51,ExceptionTruncated:52,IllegalCharsInName:53,ItemNotInArray:54,MaxAjaxPerPVExceeded:55,MessageTruncated:56,NameTooLong:57,SampleRateOutOfRange:58,SetAuthContextFailed:59,SetAuthContextFailedAccountName:60,StringValueTooLong:61,StartCalledMoreThanOnce:62,StopCalledWithoutStart:63,TelemetryInitializerFailed:64,TrackArgumentsNotSpecified:65,UrlTooLong:66,SessionStorageBufferFull:67,CannotAccessCookie:68,IdTooLong:69,InvalidEvent:70,FailedMonitorAjaxSetRequestHeader:71,SendBrowserInfoOnUserInit:72,PluginException:73,NotificationException:74,SnippetScriptLoadFailure:99,InvalidInstrumentationKey:100,CannotParseAiBlobValue:101,InvalidContentBlob:102,TrackPageActionEventFailed:103,FailedAddingCustomDefinedRequestContext:104,InMemoryStorageBufferFull:105};var s2="on",tc="attachEvent",rc="addEventListener";var uc="toISOString",fc="endsWith",l2="startsWith",nc="indexOf",ac="map",ic="reduce",P0="trim",dc="toString",c2="__proto__",u2="constructor",oc=rs,Uh=Yr.freeze,Hh=Yr.seal,sc=Yr.keys,B0=String[Gt],f2=B0[P0],d2=B0[fc],Vh=B0[l2],v2=Date[Gt],m2=v2[uc],h2=Array.isArray,vc=ni[dc],_2=aa[dc],qh=_2.call(Yr),p2=/-([a-z])/g,S2=/([^\w\d_$])/g,x2=/^(\d+[\w\d_$])/,lc=Object.getPrototypeOf;function mc(t){if(t){if(lc)return lc(t);var e=t[c2]||t[Gt]||t[u2];if(e)return e}return null}function Wt(t){return t===void 0||typeof t===yn}function Ne(t){return t===null||Wt(t)}function N0(t){return!Ne(t)}function Ji(t,e){return!!(t&&aa.call(t,e))}function En(t){return!!(t&&typeof t===Vr)}function it(t){return!!(t&&typeof t===gn)}function Tn(t,e,r,n){n===void 0&&(n=!1);var a=!1;if(!Ne(t))try{Ne(t[rc])?Ne(t[tc])||(t[tc](s2+e,r),a=!0):(t[rc](e,r,n),a=!0)}catch{}return a}function D0(t){var e=t;return e&&Je(e)&&(e=e.replace(p2,function(r,n){return n.toUpperCase()}),e=e.replace(S2,"_"),e=e.replace(x2,function(r,n){return"_"+n})),e}function Rt(t,e){if(t)for(var r in t)aa.call(t,r)&&e.call(t,r,t[r])}function O0(t,e){var r=!1;return t&&e&&!(r=t===e)&&(r=d2?t[fc](e):b2(t,e)),r}function b2(t,e){var r=!1,n=e?e.length:0,a=t?t.length:0;if(n&&a&&a>=n&&!(r=t===e)){for(var o=a-1,s=n-1;s>=0;s--){if(t[o]!=e[s])return!1;o--}r=!0}return r}function lr(t,e){return t&&e?t.indexOf(e)!==-1:!1}var cr=h2||g2;function g2(t){return!!(t&&vc.call(t)==="[object Array]")}function ci(t){return!!(t&&vc.call(t)==="[object Error]")}function Je(t){return typeof t=="string"}function ui(t){return typeof t=="number"}function Mr(t){if(t)return m2?t[uc]():y2(t)}function y2(t){if(t&&t.getUTCFullYear){var e=function(r){var n=String(r);return n.length===1&&(n="0"+n),n};return t.getUTCFullYear()+"-"+e(t.getUTCMonth()+1)+"-"+e(t.getUTCDate())+"T"+e(t.getUTCHours())+":"+e(t.getUTCMinutes())+":"+e(t.getUTCSeconds())+"."+String((t.getUTCMilliseconds()/1e3).toFixed(3)).slice(2,5)+"Z"}}function et(t,e,r){var n=t.length;try{for(var a=0;a<n&&!(a in t&&e.call(r||t,t[a],a,t)===-1);a++);}catch{}}function Ln(t,e,r){if(t){if(t[nc])return t[nc](e,r);var n=t.length,a=r||0;try{for(var o=Math.max(a>=0?a:n-Math.abs(a),0);o<n;o++)if(o in t&&t[o]===e)return o}catch{}}return-1}function Ba(t,e,r){var n;if(t){if(t[ac])return t[ac](e,r);var a=t.length,o=r||t;n=new Array(a);try{for(var s=0;s<a;s++)s in t&&(n[s]=e.call(o,t[s],t))}catch{}}return n}function us(t,e,r){var n;if(t){if(t[ic])return t[ic](e,r);var a=t.length,o=0;if(arguments.length>=3)n=arguments[2];else{for(;o<a&&!(o in t);)o++;n=t[o++]}for(;o<a;)o in t&&(n=e(n,t[o],o,t)),o++}return n}function Qt(t){return t&&(t=f2&&t[P0]?t[P0]():t.replace?t.replace(/^\s+|\s+$/g,""):t),t}var cc=!{toString:null}.propertyIsEnumerable("toString"),M0=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"];function un(t){var e=typeof t;if(e!==gn&&(e!==Vr||t===null)&&oi("objKeys called on non-object"),!cc&&sc)return sc(t);var r=[];for(var n in t)t&&aa.call(t,n)&&r.push(n);if(cc)for(var a=M0.length,o=0;o<a;o++)t&&aa.call(t,M0[o])&&r.push(M0[o]);return r}function oa(t,e,r,n){if(oc)try{var a={enumerable:!0,configurable:!0};return r&&(a.get=r),n&&(a.set=n),oc(t,e,a),!0}catch{}return!1}function ur(){var t=Date;return t.now?t.now():new t().getTime()}function _t(t){return ci(t)?t.name:""}function ht(t,e,r,n,a){var o=r;return t&&(o=t[e],o!==r&&(!a||a(o))&&(!n||n(r))&&(o=r,t[e]=o)),o}function fr(t,e,r){var n;return t?(n=t[e],!n&&Ne(n)&&(n=Wt(r)?{}:r,t[e]=n)):n=Wt(r)?{}:r,n}function fs(t){return!t}function fi(t){return!!t}function Tr(t){throw new Error(t)}function F0(t,e,r){if(t&&e&&t!==e&&En(t)&&En(e)){var n=function(o){if(Je(o)){var s=e[o];it(s)?(!r||r(o,!0,e,t))&&(t[o]=function(h){return function(){var v=arguments;return e[h].apply(e,v)}}(o)):(!r||r(o,!1,e,t))&&(Ji(t,o)&&delete t[o],oa(t,o,function(){return e[o]},function(h){e[o]=h})||(t[o]=s))}};for(var a in e)n(a)}return t}function k0(t){return function(){function e(){var r=this;t&&Rt(t,function(n,a){r[n]=a})}return e}()}function ds(t){return t&&ai&&(t=Yr(ai({},t))),t}var hc="window",E2="document",T2="documentMode",w2="navigator",R2="history",A2="location",I2="console",C2="performance",_c="JSON",M2="crypto",P2="msCrypto",B2="ReactNative",V0="msie",q0="trident/",L0=null,U0=null,N2=!1,di=null,H0=null;function pc(t,e){var r=!1;if(t){try{if(r=e in t,!r){var n=t[Gt];n&&(r=e in n)}}catch{}if(!r)try{var a=new t;r=!Wt(a[e])}catch{}}return r}function Jt(t){var e=cn();return e&&e[t]?e[t]:t===hc&&Na()?window:null}function Na(){return Boolean(typeof window===Vr&&window)}function Un(){return Na()?window:Jt(hc)}function vs(){return Boolean(typeof document===Vr&&document)}function nr(){return vs()?document:Jt(E2)}function z0(){return Boolean(typeof navigator===Vr&&navigator)}function wr(){return z0()?navigator:Jt(w2)}function Sc(){return Boolean(typeof history===Vr&&history)}function j0(){return Sc()?history:Jt(R2)}function $r(t){if(t&&N2){var e=Jt("__mockLocation");if(e)return e}return typeof location===Vr&&location?location:Jt(A2)}function G0(){return typeof console!==yn?console:Jt(I2)}function Zr(){return Jt(C2)}function wn(){return Boolean(typeof JSON===Vr&&JSON||Jt(_c)!==null)}function dr(){return wn()?JSON||Jt(_c):null}function X0(){return Jt(M2)}function K0(){return Jt(P2)}function W0(){var t=wr();return t&&t.product?t.product===B2:!1}function Da(){var t=wr();if(t&&(t.userAgent!==U0||L0===null)){U0=t.userAgent;var e=(U0||"").toLowerCase();L0=lr(e,V0)||lr(e,q0)}return L0}function vi(t){if(t===void 0&&(t=null),!t){var e=wr()||{};t=e?(e.userAgent||"").toLowerCase():""}var r=(t||"").toLowerCase();if(lr(r,V0)){var n=nr()||{};return Math.max(parseInt(r.split(V0)[1]),n[T2]||0)}else if(lr(r,q0)){var a=parseInt(r.split(q0)[1]);if(a)return a+4}return null}function at(t){var e=Object[Gt].toString.call(t),r="";return e==="[object Error]"?r="{ stack: '"+t.stack+"', message: '"+t.message+"', name: '"+t.name+"'":wn()&&(r=dr().stringify(t)),e+r}function Oa(){return H0===null&&(H0=z0()&&Boolean(wr().sendBeacon)),H0}function ms(t){var e=!1;try{var r=Jt("fetch");e=!!r;var n=Jt("Request");e&&t&&n&&(e=pc(n,"keepalive"))}catch{}return e}function hs(){return di===null&&(di=typeof XDomainRequest<"u",di&&Fa()&&(di=di&&!pc(Jt("XMLHttpRequest"),"withCredentials"))),di}function Fa(){var t=!1;try{var e=Jt("XMLHttpRequest");t=!!e}catch{}return t}var Y0=["eventsSent","eventsDiscarded","eventsSendRequest","perfEvent"],ps=null,_s;function D2(t,e){return function(){var r=arguments,n=$0(e);if(n){var a=n.listener;a&&a[t]&&a[t].apply(a,r)}}}function O2(){var t=Jt("Microsoft");return t&&(ps=t.ApplicationInsights),ps}function $0(t){var e=ps;return!e&&t.disableDbgExt!==!0&&(e=ps||O2()),e?e.ChromeDbgExt:null}function xc(t){if(!_s){_s={};for(var e=0;e<Y0.length;e++)_s[Y0[e]]=D2(Y0[e],t)}return _s}var F2="AI (Internal): ",k2="AI: ",L2="AITR_",U2="errorToConsole",H2="warnToConsole";function bc(t){return t?'"'+t.replace(/\"/g,"")+'"':""}function gc(t,e){var r=G0();if(r){var n="log";r[t]&&(n=t),it(r[n])&&r[n](e)}}var Xn=function(){function t(e,r,n,a){n===void 0&&(n=!1);var o=this;o.messageId=e,o.message=(n?k2:F2)+e;var s="";wn()&&(s=dr().stringify(a));var h=(r?" message:"+bc(r):"")+(a?" props:"+bc(s):"");o.message+=h}return t.dataType="MessageData",t}();function Kn(t,e){return(t||{}).logger||new mi(e)}var mi=function(){function t(e){this.identifier="DiagnosticLogger",this.queue=[];var r=0,n={};xt(t,this,function(a){Ne(e)&&(e={}),a.consoleLoggingLevel=function(){return o("loggingLevelConsole",0)},a.telemetryLoggingLevel=function(){return o("loggingLevelTelemetry",1)},a.maxInternalMessageLimit=function(){return o("maxMessageLimit",25)},a.enableDebugExceptions=function(){return o("enableDebugExceptions",!1)},a.throwInternal=function(v,_,L,J,ne){ne===void 0&&(ne=!1);var oe=new Xn(_,L,ne,J);if(a.enableDebugExceptions())throw oe;var F=v===Me.CRITICAL?U2:H2;if(Wt(oe.message))h("throw"+(v===Me.CRITICAL?"Critical":"Warning"),oe);else{var _e=a.consoleLoggingLevel();if(ne){var N=+oe.messageId;!n[N]&&_e>=v&&(a[F](oe.message),n[N]=!0)}else _e>=v&&a[F](oe.message);a.logInternalMessage(v,oe)}},a.warnToConsole=function(v){gc("warn",v),h("warning",v)},a.errorToConsole=function(v){gc("error",v),h("error",v)},a.resetInternalMessageCount=function(){r=0,n={}},a.logInternalMessage=function(v,_){if(!s()){var L=!0,J=L2+_.messageId;if(n[J]?L=!1:n[J]=!0,L&&(v<=a.telemetryLoggingLevel()&&(a.queue.push(_),r++,h(v===Me.CRITICAL?"error":"warn",_)),r===a.maxInternalMessageLimit())){var ne="Internal events throttle limit per PageView reached for this app.",oe=new Xn(Ee.MessageLimitPerPVExceeded,ne,!1);a.queue.push(oe),v===Me.CRITICAL?a.errorToConsole(ne):a.warnToConsole(ne)}}};function o(v,_){var L=e[v];return Ne(L)?_:L}function s(){return r>=a.maxInternalMessageLimit()}function h(v,_){var L=$0(e);L&&L.diagLog&&L.diagLog(v,_)}})}return t}();var hi="ctx",V2=null,eo=function(){function t(e,r,n){var a=this,o=!1;if(a.start=ur(),a.name=e,a.isAsync=n,a.isChildEvt=function(){return!1},it(r)){var s;o=oa(a,"payload",function(){return!s&&it(r)&&(s=r(),r=null),s})}a.getCtx=function(h){return h?h===t.ParentContextKey||h===t.ChildrenContextKey?a[h]:(a[hi]||{})[h]:null},a.setCtx=function(h,v){if(h)if(h===t.ParentContextKey)a[h]||(a.isChildEvt=function(){return!0}),a[h]=v;else if(h===t.ChildrenContextKey)a[h]=v;else{var _=a[hi]=a[hi]||{};_[h]=v}},a.complete=function(){var h=0,v=a.getCtx(t.ChildrenContextKey);if(cr(v))for(var _=0;_<v.length;_++){var L=v[_];L&&(h+=L.time)}a.time=ur()-a.start,a.exTime=a.time-h,a.complete=function(){},!o&&it(r)&&(a.payload=r())}}return t.ParentContextKey="parent",t.ChildrenContextKey="childEvts",t}();var Q0=function(){function t(e){this.ctx={},xt(t,this,function(r){r.create=function(n,a,o){return new eo(n,a,o)},r.fire=function(n){n&&(n.complete(),e&&it(e.perfEvent)&&e.perfEvent(n))},r.setCtx=function(n,a){if(n){var o=r[hi]=r[hi]||{};o[n]=a}},r.getCtx=function(n){return(r[hi]||{})[n]}})}return t}();var Z0="CoreUtils.doPerf";function Hn(t,e,r,n,a){if(t){var o=t;if(it(o.getPerfMgr)&&(o=o.getPerfMgr()),o){var s=void 0,h=o.getCtx(Z0);try{if(s=o.create(e(),n,a),s){if(h&&s.setCtx&&(s.setCtx(eo.ParentContextKey,h),h.getCtx&&h.setCtx)){var v=h.getCtx(eo.ChildrenContextKey);v||(v=[],h.setCtx(eo.ChildrenContextKey,v)),v.push(s)}return o.setCtx(Z0,s),r(s)}}catch(_){s&&s.setCtx&&s.setCtx("exception",_)}finally{s&&o.fire(s),o.setCtx(Z0,h)}}}return r()}function J0(){return V2}var yc=function(){function t(e,r){var n=this,a=null,o=it(e.processTelemetry),s=it(e.setNextPlugin);n._hasRun=!1,n.getPlugin=function(){return e},n.getNext=function(){return a},n.setNext=function(h){a=h},n.processTelemetry=function(h,v){v||(v=r);var _=e?e.identifier:"TelemetryPluginChain";Hn(v?v.core():null,function(){return _+":processTelemetry"},function(){if(e&&o){n._hasRun=!0;try{v.setNext(a),s&&e.setNextPlugin(a),a&&(a._hasRun=!1),e.processTelemetry(h,v)}catch(J){var L=a&&a._hasRun;(!a||!L)&&v.diagLog().throwInternal(Me.CRITICAL,Ee.PluginException,"Plugin ["+e.identifier+"] failed during processTelemetry - "+at(J)),a&&!L&&a.processTelemetry(h,v)}}else a&&(n._hasRun=!0,a.processTelemetry(h,v))},function(){return{item:h}},!h.sync)}}return t}();function el(t,e){var r=[];if(t&&t.length>0)for(var n=null,a=0;a<t.length;a++){var o=t[a];if(o&&it(o.processTelemetry)){var s=new yc(o,e);r.push(s),n&&n.setNext(s),n=s}}return r.length>0?r[0]:null}function q2(t,e,r){var n=[],a=!r;if(t)for(;t;){var o=t.getPlugin();(a||o===r)&&(a=!0,n.push(o)),t=t.getNext()}return a||n.push(r),el(n,e)}function z2(t,e,r){var n=t,a=!1;return r&&t&&(n=[],et(t,function(o){(a||o===r)&&(a=!0,n.push(o))})),r&&!a&&(n||(n=[]),n.push(r)),el(n,e)}var Wn=function(){function t(e,r,n,a){var o=this,s=null;a!==null&&(e&&it(e.getPlugin)?s=q2(e,o,a||e.getPlugin()):a?s=z2(e,o,a):Wt(a)&&(s=el(e,o))),o.core=function(){return n},o.diagLog=function(){return Kn(n,r)},o.getCfg=function(){return r},o.getExtCfg=function(h,v){v===void 0&&(v={});var _;if(r){var L=r.extensionConfig;L&&h&&(_=L[h])}return _||v},o.getConfig=function(h,v,_){_===void 0&&(_=!1);var L,J=o.getExtCfg(h,null);return J&&!Ne(J[v])?L=J[v]:r&&!Ne(r[v])&&(L=r[v]),Ne(L)?_:L},o.hasNext=function(){return s!=null},o.getNext=function(){return s},o.setNext=function(h){s=h},o.processNext=function(h){var v=s;v&&(s=v.getNext(),v.processTelemetry(h,o))},o.createNew=function(h,v){return h===void 0&&(h=null),new t(h||s,r,n,v)}}return t}();var Ec="iKey",Ss="extensionConfig";var xs="getPlugin",Rn=function(){function t(){var e=this,r=!1,n=null,a=null;e.core=null,e.diagLog=function(o){return e._getTelCtx(o).diagLog()},e.isInitialized=function(){return r},e.setInitialized=function(o){r=o},e.setNextPlugin=function(o){a=o},e.processNext=function(o,s){s?s.processNext(o):a&&it(a.processTelemetry)&&a.processTelemetry(o,null)},e._getTelCtx=function(o){o===void 0&&(o=null);var s=o;if(!s){var h=n||new Wn(null,{},e.core);a&&a[xs]?s=h.createNew(null,a[xs]):s=h.createNew(null,a)}return s},e._baseTelInit=function(o,s,h,v){o&&ht(o,Ss,[],null,Ne),!v&&s&&(v=s.getProcessTelContext().getNext());var _=a;a&&a[xs]&&(_=a[xs]()),e.core=s,n=new Wn(v,o,s,_),r=!0}}return t.prototype.initialize=function(e,r,n,a){this._baseTelInit(e,r,n,a)},t}();var tl="processTelemetry",Tc="priority",wc="setNextPlugin",Rc="isInitialized";function to(t,e){for(var r=[],n=null,a=t.getNext();a;){var o=a.getPlugin();o&&(n&&it(n[wc])&&it(o[tl])&&n[wc](o),(!it(o[Rc])||!o[Rc]())&&r.push(o),n=o,a=a.getNext())}et(r,function(s){s.initialize(t.getCfg(),t.core(),e,t.getNext())})}function rl(t){return t.sort(function(e,r){var n=0,a=it(r[tl]);return it(e[tl])?n=a?e[Tc]-r[Tc]:1:a&&(n=-1),n})}var nl=500,j2="Channel has invalid priority",Ac=function(t){ut(e,t);function e(){var r=t.call(this)||this;r.identifier="ChannelControllerPlugin",r.priority=nl;var n;xt(e,r,function(h,v){h.setNextPlugin=function(_){},h.processTelemetry=function(_,L){n&&et(n,function(J){if(J.length>0){var ne=r._getTelCtx(L).createNew(J);ne.processNext(_)}})},h.getChannelControls=function(){return n},h.initialize=function(_,L,J){h.isInitialized()||(v.initialize(_,L,J),s((_||{}).channels,J),et(n,function(ne){return to(new Wn(ne,_,L),J)}))}});function a(h){et(h,function(v){v.priority<nl&&Tr(j2+v.identifier)})}function o(h){h&&h.length>0&&(h=h.sort(function(v,_){return v.priority-_.priority}),a(h),n.push(h))}function s(h,v){if(n=[],h&&et(h,function(L){return o(L)}),v){var _=[];et(v,function(L){L.priority>nl&&_.push(L)}),o(_)}}return r}return e._staticInit=function(){var r=e.prototype;oa(r,"ChannelControls",r.getChannelControls),oa(r,"channelQueue",r.getChannelControls)}(),e}(Rn);var Ic="toGMTString",Cc="toUTCString",ll="cookie",al="expires",ol="enabled",Mc="isCookieUseDisabled",Pc="disableCookiesUsage",sa="_ckMgr",An="",bs=null,il=null,Bc=null,ro=nr(),Nc={},ys={};function G2(t,e){var r=ka[sa]||ys[sa];return r||(r=ka[sa]=ka(t,e),ys[sa]=r),r}function gs(t){return t?t.isEnabled():!0}function X2(t){var e=t.cookieCfg=t.cookieCfg||{};if(ht(e,"domain",t.cookieDomain,N0,Ne),ht(e,"path",t.cookiePath||"/",null,Ne),Ne(e[ol])){var r=void 0;Wt(t[Mc])||(r=!t[Mc]),Wt(t[Pc])||(r=!t[Pc]),e[ol]=r}return e}function La(t,e){var r;if(t)r=t.getCookieMgr();else if(e){var n=e.cookieCfg;n[sa]?r=n[sa]:r=ka(e)}return r||(r=G2(e,(t||{}).logger)),r}function ka(t,e){var r=X2(t||ys),n=r.path||"/",a=r.domain,o=r[ol]!==!1,s={isEnabled:function(){var h=o&&sl(e),v=ys[sa];return h&&v&&s!==v&&(h=gs(v)),h},setEnabled:function(h){o=h!==!1},set:function(h,v,_,L,J){var ne=!1;if(gs(s)){var oe={},F=Qt(v||An),_e=F.indexOf(";");if(_e!==-1&&(F=Qt(v.substring(0,_e)),oe=kc(v.substring(_e+1))),ht(oe,"domain",L||a,fi,Wt),!Ne(_)){var N=Da();if(Wt(oe[al])){var le=ur(),ue=le+_*1e3;if(ue>0){var Fe=new Date;Fe.setTime(ue),ht(oe,al,Dc(Fe,N?Ic:Cc)||Dc(Fe,N?Ic:Cc)||An,fi)}}N||ht(oe,"max-age",An+_,null,Wt)}var tt=$r();tt&&tt.protocol==="https:"&&(ht(oe,"secure",null,null,Wt),il===null&&(il=!cl((wr()||{}).userAgent)),il&&ht(oe,"SameSite","None",null,Wt)),ht(oe,"path",J||n,null,Wt);var ct=r.setCookie||Fc;ct(h,Oc(F,oe)),ne=!0}return ne},get:function(h){var v=An;return gs(s)&&(v=(r.getCookie||K2)(h)),v},del:function(h,v){var _=!1;return gs(s)&&(_=s.purge(h,v)),_},purge:function(h,v){var _,L=!1;if(sl(e)){var J=(_={},_.path=v||"/",_[al]="Thu, 01 Jan 1970 00:00:01 GMT",_);Da()||(J["max-age"]="0");var ne=r.delCookie||Fc;ne(h,Oc(An,J)),L=!0}return L}};return s[sa]=s,s}function sl(t){if(bs===null){bs=!1;try{var e=ro||{};bs=e[ll]!==void 0}catch(r){t&&t.throwInternal(Me.WARNING,Ee.CannotAccessCookie,"Cannot access document.cookie - "+_t(r),{exception:at(r)})}}return bs}function kc(t){var e={};if(t&&t.length){var r=Qt(t).split(";");et(r,function(n){if(n=Qt(n||An),n){var a=n.indexOf("=");a===-1?e[n]=null:e[Qt(n.substring(0,a))]=Qt(n.substring(a+1))}})}return e}function Dc(t,e){return it(t[e])?t[e]():null}function Oc(t,e){var r=t||An;return Rt(e,function(n,a){r+="; "+n+(Ne(a)?An:"="+a)}),r}function K2(t){var e=An;if(ro){var r=ro[ll]||An;Bc!==r&&(Nc=kc(r),Bc=r),e=Qt(Nc[t]||An)}return e}function Fc(t,e){ro&&(ro[ll]=t+"="+e)}function cl(t){return Je(t)?!!(lr(t,"CPU iPhone OS 12")||lr(t,"iPad; CPU OS 12")||lr(t,"Macintosh; Intel Mac OS X 10_14")&&lr(t,"Version/")&&lr(t,"Safari")||lr(t,"Macintosh; Intel Mac OS X 10_14")&&O0(t,"AppleWebKit/605.1.15 (KHTML, like Gecko)")||lr(t,"Chrome/5")||lr(t,"Chrome/6")||lr(t,"UnrealEngine")&&!lr(t,"Chrome")||lr(t,"UCBrowser/12")||lr(t,"UCBrowser/11")):!1}var W2="Extensions must provide callback to initialize",Lc="_notificationManager";function Y2(t,e){return new Q0(e)}var Uc=function(){function t(){var e=!1,r,n,a,o,s;xt(t,this,function(h){h._extensions=new Array,n=new Ac,h.logger=new mi({loggingLevelConsole:Me.CRITICAL}),r=[],h.isInitialized=function(){return e},h.initialize=function(v,_,L,J){h.isInitialized()&&Tr("Core should not be initialized more than once"),(!v||Ne(v.instrumentationKey))&&Tr("Please provide instrumentation key"),a=J,h[Lc]=J,h.config=v||{},J&&h.config.disableDbgExt!==!0&&J.addNotificationListener(xc(v)),h.config.enablePerfMgr&&ht(h.config,"createPerfMgr",Y2),v.extensions=Ne(v.extensions)?[]:v.extensions;var ne=fr(v,Ss);ne.NotificationManager=J,L&&(h.logger=L);var oe=[];oe.push.apply(oe,ns(ns([],_,!1),v.extensions,!1)),oe=rl(oe);var F=[],_e=[],N={};et(oe,function(le){(Ne(le)||Ne(le.initialize))&&Tr(W2);var ue=le.priority,Fe=le.identifier;le&&ue&&(Ne(N[ue])?N[ue]=Fe:L.warnToConsole("Two extensions have same priority #"+ue+" - "+N[ue]+", "+Fe)),!ue||ue<n.priority?F.push(le):_e.push(le)}),oe.push(n),F.push(n),oe=rl(oe),h._extensions=oe,to(new Wn([n],v,h),oe),to(new Wn(F,v,h),oe),h._extensions=F,h.getTransmissionControls().length===0&&Tr("No channels available"),e=!0,h.releaseQueue()},h.getTransmissionControls=function(){return n.getChannelControls()},h.track=function(v){ht(v,Ec,h.config.instrumentationKey,null,fs),ht(v,"time",Mr(new Date),null,fs),ht(v,"ver","4.0",null,Ne),h.isInitialized()?h.getProcessTelContext().processNext(v):r.push(v)},h.getProcessTelContext=function(){var v=h._extensions,_=v;return(!v||v.length===0)&&(_=[n]),new Wn(_,h.config,h)},h.getNotifyMgr=function(){return a||(a=si({addNotificationListener:function(v){},removeNotificationListener:function(v){},eventsSent:function(v){},eventsDiscarded:function(v,_){},eventsSendRequest:function(v,_){}}),h[Lc]=a),a},h.getCookieMgr=function(){return s||(s=ka(h.config,h.logger)),s},h.setCookieMgr=function(v){s=v},h.getPerfMgr=function(){return o||h.config&&h.config.enablePerfMgr&&it(h.config.createPerfMgr)&&(o=h.config.createPerfMgr(h,h.getNotifyMgr())),o||J0()},h.setPerfMgr=function(v){o=v},h.eventCnt=function(){return r.length},h.releaseQueue=function(){r.length>0&&(et(r,function(v){h.getProcessTelContext().processNext(v)}),r=[])}})}return t}();var Hc=function(){function t(e){this.listeners=[];var r=!!(e||{}).perfEvtsSendAll;xt(t,this,function(n){n.addNotificationListener=function(a){n.listeners.push(a)},n.removeNotificationListener=function(a){for(var o=Ln(n.listeners,a);o>-1;)n.listeners.splice(o,1),o=Ln(n.listeners,a)},n.eventsSent=function(a){et(n.listeners,function(o){o&&o.eventsSent&&setTimeout(function(){return o.eventsSent(a)},0)})},n.eventsDiscarded=function(a,o){et(n.listeners,function(s){s&&s.eventsDiscarded&&setTimeout(function(){return s.eventsDiscarded(a,o)},0)})},n.eventsSendRequest=function(a,o){et(n.listeners,function(s){if(s&&s.eventsSendRequest)if(o)setTimeout(function(){return s.eventsSendRequest(a,o)},0);else try{s.eventsSendRequest(a,o)}catch{}})},n.perfEvent=function(a){a&&(r||!a.isChildEvt())&&et(n.listeners,function(o){if(o&&o.perfEvent)if(a.isAsync)setTimeout(function(){return o.perfEvent(a)},0);else try{o.perfEvent(a)}catch{}})}})}return t}();var ul=function(t){ut(e,t);function e(){var r=t.call(this)||this,n=0;return xt(e,r,function(a,o){a.initialize=function(v,_,L,J){o.initialize(v,_,L||new mi(v),J||new Hc(v))},a.track=function(v){Hn(a.getPerfMgr(),function(){return"AppInsightsCore:track"},function(){v===null&&(h(v),Tr("Invalid telemetry item")),s(v),o.track(v)},function(){return{item:v}},!v.sync)},a.addNotificationListener=function(v){var _=a.getNotifyMgr();_&&_.addNotificationListener(v)},a.removeNotificationListener=function(v){var _=a.getNotifyMgr();_&&_.removeNotificationListener(v)},a.pollInternalLogs=function(v){var _=a.config.diagnosticLogInterval;return(!_||!(_>0))&&(_=1e4),n&&a.stopPollingInternalLogs(),n=setInterval(function(){var L=a.logger?a.logger.queue:[];et(L,function(J){var ne={name:v||"InternalMessageId: "+J.messageId,iKey:a.config.instrumentationKey,time:Mr(new Date),baseType:Xn.dataType,baseData:{message:J.message}};a.track(ne)}),L.length=0},_),n},a.stopPollingInternalLogs=function(){!n||(clearInterval(n),n=0)};function s(v){if(Ne(v.name))throw h(v),Error("telemetry name required")}function h(v){var _=a.getNotifyMgr();_&&_.eventsDiscarded([v],Y1.InvalidEvent)}}),r}return e}(Uc);var Vc=4294967296,Ua=4294967295,qc=!1,no=123456789,ao=987654321;function $2(t){t<0&&(t>>>=0),no=123456789+t&Ua,ao=987654321-t&Ua,qc=!0}function Z2(){try{var t=ur()&2147483647;$2((Math.random()*Vc^t)+t)}catch{}}function _i(t){var e,r=X0()||K0();return r&&r.getRandomValues?e=r.getRandomValues(new Uint32Array(1))[0]&Ua:Da()?(qc||Z2(),e=zc()&Ua):e=Math.floor(Vc*Math.random()|0),t||(e>>>=0),e}function zc(t){ao=36969*(ao&65535)+(ao>>16)&Ua,no=18e3*(no&65535)+(no>>16)&Ua;var e=(ao<<16)+(no&65535)>>>0&Ua|0;return t||(e>>>=0),e}var jc="visibilitychange",Gc="pagehide";function Es(t,e){var r=!1,n=Un();n&&(r=Tn(n,t,e),r=Tn(n.body,t,e)||r);var a=nr();return a&&(r=Tn(a,t,e)||r),r}function fl(t,e,r){var n=!1;if(e&&t&&cr(t)){var a=[];et(t,function(o){Je(o)&&(!r||Ln(r,o)===-1?n=Es(o,e)||n:a.push(o))}),!n&&a.length>0&&(n=fl(a,e))}return n}function dl(t,e){return fl(["beforeunload","unload","pagehide"],t,e)}function io(t,e){function r(a){var o=nr();t&&o&&o.visibilityState==="hidden"&&t(a)}var n=!1;return(!e||Ln(e,Gc)===-1)&&(n=Es(Gc,t)),(!e||Ln(e,jc)===-1)&&(n=Es(jc,r)||n),!n&&e&&(n=io(t)),n}function pi(t){t===void 0&&(t=22);for(var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r=_i()>>>0,n=0,a="";a.length<t;)n++,a+=e.charAt(r&63),r>>>=6,n===5&&(r=(_i()<<2&4294967295|r&3)>>>0,n=0);return a}function qr(){for(var t=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"],e="",r,n=0;n<4;n++)r=_i(),e+=t[r&15]+t[r>>4&15]+t[r>>8&15]+t[r>>12&15]+t[r>>16&15]+t[r>>20&15]+t[r>>24&15]+t[r>>28&15];var a=t[8+(_i()&3)|0];return e.substr(0,8)+e.substr(9,4)+"4"+e.substr(13,3)+a+e.substr(16,3)+e.substr(19,12)}var Kc="_aiHooks",Wc=["req","rsp","hkErr","fnErr"];function ml(t,e){if(t)for(var r=0;r<t.length&&!e(t[r],r);r++);}function vl(t,e,r,n,a){a>=0&&a<=2&&ml(t,function(o,s){var h=o.cbks,v=h[Wc[a]];if(v){e.ctx=function(){var J=n[s]=n[s]||{};return J};try{v.apply(e.inst,r)}catch(J){var _=e.err;try{var L=h[Wc[2]];L&&(e.err=J,L.apply(e.inst,r))}catch{}finally{e.err=_}}}})}function tv(t){return function(){var e=this,r=arguments,n=t.h,a={name:t.n,inst:e,ctx:null,set:v},o=[],s=h([a],r);function h(L,J){return ml(J,function(ne){L.push(ne)}),L}function v(L,J){r=h([],r),r[L]=J,s=h([a],r)}vl(n,a,s,o,0);var _=t.f;try{a.rslt=_.apply(e,r)}catch(L){throw a.err=L,vl(n,a,s,o,3),L}return vl(n,a,s,o,1),a.rslt}}function Yc(t,e,r){var n=null;return t&&(Ji(t,e)?n=t:r&&(n=Yc(mc(t),e,!1))),n}function hl(t,e,r){return t?oo(t[Gt],e,r,!1):null}function oo(t,e,r,n){if(n===void 0&&(n=!0),t&&e&&r){var a=Yc(t,e,n);if(a){var o=a[e];if(typeof o===gn){var s=o[Kc];if(!s){s={i:0,n:e,f:o,h:[]};var h=tv(s);h[Kc]=s,a[e]=h}var v={id:s.i,cbks:r,rm:function(){var _=this.id;ml(s.h,function(L,J){if(L.id===_)return s.h.splice(J,1),1})}};return s.i++,s.h.push(v),v}}}return null}var Ct={requestContextHeader:"Request-Context",requestContextTargetKey:"appId",requestContextAppIdFormat:"appId=cid-v1:",requestIdHeader:"Request-Id",traceParentHeader:"traceparent",traceStateHeader:"tracestate",sdkContextHeader:"Sdk-Context",sdkContextHeaderAppIdRequest:"appId",requestContextHeaderLowerCase:"request-context"};function _l(t,e,r){var n=e.length,a=$c(t,e);if(a.length!==n){for(var o=0,s=a;r[s]!==void 0;)o++,s=a.substring(0,150-3)+Zc(o);a=s}return a}function $c(t,e){var r;return e&&(e=Qt(e.toString()),e.length>150&&(r=e.substring(0,150),t&&t.throwInternal(Me.WARNING,Ee.NameTooLong,"name is too long. It has been truncated to "+150+" characters.",{name:e},!0))),r||e}function Mt(t,e,r){r===void 0&&(r=1024);var n;return e&&(r=r||1024,e=Qt(e),e.toString().length>r&&(n=e.toString().substring(0,r),t&&t.throwInternal(Me.WARNING,Ee.StringValueTooLong,"string value is too long. It has been truncated to "+r+" characters.",{value:e},!0))),n||e}function Yn(t,e){return xl(t,e,2048,Ee.UrlTooLong)}function so(t,e){var r;return e&&e.length>32768&&(r=e.substring(0,32768),t&&t.throwInternal(Me.WARNING,Ee.MessageTruncated,"message is too long, it has been truncated to "+32768+" characters.",{message:e},!0)),r||e}function pl(t,e){var r;if(e){var n=""+e;n.length>32768&&(r=n.substring(0,32768),t&&t.throwInternal(Me.WARNING,Ee.ExceptionTruncated,"exception is too long, it has been truncated to "+32768+" characters.",{exception:e},!0))}return r||e}function Pr(t,e){if(e){var r={};Rt(e,function(n,a){if(En(a)&&wn())try{a=dr().stringify(a)}catch(o){t&&t.throwInternal(Me.WARNING,Ee.CannotSerializeObjectNonSerializable,"custom property is not valid",{exception:o},!0)}a=Mt(t,a,8192),n=_l(t,n,r),r[n]=a}),e=r}return e}function Br(t,e){if(e){var r={};Rt(e,function(n,a){n=_l(t,n,r),r[n]=a}),e=r}return e}function Sl(t,e){return e&&xl(t,e,128,Ee.IdTooLong).toString()}function xl(t,e,r,n){var a;return e&&(e=Qt(e),e.length>r&&(a=e.substring(0,r),t&&t.throwInternal(Me.WARNING,n,"input is too long, it has been truncated to "+r+" characters.",{data:e},!0))),a||e}function Zc(t){var e="00"+t;return e.substr(e.length-3)}function Ha(t){var e=null;if(it(Event))e=new Event(t);else{var r=nr();r&&r.createEvent&&(e=r.createEvent("Event"),e.initEvent(t,!0,!0))}return e}function fn(t,e){return e===void 0&&(e=!1),t==null?e:t.toString().toLowerCase()==="true"}function Qr(t){(isNaN(t)||t<0)&&(t=0),t=Math.round(t);var e=""+t%1e3,r=""+Math.floor(t/1e3)%60,n=""+Math.floor(t/(1e3*60))%60,a=""+Math.floor(t/(1e3*60*60))%24,o=Math.floor(t/(1e3*60*60*24));return e=e.length===1?"00"+e:e.length===2?"0"+e:e,r=r.length<2?"0"+r:r,n=n.length<2?"0"+n:n,a=a.length<2?"0"+a:a,(o>0?o+".":"")+a+":"+n+":"+r+"."+e}function bl(t,e){var r=null;return et(t,function(n){if(n.identifier===e)return r=n,-1}),r}function gl(t,e,r,n,a){return!a&&Je(t)&&(t==="Script error."||t==="Script error")}var In="Microsoft_ApplicationInsights_BypassAjaxInstrumentation",Si="sampleRate",xi="ProcessLegacy",lo="http.method",Ts="https://dc.services.visualstudio.com",ar="not_specified",ws="iKey";var la;(function(t){t[t.LocalStorage=0]="LocalStorage",t[t.SessionStorage=1]="SessionStorage"})(la||(la={}));var dn;(function(t){t[t.AI=0]="AI",t[t.AI_AND_W3C=1]="AI_AND_W3C",t[t.W3C=2]="W3C"})(dn||(dn={}));var Va=void 0,qa=void 0;function yl(){return As()?Rs(la.LocalStorage):null}function Rs(t){try{if(Ne(cn()))return null;var e=new Date,r=Jt(t===la.LocalStorage?"localStorage":"sessionStorage");r.setItem(e.toString(),e.toString());var n=r.getItem(e.toString())!==e.toString();if(r.removeItem(e.toString()),!n)return r}catch{}return null}function El(){return za()?Rs(la.SessionStorage):null}function Tl(){Va=!1,qa=!1}function As(){return Va===void 0&&(Va=!!Rs(la.LocalStorage)),Va}function wl(t,e){var r=yl();if(r!==null)try{return r.getItem(e)}catch(n){Va=!1,t.throwInternal(Me.WARNING,Ee.BrowserCannotReadLocalStorage,"Browser failed read of local storage. "+_t(n),{exception:at(n)})}return null}function Rl(t,e,r){var n=yl();if(n!==null)try{return n.setItem(e,r),!0}catch(a){Va=!1,t.throwInternal(Me.WARNING,Ee.BrowserCannotWriteLocalStorage,"Browser failed write to local storage. "+_t(a),{exception:at(a)})}return!1}function Al(t,e){var r=yl();if(r!==null)try{return r.removeItem(e),!0}catch(n){Va=!1,t.throwInternal(Me.WARNING,Ee.BrowserFailedRemovalFromLocalStorage,"Browser failed removal of local storage item. "+_t(n),{exception:at(n)})}return!1}function za(){return qa===void 0&&(qa=!!Rs(la.SessionStorage)),qa}function bi(t,e){var r=El();if(r!==null)try{return r.getItem(e)}catch(n){qa=!1,t.throwInternal(Me.WARNING,Ee.BrowserCannotReadSessionStorage,"Browser failed read of session storage. "+_t(n),{exception:at(n)})}return null}function gi(t,e,r){var n=El();if(n!==null)try{return n.setItem(e,r),!0}catch(a){qa=!1,t.throwInternal(Me.WARNING,Ee.BrowserCannotWriteSessionStorage,"Browser failed write to session storage. "+_t(a),{exception:at(a)})}return!1}function Il(t,e){var r=El();if(r!==null)try{return r.removeItem(e),!0}catch(n){qa=!1,t.throwInternal(Me.WARNING,Ee.BrowserFailedRemovalFromSessionStorage,"Browser failed removal of session storage item. "+_t(n),{exception:at(n)})}return!1}var Qc=nr()||{},Jc=0,sv=[null,null,null,null,null];function co(t){var e=Jc,r=sv,n=r[e];return Qc.createElement?r[e]||(n=r[e]=Qc.createElement("a")):n={host:Cl(t,!0)},n.href=t,e++,e>=r.length&&(e=0),Jc=e,n}function Is(t){var e,r=co(t);return r&&(e=r.href),e}function Cs(t,e){return t?t.toUpperCase()+" "+e:e}function Cl(t,e){var r=Ms(t,e)||"";if(r){var n=r.match(/(www[0-9]?\.)?(.[^/:]+)(\:[\d]+)?/i);if(n!=null&&n.length>3&&Je(n[2])&&n[2].length>0)return n[2]+(n[3]||"")}return r}function Ms(t,e){var r=null;if(t){var n=t.match(/(\w*):\/\/(.[^/:]+)(\:[\d]+)?/i);if(n!=null&&n.length>2&&Je(n[2])&&n[2].length>0&&(r=n[2]||"",e&&n.length>2)){var a=(n[1]||"").toLowerCase(),o=n[3]||"";(a==="http"&&o===":80"||a==="https"&&o===":443")&&(o=""),r+=o}}return r}var cv=["https://dc.services.visualstudio.com/v2/track","https://breeze.aimon.applicationinsights.io/v2/track","https://dc-int.services.visualstudio.com/v2/track"];function ja(t){return cv.indexOf(t.toLowerCase())!==-1}var $n={correlationIdPrefix:"cid-v1:",canIncludeCorrelationHeader:function(t,e,r){if(!e||t&&t.disableCorrelationHeaders)return!1;if(t&&t.correlationHeaderExcludePatterns){for(var n=0;n<t.correlationHeaderExcludePatterns.length;n++)if(t.correlationHeaderExcludePatterns[n].test(e))return!1}var a=co(e).host.toLowerCase();if(a&&(a.indexOf(":443")!==-1||a.indexOf(":80")!==-1)&&(a=(Ms(e,!0)||"").toLowerCase()),(!t||!t.enableCorsCorrelation)&&a&&a!==r)return!1;var o=t&&t.correlationHeaderDomains;if(o){var s;if(et(o,function(_){var L=new RegExp(_.toLowerCase().replace(/\\/g,"\\\\").replace(/\./g,"\\.").replace(/\*/g,".*"));s=s||L.test(a)}),!s)return!1}var h=t&&t.correlationHeaderExcludedDomains;if(!h||h.length===0)return!0;for(var n=0;n<h.length;n++){var v=new RegExp(h[n].toLowerCase().replace(/\\/g,"\\\\").replace(/\./g,"\\.").replace(/\*/g,".*"));if(v.test(a))return!1}return a&&a.length>0},getCorrelationContext:function(t){if(t){var e=$n.getCorrelationContextValue(t,Ct.requestContextTargetKey);if(e&&e!==$n.correlationIdPrefix)return e}},getCorrelationContextValue:function(t,e){if(t)for(var r=t.split(","),n=0;n<r.length;++n){var a=r[n].split("=");if(a.length===2&&a[0]===e)return a[1]}}};function eu(t,e,r,n){var a,o=n,s=n;if(e&&e.length>0){var h=co(e);if(a=h.host,!o)if(h.pathname!=null){var v=h.pathname.length===0?"/":h.pathname;v.charAt(0)!=="/"&&(v="/"+v),s=h.pathname,o=Mt(t,r?r+" "+v:v)}else o=Mt(t,e)}else a=n,o=n;return{target:a,name:o,data:s}}function yi(){var t=Zr();if(t&&t.now&&t.timing){var e=t.now()+t.timing.navigationStart;if(e>0)return e}return ur()}function vr(t,e){var r=null;return t!==0&&e!==0&&!Ne(t)&&!Ne(e)&&(r=e-t),r}var uv=";",fv="=";function Ml(t){if(!t)return{};var e=t.split(uv),r=us(e,function(a,o){var s=o.split(fv);if(s.length===2){var h=s[0].toLowerCase(),v=s[1];a[h]=v}return a},{});if(un(r).length>0){if(r.endpointsuffix){var n=r.location?r.location+".":"";r.ingestionendpoint=r.ingestionendpoint||"https://"+n+"dc."+r.endpointsuffix}r.ingestionendpoint=r.ingestionendpoint||Ts}return r}var Pl=function(){function t(){}return t}();var Bl=function(t){ut(e,t);function e(){return t.call(this)||this}return e}(Pl);var tu=function(){function t(){this.ver=1,this.sampleRate=100,this.tags={}}return t}();var Ps=function(t){ut(e,t);function e(r,n,a){var o=t.call(this)||this;return o.name=Mt(r,a)||ar,o.data=n,o.time=Mr(new Date),o.aiDataContract={time:1,iKey:1,name:1,sampleRate:function(){return o.sampleRate===100?4:1},tags:1,data:1},o}return e}(tu);var Bs=function(){function t(){this.ver=2,this.properties={},this.measurements={}}return t}();var Jr=function(t){ut(e,t);function e(r,n,a,o){var s=t.call(this)||this;return s.aiDataContract={ver:1,name:1,properties:0,measurements:0},s.name=Mt(r,n)||ar,s.properties=Pr(r,a),s.measurements=Br(r,o),s}return e.envelopeType="Microsoft.ApplicationInsights.{0}.Event",e.dataType="EventData",e}(Bs);var ru=function(){function t(){}return t}();var nu=function(){function t(){this.ver=2,this.exceptions=[],this.properties={},this.measurements={}}return t}();var au=function(){function t(){this.hasFullStack=!0,this.parsedStack=[]}return t}();var dv="<no_method>",Ti="error",vn="stack",Dl="stackDetails",iu="errorSrc",Ol="message",lu="description";function Fl(t,e){var r=t;return r&&!Je(r)&&(JSON&&JSON.stringify?(r=JSON.stringify(t),e&&(!r||r==="{}")&&(it(t.toString)?r=t.toString():r=""+t)):r=""+t+" - (Missing JSON.stringify)"),r||""}function cu(t,e){var r=t;return t&&(r&&!Je(r)&&(r=t[Ol]||t[lu]||r),r&&!Je(r)&&(r=Fl(r,!0)),t.filename&&(r=r+" @"+(t.filename||"")+":"+(t.lineno||"?")+":"+(t.colno||"?"))),e&&e!=="String"&&e!=="Object"&&e!=="Error"&&(r||"").indexOf(e)===-1&&(r=e+": "+r),r||""}function vv(t){try{if(En(t))return"hasFullStack"in t&&"typeName"in t}catch{}return!1}function mv(t){try{if(En(t))return"ver"in t&&"exceptions"in t&&"properties"in t}catch{}return!1}function ou(t){return t&&t.src&&Je(t.src)&&t.obj&&cr(t.obj)}function Ei(t){var e=t||"";Je(e)||(Je(e[vn])?e=e[vn]:e=""+e);var r=e.split(`
|
|
15
15
|
`);return{src:e,obj:r}}function hv(t){for(var e=[],r=t.split(`
|
|
16
16
|
`),n=0;n<r.length;n++){var a=r[n];r[n+1]&&(a+="@"+r[n+1],n++),e.push(a)}return{src:t,obj:e}}function uu(t){var e=null;if(t)try{if(t[vn])e=Ei(t[vn]);else if(t[Ti]&&t[Ti][vn])e=Ei(t[Ti][vn]);else if(t.exception&&t.exception[vn])e=Ei(t.exception[vn]);else if(ou(t))e=t;else if(ou(t[Dl]))e=t[Dl];else if(window&&window.opera&&t[Ol])e=hv(t.message);else if(Je(t))e=Ei(t);else{var r=t[Ol]||t[lu]||"";Je(t[iu])&&(r&&(r+=`
|
|
17
17
|
`),r+=" from "+t[iu]),r&&(e=Ei(r))}}catch(n){e=Ei(n)}return e||{src:"",obj:null}}function _v(t){var e="";return t&&(t.obj?et(t.obj,function(r){e+=r+`
|
|
18
18
|
`}):e=t.src||""),e}function pv(t){var e,r=t.obj;if(r&&r.length>0){e=[];var n=0,a=0;et(r,function(F){var _e=F.toString();if(kl.regex.test(_e)){var N=new kl(_e,n++);a+=N.sizeInBytes,e.push(N)}});var o=32*1024;if(a>o)for(var s=0,h=e.length-1,v=0,_=s,L=h;s<h;){var J=e[s].sizeInBytes,ne=e[h].sizeInBytes;if(v+=J+ne,v>o){var oe=L-_+1;e.splice(_,oe);break}_=s,L=h,s++,h--}}return e}function Ns(t){var e="";if(t&&(e=t.typeName||t.name||"",!e))try{var r=/function (.{1,200})\(/,n=r.exec(t.constructor.toString());e=n&&n.length>1?n[1]:""}catch{}return e}function Nl(t){if(t)try{if(!Je(t)){var e=Ns(t),r=Fl(t,!1);return(!r||r==="{}")&&(t[Ti]&&(t=t[Ti],e=Ns(t)),r=Fl(t,!0)),r.indexOf(e)!==0&&e!=="String"?e+":"+r:r}}catch{}return""+(t||"")}var gr=function(t){ut(e,t);function e(r,n,a,o,s,h){var v=t.call(this)||this;return v.aiDataContract={ver:1,exceptions:1,severityLevel:0,properties:0,measurements:0},mv(n)?(v.exceptions=n.exceptions,v.properties=n.properties,v.measurements=n.measurements,n.severityLevel&&(v.severityLevel=n.severityLevel),n.id&&(v.id=n.id),n.problemGroup&&(v.problemGroup=n.problemGroup),v.ver=2,Ne(n.isManual)||(v.isManual=n.isManual)):(a||(a={}),v.exceptions=[new su(r,n,a)],v.properties=Pr(r,a),v.measurements=Br(r,o),s&&(v.severityLevel=s),h&&(v.id=h)),v}return e.CreateAutoException=function(r,n,a,o,s,h,v,_){var L=Ns(s||h||r);return{message:cu(r,L),url:n,lineNumber:a,columnNumber:o,error:Nl(s||h||r),evt:Nl(h||r),typeName:L,stackDetails:uu(v||s||h),errorSrc:_}},e.CreateFromInterface=function(r,n,a,o){var s=n.exceptions&&Ba(n.exceptions,function(v){return su.CreateFromInterface(r,v)}),h=new e(r,Zt(Zt({},n),{exceptions:s}),a,o);return h},e.prototype.toInterface=function(){var r=this,n=r.exceptions,a=r.properties,o=r.measurements,s=r.severityLevel,h=r.problemGroup,v=r.id,_=r.isManual,L=n instanceof Array&&Ba(n,function(J){return J.toInterface()})||void 0;return{ver:"4.0",exceptions:L,severityLevel:s,properties:a,measurements:o,problemGroup:h,id:v,isManual:_}},e.CreateSimpleException=function(r,n,a,o,s,h){return{exceptions:[{hasFullStack:!0,message:r,stack:s,typeName:n}]}},e.envelopeType="Microsoft.ApplicationInsights.{0}.Exception",e.dataType="ExceptionData",e.formatError=Nl,e}(nu);var su=function(t){ut(e,t);function e(r,n,a){var o=t.call(this)||this;if(o.aiDataContract={id:0,outerId:0,typeName:1,message:1,hasFullStack:0,stack:0,parsedStack:2},vv(n))o.typeName=n.typeName,o.message=n.message,o[vn]=n[vn],o.parsedStack=n.parsedStack,o.hasFullStack=n.hasFullStack;else{var s=n,h=s&&s.evt;ci(s)||(s=s[Ti]||h||s),o.typeName=Mt(r,Ns(s))||ar,o.message=so(r,cu(n||s,o.typeName))||ar;var v=n[Dl]||uu(n);o.parsedStack=pv(v),o[vn]=pl(r,_v(v)),o.hasFullStack=cr(o.parsedStack)&&o.parsedStack.length>0,a&&(a.typeName=a.typeName||o.typeName)}return o}return e.prototype.toInterface=function(){var r=this.parsedStack instanceof Array&&Ba(this.parsedStack,function(a){return a.toInterface()}),n={id:this.id,outerId:this.outerId,typeName:this.typeName,message:this.message,hasFullStack:this.hasFullStack,stack:this[vn],parsedStack:r||void 0};return n},e.CreateFromInterface=function(r,n){var a=n.parsedStack instanceof Array&&Ba(n.parsedStack,function(s){return kl.CreateFromInterface(s)})||n.parsedStack,o=new e(r,Zt(Zt({},n),{parsedStack:a}));return o},e}(au);var kl=function(t){ut(e,t);function e(r,n){var a=t.call(this)||this;if(a.sizeInBytes=0,a.aiDataContract={level:1,method:1,assembly:0,fileName:0,line:0},typeof r=="string"){var o=r;a.level=n,a.method=dv,a.assembly=Qt(o),a.fileName="",a.line=0;var s=o.match(e.regex);s&&s.length>=5&&(a.method=Qt(s[2])||a.method,a.fileName=Qt(s[4]),a.line=parseInt(s[5])||0)}else a.level=r.level,a.method=r.method,a.assembly=r.assembly,a.fileName=r.fileName,a.line=r.line,a.sizeInBytes=0;return a.sizeInBytes+=a.method.length,a.sizeInBytes+=a.fileName.length,a.sizeInBytes+=a.assembly.length,a.sizeInBytes+=e.baseSize,a.sizeInBytes+=a.level.toString().length,a.sizeInBytes+=a.line.toString().length,a}return e.CreateFromInterface=function(r){return new e(r,null)},e.prototype.toInterface=function(){return{level:this.level,method:this.method,assembly:this.assembly,fileName:this.fileName,line:this.line}},e.regex=/^([\s]+at)?[\s]{0,50}([^\@\()]+?)[\s]{0,50}(\@|\()([^\(\n]+):([0-9]+):([0-9]+)(\)?)$/,e.baseSize=58,e}(ru);var fu=function(){function t(){this.ver=2,this.metrics=[],this.properties={},this.measurements={}}return t}();var Ds;(function(t){t[t.Measurement=0]="Measurement",t[t.Aggregation=1]="Aggregation"})(Ds||(Ds={}));var du=function(){function t(){this.kind=Ds.Measurement}return t}();var vu=function(t){ut(e,t);function e(){var r=t!==null&&t.apply(this,arguments)||this;return r.aiDataContract={name:1,kind:0,value:1,count:0,min:0,max:0,stdDev:0},r}return e}(du);var en=function(t){ut(e,t);function e(r,n,a,o,s,h,v,_,L){var J=t.call(this)||this;J.aiDataContract={ver:1,metrics:1,properties:0};var ne=new vu;return ne.count=o>0?o:void 0,ne.max=isNaN(h)||h===null?void 0:h,ne.min=isNaN(s)||s===null?void 0:s,ne.name=Mt(r,n)||ar,ne.value=a,ne.stdDev=isNaN(v)||v===null?void 0:v,J.metrics=[ne],J.properties=Pr(r,_),J.measurements=Br(r,L),J}return e.envelopeType="Microsoft.ApplicationInsights.{0}.Metric",e.dataType="MetricData",e}(fu);var uo=function(t){ut(e,t);function e(){var r=t.call(this)||this;return r.ver=2,r.properties={},r.measurements={},r}return e}(Bs);var Nr=function(t){ut(e,t);function e(r,n,a,o,s,h,v){var _=t.call(this)||this;return _.aiDataContract={ver:1,name:0,url:0,duration:0,properties:0,measurements:0,id:0},_.id=Sl(r,v),_.url=Yn(r,a),_.name=Mt(r,n)||ar,isNaN(o)||(_.duration=Qr(o)),_.properties=Pr(r,s),_.measurements=Br(r,h),_}return e.envelopeType="Microsoft.ApplicationInsights.{0}.Pageview",e.dataType="PageviewData",e}(uo);var mu=function(){function t(){this.ver=2,this.success=!0,this.properties={},this.measurements={}}return t}();var tn=function(t){ut(e,t);function e(r,n,a,o,s,h,v,_,L,J,ne,oe){L===void 0&&(L="Ajax");var F=t.call(this)||this;F.aiDataContract={id:1,ver:1,name:0,resultCode:0,duration:0,success:0,data:0,target:0,type:0,properties:0,measurements:0,kind:0,value:0,count:0,min:0,max:0,stdDev:0,dependencyKind:0,dependencySource:0,commandName:0,dependencyTypeName:0},F.id=n,F.duration=Qr(s),F.success=h,F.resultCode=v+"",F.type=Mt(r,L);var _e=eu(r,a,_,o);return F.data=Yn(r,o)||_e.data,F.target=Mt(r,_e.target),J&&(F.target="".concat(F.target," | ").concat(J)),F.name=Mt(r,_e.name),F.properties=Pr(r,ne),F.measurements=Br(r,oe),F}return e.envelopeType="Microsoft.ApplicationInsights.{0}.RemoteDependency",e.dataType="RemoteDependencyData",e}(mu);var hu=function(){function t(){this.ver=2,this.properties={},this.measurements={}}return t}();var Cn=function(t){ut(e,t);function e(r,n,a,o,s){var h=t.call(this)||this;return h.aiDataContract={ver:1,message:1,severityLevel:0,properties:0},n=n||ar,h.message=so(r,n),h.properties=Pr(r,o),h.measurements=Br(r,s),a&&(h.severityLevel=a),h}return e.envelopeType="Microsoft.ApplicationInsights.{0}.Message",e.dataType="MessageData",e}(hu);var _u=function(t){ut(e,t);function e(){var r=t.call(this)||this;return r.ver=2,r.properties={},r.measurements={},r}return e}(uo);var Mn=function(t){ut(e,t);function e(r,n,a,o,s,h,v){var _=t.call(this)||this;return _.aiDataContract={ver:1,name:0,url:0,duration:0,perfTotal:0,networkConnect:0,sentRequest:0,receivedResponse:0,domProcessing:0,properties:0,measurements:0},_.url=Yn(r,a),_.name=Mt(r,n)||ar,_.properties=Pr(r,s),_.measurements=Br(r,h),v&&(_.domProcessing=v.domProcessing,_.duration=v.duration,_.networkConnect=v.networkConnect,_.perfTotal=v.perfTotal,_.receivedResponse=v.receivedResponse,_.sentRequest=v.sentRequest),_}return e.envelopeType="Microsoft.ApplicationInsights.{0}.PageviewPerformance",e.dataType="PageviewPerformanceData",e}(_u);var Vn=function(t){ut(e,t);function e(r,n){var a=t.call(this)||this;return a.aiDataContract={baseType:1,baseData:1},a.baseType=r,a.baseData=n,a}return e}(Bl);var wi;(function(t){t[t.Verbose=0]="Verbose",t[t.Information=1]="Information",t[t.Warning=2]="Warning",t[t.Error=3]="Error",t[t.Critical=4]="Critical"})(wi||(wi={}));function ua(t){var e="ai."+t+".";return function(r){return e+r}}var fo=ua("application"),mr=ua("device"),Os=ua("location"),Ri=ua("operation"),Ll=ua("session"),ca=ua("user"),Ga=ua("cloud"),vo=ua("internal"),Ai=function(t){ut(e,t);function e(){return t.call(this)||this}return e}(k0({applicationVersion:fo("ver"),applicationBuild:fo("build"),applicationTypeId:fo("typeId"),applicationId:fo("applicationId"),applicationLayer:fo("layer"),deviceId:mr("id"),deviceIp:mr("ip"),deviceLanguage:mr("language"),deviceLocale:mr("locale"),deviceModel:mr("model"),deviceFriendlyName:mr("friendlyName"),deviceNetwork:mr("network"),deviceNetworkName:mr("networkName"),deviceOEMName:mr("oemName"),deviceOS:mr("os"),deviceOSVersion:mr("osVersion"),deviceRoleInstance:mr("roleInstance"),deviceRoleName:mr("roleName"),deviceScreenResolution:mr("screenResolution"),deviceType:mr("type"),deviceMachineName:mr("machineName"),deviceVMName:mr("vmName"),deviceBrowser:mr("browser"),deviceBrowserVersion:mr("browserVersion"),locationIp:Os("ip"),locationCountry:Os("country"),locationProvince:Os("province"),locationCity:Os("city"),operationId:Ri("id"),operationName:Ri("name"),operationParentId:Ri("parentId"),operationRootId:Ri("rootId"),operationSyntheticSource:Ri("syntheticSource"),operationCorrelationVector:Ri("correlationVector"),sessionId:Ll("id"),sessionIsFirst:Ll("isFirst"),sessionIsNew:Ll("isNew"),userAccountAcquisitionDate:ca("accountAcquisitionDate"),userAccountId:ca("accountId"),userAgent:ca("userAgent"),userId:ca("id"),userStoreRegion:ca("storeRegion"),userAuthUserId:ca("authUserId"),userAnonymousUserAcquisitionDate:ca("anonUserAcquisitionDate"),userAuthenticatedUserAcquisitionDate:ca("authUserAcquisitionDate"),cloudName:Ga("name"),cloudRole:Ga("role"),cloudRoleVer:Ga("roleVer"),cloudRoleInstance:Ga("roleInstance"),cloudEnvironment:Ga("environment"),cloudLocation:Ga("location"),cloudDeploymentUnit:Ga("deploymentUnit"),internalNodeName:vo("nodeName"),internalSdkVersion:vo("sdkVersion"),internalAgentVersion:vo("agentVersion"),internalSnippet:vo("snippet"),internalSdkSrc:vo("sdkSrc")}));var mn=function(){function t(){}return t.create=function(e,r,n,a,o,s){if(n=Mt(a,n)||ar,Ne(e)||Ne(r)||Ne(n))throw Error("Input doesn't contain all required fields");var h="";e[ws]&&(h=e[ws],delete e[ws]);var v={name:n,time:Mr(new Date),iKey:h,ext:s||{},tags:[],data:{},baseType:r,baseData:e};return Ne(o)||Rt(o,function(_,L){v.data[_]=L}),v},t}();var Dr={UserExt:"user",DeviceExt:"device",TraceExt:"trace",WebExt:"web",AppExt:"app",OSExt:"os",SessionExt:"ses",SDKExt:"sdk"},Pt=new Ai;var fa="AppInsightsPropertiesPlugin",mo="AppInsightsChannelPlugin",Ul="ApplicationInsightsAnalytics";var pu=function(){function t(e,r,n,a){xt(t,this,function(o){var s=null,h=[],v=!1,_;n&&(_=n.logger);function L(){n&&et(n.getTransmissionControls(),function(ne){et(ne,function(oe){return oe.flush(!0)})})}function J(ne){h.push(ne),s||(s=setInterval(function(){var oe=h.slice(0),F=!1;h=[],et(oe,function(_e){_e()?F=!0:h.push(_e)}),h.length===0&&(clearInterval(s),s=null),F&&L()},100))}o.trackPageView=function(ne,oe){var F=ne.name;if(Ne(F)||typeof F!="string"){var _e=nr();F=ne.name=_e&&_e.title||""}var N=ne.uri;if(Ne(N)||typeof N!="string"){var le=$r();N=ne.uri=le&&le.href||""}if(!a.isPerformanceTimingSupported()){e.sendPageViewInternal(ne,oe),L(),_.throwInternal(Me.WARNING,Ee.NavigationTimingNotSupported,"trackPageView: navigation timing API used for calculation of page duration is not supported in this browser. This page view will be collected without duration and timing info.");return}var ue=!1,Fe,tt=a.getPerformanceTiming().navigationStart;tt>0&&(Fe=vr(tt,+new Date),a.shouldCollectDuration(Fe)||(Fe=void 0));var ct;!Ne(oe)&&!Ne(oe.duration)&&(ct=oe.duration),(r||!isNaN(ct))&&(isNaN(ct)&&(oe||(oe={}),oe.duration=Fe),e.sendPageViewInternal(ne,oe),L(),ue=!0);var pt=6e4;oe||(oe={}),J(function(){var st=!1;try{if(a.isPerformanceTimingDataReady()){st=!0;var yt={name:F,uri:N};a.populatePageViewPerformanceEvent(yt),!yt.isValid&&!ue?(oe.duration=Fe,e.sendPageViewInternal(ne,oe)):(ue||(oe.duration=yt.durationMs,e.sendPageViewInternal(ne,oe)),v||(e.sendPageViewPerformanceInternal(yt,oe),v=!0))}else tt>0&&vr(tt,+new Date)>pt&&(st=!0,ue||(oe.duration=pt,e.sendPageViewInternal(ne,oe)))}catch(Xt){_.throwInternal(Me.CRITICAL,Ee.TrackPVFailedCalc,"trackPageView failed on page load calculation: "+_t(Xt),{exception:at(Xt)})}return st})}})}return t}();var Su=function(){function t(e,r){this.prevPageVisitDataKeyName="prevPageVisitData",this.pageVisitTimeTrackingHandler=r,this._logger=e}return t.prototype.trackPreviousPageVisit=function(e,r){try{var n=this.restartPageVisitTimer(e,r);n&&this.pageVisitTimeTrackingHandler(n.pageName,n.pageUrl,n.pageVisitTime)}catch(a){this._logger.warnToConsole("Auto track page visit time failed, metric will not be collected: "+at(a))}},t.prototype.restartPageVisitTimer=function(e,r){try{var n=this.stopPageVisitTimer();return this.startPageVisitTimer(e,r),n}catch(a){return this._logger.warnToConsole("Call to restart failed: "+at(a)),null}},t.prototype.startPageVisitTimer=function(e,r){try{if(za()){bi(this._logger,this.prevPageVisitDataKeyName)!=null&&Tr("Cannot call startPageVisit consecutively without first calling stopPageVisit");var n=new Ev(e,r),a=dr().stringify(n);gi(this._logger,this.prevPageVisitDataKeyName,a)}}catch(o){this._logger.warnToConsole("Call to start failed: "+at(o))}},t.prototype.stopPageVisitTimer=function(){try{if(za()){var e=ur(),r=bi(this._logger,this.prevPageVisitDataKeyName);if(r&&wn()){var n=dr().parse(r);return n.pageVisitTime=e-n.pageVisitStartTime,Il(this._logger,this.prevPageVisitDataKeyName),n}else return null}return null}catch(a){return this._logger.warnToConsole("Stop page visit timer failed: "+at(a)),null}},t}();var Ev=function(){function t(e,r){this.pageVisitStartTime=ur(),this.pageName=e,this.pageUrl=r}return t}();var xu=function(){function t(e){this.MAX_DURATION_ALLOWED=36e5,e&&(this._logger=e.logger)}return t.prototype.populatePageViewPerformanceEvent=function(e){e.isValid=!1;var r=this.getPerformanceNavigationTiming(),n=this.getPerformanceTiming(),a=0,o=0,s=0,h=0,v=0;(r||n)&&(r?(a=r.duration,o=r.startTime===0?r.connectEnd:vr(r.startTime,r.connectEnd),s=vr(r.requestStart,r.responseStart),h=vr(r.responseStart,r.responseEnd),v=vr(r.responseEnd,r.loadEventEnd)):(a=vr(n.navigationStart,n.loadEventEnd),o=vr(n.navigationStart,n.connectEnd),s=vr(n.requestStart,n.responseStart),h=vr(n.responseStart,n.responseEnd),v=vr(n.responseEnd,n.loadEventEnd)),a===0?this._logger.throwInternal(Me.WARNING,Ee.ErrorPVCalc,"error calculating page view performance.",{total:a,network:o,request:s,response:h,dom:v}):this.shouldCollectDuration(a,o,s,h,v)?a<Math.floor(o)+Math.floor(s)+Math.floor(h)+Math.floor(v)?this._logger.throwInternal(Me.WARNING,Ee.ClientPerformanceMathError,"client performance math error.",{total:a,network:o,request:s,response:h,dom:v}):(e.durationMs=a,e.perfTotal=e.duration=Qr(a),e.networkConnect=Qr(o),e.sentRequest=Qr(s),e.receivedResponse=Qr(h),e.domProcessing=Qr(v),e.isValid=!0):this._logger.throwInternal(Me.WARNING,Ee.InvalidDurationValue,"Invalid page load duration value. Browser perf data won't be sent.",{total:a,network:o,request:s,response:h,dom:v}))},t.prototype.getPerformanceTiming=function(){return this.isPerformanceTimingSupported()?Zr().timing:null},t.prototype.getPerformanceNavigationTiming=function(){return this.isPerformanceNavigationTimingSupported()?Zr().getEntriesByType("navigation")[0]:null},t.prototype.isPerformanceNavigationTimingSupported=function(){var e=Zr();return e&&e.getEntriesByType&&e.getEntriesByType("navigation").length>0},t.prototype.isPerformanceTimingSupported=function(){var e=Zr();return e&&e.timing},t.prototype.isPerformanceTimingDataReady=function(){var e=Zr(),r=e?e.timing:0;return r&&r.domainLookupStart>0&&r.navigationStart>0&&r.responseStart>0&&r.requestStart>0&&r.loadEventEnd>0&&r.responseEnd>0&&r.connectEnd>0&&r.domLoading>0},t.prototype.shouldCollectDuration=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];var n=wr()||{},a=["googlebot","adsbot-google","apis-google","mediapartners-google"],o=n.userAgent,s=!1;if(o)for(var h=0;h<a.length;h++)s=s||o.toLowerCase().indexOf(a[h])!==-1;if(s)return!1;for(var h=0;h<e.length;h++)if(e[h]<0||e[h]>=this.MAX_DURATION_ALLOWED)return!1;return!0},t}();var bu="duration",Hl="event";function ho(t,e){t&&t.dispatchEvent&&e&&t.dispatchEvent(e)}function Tv(t){if(t&&t.reason){var e=t.reason;return!Je(e)&&it(e.toString)?e.toString():at(e)}return t||""}var Vl=function(t){ut(e,t);function e(){var r=t.call(this)||this;r.identifier=Ul,r.priority=180,r.autoRoutePVDelay=500;var n,a,o,s=0,h,v;return xt(e,r,function(_,L){var J=$r(!0);h=J&&J.href||"",_.getCookieMgr=function(){return La(_.core)},_.processTelemetry=function(N,le){Hn(_.core,function(){return _.identifier+":processTelemetry"},function(){var ue=!1,Fe=_._telemetryInitializers.length;le=_._getTelCtx(le);for(var tt=0;tt<Fe;++tt){var ct=_._telemetryInitializers[tt];if(ct)try{if(ct.apply(null,[N])===!1){ue=!0;break}}catch(pt){le.diagLog().throwInternal(Me.CRITICAL,Ee.TelemetryInitializerFailed,"One of telemetry initializers failed, telemetry item will not be sent: "+_t(pt),{exception:at(pt)},!0)}}ue||_.processNext(N,le)},function(){return{item:N}},!N.sync)},_.trackEvent=function(N,le){try{var ue=mn.create(N,Jr.dataType,Jr.envelopeType,_.diagLog(),le);_.core.track(ue)}catch(Fe){_.diagLog().throwInternal(Me.WARNING,Ee.TrackTraceFailed,"trackTrace failed, trace will not be collected: "+_t(Fe),{exception:at(Fe)})}},_.startTrackEvent=function(N){try{n.start(N)}catch(le){_.diagLog().throwInternal(Me.CRITICAL,Ee.StartTrackEventFailed,"startTrackEvent failed, event will not be collected: "+_t(le),{exception:at(le)})}},_.stopTrackEvent=function(N,le,ue){try{n.stop(N,void 0,le)}catch(Fe){_.diagLog().throwInternal(Me.CRITICAL,Ee.StopTrackEventFailed,"stopTrackEvent failed, event will not be collected: "+_t(Fe),{exception:at(Fe)})}},_.trackTrace=function(N,le){try{var ue=mn.create(N,Cn.dataType,Cn.envelopeType,_.diagLog(),le);_.core.track(ue)}catch(Fe){_.diagLog().throwInternal(Me.WARNING,Ee.TrackTraceFailed,"trackTrace failed, trace will not be collected: "+_t(Fe),{exception:at(Fe)})}},_.trackMetric=function(N,le){try{var ue=mn.create(N,en.dataType,en.envelopeType,_.diagLog(),le);_.core.track(ue)}catch(Fe){_.diagLog().throwInternal(Me.CRITICAL,Ee.TrackMetricFailed,"trackMetric failed, metric will not be collected: "+_t(Fe),{exception:at(Fe)})}},_.trackPageView=function(N,le){try{var ue=N||{};_._pageViewManager.trackPageView(ue,Zt(Zt(Zt({},ue.properties),ue.measurements),le)),_.config.autoTrackPageVisitTime&&_._pageVisitTimeManager.trackPreviousPageVisit(ue.name,ue.uri)}catch(Fe){_.diagLog().throwInternal(Me.CRITICAL,Ee.TrackPVFailed,"trackPageView failed, page view will not be collected: "+_t(Fe),{exception:at(Fe)})}},_.sendPageViewInternal=function(N,le,ue){var Fe=nr();Fe&&(N.refUri=N.refUri===void 0?Fe.referrer:N.refUri);var tt=mn.create(N,Nr.dataType,Nr.envelopeType,_.diagLog(),le,ue);_.core.track(tt),s=0},_.sendPageViewPerformanceInternal=function(N,le,ue){var Fe=mn.create(N,Mn.dataType,Mn.envelopeType,_.diagLog(),le,ue);_.core.track(Fe)},_.trackPageViewPerformance=function(N,le){try{_._pageViewPerformanceManager.populatePageViewPerformanceEvent(N),_.sendPageViewPerformanceInternal(N,le)}catch(ue){_.diagLog().throwInternal(Me.CRITICAL,Ee.TrackPVFailed,"trackPageViewPerformance failed, page view will not be collected: "+_t(ue),{exception:at(ue)})}},_.startTrackPage=function(N){try{if(typeof N!="string"){var le=nr();N=le&&le.title||""}a.start(N)}catch(ue){_.diagLog().throwInternal(Me.CRITICAL,Ee.StartTrackFailed,"startTrackPage failed, page view may not be collected: "+_t(ue),{exception:at(ue)})}},_.stopTrackPage=function(N,le,ue,Fe){try{if(typeof N!="string"){var tt=nr();N=tt&&tt.title||""}if(typeof le!="string"){var ct=$r();le=ct&&ct.href||""}a.stop(N,le,ue,Fe),_.config.autoTrackPageVisitTime&&_._pageVisitTimeManager.trackPreviousPageVisit(N,le)}catch(pt){_.diagLog().throwInternal(Me.CRITICAL,Ee.StopTrackFailed,"stopTrackPage failed, page view will not be collected: "+_t(pt),{exception:at(pt)})}},_.sendExceptionInternal=function(N,le,ue){var Fe=N.exception||N.error||new Error(ar),tt=new gr(_.diagLog(),Fe,N.properties||le,N.measurements,N.severityLevel,N.id).toInterface(),ct=mn.create(tt,gr.dataType,gr.envelopeType,_.diagLog(),le,ue);_.core.track(ct)},_.trackException=function(N,le){try{_.sendExceptionInternal(N,le)}catch(ue){_.diagLog().throwInternal(Me.CRITICAL,Ee.TrackExceptionFailed,"trackException failed, exception will not be collected: "+_t(ue),{exception:at(ue)})}},_._onerror=function(N){var le=N&&N.error,ue=N&&N.evt;try{if(!ue){var Fe=Un();Fe&&(ue=Fe[Hl])}var tt=N&&N.url||(nr()||{}).URL,ct=N.errorSrc||"window.onerror@"+tt+":"+(N.lineNumber||0)+":"+(N.columnNumber||0),pt={errorSrc:ct,url:tt,lineNumber:N.lineNumber||0,columnNumber:N.columnNumber||0,message:N.message};gl(N.message,N.url,N.lineNumber,N.columnNumber,N.error)?_e(gr.CreateAutoException("Script error: The browser's same-origin policy prevents us from getting the details of this exception. Consider using the 'crossorigin' attribute.",tt,N.lineNumber||0,N.columnNumber||0,le,ue,null,ct),pt):(N.errorSrc||(N.errorSrc=ct),_.trackException({exception:N,severityLevel:wi.Error},pt))}catch(yt){var st=le?le.name+", "+le.message:"null";_.diagLog().throwInternal(Me.CRITICAL,Ee.ExceptionWhileLoggingError,"_onError threw exception while logging error, error will not be collected: "+_t(yt),{exception:at(yt),errorString:st})}},_.addTelemetryInitializer=function(N){_._telemetryInitializers.push(N)},_.initialize=function(N,le,ue,Fe){if(!_.isInitialized()){if(Ne(le))throw Error("Error initializing");L.initialize(N,le,ue,Fe),_.setInitialized(!1);var tt=_._getTelCtx(),ct=_.identifier;_.config=tt.getExtCfg(ct);var pt=e.getDefaultConfig(N);pt!==void 0&&Rt(pt,function(St,Ot){_.config[St]=tt.getConfig(ct,St,Ot),_.config[St]===void 0&&(_.config[St]=Ot)}),_.config.isStorageUseDisabled&&Tl();var st={instrumentationKey:function(){return N.instrumentationKey},accountId:function(){return _.config.accountId||N.accountId},sessionRenewalMs:function(){return _.config.sessionRenewalMs||N.sessionRenewalMs},sessionExpirationMs:function(){return _.config.sessionExpirationMs||N.sessionExpirationMs},sampleRate:function(){return _.config.samplingPercentage||N.samplingPercentage},sdkExtension:function(){return _.config.sdkExtension||N.sdkExtension},isBrowserLinkTrackingEnabled:function(){return _.config.isBrowserLinkTrackingEnabled||N.isBrowserLinkTrackingEnabled},appId:function(){return _.config.appId||N.appId}};_._pageViewPerformanceManager=new xu(_.core),_._pageViewManager=new pu(r,_.config.overridePageViewDuration,_.core,_._pageViewPerformanceManager),_._pageVisitTimeManager=new Su(_.diagLog(),function(St,Ot,Nt){return ne(St,Ot,Nt)}),_._telemetryInitializers=_._telemetryInitializers||[],oe(st),n=new gu(_.diagLog(),"trackEvent"),n.action=function(St,Ot,Nt,It){It||(It={}),It[bu]=Nt.toString(),_.trackEvent({name:St,properties:It})},a=new gu(_.diagLog(),"trackPageView"),a.action=function(St,Ot,Nt,It,Ze){Ne(It)&&(It={}),It[bu]=Nt.toString();var R={name:St,uri:Ot,properties:It,measurements:Ze};_.sendPageViewInternal(R,It)};var yt=Un(),Xt=j0(),er=$r(!0),or=r;if(_.config.disableExceptionTracking===!1&&!_.config.autoExceptionInstrumented&&yt){var an="onerror",Rr=yt[an];yt.onerror=function(St,Ot,Nt,It,Ze){var R=yt[Hl],ie=Rr&&Rr(St,Ot,Nt,It,Ze);return ie!==!0&&or._onerror(gr.CreateAutoException(St,Ot,Nt,It,Ze,R)),ie},_.config.autoExceptionInstrumented=!0}if(_.config.disableExceptionTracking===!1&&_.config.enableUnhandledPromiseRejectionTracking===!0&&!_.config.autoUnhandledPromiseInstrumented&&yt){var _r="onunhandledrejection",xr=yt[_r];yt[_r]=function(St){var Ot=yt[Hl],Nt=xr&&xr.call(yt,St);return Nt!==!0&&or._onerror(gr.CreateAutoException(Tv(St),er?er.href:"",0,0,St,Ot)),Nt},_.config.autoUnhandledPromiseInstrumented=!0}if(_.config.enableAutoRouteTracking===!0&&Xt&&it(Xt.pushState)&&it(Xt.replaceState)&&yt&&typeof Event<"u"){var Yt=r;et(ue,function(St){St.identifier===fa&&(o=St)}),Xt.pushState=function(St){return function(){var Nt=St.apply(this,arguments);return ho(yt,Ha(Yt.config.namePrefix+"pushState")),ho(yt,Ha(Yt.config.namePrefix+"locationchange")),Nt}}(Xt.pushState),Xt.replaceState=function(St){return function(){var Nt=St.apply(this,arguments);return ho(yt,Ha(Yt.config.namePrefix+"replaceState")),ho(yt,Ha(Yt.config.namePrefix+"locationchange")),Nt}}(Xt.replaceState),yt.addEventListener&&(yt.addEventListener(Yt.config.namePrefix+"popstate",function(){ho(yt,Ha(Yt.config.namePrefix+"locationchange"))}),yt.addEventListener(Yt.config.namePrefix+"locationchange",function(){if(o&&o.context&&o.context.telemetryTrace){o.context.telemetryTrace.traceID=qr();var St="_unknown_";er&&er.pathname&&(St=er.pathname+(er.hash||"")),o.context.telemetryTrace.name=Mt(Yt.diagLog(),St)}v&&(h=v),v=er&&er.href||"",setTimeout(function(Ot){Yt.trackPageView({refUri:Ot,properties:{duration:0}})}.bind(r,h),Yt.autoRoutePVDelay)}))}_.setInitialized(!0)}};function ne(N,le,ue){var Fe={PageName:N,PageUrl:le};_.trackMetric({name:"PageVisitTime",average:ue,max:ue,min:ue,sampleCount:1},Fe)}function oe(N){if(!N.isBrowserLinkTrackingEnabled()){var le=["/browserLinkSignalR/","/__browserLink/"],ue=function(Fe){if(Fe.baseType===tn.dataType){var tt=Fe.baseData;if(tt){for(var ct=0;ct<le.length;ct++)if(tt.target&&tt.target.indexOf(le[ct])>=0)return!1}}return!0};F(ue)}}function F(N){_._telemetryInitializers.push(N)}function _e(N,le){var ue=mn.create(N,gr.dataType,gr.envelopeType,_.diagLog(),le);_.core.track(ue)}}),r}return e.getDefaultConfig=function(r){return r||(r={}),r.sessionRenewalMs=30*60*1e3,r.sessionExpirationMs=24*60*60*1e3,r.disableExceptionTracking=fn(r.disableExceptionTracking),r.autoTrackPageVisitTime=fn(r.autoTrackPageVisitTime),r.overridePageViewDuration=fn(r.overridePageViewDuration),r.enableUnhandledPromiseRejectionTracking=fn(r.enableUnhandledPromiseRejectionTracking),(isNaN(r.samplingPercentage)||r.samplingPercentage<=0||r.samplingPercentage>=100)&&(r.samplingPercentage=100),r.isStorageUseDisabled=fn(r.isStorageUseDisabled),r.isBrowserLinkTrackingEnabled=fn(r.isBrowserLinkTrackingEnabled),r.enableAutoRouteTracking=fn(r.enableAutoRouteTracking),r.namePrefix=r.namePrefix||"",r.enableDebug=fn(r.enableDebug),r.disableFlushOnBeforeUnload=fn(r.disableFlushOnBeforeUnload),r.disableFlushOnUnload=fn(r.disableFlushOnUnload,r.disableFlushOnBeforeUnload),r},e.Version="2.7.4",e}(Rn);var gu=function(){function t(e,r){var n=this,a={};n.start=function(o){typeof a[o]<"u"&&e.throwInternal(Me.WARNING,Ee.StartCalledMoreThanOnce,"start was called more than once for this event without calling stop.",{name:o,key:o},!0),a[o]=+new Date},n.stop=function(o,s,h,v){var _=a[o];if(isNaN(_))e.throwInternal(Me.WARNING,Ee.StopCalledWithoutStart,"stop was called without a corresponding start.",{name:o,key:o},!0);else{var L=+new Date,J=vr(_,L);n.action(o,s,J,h,v)}delete a[o],a[o]=void 0}}return t}();var yu=function(){function t(e,r){var n=[],a=!1;this._get=function(){return n},this._set=function(o){return n=o,n},xt(t,this,function(o){o.enqueue=function(s){if(o.count()>=r.eventsLimitInMem()){a||(e.throwInternal(Me.WARNING,Ee.InMemoryStorageBufferFull,"Maximum in-memory buffer size reached: "+o.count(),!0),a=!0);return}n.push(s)},o.count=function(){return n.length},o.size=function(){for(var s=n.length,h=0;h<n.length;h++)s+=n[h].length;return r.emitLineDelimitedJson()||(s+=2),s},o.clear=function(){n=[],a=!1},o.getItems=function(){return n.slice(0)},o.batchPayloads=function(s){if(s&&s.length>0){var h=r.emitLineDelimitedJson()?s.join(`
|
|
19
19
|
`):"["+s.join(",")+"]";return h}return null}})}return t}(),Eu=function(t){ut(e,t);function e(r,n){var a=t.call(this,r,n)||this;return xt(e,a,function(o,s){o.markAsSent=function(h){s.clear()},o.clearSent=function(h){}}),a}return e}(yu);var Tu=function(t){ut(e,t);function e(r,n){var a=t.call(this,r,n)||this,o=!1;return xt(e,a,function(s,h){var v=ne(e.BUFFER_KEY),_=ne(e.SENT_BUFFER_KEY),L=s._set(v.concat(_));L.length>e.MAX_BUFFER_SIZE&&(L.length=e.MAX_BUFFER_SIZE),oe(e.SENT_BUFFER_KEY,[]),oe(e.BUFFER_KEY,L),s.enqueue=function(F){if(s.count()>=e.MAX_BUFFER_SIZE){o||(r.throwInternal(Me.WARNING,Ee.SessionStorageBufferFull,"Maximum buffer size reached: "+s.count(),!0),o=!0);return}h.enqueue(F),oe(e.BUFFER_KEY,s._get())},s.clear=function(){h.clear(),oe(e.BUFFER_KEY,s._get()),oe(e.SENT_BUFFER_KEY,[]),o=!1},s.markAsSent=function(F){oe(e.BUFFER_KEY,s._set(J(F,s._get())));var _e=ne(e.SENT_BUFFER_KEY);_e instanceof Array&&F instanceof Array&&(_e=_e.concat(F),_e.length>e.MAX_BUFFER_SIZE&&(r.throwInternal(Me.CRITICAL,Ee.SessionStorageBufferFull,"Sent buffer reached its maximum size: "+_e.length,!0),_e.length=e.MAX_BUFFER_SIZE),oe(e.SENT_BUFFER_KEY,_e))},s.clearSent=function(F){var _e=ne(e.SENT_BUFFER_KEY);_e=J(F,_e),oe(e.SENT_BUFFER_KEY,_e)};function J(F,_e){var N=[];return et(_e,function(le){!it(le)&&Ln(F,le)===-1&&N.push(le)}),N}function ne(F){var _e=F;try{_e=n.namePrefix&&n.namePrefix()?n.namePrefix()+"_"+_e:_e;var N=bi(r,_e);if(N){var le=dr().parse(N);if(Je(le)&&(le=dr().parse(le)),le&&cr(le))return le}}catch(ue){r.throwInternal(Me.CRITICAL,Ee.FailedToRestoreStorageBuffer," storage key: "+_e+", "+_t(ue),{exception:at(ue)})}return[]}function oe(F,_e){var N=F;try{N=n.namePrefix&&n.namePrefix()?n.namePrefix()+"_"+N:N;var le=JSON.stringify(_e);gi(r,N,le)}catch(ue){gi(r,N,JSON.stringify([])),r.throwInternal(Me.WARNING,Ee.FailedToSetStorageBuffer," storage key: "+N+", "+_t(ue)+". Buffer cleared",{exception:at(ue)})}}}),a}return e.BUFFER_KEY="AI_buffer",e.SENT_BUFFER_KEY="AI_sentBuffer",e.MAX_BUFFER_SIZE=2e3,e}(yu);var ql="baseType",zt="baseData",Sr="properties",wu="true";function ir(t,e,r){return ht(t,e,r,fi)}function wv(t,e,r){var n=r.tags=r.tags||{},a=e.ext=e.ext||{},o=e.tags=e.tags||[],s=a.user;s&&(ir(n,Pt.userAuthUserId,s.authId),ir(n,Pt.userId,s.id||s.localId));var h=a.app;h&&ir(n,Pt.sessionId,h.sesId);var v=a.device;v&&(ir(n,Pt.deviceId,v.id||v.localId),ir(n,Pt.deviceType,v.deviceClass),ir(n,Pt.deviceIp,v.ip),ir(n,Pt.deviceModel,v.model),ir(n,Pt.deviceType,v.deviceType));var _=e.ext.web;if(_){ir(n,Pt.deviceLanguage,_.browserLang),ir(n,Pt.deviceBrowserVersion,_.browserVer),ir(n,Pt.deviceBrowser,_.browser);var L=r.data=r.data||{},J=L[zt]=L[zt]||{},ne=J[Sr]=J[Sr]||{};ir(ne,"domain",_.domain),ir(ne,"isManual",_.isManual?wu:null),ir(ne,"screenRes",_.screenRes),ir(ne,"userConsent",_.userConsent?wu:null)}var oe=a.os;oe&&ir(n,Pt.deviceOS,oe.name);var F=a.trace;F&&(ir(n,Pt.operationParentId,F.parentID),ir(n,Pt.operationName,Mt(t,F.name)),ir(n,Pt.operationId,F.traceID));for(var _e={},N=o.length-1;N>=0;N--){var le=o[N];Rt(le,function(Fe,tt){_e[Fe]=tt}),o.splice(N,1)}Rt(o,function(Fe,tt){_e[Fe]=tt});var ue=Zt(Zt({},n),_e);ue[Pt.internalSdkVersion]||(ue[Pt.internalSdkVersion]="javascript:".concat(Rv.Version)),r.tags=ds(ue)}function da(t,e,r){Ne(t)||Rt(t,function(n,a){ui(a)?r[n]=a:Je(a)?e[n]=a:wn()&&(e[n]=dr().stringify(a))})}function Xa(t,e){Ne(t)||Rt(t,function(r,n){t[r]=n||e})}function Ka(t,e,r,n){var a=new Ps(t,n,e);ir(a,"sampleRate",r[Si]),(r[zt]||{}).startTime&&(a.time=Mr(r[zt].startTime)),a.iKey=r.iKey;var o=r.iKey.replace(/-/g,"");return a.name=a.name.replace("{0}",o),wv(t,r,a),r.tags=r.tags||[],ds(a)}function Wa(t,e){Ne(e[zt])&&t.throwInternal(Me.CRITICAL,Ee.TelemetryEnvelopeInvalid,"telemetryItem.baseData cannot be null.")}var Rv={Version:"2.7.4"};function Ru(t,e,r){Wa(t,e);var n=e[zt].measurements||{},a=e[zt][Sr]||{};da(e.data,a,n),Ne(r)||Xa(a,r);var o=e[zt];if(Ne(o))return t.warnToConsole("Invalid input for dependency data"),null;var s=o[Sr]&&o[Sr][lo]?o[Sr][lo]:"GET",h=new tn(t,o.id,o.target,o.name,o.duration,o.success,o.responseCode,s,o.type,o.correlationContext,a,n),v=new Vn(tn.dataType,h);return Ka(t,tn.envelopeType,e,v)}function zl(t,e,r){Wa(t,e);var n={},a={};e[ql]!==Jr.dataType&&(n.baseTypeSource=e[ql]),e[ql]===Jr.dataType?(n=e[zt][Sr]||{},a=e[zt].measurements||{}):e[zt]&&da(e[zt],n,a),da(e.data,n,a),Ne(r)||Xa(n,r);var o=e[zt].name,s=new Jr(t,o,n,a),h=new Vn(Jr.dataType,s);return Ka(t,Jr.envelopeType,e,h)}function Au(t,e,r){Wa(t,e);var n=e[zt].measurements||{},a=e[zt][Sr]||{};da(e.data,a,n),Ne(r)||Xa(a,r);var o=e[zt],s=gr.CreateFromInterface(t,o,a,n),h=new Vn(gr.dataType,s);return Ka(t,gr.envelopeType,e,h)}function Iu(t,e,r){Wa(t,e);var n=e[zt],a=n[Sr]||{},o=n.measurements||{};da(e.data,a,o),Ne(r)||Xa(a,r);var s=new en(t,n.name,n.average,n.sampleCount,n.min,n.max,n.stdDev,a,o),h=new Vn(en.dataType,s);return Ka(t,en.envelopeType,e,h)}function Cu(t,e,r){Wa(t,e);var n="duration",a,o=e[zt];!Ne(o)&&!Ne(o[Sr])&&!Ne(o[Sr][n])?(a=o[Sr][n],delete o[Sr][n]):!Ne(e.data)&&!Ne(e.data[n])&&(a=e.data[n],delete e.data[n]);var s=e[zt],h;((e.ext||{}).trace||{}).traceID&&(h=e.ext.trace.traceID);var v=s.id||h,_=s.name,L=s.uri,J=s[Sr]||{},ne=s.measurements||{};if(Ne(s.refUri)||(J.refUri=s.refUri),Ne(s.pageType)||(J.pageType=s.pageType),Ne(s.isLoggedIn)||(J.isLoggedIn=s.isLoggedIn.toString()),!Ne(s[Sr])){var oe=s[Sr];Rt(oe,function(N,le){J[N]=le})}da(e.data,J,ne),Ne(r)||Xa(J,r);var F=new Nr(t,_,L,a,J,ne,v),_e=new Vn(Nr.dataType,F);return Ka(t,Nr.envelopeType,e,_e)}function Mu(t,e,r){Wa(t,e);var n=e[zt],a=n.name,o=n.uri||n.url,s=n[Sr]||{},h=n.measurements||{};da(e.data,s,h),Ne(r)||Xa(s,r);var v=new Mn(t,a,o,void 0,s,h,n),_=new Vn(Mn.dataType,v);return Ka(t,Mn.envelopeType,e,_)}function Pu(t,e,r){Wa(t,e);var n=e[zt].message,a=e[zt].severityLevel,o=e[zt][Sr]||{},s=e[zt].measurements||{};da(e.data,o,s),Ne(r)||Xa(o,r);var h=new Cn(t,n,a,o,s),v=new Vn(Cn.dataType,h);return Ka(t,Cn.envelopeType,e,v)}var Bu=function(){function t(e){xt(t,this,function(r){r.serialize=function(s){var h=n(s,"root");try{return dr().stringify(h)}catch(v){e.throwInternal(Me.CRITICAL,Ee.CannotSerializeObject,v&&it(v.toString)?v.toString():"Error serializing object",null,!0)}};function n(s,h){var v="__aiCircularRefCheck",_={};if(!s)return e.throwInternal(Me.CRITICAL,Ee.CannotSerializeObject,"cannot serialize object because it is null or undefined",{name:h},!0),_;if(s[v])return e.throwInternal(Me.WARNING,Ee.CircularReferenceDetected,"Circular reference detected while serializing object",{name:h},!0),_;if(!s.aiDataContract){if(h==="measurements")_=o(s,"number",h);else if(h==="properties")_=o(s,"string",h);else if(h==="tags")_=o(s,"string",h);else if(cr(s))_=a(s,h);else{e.throwInternal(Me.WARNING,Ee.CannotSerializeObjectNonSerializable,"Attempting to serialize an object which does not implement ISerializable",{name:h},!0);try{dr().stringify(s),_=s}catch(L){e.throwInternal(Me.CRITICAL,Ee.CannotSerializeObject,L&&it(L.toString)?L.toString():"Error serializing object",null,!0)}}return _}return s[v]=!0,Rt(s.aiDataContract,function(L,J){var ne=it(J)?J()&1:J&1,oe=it(J)?J()&4:J&4,F=J&2,_e=s[L]!==void 0,N=En(s[L])&&s[L]!==null;if(ne&&!_e&&!F)e.throwInternal(Me.CRITICAL,Ee.MissingRequiredFieldSpecification,"Missing required field specification. The field is required but not present on source",{field:L,name:h});else if(!oe){var le=void 0;N?F?le=a(s[L],L):le=n(s[L],L):le=s[L],le!==void 0&&(_[L]=le)}}),delete s[v],_}function a(s,h){var v;if(s)if(!cr(s))e.throwInternal(Me.CRITICAL,Ee.ItemNotInArray,`This field was specified as an array in the contract but the item is not an array.\r
|
|
20
20
|
`,{name:h},!0);else{v=[];for(var _=0;_<s.length;_++){var L=s[_],J=n(L,h+"["+_+"]");v.push(J)}}return v}function o(s,h,v){var _;return s&&(_={},Rt(s,function(L,J){if(h==="string")J===void 0?_[L]="undefined":J===null?_[L]="null":J.toString?_[L]=J.toString():_[L]="invalid field: toString() is not defined.";else if(h==="number")if(J===void 0)_[L]="undefined";else if(J===null)_[L]="null";else{var ne=parseFloat(J);isNaN(ne)?_[L]="NaN":_[L]=ne}else _[L]="invalid field: "+v+" is of unknown type.",e.throwInternal(Me.CRITICAL,_[L],null,!0)})),_}})}return t}();var Av=function(){function t(){var e=Un(),r=nr(),n=!1,a=!0;xt(t,this,function(o){try{if(e&&Tn(e,"online",v)&&(Tn(e,"offline",_),n=!0),r){var s=r.body||r;Wt(s.ononline)||(s.ononline=v,s.onoffline=_,n=!0)}if(n){var h=wr();h&&!Ne(h.onLine)&&(a=h.onLine)}}catch{n=!1}o.isListening=n,o.isOnline=function(){var L=!0,J=wr();return n?L=a:J&&!Ne(J.onLine)&&(L=J.onLine),L},o.isOffline=function(){return!o.isOnline()};function v(){a=!0}function _(){a=!1}})}return t.Offline=new t,t}();var jl=Av.Offline;var Iv=8,Nu=function(){function t(){}return t.prototype.getHashCodeScore=function(e){var r=this.getHashCode(e)/t.INT_MAX_VALUE;return r*100},t.prototype.getHashCode=function(e){if(e==="")return 0;for(;e.length<Iv;)e=e.concat(e);for(var r=5381,n=0;n<e.length;++n)r=(r<<5)+r+e.charCodeAt(n),r=r&r;return Math.abs(r)},t.INT_MAX_VALUE=2147483647,t}();var Du=function(){function t(){var e=this,r=new Nu,n=new Ai;e.getSamplingScore=function(a){var o=0;return a.tags&&a.tags[n.userId]?o=r.getHashCodeScore(a.tags[n.userId]):a.ext&&a.ext.user&&a.ext.user.id?o=r.getHashCodeScore(a.ext.user.id):a.tags&&a.tags[n.operationId]?o=r.getHashCodeScore(a.tags[n.operationId]):a.ext&&a.ext.telemetryTrace&&a.ext.telemetryTrace.traceID?o=r.getHashCodeScore(a.ext.telemetryTrace.traceID):o=Math.random()*100,o}}return t}();var Ou=function(){function t(e,r){this.INT_MAX_VALUE=2147483647;var n=r||Kn(null);(e>100||e<0)&&(n.throwInternal(Me.WARNING,Ee.SampleRateOutOfRange,"Sampling rate is out of range (0..100). Sampling will be disabled, you may be sending too much data which may affect your AI service level.",{samplingRate:e},!0),e=100),this.sampleRate=e,this.samplingScoreGenerator=new Du}return t.prototype.isSampledIn=function(e){var r=this.sampleRate,n=!1;return r==null||r>=100||e.baseType===en.dataType?!0:(n=this.samplingScoreGenerator.getSamplingScore(e)<r,n)},t}();var Zn,Cv=65e3;function Fs(t){try{return t.responseText}catch{}return null}function Fu(){return{endpointUrl:function(){return"https://dc.services.visualstudio.com/v2/track"},emitLineDelimitedJson:function(){return!1},maxBatchInterval:function(){return 15e3},maxBatchSizeInBytes:function(){return 102400},disableTelemetry:function(){return!1},enableSessionStorageBuffer:function(){return!0},isRetryDisabled:function(){return!1},isBeaconApiDisabled:function(){return!0},disableXhr:function(){return!1},onunloadDisableFetch:function(){return!1},onunloadDisableBeacon:function(){return!1},instrumentationKey:function(){},namePrefix:function(){},samplingPercentage:function(){return 100},customHeaders:function(){},convertUndefined:function(){},eventsLimitInMem:function(){return 1e4}}}var Mv=(Zn={},Zn[Jr.dataType]=zl,Zn[Cn.dataType]=Pu,Zn[Nr.dataType]=Cu,Zn[Mn.dataType]=Mu,Zn[gr.dataType]=Au,Zn[en.dataType]=Iu,Zn[tn.dataType]=Ru,Zn),Gl=function(t){ut(e,t);function e(){var r=t.call(this)||this;r.priority=1001,r.identifier=mo;var n,a,o,s=!1,h,v,_,L={},J=0,ne,oe;return r._senderConfig=Fu(),xt(e,r,function(F,_e){function N(){Tr("Method not implemented.")}F.pause=function(){xr(),s=!0},F.resume=function(){s&&(s=!1,a=null,F._buffer.size()>F._senderConfig.maxBatchSizeInBytes()&&F.triggerSend(!0,null,10),_r())},F.flush=function(){if(!s){xr();try{F.triggerSend(!0,null,1)}catch(ie){F.diagLog().throwInternal(Me.CRITICAL,Ee.FlushFailed,"flush failed, telemetry will not be collected: "+_t(ie),{exception:at(ie)})}}},F.onunloadFlush=function(){if(!s)if((F._senderConfig.onunloadDisableBeacon()===!1||F._senderConfig.isBeaconApiDisabled()===!1)&&Oa())try{F.triggerSend(!0,tt,2)}catch(ie){F.diagLog().throwInternal(Me.CRITICAL,Ee.FailedToSendQueuedTelemetry,"failed to flush with beacon sender on page unload, telemetry will not be collected: "+_t(ie),{exception:at(ie)})}else F.flush()},F.teardown=N,F.addHeader=function(ie,ke){L[ie]=ke},F.initialize=function(ie,ke,Ye,ae){_e.initialize(ie,ke,Ye,ae);var be=F._getTelCtx(),Ae=F.identifier;v=new Bu(ke.logger),n=0,a=null,o=0,F._sender=null,_=0;var Ie=F.diagLog(),Pe=Fu();Rt(Pe,function(ot,vt){F._senderConfig[ot]=function(){return be.getConfig(Ae,ot,vt())}}),F._buffer=F._senderConfig.enableSessionStorageBuffer()&&za()?new Tu(Ie,F._senderConfig):new Eu(Ie,F._senderConfig),F._sample=new Ou(F._senderConfig.samplingPercentage(),Ie),R(ie)||Ie.throwInternal(Me.CRITICAL,Ee.InvalidInstrumentationKey,"Invalid Instrumentation key "+ie.instrumentationKey),!ja(F._senderConfig.endpointUrl())&&F._senderConfig.customHeaders()&&F._senderConfig.customHeaders().length>0&&et(F._senderConfig.customHeaders(),function(ot){r.addHeader(ot.header,ot.value)});var We=F._senderConfig,Le=null;!We.disableXhr()&&hs()?Le=Ot:!We.disableXhr()&&Fa()&&(Le=st),!Le&&ms()&&(Le=Xt),ne=Le||st,!We.isBeaconApiDisabled()&&Oa()&&(Le=pt),F._sender=Le||st,!We.onunloadDisableFetch()&&ms(!0)?oe=yt:Oa()?oe=pt:!We.disableXhr()&&hs()?oe=Ot:!We.disableXhr()&&Fa()?oe=st:oe=ne},F.processTelemetry=function(ie,ke){ke=F._getTelCtx(ke);try{if(F._senderConfig.disableTelemetry())return;if(!ie){ke.diagLog().throwInternal(Me.CRITICAL,Ee.CannotSendEmptyTelemetry,"Cannot send empty telemetry");return}if(ie.baseData&&!ie.baseType){ke.diagLog().throwInternal(Me.CRITICAL,Ee.InvalidEvent,"Cannot send telemetry without baseData and baseType");return}if(ie.baseType||(ie.baseType="EventData"),!F._sender){ke.diagLog().throwInternal(Me.CRITICAL,Ee.SenderNotInitialized,"Sender was not initialized");return}if(le(ie))ie[Si]=F._sample.sampleRate;else{ke.diagLog().throwInternal(Me.WARNING,Ee.TelemetrySampledAndNotSent,"Telemetry item was sampled out and not sent",{SampleRate:F._sample.sampleRate});return}var Ye=F._senderConfig.convertUndefined()||void 0,ae=ie.iKey||F._senderConfig.instrumentationKey(),be=e.constructEnvelope(ie,ae,ke.diagLog(),Ye);if(!be){ke.diagLog().throwInternal(Me.CRITICAL,Ee.CreateEnvelopeError,"Unable to create an AppInsights envelope");return}var Ae=!1;if(ie.tags&&ie.tags[xi]&&(et(ie.tags[xi],function(Le){try{Le&&Le(be)===!1&&(Ae=!0,ke.diagLog().warnToConsole("Telemetry processor check returns false"))}catch(ot){ke.diagLog().throwInternal(Me.CRITICAL,Ee.TelemetryInitializerFailed,"One of telemetry initializers failed, telemetry item will not be sent: "+_t(ot),{exception:at(ot)},!0)}}),delete ie.tags[xi]),Ae)return;var Ie=v.serialize(be),Pe=F._buffer,We=Pe.size();We+Ie.length>F._senderConfig.maxBatchSizeInBytes()&&F.triggerSend(!0,null,10),Pe.enqueue(Ie),_r()}catch(Le){ke.diagLog().throwInternal(Me.WARNING,Ee.FailedAddingTelemetryToBuffer,"Failed adding telemetry to the sender's buffer, some telemetry will be lost: "+_t(Le),{exception:at(Le)})}F.processNext(ie,ke)},F._xhrReadyStateChange=function(ie,ke,Ye){ie.readyState===4&&ue(ie.status,ke,ie.responseURL,Ye,St(ie),Fs(ie)||ie.response)},F.triggerSend=function(ie,ke,Ye){if(ie===void 0&&(ie=!0),!s)try{var ae=F._buffer;if(F._senderConfig.disableTelemetry())ae.clear();else{if(ae.count()>0){var be=ae.getItems();Ze(Ye||0,ie),ke?ke.call(r,be,ie):F._sender(be,ie)}o=+new Date}xr()}catch(Ie){var Ae=vi();(!Ae||Ae>9)&&F.diagLog().throwInternal(Me.CRITICAL,Ee.TransmissionFailed,"Telemetry transmission failed, some telemetry will be lost: "+_t(Ie),{exception:at(Ie)})}},F._onError=function(ie,ke,Ye){F.diagLog().throwInternal(Me.WARNING,Ee.OnError,"Failed to send telemetry.",{message:ke}),F._buffer.clearSent(ie)},F._onPartialSuccess=function(ie,ke){for(var Ye=[],ae=[],be=ke.errors.reverse(),Ae=0,Ie=be;Ae<Ie.length;Ae++){var Pe=Ie[Ae],We=ie.splice(Pe.index,1)[0];Yt(Pe.statusCode)?ae.push(We):Ye.push(We)}ie.length>0&&F._onSuccess(ie,ke.itemsAccepted),Ye.length>0&&F._onError(Ye,St(null,["partial success",ke.itemsAccepted,"of",ke.itemsReceived].join(" "))),ae.length>0&&(an(ae),F.diagLog().throwInternal(Me.WARNING,Ee.TransmissionFailed,"Partial success. Delivered: "+ie.length+", Failed: "+Ye.length+". Will retry to send "+ae.length+" our of "+ke.itemsReceived+" items"))},F._onSuccess=function(ie,ke){F._buffer.clearSent(ie)},F._xdrOnLoad=function(ie,ke){var Ye=Fs(ie);if(ie&&(Ye+""=="200"||Ye===""))n=0,F._onSuccess(ke,0);else{var ae=or(Ye);ae&&ae.itemsReceived&&ae.itemsReceived>ae.itemsAccepted&&!F._senderConfig.isRetryDisabled()?F._onPartialSuccess(ke,ae):F._onError(ke,Nt(ie))}};function le(ie){return F._sample.isSampledIn(ie)}function ue(ie,ke,Ye,ae,be,Ae){var Ie=null;if(F._appId||(Ie=or(Ae),Ie&&Ie.appId&&(F._appId=Ie.appId)),(ie<200||ie>=300)&&ie!==0){if((ie===301||ie===307||ie===308)&&!Fe(Ye)){F._onError(ke,be);return}!F._senderConfig.isRetryDisabled()&&Yt(ie)?(an(ke),F.diagLog().throwInternal(Me.WARNING,Ee.TransmissionFailed,". Response code "+ie+". Will retry to send "+ke.length+" items.")):F._onError(ke,be)}else if(jl.isOffline()){if(!F._senderConfig.isRetryDisabled()){var Pe=10;an(ke,Pe),F.diagLog().throwInternal(Me.WARNING,Ee.TransmissionFailed,". Offline - Response Code: ".concat(ie,". Offline status: ").concat(jl.isOffline(),". Will retry to send ").concat(ke.length," items."))}}else Fe(Ye),ie===206?(Ie||(Ie=or(Ae)),Ie&&!F._senderConfig.isRetryDisabled()?F._onPartialSuccess(ke,Ie):F._onError(ke,be)):(n=0,F._onSuccess(ke,ae))}function Fe(ie){return _>=10?!1:!Ne(ie)&&ie!==""&&ie!==F._senderConfig.endpointUrl()?(F._senderConfig.endpointUrl=function(){return ie},++_,!0):!1}function tt(ie,ke){oe?oe(ie,!1):pt(ie,ke)}function ct(ie){var ke=wr(),Ye=F._buffer,ae=F._senderConfig.endpointUrl(),be=F._buffer.batchPayloads(ie),Ae=new Blob([be],{type:"text/plain;charset=UTF-8"}),Ie=ke.sendBeacon(ae,Ae);return Ie&&(Ye.markAsSent(ie),F._onSuccess(ie,ie.length)),Ie}function pt(ie,ke){if(cr(ie)&&ie.length>0&&!ct(ie)){for(var Ye=[],ae=0;ae<ie.length;ae++){var be=ie[ae];ct([be])||Ye.push(be)}Ye.length>0&&(ne(Ye,!0),F.diagLog().throwInternal(Me.WARNING,Ee.TransmissionFailed,". Failed to send telemetry with Beacon API, retried with normal sender."))}}function st(ie,ke){var Ye=new XMLHttpRequest,ae=F._senderConfig.endpointUrl();try{Ye[In]=!0}catch{}Ye.open("POST",ae,ke),Ye.setRequestHeader("Content-type","application/json"),ja(ae)&&Ye.setRequestHeader(Ct.sdkContextHeader,Ct.sdkContextHeaderAppIdRequest),et(un(L),function(Ae){Ye.setRequestHeader(Ae,L[Ae])}),Ye.onreadystatechange=function(){return F._xhrReadyStateChange(Ye,ie,ie.length)},Ye.onerror=function(Ae){return F._onError(ie,St(Ye),Ae)};var be=F._buffer.batchPayloads(ie);Ye.send(be),F._buffer.markAsSent(ie)}function yt(ie,ke){if(cr(ie)){for(var Ye=ie.length,ae=0;ae<ie.length;ae++)Ye+=ie[ae].length;J+Ye<=Cv?er(ie,!1):Oa()?pt(ie,ke):(ne&&ne(ie,!0),F.diagLog().throwInternal(Me.WARNING,Ee.TransmissionFailed,". Failed to send telemetry with Beacon API, retried with xhrSender."))}}function Xt(ie,ke){er(ie,!0)}function er(ie,ke){var Ye,ae=F._senderConfig.endpointUrl(),be=F._buffer.batchPayloads(ie),Ae=new Blob([be],{type:"application/json"}),Ie=new Headers,Pe=be.length,We=!1,Le=!1;ja(ae)&&Ie.append(Ct.sdkContextHeader,Ct.sdkContextHeaderAppIdRequest),et(un(L),function(ye){Ie.append(ye,L[ye])});var ot=(Ye={method:"POST",headers:Ie,body:Ae},Ye[In]=!0,Ye);ke||(ot.keepalive=!0,We=!0,J+=Pe);var vt=new Request(ae,ot);try{vt[In]=!0}catch{}F._buffer.markAsSent(ie);try{fetch(vt).then(function(ye){ke||(J-=Pe,Pe=0),Le||(Le=!0,ye.ok?ye.text().then(function(br){ue(ye.status,ie,ye.url,ie.length,ye.statusText,br)}):F._onError(ie,ye.statusText))}).catch(function(ye){ke||(J-=Pe,Pe=0),Le||(Le=!0,F._onError(ie,ye.message))})}catch(ye){Le||F._onError(ie,at(ye))}We&&!Le&&(Le=!0,F._onSuccess(ie,ie.length))}function or(ie){try{if(ie&&ie!==""){var ke=dr().parse(ie);if(ke&&ke.itemsReceived&&ke.itemsReceived>=ke.itemsAccepted&&ke.itemsReceived-ke.itemsAccepted===ke.errors.length)return ke}}catch(Ye){F.diagLog().throwInternal(Me.CRITICAL,Ee.InvalidBackendResponse,"Cannot parse the response. "+_t(Ye),{response:ie})}return null}function an(ie,ke){if(ke===void 0&&(ke=1),!(!ie||ie.length===0)){var Ye=F._buffer;Ye.clearSent(ie),n++;for(var ae=0,be=ie;ae<be.length;ae++){var Ae=be[ae];Ye.enqueue(Ae)}Rr(ke),_r()}}function Rr(ie){var ke=10,Ye;if(n<=1)Ye=ke;else{var ae=(Math.pow(2,n)-1)/2,be=Math.floor(Math.random()*ae*ke)+1;be=ie*be,Ye=Math.max(Math.min(be,3600),ke)}var Ae=ur()+Ye*1e3;a=Ae}function _r(){if(!h&&!s){var ie=a?Math.max(0,a-ur()):0,ke=Math.max(F._senderConfig.maxBatchInterval(),ie);h=setTimeout(function(){h=null,F.triggerSend(!0,null,1)},ke)}}function xr(){clearTimeout(h),h=null,a=null}function Yt(ie){return ie===408||ie===429||ie===500||ie===503}function St(ie,ke){return ie?"XMLHttpRequest,Status:"+ie.status+",Response:"+Fs(ie)||ie.response||"":ke}function Ot(ie,ke){var Ye=F._buffer,ae=Un(),be=new XDomainRequest;be.onload=function(){return F._xdrOnLoad(be,ie)},be.onerror=function(We){return F._onError(ie,Nt(be),We)};var Ae=ae&&ae.location&&ae.location.protocol||"";if(F._senderConfig.endpointUrl().lastIndexOf(Ae,0)!==0){F.diagLog().throwInternal(Me.WARNING,Ee.TransmissionFailed,". Cannot send XDomain request. The endpoint URL protocol doesn't match the hosting page protocol."),Ye.clear();return}var Ie=F._senderConfig.endpointUrl().replace(/^(https?:)/,"");be.open("POST",Ie);var Pe=Ye.batchPayloads(ie);be.send(Pe),Ye.markAsSent(ie)}function Nt(ie,ke){return ie?"XDomainRequest,Response:"+Fs(ie)||"":ke}function It(){var ie="getNotifyMgr";return F.core[ie]?F.core[ie]():F.core._notificationManager}function Ze(ie,ke){var Ye=It();if(Ye&&Ye.eventsSendRequest)try{Ye.eventsSendRequest(ie,ke)}catch(ae){F.diagLog().throwInternal(Me.CRITICAL,Ee.NotificationException,"send request notification failed: "+_t(ae),{exception:at(ae)})}}function R(ie){var ke=Ne(ie.disableInstrumentationKeyValidation)?!1:ie.disableInstrumentationKeyValidation;if(ke)return!0;var Ye="^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",ae=new RegExp(Ye);return ae.test(ie.instrumentationKey)}}),r}return e.constructEnvelope=function(r,n,a,o){var s;n!==r.iKey&&!Ne(n)?s=Zt(Zt({},r),{iKey:n}):s=r;var h=Mv[s.baseType]||zl;return h(a,s,o)},e}(Rn);var Pv="ai_session",Xl=function(){function t(){}return t}();var ku=function(){function t(e,r){var n=this,a,o,s=Kn(r),h=La(r);xt(t,n,function(v){e||(e={}),it(e.sessionExpirationMs)||(e.sessionExpirationMs=function(){return t.acquisitionSpan}),it(e.sessionRenewalMs)||(e.sessionRenewalMs=function(){return t.renewalSpan}),v.config=e;var _=v.config.sessionCookiePostfix&&v.config.sessionCookiePostfix()?v.config.sessionCookiePostfix():v.config.namePrefix&&v.config.namePrefix()?v.config.namePrefix():"";a=function(){return Pv+_},v.automaticSession=new Xl,v.update=function(){var _e=ur(),N=!1,le=v.automaticSession;le.id||(N=!L(le,_e));var ue=v.config.sessionExpirationMs();if(!N&&ue>0){var Fe=v.config.sessionRenewalMs(),tt=_e-le.acquisitionDate,ct=_e-le.renewalDate;N=tt<0||ct<0,N=N||tt>ue,N=N||ct>Fe}N?ne(_e):(!o||_e-o>t.cookieUpdateInterval)&&oe(le,_e)},v.backup=function(){var _e=v.automaticSession;F(_e.id,_e.acquisitionDate,_e.renewalDate)};function L(_e,N){var le=!1,ue=h.get(a());if(ue&&it(ue.split))le=J(_e,ue);else{var Fe=wl(s,a());Fe&&(le=J(_e,Fe))}return le||!!_e.id}function J(_e,N){var le=!1,ue=", session will be reset",Fe=N.split("|");if(Fe.length>=2)try{var tt=+Fe[1]||0,ct=+Fe[2]||0;isNaN(tt)||tt<=0?s.throwInternal(Me.WARNING,Ee.SessionRenewalDateIsZero,"AI session acquisition date is 0"+ue):isNaN(ct)||ct<=0?s.throwInternal(Me.WARNING,Ee.SessionRenewalDateIsZero,"AI session renewal date is 0"+ue):Fe[0]&&(_e.id=Fe[0],_e.acquisitionDate=tt,_e.renewalDate=ct,le=!0)}catch(pt){s.throwInternal(Me.CRITICAL,Ee.ErrorParsingAISessionCookie,"Error parsing ai_session value ["+(N||"")+"]"+ue+" - "+_t(pt),{exception:at(pt)})}return le}function ne(_e){var N=v.config||{},le=(N.getNewId?N.getNewId():null)||pi;v.automaticSession.id=le(N.idLength?N.idLength():22),v.automaticSession.acquisitionDate=_e,oe(v.automaticSession,_e),As()||s.throwInternal(Me.WARNING,Ee.BrowserDoesNotSupportLocalStorage,"Browser does not support local storage. Session durations will be inaccurate.")}function oe(_e,N){var le=_e.acquisitionDate;_e.renewalDate=N;var ue=v.config,Fe=ue.sessionRenewalMs(),tt=le+ue.sessionExpirationMs()-N,ct=[_e.id,le,N],pt=0;tt<Fe?pt=tt/1e3:pt=Fe/1e3;var st=ue.cookieDomain?ue.cookieDomain():null;h.set(a(),ct.join("|"),ue.sessionExpirationMs()>0?pt:null,st),o=N}function F(_e,N,le){Rl(s,a(),[_e,N,le].join("|"))}})}return t.acquisitionSpan=864e5,t.renewalSpan=18e5,t.cookieUpdateInterval=6e4,t}();var Lu=function(){function t(){}return t}();var Uu=function(){function t(){this.id="browser",this.deviceClass="Browser"}return t}();var Bv="2.7.4",Hu=function(){function t(e){this.sdkVersion=(e.sdkExtension&&e.sdkExtension()?e.sdkExtension()+"_":"")+"javascript:"+Bv}return t}();function Vu(t){return!(typeof t!="string"||!t||t.match(/,|;|=| |\|/))}var qu=function(){function t(e,r){this.isNewUser=!1,this.isUserCookieSet=!1;var n=Kn(r),a=La(r),o;xt(t,this,function(s){s.config=e;var h=s.config.userCookiePostfix&&s.config.userCookiePostfix()?s.config.userCookiePostfix():"";o=function(){return t.userCookieName+h};var v=a.get(o());if(v){s.isNewUser=!1;var _=v.split(t.cookieSeparator);_.length>0&&(s.id=_[0],s.isUserCookieSet=!!s.id)}function L(){var le=e||{},ue=(le.getNewId?le.getNewId():null)||pi,Fe=ue(le.idLength?e.idLength():22);return Fe}function J(le){var ue=Mr(new Date);s.accountAcquisitionDate=ue,s.isNewUser=!0;var Fe=[le,ue];return Fe}function ne(le){var ue=31536e3;s.isUserCookieSet=a.set(o(),le,ue)}if(!s.id){s.id=L();var oe=J(s.id);ne(oe.join(t.cookieSeparator));var F=e.namePrefix&&e.namePrefix()?e.namePrefix()+"ai_session":"ai_session";Al(n,F)}s.accountId=e.accountId?e.accountId():void 0;var _e=a.get(t.authUserCookieName);if(_e){_e=decodeURI(_e);var N=_e.split(t.cookieSeparator);N[0]&&(s.authenticatedId=N[0]),N.length>1&&N[1]&&(s.accountId=N[1])}s.setAuthenticatedUserContext=function(le,ue,Fe){Fe===void 0&&(Fe=!1);var tt=!Vu(le)||ue&&!Vu(ue);if(tt){n.throwInternal(Me.WARNING,Ee.SetAuthContextFailedAccountName,"Setting auth user context failed. User auth/account id should be of type string, and not contain commas, semi-colons, equal signs, spaces, or vertical-bars.",!0);return}s.authenticatedId=le;var ct=s.authenticatedId;ue&&(s.accountId=ue,ct=[s.authenticatedId,s.accountId].join(t.cookieSeparator)),Fe&&a.set(t.authUserCookieName,encodeURI(ct))},s.clearAuthenticatedUserContext=function(){s.authenticatedId=null,s.accountId=null,a.del(t.authUserCookieName)},s.update=function(le){if(s.id!==le||!s.isUserCookieSet){var ue=le||L(),Fe=J(ue);ne(Fe.join(t.cookieSeparator))}}})}return t.cookieSeparator="|",t.userCookieName="ai_user",t.authUserCookieName="ai_authUser",t}();var zu=function(){function t(){}return t}();var ju=function(){function t(e,r,n,a){var o=this;o.traceID=e||qr(),o.parentID=r,o.name=n;var s=$r();!n&&s&&s.pathname&&(o.name=s.pathname),o.name=Mt(a,o.name)}return t}();var ks="ext",Ls="tags";function Ii(t,e){t&&t[e]&&un(t[e]).length===0&&delete t[e]}var Gu=function(){function t(e,r){var n=this,a=e.logger;this.appId=function(){return null},this.getSessionId=function(){return null},xt(t,this,function(o){o.application=new Lu,o.internal=new Hu(r),Na()&&(o.sessionManager=new ku(r,e),o.device=new Uu,o.location=new zu,o.user=new qu(r,e),o.telemetryTrace=new ju(void 0,void 0,void 0,a),o.session=new Xl),o.getSessionId=function(){var s=o.session,h=null;if(s&&Je(s.id))h=s.id;else{var v=(o.sessionManager||{}).automaticSession;h=v&&Je(v.id)?v.id:null}return h},o.applySessionContext=function(s,h){ht(fr(s.ext,Dr.AppExt),"sesId",o.getSessionId(),Je)},o.applyOperatingSystemContxt=function(s,h){ht(s.ext,Dr.OSExt,o.os)},o.applyApplicationContext=function(s,h){var v=o.application;if(v){var _=fr(s,Ls);ht(_,Pt.applicationVersion,v.ver,Je),ht(_,Pt.applicationBuild,v.build,Je)}},o.applyDeviceContext=function(s,h){var v=o.device;if(v){var _=fr(fr(s,ks),Dr.DeviceExt);ht(_,"localId",v.id,Je),ht(_,"ip",v.ip,Je),ht(_,"model",v.model,Je),ht(_,"deviceClass",v.deviceClass,Je)}},o.applyInternalContext=function(s,h){var v=o.internal;if(v){var _=fr(s,Ls);ht(_,Pt.internalAgentVersion,v.agentVersion,Je),ht(_,Pt.internalSdkVersion,v.sdkVersion,Je),(s.baseType===Xn.dataType||s.baseType===Nr.dataType)&&(ht(_,Pt.internalSnippet,v.snippetVer,Je),ht(_,Pt.internalSdkSrc,v.sdkSrc,Je))}},o.applyLocationContext=function(s,h){var v=n.location;v&&ht(fr(s,Ls,[]),Pt.locationIp,v.ip,Je)},o.applyOperationContext=function(s,h){var v=o.telemetryTrace;if(v){var _=fr(fr(s,ks),Dr.TraceExt,{traceID:void 0,parentID:void 0});ht(_,"traceID",v.traceID,Je),ht(_,"name",v.name,Je),ht(_,"parentID",v.parentID,Je)}},o.applyWebContext=function(s,h){var v=n.web;v&&ht(fr(s,ks),Dr.WebExt,v)},o.applyUserContext=function(s,h){var v=o.user;if(v){var _=fr(s,Ls,[]);ht(_,Pt.userAccountId,v.accountId,Je);var L=fr(fr(s,ks),Dr.UserExt);ht(L,"id",v.id,Je),ht(L,"authId",v.authenticatedId,Je)}},o.cleanUp=function(s,h){var v=s.ext;v&&(Ii(v,Dr.DeviceExt),Ii(v,Dr.UserExt),Ii(v,Dr.WebExt),Ii(v,Dr.OSExt),Ii(v,Dr.AppExt),Ii(v,Dr.TraceExt))}})}return t}();var Nv=function(t){ut(e,t);function e(){var r=t.call(this)||this;r.priority=110,r.identifier=fa;var n,a;return xt(e,r,function(o,s){o.initialize=function(v,_,L,J){s.initialize(v,_,L,J);var ne=o._getTelCtx(),oe=o.identifier,F=e.getDefaultConfig();a=a||{},Rt(F,function(_e,N){a[_e]=function(){return ne.getConfig(oe,_e,N())}}),o.context=new Gu(_,a),n=bl(L,mo),o.context.appId=function(){return n?n._appId:null},o._extConfig=a},o.processTelemetry=function(v,_){if(!Ne(v)){_=o._getTelCtx(_),v.name===Nr.envelopeType&&_.diagLog().resetInternalMessageCount();var L=o.context||{};L.session&&typeof o.context.session.id!="string"&&L.sessionManager&&L.sessionManager.update();var J=L.user;if(J&&!J.isUserCookieSet&&J.update(L.user.id),h(v,_),J&&J.isNewUser){J.isNewUser=!1;var ne=new Xn(Ee.SendBrowserInfoOnUserInit,(wr()||{}).userAgent||"");_.diagLog().logInternalMessage(Me.CRITICAL,ne)}o.processNext(v,_)}};function h(v,_){fr(v,"tags",[]),fr(v,"ext",{});var L=o.context;L.applySessionContext(v,_),L.applyApplicationContext(v,_),L.applyDeviceContext(v,_),L.applyOperationContext(v,_),L.applyUserContext(v,_),L.applyOperatingSystemContxt(v,_),L.applyWebContext(v,_),L.applyLocationContext(v,_),L.applyInternalContext(v,_),L.cleanUp(v,_)}}),r}return e.getDefaultConfig=function(){var r={instrumentationKey:function(){},accountId:function(){return null},sessionRenewalMs:function(){return 18e5},samplingPercentage:function(){return 100},sessionExpirationMs:function(){return 864e5},cookieDomain:function(){return null},sdkExtension:function(){return null},isBrowserLinkTrackingEnabled:function(){return!1},appId:function(){return null},getSessionId:function(){return null},namePrefix:function(){},sessionCookiePostfix:function(){},userCookiePostfix:function(){},idLength:function(){return 22},getNewId:function(){return null}};return r},e}(Rn),Kl=Nv;var rn="properties";function Xu(t,e,r){var n=0,a=t[e],o=t[r];return a&&o&&(n=vr(a,o)),n}function Ya(t,e,r,n,a){var o=0,s=Xu(r,n,a);return s&&(o=va(t,e,Qr(s))),o}function va(t,e,r){var n="ajaxPerf",a=0;if(t&&e&&r){var o=t[n]=t[n]||{};o[e]=r,a=1}return a}function Dv(t,e){var r=t.perfTiming,n=e[rn]||{},a=0,o="name",s="Start",h="End",v="domainLookup",_="connect",L="redirect",J="request",ne="response",oe="duration",F="startTime",_e=v+s,N=v+h,le=_+s,ue=_+h,Fe=J+s,tt=J+h,ct=ne+s,pt=ne+h,st=L+s,yt=L=h,Xt="transferSize",er="encodedBodySize",or="decodedBodySize",an="serverTiming";if(r){a|=Ya(n,L,r,st,yt),a|=Ya(n,v,r,_e,N),a|=Ya(n,_,r,le,ue),a|=Ya(n,J,r,Fe,tt),a|=Ya(n,ne,r,ct,pt),a|=Ya(n,"networkConnect",r,F,ue),a|=Ya(n,"sentRequest",r,Fe,pt);var Rr=r[oe];Rr||(Rr=Xu(r,F,pt)||0),a|=va(n,oe,Rr),a|=va(n,"perfTotal",Rr);var _r=r[an];if(_r){var xr={};et(_r,function(Yt,St){var Ot=D0(Yt[o]||""+St),Nt=xr[Ot]||{};Rt(Yt,function(It,Ze){(It!==o&&Je(Ze)||ui(Ze))&&(Nt[It]&&(Ze=Nt[It]+";"+Ze),(Ze||!Je(Ze))&&(Nt[It]=Ze))}),xr[Ot]=Nt}),a|=va(n,an,xr)}a|=va(n,Xt,r[Xt]),a|=va(n,er,r[er]),a|=va(n,or,r[or])}else t.perfMark&&(a|=va(n,"missing",t.perfAttempts));a&&(e[rn]=n)}var Ov=function(){function t(){var e=this;e.openDone=!1,e.setRequestHeaderDone=!1,e.sendDone=!1,e.abortDone=!1,e.stateChangeAttached=!1}return t}();var Wl=function(){function t(e,r,n){var a=this,o=n,s="responseText";a.perfMark=null,a.completed=!1,a.requestHeadersSize=null,a.requestHeaders=null,a.responseReceivingDuration=null,a.callbackDuration=null,a.ajaxTotalDuration=null,a.aborted=0,a.pageUrl=null,a.requestUrl=null,a.requestSize=0,a.method=null,a.status=null,a.requestSentTime=null,a.responseStartedTime=null,a.responseFinishedTime=null,a.callbackFinishedTime=null,a.endTime=null,a.xhrMonitoringState=new Ov,a.clientFailure=0,a.traceID=e,a.spanID=r,xt(t,a,function(h){h.getAbsoluteUrl=function(){return h.requestUrl?Is(h.requestUrl):null},h.getPathName=function(){return h.requestUrl?Yn(o,Cs(h.method,h.requestUrl)):null},h.CreateTrackItem=function(v,_,L){var J;if(h.ajaxTotalDuration=Math.round(vr(h.requestSentTime,h.responseFinishedTime)*1e3)/1e3,h.ajaxTotalDuration<0)return null;var ne=(J={id:"|"+h.traceID+"."+h.spanID,target:h.getAbsoluteUrl(),name:h.getPathName(),type:v,startTime:null,duration:h.ajaxTotalDuration,success:+h.status>=200&&+h.status<400,responseCode:+h.status,method:h.method},J[rn]={HttpMethod:h.method},J);if(h.requestSentTime&&(ne.startTime=new Date,ne.startTime.setTime(h.requestSentTime)),Dv(h,ne),_&&un(h.requestHeaders).length>0&&(ne[rn]=ne[rn]||{},ne[rn].requestHeaders=h.requestHeaders),L){var oe=L();if(oe){var F=oe.correlationContext;if(F&&(ne.correlationContext=F),oe.headerMap&&un(oe.headerMap).length>0&&(ne[rn]=ne[rn]||{},ne[rn].responseHeaders=oe.headerMap),h.errorStatusText&&h.status>=400){var _e=oe.type;ne[rn]=ne[rn]||{},(_e===""||_e==="text")&&(ne[rn][s]=oe[s]?oe.statusText+" - "+oe[s]:oe.statusText),_e==="json"&&(ne[rn][s]=oe.response?oe.statusText+" - "+JSON.stringify(oe.response):oe.statusText)}}}return ne}})}return t}();var Yl=function(){function t(e,r){var n=this;n.traceFlag=t.DEFAULT_TRACE_FLAG,n.version=t.DEFAULT_VERSION,e&&t.isValidTraceId(e)?n.traceId=e:n.traceId=qr(),r&&t.isValidSpanId(r)?n.spanId=r:n.spanId=qr().substr(0,16)}return t.isValidTraceId=function(e){return e.match(/^[0-9a-f]{32}$/)&&e!=="00000000000000000000000000000000"},t.isValidSpanId=function(e){return e.match(/^[0-9a-f]{16}$/)&&e!=="0000000000000000"},t.prototype.toString=function(){var e=this;return"".concat(e.version,"-").concat(e.traceId,"-").concat(e.spanId,"-").concat(e.traceFlag)},t.DEFAULT_TRACE_FLAG="01",t.DEFAULT_VERSION="00",t}();var Ku="ai.ajxmn.",po="diagLog",nn="ajaxData",Yu="throwInternal",So="fetch",Wu=0;function Fv(){var t=cn();return!t||Ne(t.Request)||Ne(t.Request[Gt])||Ne(t[So])?null:t[So]}function kv(t){var e=!1;if(Fa()){var r=XMLHttpRequest[Gt];e=!Ne(r)&&!Ne(r.open)&&!Ne(r.send)&&!Ne(r.abort)}var n=vi();if(n&&n<9&&(e=!1),e)try{var a=new XMLHttpRequest;a[nn]={};var o=XMLHttpRequest[Gt].open;XMLHttpRequest[Gt].open=o}catch(s){e=!1,xo(t,Ee.FailedMonitorAjaxOpen,"Failed to enable XMLHttpRequest monitoring, extension is not supported",{exception:at(s)})}return e}function Us(t){var e="";try{!Ne(t)&&!Ne(t[nn])&&!Ne(t[nn].requestUrl)&&(e+="(url: '"+t[nn].requestUrl+"')")}catch{}return e}function xo(t,e,r,n,a){t[po]()[Yu](Me.CRITICAL,e,r,n,a)}function Ci(t,e,r,n,a){t[po]()[Yu](Me.WARNING,e,r,n,a)}function _o(t,e,r){return function(n){xo(t,e,r,{ajaxDiagnosticsMessage:Us(n.inst),exception:at(n.err)})}}function Mi(t,e){return t&&e?t.indexOf(e):-1}var $l=function(t){ut(e,t);function e(){var r=t.call(this)||this;r.identifier=e.identifier,r.priority=120;var n="trackDependencyDataInternal",a=$r(),o=!1,s=!1,h=a&&a.host&&a.host.toLowerCase(),v=e.getEmptyConfig(),_=!1,L=!1,J=0,ne,oe,F,_e,N=!1,le=0,ue=!1,Fe=[],tt={},ct,pt;return xt(e,r,function(st,yt){st.initialize=function(ae,be,Ae,Ie){if(!st.isInitialized()){yt.initialize(ae,be,Ae,Ie);var Pe=st._getTelCtx(),We=e.getDefaultConfig();Rt(We,function(br,Ar){v[br]=Pe.getConfig(e.identifier,br,Ar)});var Le=v.distributedTracingMode;if(_=v.enableRequestHeaderTracking,L=v.enableAjaxErrorStatusText,N=v.enableAjaxPerfTracking,le=v.maxAjaxCallsPerView,ue=v.enableResponseHeaderTracking,ct=v.excludeRequestFromAutoTrackingPatterns,pt=v.addRequestContext,F=Le===dn.AI||Le===dn.AI_AND_W3C,oe=Le===dn.AI_AND_W3C||Le===dn.W3C,N){var ot=ae.instrumentationKey||"unkwn";ot.length>5?_e=Ku+ot.substring(ot.length-5)+".":_e=Ku+ot+"."}if(v.disableAjaxTracking===!1&&an(),er(),Ae.length>0&&Ae){for(var vt=void 0,ye=0;!vt&&ye<Ae.length;)Ae[ye]&&Ae[ye].identifier===fa&&(vt=Ae[ye]),ye++;vt&&(ne=vt.context)}}},st.teardown=function(){et(Fe,function(ae){ae.rm()}),Fe=[],o=!1,s=!1,st.setInitialized(!1)},st.trackDependencyData=function(ae,be){st[n](ae,be)},st.includeCorrelationHeaders=function(ae,be,Ae,Ie){var Pe=st._currentWindowHost||h;if(be){if($n.canIncludeCorrelationHeader(v,ae.getAbsoluteUrl(),Pe)){if(Ae||(Ae={}),Ae.headers=new Headers(Ae.headers||(be instanceof Request?be.headers||{}:{})),F){var We="|"+ae.traceID+"."+ae.spanID;Ae.headers.set(Ct.requestIdHeader,We),_&&(ae.requestHeaders[Ct.requestIdHeader]=We)}var Le=v.appId||ne&&ne.appId();if(Le&&(Ae.headers.set(Ct.requestContextHeader,Ct.requestContextAppIdFormat+Le),_&&(ae.requestHeaders[Ct.requestContextHeader]=Ct.requestContextAppIdFormat+Le)),oe){var ot=new Yl(ae.traceID,ae.spanID);Ae.headers.set(Ct.traceParentHeader,ot.toString()),_&&(ae.requestHeaders[Ct.traceParentHeader]=ot.toString())}}return Ae}else if(Ie){if($n.canIncludeCorrelationHeader(v,ae.getAbsoluteUrl(),Pe)){if(F){var We="|"+ae.traceID+"."+ae.spanID;Ie.setRequestHeader(Ct.requestIdHeader,We),_&&(ae.requestHeaders[Ct.requestIdHeader]=We)}var Le=v.appId||ne&&ne.appId();if(Le&&(Ie.setRequestHeader(Ct.requestContextHeader,Ct.requestContextAppIdFormat+Le),_&&(ae.requestHeaders[Ct.requestContextHeader]=Ct.requestContextAppIdFormat+Le)),oe){var ot=new Yl(ae.traceID,ae.spanID);Ie.setRequestHeader(Ct.traceParentHeader,ot.toString()),_&&(ae.requestHeaders[Ct.traceParentHeader]=ot.toString())}}return Ie}},st[n]=function(ae,be,Ae){if(le===-1||J<le){(v.distributedTracingMode===dn.W3C||v.distributedTracingMode===dn.AI_AND_W3C)&&typeof ae.id=="string"&&ae.id[ae.id.length-1]!=="."&&(ae.id+="."),Ne(ae.startTime)&&(ae.startTime=new Date);var Ie=mn.create(ae,tn.dataType,tn.envelopeType,st[po](),be,Ae);st.core.track(Ie)}else J===le&&xo(st,Ee.MaxAjaxPerPVExceeded,"Maximum ajax per page view limit reached, ajax monitoring is paused until the next trackPageView(). In order to increase the limit set the maxAjaxCallsPerView configuration parameter.",!0);++J};function Xt(ae){var be=!0;return(ae||v.ignoreHeaders)&&et(v.ignoreHeaders,function(Ae){if(Ae.toLowerCase()===ae.toLowerCase())return be=!1,-1}),be}function er(){var ae=Fv();if(!!ae){var be=cn(),Ae=ae.polyfill;v.disableFetchTracking===!1?(Fe.push(oo(be,So,{req:function(Ie,Pe,We){var Le;if(o&&!Rr(null,Pe,We)&&!(Ae&&s)){var ot=Ie.ctx();Le=R(Pe,We);var vt=st.includeCorrelationHeaders(Le,Pe,We);vt!==We&&Ie.set(1,vt),ot.data=Le}},rsp:function(Ie,Pe){var We=Ie.ctx().data;We&&(Ie.rslt=Ie.rslt.then(function(Le){return ke(Ie,(Le||{}).status,Pe,Le,We,function(){var ot={statusText:Le.statusText,headerMap:null,correlationContext:Ye(Le)};if(ue){var vt={};Le.headers.forEach(function(ye,br){Xt(br)&&(vt[br]=ye)}),ot.headerMap=vt}return ot}),Le}).catch(function(Le){throw ke(Ie,0,Pe,null,We,null,{error:Le.message}),Le}))},hkErr:_o(st,Ee.FailedMonitorAjaxOpen,"Failed to monitor Window.fetch, monitoring data for this fetch call may be incorrect.")})),o=!0):Ae&&Fe.push(oo(be,So,{req:function(Ie,Pe,We){Rr(null,Pe,We)}})),Ae&&(be[So].polyfill=Ae)}}function or(ae,be,Ae){Fe.push(hl(ae,be,Ae))}function an(){kv(st)&&!s&&(or(XMLHttpRequest,"open",{req:function(ae,be,Ae,Ie){var Pe=ae.inst,We=Pe[nn];!Rr(Pe,Ae)&&_r(Pe,!0)&&((!We||!We.xhrMonitoringState.openDone)&&xr(Pe,be,Ae,Ie),Yt(Pe))},hkErr:_o(st,Ee.FailedMonitorAjaxOpen,"Failed to monitor XMLHttpRequest.open, monitoring data for this ajax call may be incorrect.")}),or(XMLHttpRequest,"send",{req:function(ae,be){var Ae=ae.inst,Ie=Ae[nn];_r(Ae)&&!Ie.xhrMonitoringState.sendDone&&(It("xhr",Ie),Ie.requestSentTime=yi(),st.includeCorrelationHeaders(Ie,void 0,void 0,Ae),Ie.xhrMonitoringState.sendDone=!0)},hkErr:_o(st,Ee.FailedMonitorAjaxSend,"Failed to monitor XMLHttpRequest, monitoring data for this ajax call may be incorrect.")}),or(XMLHttpRequest,"abort",{req:function(ae){var be=ae.inst,Ae=be[nn];_r(be)&&!Ae.xhrMonitoringState.abortDone&&(Ae.aborted=1,Ae.xhrMonitoringState.abortDone=!0)},hkErr:_o(st,Ee.FailedMonitorAjaxAbort,"Failed to monitor XMLHttpRequest.abort, monitoring data for this ajax call may be incorrect.")}),_&&or(XMLHttpRequest,"setRequestHeader",{req:function(ae,be,Ae){var Ie=ae.inst;_r(Ie)&&Xt(be)&&(Ie[nn].requestHeaders[be]=Ae)},hkErr:_o(st,Ee.FailedMonitorAjaxSetRequestHeader,"Failed to monitor XMLHttpRequest.setRequestHeader, monitoring data for this ajax call may be incorrect.")}),s=!0)}function Rr(ae,be,Ae){var Ie=!1,Pe=((Je(be)?be:(be||{}).url||"")||"").toLowerCase();if(et(ct,function(ot){var vt=ot;Je(ot)&&(vt=new RegExp(ot)),Ie||(Ie=vt.test(Pe))}),Ie)return Ie;var We=Mi(Pe,"?"),Le=Mi(Pe,"#");return(We===-1||Le!==-1&&Le<We)&&(We=Le),We!==-1&&(Pe=Pe.substring(0,We)),Ne(ae)?Ne(be)||(Ie=(typeof be=="object"?be[In]===!0:!1)||(Ae?Ae[In]===!0:!1)):Ie=ae[In]===!0||Pe[In]===!0,!Ie&&Pe&&ja(Pe)&&(Ie=!0),Ie?tt[Pe]||(tt[Pe]=1):tt[Pe]&&(Ie=!0),Ie}function _r(ae,be){var Ae=!0,Ie=s;return Ne(ae)||(Ae=be===!0||!Ne(ae[nn])),Ie&&Ae}function xr(ae,be,Ae,Ie){var Pe=ne&&ne.telemetryTrace&&ne.telemetryTrace.traceID||qr(),We=qr().substr(0,16),Le=new Wl(Pe,We,st[po]());Le.method=be,Le.requestUrl=Ae,Le.xhrMonitoringState.openDone=!0,Le.requestHeaders={},Le.async=Ie,Le.errorStatusText=L,ae[nn]=Le}function Yt(ae){ae[nn].xhrMonitoringState.stateChangeAttached=Tn(ae,"readystatechange",function(){try{ae&&ae.readyState===4&&_r(ae)&&Ot(ae)}catch(Ae){var be=at(Ae);(!be||Mi(be.toLowerCase(),"c00c023f")===-1)&&xo(st,Ee.FailedMonitorAjaxRSC,"Failed to monitor XMLHttpRequest 'readystatechange' event handler, monitoring data for this ajax call may be incorrect.",{ajaxDiagnosticsMessage:Us(ae),exception:be})}})}function St(ae){try{var be=ae.responseType;if(be===""||be==="text")return ae.responseText}catch{}return null}function Ot(ae){var be=ae[nn];be.responseFinishedTime=yi(),be.status=ae.status;function Ae(Ie,Pe){var We=Pe||{};We.ajaxDiagnosticsMessage=Us(ae),Ie&&(We.exception=at(Ie)),Ci(st,Ee.FailedMonitorAjaxDur,"Failed to calculate the duration of the ajax call, monitoring data for this ajax call won't be sent.",We)}Ze("xmlhttprequest",be,function(){try{var Ie=be.CreateTrackItem("Ajax",_,function(){var We={statusText:ae.statusText,headerMap:null,correlationContext:Nt(ae),type:ae.responseType,responseText:St(ae),response:ae.response};if(ue){var Le=ae.getAllResponseHeaders();if(Le){var ot=Qt(Le).split(/[\r\n]+/),vt={};et(ot,function(ye){var br=ye.split(": "),Ar=br.shift(),yr=br.join(": ");Xt(Ar)&&(vt[Ar]=yr)}),We.headerMap=vt}}return We}),Pe=void 0;try{pt&&(Pe=pt({status:ae.status,xhr:ae}))}catch{Ci(st,Ee.FailedAddingCustomDefinedRequestContext,"Failed to add custom defined request context as configured call back may missing a null check.")}Ie?(Pe!==void 0&&(Ie.properties=Zt(Zt({},Ie.properties),Pe)),st[n](Ie)):Ae(null,{requestSentTime:be.requestSentTime,responseFinishedTime:be.responseFinishedTime})}finally{try{ae[nn]=null}catch{}}},function(Ie){Ae(Ie,null)})}function Nt(ae){try{var be=ae.getAllResponseHeaders();if(be!==null){var Ae=Mi(be.toLowerCase(),Ct.requestContextHeaderLowerCase);if(Ae!==-1){var Ie=ae.getResponseHeader(Ct.requestContextHeader);return $n.getCorrelationContext(Ie)}}}catch(Pe){Ci(st,Ee.FailedMonitorAjaxGetCorrelationHeader,"Failed to get Request-Context correlation header as it may be not included in the response or not accessible.",{ajaxDiagnosticsMessage:Us(ae),exception:at(Pe)})}}function It(ae,be){if(be.requestUrl&&_e&&N){var Ae=Zr();if(Ae&&it(Ae.mark)){Wu++;var Ie=_e+ae+"#"+Wu;Ae.mark(Ie);var Pe=Ae.getEntriesByName(Ie);Pe&&Pe.length===1&&(be.perfMark=Pe[0])}}}function Ze(ae,be,Ae,Ie){var Pe=be.perfMark,We=Zr(),Le=v.maxAjaxPerfLookupAttempts,ot=v.ajaxPerfLookupDelay,vt=be.requestUrl,ye=0;(function br(){try{if(We&&Pe){ye++;for(var Ar=null,yr=We.getEntries(),$a=yr.length-1;$a>=0;$a--){var hn=yr[$a];if(hn){if(hn.entryType==="resource")hn.initiatorType===ae&&(Mi(hn.name,vt)!==-1||Mi(vt,hn.name)!==-1)&&(Ar=hn);else if(hn.entryType==="mark"&&hn.name===Pe.name){be.perfTiming=Ar;break}if(hn.startTime<Pe.startTime-1e3)break}}}!Pe||be.perfTiming||ye>=Le||be.async===!1?(Pe&&it(We.clearMarks)&&We.clearMarks(Pe.name),be.perfAttempts=ye,Ae()):setTimeout(br,ot)}catch(n0){Ie(n0)}})()}function R(ae,be){var Ae=ne&&ne.telemetryTrace&&ne.telemetryTrace.traceID||qr(),Ie=qr().substr(0,16),Pe=new Wl(Ae,Ie,st[po]());Pe.requestSentTime=yi(),Pe.errorStatusText=L,ae instanceof Request?Pe.requestUrl=ae?ae.url:"":Pe.requestUrl=ae;var We="GET";be&&be.method?We=be.method:ae&&ae instanceof Request&&(We=ae.method),Pe.method=We;var Le={};if(_){var ot=new Headers((be?be.headers:0)||(ae instanceof Request?ae.headers||{}:{}));ot.forEach(function(vt,ye){Xt(ye)&&(Le[ye]=vt)})}return Pe.requestHeaders=Le,It("fetch",Pe),Pe}function ie(ae){var be="";try{Ne(ae)||(typeof ae=="string"?be+="(url: '".concat(ae,"')"):be+="(url: '".concat(ae.url,"')"))}catch(Ae){xo(st,Ee.FailedMonitorAjaxOpen,"Failed to grab failed fetch diagnostics message",{exception:at(Ae)})}return be}function ke(ae,be,Ae,Ie,Pe,We,Le){if(!Pe)return;function ot(vt,ye,br){var Ar=br||{};Ar.fetchDiagnosticsMessage=ie(Ae),ye&&(Ar.exception=at(ye)),Ci(st,vt,"Failed to calculate the duration of the fetch call, monitoring data for this fetch call won't be sent.",Ar)}Pe.responseFinishedTime=yi(),Pe.status=be,Ze("fetch",Pe,function(){var vt=Pe.CreateTrackItem("Fetch",_,We),ye;try{pt&&(ye=pt({status:be,request:Ae,response:Ie}))}catch{Ci(st,Ee.FailedAddingCustomDefinedRequestContext,"Failed to add custom defined request context as configured call back may missing a null check.")}vt?(ye!==void 0&&(vt.properties=Zt(Zt({},vt.properties),ye)),st[n](vt)):ot(Ee.FailedMonitorAjaxDur,null,{requestSentTime:Pe.requestSentTime,responseFinishedTime:Pe.responseFinishedTime})},function(vt){ot(Ee.FailedMonitorAjaxGetCorrelationHeader,vt,null)})}function Ye(ae){if(ae&&ae.headers)try{var be=ae.headers.get(Ct.requestContextHeader);return $n.getCorrelationContext(be)}catch(Ae){Ci(st,Ee.FailedMonitorAjaxGetCorrelationHeader,"Failed to get Request-Context correlation header as it may be not included in the response or not accessible.",{fetchDiagnosticsMessage:ie(ae),exception:at(Ae)})}}}),r}return e.getDefaultConfig=function(){var r={maxAjaxCallsPerView:500,disableAjaxTracking:!1,disableFetchTracking:!0,excludeRequestFromAutoTrackingPatterns:void 0,disableCorrelationHeaders:!1,distributedTracingMode:dn.AI_AND_W3C,correlationHeaderExcludedDomains:["*.blob.core.windows.net","*.blob.core.chinacloudapi.cn","*.blob.core.cloudapi.de","*.blob.core.usgovcloudapi.net"],correlationHeaderDomains:void 0,correlationHeaderExcludePatterns:void 0,appId:void 0,enableCorsCorrelation:!1,enableRequestHeaderTracking:!1,enableResponseHeaderTracking:!1,enableAjaxErrorStatusText:!1,enableAjaxPerfTracking:!1,maxAjaxPerfLookupAttempts:3,ajaxPerfLookupDelay:25,ignoreHeaders:["Authorization","X-API-Key","WWW-Authenticate"],addRequestContext:void 0};return r},e.getEmptyConfig=function(){var r=this.getDefaultConfig();return Rt(r,function(n){r[n]=void 0}),r},e.prototype.processTelemetry=function(r,n){this.processNext(r,n)},e.identifier="AjaxDependencyPlugin",e}(Rn);var Zl,$u=["snippet","dependencies","properties","_snippetVersion","appInsightsNew","getSKUDefaults"];var Ql=function(){function t(e){var r=this;r._snippetVersion=""+(e.sv||e.version||""),e.queue=e.queue||[],e.version=e.version||2;var n=e.config||{};if(n.connectionString){var a=Ml(n.connectionString),o=a.ingestionendpoint;n.endpointUrl=o?"".concat(o,"/v2/track"):n.endpointUrl,n.instrumentationKey=a.instrumentationkey||n.instrumentationKey}r.appInsights=new Vl,r.properties=new Kl,r.dependencies=new $l,r.core=new ul,r._sender=new Gl,r.snippet=e,r.config=n,r.getSKUDefaults()}return t.prototype.getCookieMgr=function(){return this.appInsights.getCookieMgr()},t.prototype.trackEvent=function(e,r){this.appInsights.trackEvent(e,r)},t.prototype.trackPageView=function(e){var r=e||{};this.appInsights.trackPageView(r)},t.prototype.trackPageViewPerformance=function(e){var r=e||{};this.appInsights.trackPageViewPerformance(r)},t.prototype.trackException=function(e,r){e&&!e.exception&&e.error&&(e.exception=e.error),this.appInsights.trackException(e,r)},t.prototype._onerror=function(e){this.appInsights._onerror(e)},t.prototype.trackTrace=function(e,r){this.appInsights.trackTrace(e,r)},t.prototype.trackMetric=function(e,r){this.appInsights.trackMetric(e,r)},t.prototype.startTrackPage=function(e){this.appInsights.startTrackPage(e)},t.prototype.stopTrackPage=function(e,r,n,a){this.appInsights.stopTrackPage(e,r,n,a)},t.prototype.startTrackEvent=function(e){this.appInsights.startTrackEvent(e)},t.prototype.stopTrackEvent=function(e,r,n){this.appInsights.stopTrackEvent(e,r,n)},t.prototype.addTelemetryInitializer=function(e){return this.appInsights.addTelemetryInitializer(e)},t.prototype.setAuthenticatedUserContext=function(e,r,n){n===void 0&&(n=!1),this.properties.context.user.setAuthenticatedUserContext(e,r,n)},t.prototype.clearAuthenticatedUserContext=function(){this.properties.context.user.clearAuthenticatedUserContext()},t.prototype.trackDependencyData=function(e){this.dependencies.trackDependencyData(e)},t.prototype.flush=function(e){var r=this;e===void 0&&(e=!0),Hn(this.core,function(){return"AISKU.flush"},function(){et(r.core.getTransmissionControls(),function(n){et(n,function(a){a.flush(e)})})},null,e)},t.prototype.onunloadFlush=function(e){e===void 0&&(e=!0),et(this.core.getTransmissionControls(),function(r){et(r,function(n){n.onunloadFlush?n.onunloadFlush():n.flush(e)})})},t.prototype.loadAppInsights=function(e,r,n){var a=this;e===void 0&&(e=!1);var o=this;function s(h){if(h){var v="";Ne(o._snippetVersion)||(v+=o._snippetVersion),e&&(v+=".lg"),o.context&&o.context.internal&&(o.context.internal.snippetVer=v||"-"),Rt(o,function(_,L){Je(_)&&!it(L)&&_&&_[0]!=="_"&&$u.indexOf(_)===-1&&(h[_]=L)})}}return e&&o.config.extensions&&o.config.extensions.length>0&&Tr("Extensions not allowed in legacy mode"),Hn(o.core,function(){return"AISKU.loadAppInsights"},function(){var h=[];h.push(o._sender),h.push(o.properties),h.push(o.dependencies),h.push(o.appInsights),o.core.initialize(o.config,h,r,n),o.context=o.properties.context,Zl&&o.context&&(o.context.internal.sdkSrc=Zl),s(o.snippet),o.emptyQueue(),o.pollInternalLogs(),o.addHousekeepingBeforeUnload(a)}),o},t.prototype.updateSnippetDefinitions=function(e){F0(e,this,function(r){return r&&$u.indexOf(r)===-1})},t.prototype.emptyQueue=function(){var e=this;try{if(cr(e.snippet.queue)){for(var r=e.snippet.queue.length,n=0;n<r;n++){var a=e.snippet.queue[n];a()}e.snippet.queue=void 0,delete e.snippet.queue}}catch(s){var o={};s&&it(s.toString)&&(o.exception=s.toString())}},t.prototype.pollInternalLogs=function(){this.core.pollInternalLogs()},t.prototype.stopPollingInternalLogs=function(){this.core.stopPollingInternalLogs()},t.prototype.addHousekeepingBeforeUnload=function(e){if(Na()||vs()){var r=function(){e.onunloadFlush(!1),et(e.appInsights.core._extensions,function(o){if(o.identifier===fa)return o&&o.context&&o.context._sessionManager&&o.context._sessionManager.backup(),-1})},n=!1,a=e.appInsights.config.disablePageUnloadEvents;e.appInsights.config.disableFlushOnBeforeUnload||(n=dl(r,a),n=io(r,a)||n,!n&&!W0()&&e.appInsights.core.logger.throwInternal(Me.CRITICAL,Ee.FailedToAddHandlerForOnBeforeUnload,"Could not add handler for beforeunload and pagehide")),!n&&!e.appInsights.config.disableFlushOnUnload&&io(r,a)}},t.prototype.getSender=function(){return this._sender},t.prototype.getSKUDefaults=function(){var e=this;e.config.diagnosticLogInterval=e.config.diagnosticLogInterval&&e.config.diagnosticLogInterval>0?e.config.diagnosticLogInterval:1e4},t}();(function(){var t=null,e=!1,r=["://js.monitor.azure.com/","://az416426.vo.msecnd.net/"];try{var n=(document||{}).currentScript;n&&(t=n.src)}catch{}if(t)try{var a=t.toLowerCase();if(a){for(var o="",s=0;s<r.length;s++)if(a.indexOf(r[s])!==-1){o="cdn"+(s+1),a.indexOf("/scripts/")===-1&&(a.indexOf("/next/")!==-1?o+="-next":a.indexOf("/beta/")!==-1&&(o+="-beta")),Zl=o+(e?".mod":"");break}}}catch{}})();var Pi,Zu=t=>(Pi=new Ql({config:{instrumentationKey:t}}),Pi.loadAppInsights(),Pi),bo={START:"start",FINISH:"finish",ERROR:"error",UPLOAD_VIDEO:"upload_video"},Lv=t=>Pi.trackException({exception:t}),go=(t,e)=>Pi.trackEvent({name:t,properties:e}),Uv=(t,e,r)=>Pi.trackPageView({name:t,uri:e,properties:r}),hr={trackPage:Uv,trackError:Lv,registerStart:(t,e,r)=>go(bo.START,{proctoringId:t,success:e,description:r}),registerFinish:(t,e,r)=>go(bo.FINISH,{proctoringId:t,success:e,description:r}),registerError:(t,e)=>go(bo.ERROR,{proctoringId:t,description:e}),registerUploadVideo:(t,e,r,n,a)=>go(bo.UPLOAD_VIDEO,{proctoringId:t,success:e,description:r,serviceType:n,uploadTime:a}),registerChangeDevice:(t,e,r)=>go(bo.UPLOAD_VIDEO,{proctoringId:t,inOrOut:e,devicesChanged:r})};var Hs=class{constructor(e,r){this.repositoryDevices=e,this.proctoringId=r}startRecording(e){console.log("proctoring.onChangeDevices"),navigator.mediaDevices.ondevicechange=()=>{this.onChangeDevices(e)}}async onChangeDevices(e){let r=await Ca(),n=(J,ne)=>J.label===ne.label&&J.id===ne.id,a=(J,ne,oe)=>J.filter(F=>!ne.some(_e=>oe(F,_e))),o=await this.repositoryDevices.getDevices("devices"),s={label:"",id:""},h={cameras:o?.cameras||[s],microphones:o?.microphones||[s]},v,_;r.cameras.length!=h?.cameras.length&&(v=r.cameras.length>h?.cameras.length?a(r.cameras,h?.cameras,n):a(h?.cameras,r.cameras,n),v=v.filter(J=>J.id!="default"),console.log("resultCameras: ",v)),r.microphones.length!=h?.microphones.length&&(_=r.microphones.length>h?.microphones.length?a(r.microphones,h?.microphones,n):a(h?.microphones,r.microphones,n),_=_.filter(J=>J.id!="default"&&J.id!="communications"),console.log("resultMicrophones: ",_));let L={cameras:v||[],microphones:_||[],status:r.cameras.length>h?.cameras.length||r.microphones.length>h?.microphones.length?"in":"out"};await this.repositoryDevices.save({...r,id:"devices",status:r.cameras.length>h?.cameras.length||r.microphones.length>h?.microphones.length?"in":"out"}),e.status&&(L.cameras.length!=0||L.microphones.length!=0)&&(hr.registerChangeDevice(this.proctoringId,L.status,L),e.status(L))}};function yo(t,e){return function(){return t.apply(e,arguments)}}var{toString:Ju}=Object.prototype,{getPrototypeOf:t1}=Object,r1=(t=>e=>{let r=Ju.call(e);return t[r]||(t[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),Qn=t=>(t=t.toLowerCase(),e=>r1(e)===t),qs=t=>e=>typeof e===t,{isArray:Eo}=Array,Jl=qs("undefined");function Hv(t){return t!==null&&!Jl(t)&&t.constructor!==null&&!Jl(t.constructor)&&Bi(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}var ef=Qn("ArrayBuffer");function Vv(t){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(t):e=t&&t.buffer&&ef(t.buffer),e}var qv=qs("string"),Bi=qs("function"),tf=qs("number"),rf=t=>t!==null&&typeof t=="object",zv=t=>t===!0||t===!1,Vs=t=>{if(r1(t)!=="object")return!1;let e=t1(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in t)&&!(Symbol.iterator in t)},jv=Qn("Date"),Gv=Qn("File"),Xv=Qn("Blob"),Kv=Qn("FileList"),Wv=t=>rf(t)&&Bi(t.pipe),Yv=t=>{let e="[object FormData]";return t&&(typeof FormData=="function"&&t instanceof FormData||Ju.call(t)===e||Bi(t.toString)&&t.toString()===e)},$v=Qn("URLSearchParams"),Zv=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function zs(t,e,{allOwnKeys:r=!1}={}){if(t===null||typeof t>"u")return;let n,a;if(typeof t!="object"&&(t=[t]),Eo(t))for(n=0,a=t.length;n<a;n++)e.call(null,t[n],n,t);else{let o=r?Object.getOwnPropertyNames(t):Object.keys(t),s=o.length,h;for(n=0;n<s;n++)h=o[n],e.call(null,t[h],h,t)}}function e1(){let t={},e=(r,n)=>{Vs(t[n])&&Vs(r)?t[n]=e1(t[n],r):Vs(r)?t[n]=e1({},r):Eo(r)?t[n]=r.slice():t[n]=r};for(let r=0,n=arguments.length;r<n;r++)arguments[r]&&zs(arguments[r],e);return t}var Qv=(t,e,r,{allOwnKeys:n}={})=>(zs(e,(a,o)=>{r&&Bi(a)?t[o]=yo(a,r):t[o]=a},{allOwnKeys:n}),t),Jv=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),em=(t,e,r,n)=>{t.prototype=Object.create(e.prototype,n),t.prototype.constructor=t,Object.defineProperty(t,"super",{value:e.prototype}),r&&Object.assign(t.prototype,r)},tm=(t,e,r,n)=>{let a,o,s,h={};if(e=e||{},t==null)return e;do{for(a=Object.getOwnPropertyNames(t),o=a.length;o-- >0;)s=a[o],(!n||n(s,t,e))&&!h[s]&&(e[s]=t[s],h[s]=!0);t=r!==!1&&t1(t)}while(t&&(!r||r(t,e))&&t!==Object.prototype);return e},rm=(t,e,r)=>{t=String(t),(r===void 0||r>t.length)&&(r=t.length),r-=e.length;let n=t.indexOf(e,r);return n!==-1&&n===r},nm=t=>{if(!t)return null;if(Eo(t))return t;let e=t.length;if(!tf(e))return null;let r=new Array(e);for(;e-- >0;)r[e]=t[e];return r},am=(t=>e=>t&&e instanceof t)(typeof Uint8Array<"u"&&t1(Uint8Array)),im=(t,e)=>{let n=(t&&t[Symbol.iterator]).call(t),a;for(;(a=n.next())&&!a.done;){let o=a.value;e.call(t,o[0],o[1])}},om=(t,e)=>{let r,n=[];for(;(r=t.exec(e))!==null;)n.push(r);return n},sm=Qn("HTMLFormElement"),lm=t=>t.toLowerCase().replace(/[_-\s]([a-z\d])(\w*)/g,function(r,n,a){return n.toUpperCase()+a}),Qu=(({hasOwnProperty:t})=>(e,r)=>t.call(e,r))(Object.prototype),cm=Qn("RegExp"),nf=(t,e)=>{let r=Object.getOwnPropertyDescriptors(t),n={};zs(r,(a,o)=>{e(a,o,t)!==!1&&(n[o]=a)}),Object.defineProperties(t,n)},um=t=>{nf(t,(e,r)=>{let n=t[r];if(!!Bi(n)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not read-only method '"+r+"'")})}})},fm=(t,e)=>{let r={},n=a=>{a.forEach(o=>{r[o]=!0})};return Eo(t)?n(t):n(String(t).split(e)),r},dm=()=>{},vm=(t,e)=>(t=+t,Number.isFinite(t)?t:e),xe={isArray:Eo,isArrayBuffer:ef,isBuffer:Hv,isFormData:Yv,isArrayBufferView:Vv,isString:qv,isNumber:tf,isBoolean:zv,isObject:rf,isPlainObject:Vs,isUndefined:Jl,isDate:jv,isFile:Gv,isBlob:Xv,isRegExp:cm,isFunction:Bi,isStream:Wv,isURLSearchParams:$v,isTypedArray:am,isFileList:Kv,forEach:zs,merge:e1,extend:Qv,trim:Zv,stripBOM:Jv,inherits:em,toFlatObject:tm,kindOf:r1,kindOfTest:Qn,endsWith:rm,toArray:nm,forEachEntry:im,matchAll:om,isHTMLForm:sm,hasOwnProperty:Qu,hasOwnProp:Qu,reduceDescriptors:nf,freezeMethods:um,toObjectSet:fm,toCamelCase:lm,noop:dm,toFiniteNumber:vm};function Ni(t,e,r,n,a){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=t,this.name="AxiosError",e&&(this.code=e),r&&(this.config=r),n&&(this.request=n),a&&(this.response=a)}xe.inherits(Ni,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:this.config,code:this.code,status:this.response&&this.response.status?this.response.status:null}}});var af=Ni.prototype,of={};["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(t=>{of[t]={value:t}});Object.defineProperties(Ni,of);Object.defineProperty(af,"isAxiosError",{value:!0});Ni.from=(t,e,r,n,a,o)=>{let s=Object.create(af);return xe.toFlatObject(t,s,function(v){return v!==Error.prototype},h=>h!=="isAxiosError"),Ni.call(s,t.message,e,r,n,a),s.cause=t,s.name=t.name,o&&Object.assign(s,o),s};var Tt=Ni;var cf=Yd(lf(),1),uf=cf.default;function n1(t){return xe.isPlainObject(t)||xe.isArray(t)}function df(t){return xe.endsWith(t,"[]")?t.slice(0,-2):t}function ff(t,e,r){return t?t.concat(e).map(function(a,o){return a=df(a),!r&&o?"["+a+"]":a}).join(r?".":""):e}function mm(t){return xe.isArray(t)&&!t.some(n1)}var hm=xe.toFlatObject(xe,{},null,function(e){return/^is[A-Z]/.test(e)});function _m(t){return t&&xe.isFunction(t.append)&&t[Symbol.toStringTag]==="FormData"&&t[Symbol.iterator]}function pm(t,e,r){if(!xe.isObject(t))throw new TypeError("target must be an object");e=e||new(uf||FormData),r=xe.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(_e,N){return!xe.isUndefined(N[_e])});let n=r.metaTokens,a=r.visitor||L,o=r.dots,s=r.indexes,v=(r.Blob||typeof Blob<"u"&&Blob)&&_m(e);if(!xe.isFunction(a))throw new TypeError("visitor must be a function");function _(F){if(F===null)return"";if(xe.isDate(F))return F.toISOString();if(!v&&xe.isBlob(F))throw new Tt("Blob is not supported. Use a Buffer instead.");return xe.isArrayBuffer(F)||xe.isTypedArray(F)?v&&typeof Blob=="function"?new Blob([F]):Buffer.from(F):F}function L(F,_e,N){let le=F;if(F&&!N&&typeof F=="object"){if(xe.endsWith(_e,"{}"))_e=n?_e:_e.slice(0,-2),F=JSON.stringify(F);else if(xe.isArray(F)&&mm(F)||xe.isFileList(F)||xe.endsWith(_e,"[]")&&(le=xe.toArray(F)))return _e=df(_e),le.forEach(function(Fe,tt){!(xe.isUndefined(Fe)||Fe===null)&&e.append(s===!0?ff([_e],tt,o):s===null?_e:_e+"[]",_(Fe))}),!1}return n1(F)?!0:(e.append(ff(N,_e,o),_(F)),!1)}let J=[],ne=Object.assign(hm,{defaultVisitor:L,convertValue:_,isVisitable:n1});function oe(F,_e){if(!xe.isUndefined(F)){if(J.indexOf(F)!==-1)throw Error("Circular reference detected in "+_e.join("."));J.push(F),xe.forEach(F,function(le,ue){(!(xe.isUndefined(le)||le===null)&&a.call(e,le,xe.isString(ue)?ue.trim():ue,_e,ne))===!0&&oe(le,_e?_e.concat(ue):[ue])}),J.pop()}}if(!xe.isObject(t))throw new TypeError("data must be an object");return oe(t),e}var ma=pm;function vf(t){let e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,function(n){return e[n]})}function mf(t,e){this._pairs=[],t&&ma(t,this,e)}var hf=mf.prototype;hf.append=function(e,r){this._pairs.push([e,r])};hf.toString=function(e){let r=e?function(n){return e.call(this,n,vf)}:vf;return this._pairs.map(function(a){return r(a[0])+"="+r(a[1])},"").join("&")};var js=mf;function Sm(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function To(t,e,r){if(!e)return t;let n=r&&r.encode||Sm,a=r&&r.serialize,o;if(a?o=a(e,r):o=xe.isURLSearchParams(e)?e.toString():new js(e,r).toString(n),o){let s=t.indexOf("#");s!==-1&&(t=t.slice(0,s)),t+=(t.indexOf("?")===-1?"?":"&")+o}return t}var a1=class{constructor(){this.handlers=[]}use(e,r,n){return this.handlers.push({fulfilled:e,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){xe.forEach(this.handlers,function(n){n!==null&&e(n)})}},i1=a1;var Gs={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var _f=typeof URLSearchParams<"u"?URLSearchParams:js;var pf=FormData;var xm=(()=>{let t;return typeof navigator<"u"&&((t=navigator.product)==="ReactNative"||t==="NativeScript"||t==="NS")?!1:typeof window<"u"&&typeof document<"u"})(),Or={isBrowser:!0,classes:{URLSearchParams:_f,FormData:pf,Blob},isStandardBrowserEnv:xm,protocols:["http","https","file","blob","url","data"]};function o1(t,e){return ma(t,new Or.classes.URLSearchParams,Object.assign({visitor:function(r,n,a,o){return Or.isNode&&xe.isBuffer(r)?(this.append(n,r.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)}},e))}function bm(t){return xe.matchAll(/\w+|\[(\w*)]/g,t).map(e=>e[0]==="[]"?"":e[1]||e[0])}function gm(t){let e={},r=Object.keys(t),n,a=r.length,o;for(n=0;n<a;n++)o=r[n],e[o]=t[o];return e}function ym(t){function e(r,n,a,o){let s=r[o++],h=Number.isFinite(+s),v=o>=r.length;return s=!s&&xe.isArray(a)?a.length:s,v?(xe.hasOwnProp(a,s)?a[s]=[a[s],n]:a[s]=n,!h):((!a[s]||!xe.isObject(a[s]))&&(a[s]=[]),e(r,n,a[s],o)&&xe.isArray(a[s])&&(a[s]=gm(a[s])),!h)}if(xe.isFormData(t)&&xe.isFunction(t.entries)){let r={};return xe.forEachEntry(t,(n,a)=>{e(bm(n),a,r,0)}),r}return null}var Xs=ym;function s1(t,e,r){let n=r.config.validateStatus;!r.status||!n||n(r.status)?t(r):e(new Tt("Request failed with status code "+r.status,[Tt.ERR_BAD_REQUEST,Tt.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}var Sf=Or.isStandardBrowserEnv?function(){return{write:function(r,n,a,o,s,h){let v=[];v.push(r+"="+encodeURIComponent(n)),xe.isNumber(a)&&v.push("expires="+new Date(a).toGMTString()),xe.isString(o)&&v.push("path="+o),xe.isString(s)&&v.push("domain="+s),h===!0&&v.push("secure"),document.cookie=v.join("; ")},read:function(r){let n=document.cookie.match(new RegExp("(^|;\\s*)("+r+")=([^;]*)"));return n?decodeURIComponent(n[3]):null},remove:function(r){this.write(r,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}();function l1(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}function c1(t,e){return e?t.replace(/\/+$/,"")+"/"+e.replace(/^\/+/,""):t}function wo(t,e){return t&&!l1(e)?c1(t,e):e}var xf=Or.isStandardBrowserEnv?function(){let e=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a"),n;function a(o){let s=o;return e&&(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 n=a(window.location.href),function(s){let h=xe.isString(s)?a(s):s;return h.protocol===n.protocol&&h.host===n.host}}():function(){return function(){return!0}}();function bf(t,e,r){Tt.call(this,t??"canceled",Tt.ERR_CANCELED,e,r),this.name="CanceledError"}xe.inherits(bf,Tt,{__CANCEL__:!0});var ha=bf;function u1(t){let e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}var Em=xe.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"]),gf=t=>{let e={},r,n,a;return t&&t.split(`
|
|
21
|
-
`).forEach(function(s){a=s.indexOf(":"),r=s.substring(0,a).trim().toLowerCase(),n=s.substring(a+1).trim(),!(!r||e[r]&&Em[r])&&(r==="set-cookie"?e[r]?e[r].push(n):e[r]=[n]:e[r]=e[r]?e[r]+", "+n:n)}),e};var yf=Symbol("internals"),Tf=Symbol("defaults");function Ao(t){return t&&String(t).trim().toLowerCase()}function Ks(t){return t===!1||t==null?t:xe.isArray(t)?t.map(Ks):String(t)}function Tm(t){let e=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g,n;for(;n=r.exec(t);)e[n[1]]=n[2];return e}function Ef(t,e,r,n){if(xe.isFunction(n))return n.call(this,e,r);if(!!xe.isString(e)){if(xe.isString(n))return e.indexOf(n)!==-1;if(xe.isRegExp(n))return n.test(e)}}function wm(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,r,n)=>r.toUpperCase()+n)}function Rm(t,e){let r=xe.toCamelCase(" "+e);["get","set","has"].forEach(n=>{Object.defineProperty(t,n+r,{value:function(a,o,s){return this[n].call(this,e,a,o,s)},configurable:!0})})}function Ro(t,e){e=e.toLowerCase();let r=Object.keys(t),n=r.length,a;for(;n-- >0;)if(a=r[n],e===a.toLowerCase())return a;return null}function Di(t,e){t&&this.set(t),this[Tf]=e||null}Object.assign(Di.prototype,{set:function(t,e,r){let n=this;function a(o,s,h){let v=Ao(s);if(!v)throw new Error("header name must be a non-empty string");let _=Ro(n,v);_&&h!==!0&&(n[_]===!1||h===!1)||(n[_||s]=Ks(o))}return xe.isPlainObject(t)?xe.forEach(t,(o,s)=>{a(o,s,e)}):a(e,t,r),this},get:function(t,e){if(t=Ao(t),!t)return;let r=Ro(this,t);if(r){let n=this[r];if(!e)return n;if(e===!0)return Tm(n);if(xe.isFunction(e))return e.call(this,n,r);if(xe.isRegExp(e))return e.exec(n);throw new TypeError("parser must be boolean|regexp|function")}},has:function(t,e){if(t=Ao(t),t){let r=Ro(this,t);return!!(r&&(!e||Ef(this,this[r],r,e)))}return!1},delete:function(t,e){let r=this,n=!1;function a(o){if(o=Ao(o),o){let s=Ro(r,o);s&&(!e||Ef(r,r[s],s,e))&&(delete r[s],n=!0)}}return xe.isArray(t)?t.forEach(a):a(t),n},clear:function(){return Object.keys(this).forEach(this.delete.bind(this))},normalize:function(t){let e=this,r={};return xe.forEach(this,(n,a)=>{let o=Ro(r,a);if(o){e[o]=Ks(n),delete e[a];return}let s=t?wm(a):String(a).trim();s!==a&&delete e[a],e[s]=Ks(n),r[s]=!0}),this},toJSON:function(t){let e=Object.create(null);return xe.forEach(Object.assign({},this[Tf]||null,this),(r,n)=>{r==null||r===!1||(e[n]=t&&xe.isArray(r)?r.join(", "):r)}),e}});Object.assign(Di,{from:function(t){return xe.isString(t)?new this(gf(t)):t instanceof this?t:new this(t)},accessor:function(t){let r=(this[yf]=this[yf]={accessors:{}}).accessors,n=this.prototype;function a(o){let s=Ao(o);r[s]||(Rm(n,o),r[s]=!0)}return xe.isArray(t)?t.forEach(a):a(t),this}});Di.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent"]);xe.freezeMethods(Di.prototype);xe.freezeMethods(Di);var Pn=Di;function Am(t,e){t=t||10;let r=new Array(t),n=new Array(t),a=0,o=0,s;return e=e!==void 0?e:1e3,function(v){let _=Date.now(),L=n[o];s||(s=_),r[a]=v,n[a]=_;let J=o,ne=0;for(;J!==a;)ne+=r[J++],J=J%t;if(a=(a+1)%t,a===o&&(o=(o+1)%t),_-s<e)return;let oe=L&&_-L;return oe?Math.round(ne*1e3/oe):void 0}}var wf=Am;function Rf(t,e){let r=0,n=wf(50,250);return a=>{let o=a.loaded,s=a.lengthComputable?a.total:void 0,h=o-r,v=n(h),_=o<=s;r=o;let L={loaded:o,total:s,progress:s?o/s:void 0,bytes:h,rate:v||void 0,estimated:v&&s&&_?(s-o)/v:void 0};L[e?"download":"upload"]=!0,t(L)}}function Io(t){return new Promise(function(r,n){let a=t.data,o=Pn.from(t.headers).normalize(),s=t.responseType,h;function v(){t.cancelToken&&t.cancelToken.unsubscribe(h),t.signal&&t.signal.removeEventListener("abort",h)}xe.isFormData(a)&&Or.isStandardBrowserEnv&&o.setContentType(!1);let _=new XMLHttpRequest;if(t.auth){let oe=t.auth.username||"",F=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";o.set("Authorization","Basic "+btoa(oe+":"+F))}let L=wo(t.baseURL,t.url);_.open(t.method.toUpperCase(),To(L,t.params,t.paramsSerializer),!0),_.timeout=t.timeout;function J(){if(!_)return;let oe=Pn.from("getAllResponseHeaders"in _&&_.getAllResponseHeaders()),_e={data:!s||s==="text"||s==="json"?_.responseText:_.response,status:_.status,statusText:_.statusText,headers:oe,config:t,request:_};s1(function(le){r(le),v()},function(le){n(le),v()},_e),_=null}if("onloadend"in _?_.onloadend=J:_.onreadystatechange=function(){!_||_.readyState!==4||_.status===0&&!(_.responseURL&&_.responseURL.indexOf("file:")===0)||setTimeout(J)},_.onabort=function(){!_||(n(new Tt("Request aborted",Tt.ECONNABORTED,t,_)),_=null)},_.onerror=function(){n(new Tt("Network Error",Tt.ERR_NETWORK,t,_)),_=null},_.ontimeout=function(){let F=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded",_e=t.transitional||Gs;t.timeoutErrorMessage&&(F=t.timeoutErrorMessage),n(new Tt(F,_e.clarifyTimeoutError?Tt.ETIMEDOUT:Tt.ECONNABORTED,t,_)),_=null},Or.isStandardBrowserEnv){let oe=(t.withCredentials||xf(L))&&t.xsrfCookieName&&Sf.read(t.xsrfCookieName);oe&&o.set(t.xsrfHeaderName,oe)}a===void 0&&o.setContentType(null),"setRequestHeader"in _&&xe.forEach(o.toJSON(),function(F,_e){_.setRequestHeader(_e,F)}),xe.isUndefined(t.withCredentials)||(_.withCredentials=!!t.withCredentials),s&&s!=="json"&&(_.responseType=t.responseType),typeof t.onDownloadProgress=="function"&&_.addEventListener("progress",Rf(t.onDownloadProgress,!0)),typeof t.onUploadProgress=="function"&&_.upload&&_.upload.addEventListener("progress",Rf(t.onUploadProgress)),(t.cancelToken||t.signal)&&(h=oe=>{!_||(n(!oe||oe.type?new ha(null,t,_):oe),_.abort(),_=null)},t.cancelToken&&t.cancelToken.subscribe(h),t.signal&&(t.signal.aborted?h():t.signal.addEventListener("abort",h)));let ne=u1(L);if(ne&&Or.protocols.indexOf(ne)===-1){n(new Tt("Unsupported protocol "+ne+":",Tt.ERR_BAD_REQUEST,t));return}_.send(a||null)})}var Af={http:Io,xhr:Io},f1={getAdapter:t=>{if(xe.isString(t)){let e=Af[t];if(!t)throw Error(xe.hasOwnProp(t)?`Adapter '${t}' is not available in the build`:`Can not resolve adapter '${t}'`);return e}if(!xe.isFunction(t))throw new TypeError("adapter is not a function");return t},adapters:Af};var Im={"Content-Type":"application/x-www-form-urlencoded"};function Cm(){let t;return typeof XMLHttpRequest<"u"?t=f1.getAdapter("xhr"):typeof process<"u"&&xe.kindOf(process)==="process"&&(t=f1.getAdapter("http")),t}function Mm(t,e,r){if(xe.isString(t))try{return(e||JSON.parse)(t),xe.trim(t)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(t)}var Ws={transitional:Gs,adapter:Cm(),transformRequest:[function(e,r){let n=r.getContentType()||"",a=n.indexOf("application/json")>-1,o=xe.isObject(e);if(o&&xe.isHTMLForm(e)&&(e=new FormData(e)),xe.isFormData(e))return a&&a?JSON.stringify(Xs(e)):e;if(xe.isArrayBuffer(e)||xe.isBuffer(e)||xe.isStream(e)||xe.isFile(e)||xe.isBlob(e))return e;if(xe.isArrayBufferView(e))return e.buffer;if(xe.isURLSearchParams(e))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let h;if(o){if(n.indexOf("application/x-www-form-urlencoded")>-1)return o1(e,this.formSerializer).toString();if((h=xe.isFileList(e))||n.indexOf("multipart/form-data")>-1){let v=this.env&&this.env.FormData;return ma(h?{"files[]":e}:e,v&&new v,this.formSerializer)}}return o||a?(r.setContentType("application/json",!1),Mm(e)):e}],transformResponse:[function(e){let r=this.transitional||Ws.transitional,n=r&&r.forcedJSONParsing,a=this.responseType==="json";if(e&&xe.isString(e)&&(n&&!this.responseType||a)){let s=!(r&&r.silentJSONParsing)&&a;try{return JSON.parse(e)}catch(h){if(s)throw h.name==="SyntaxError"?Tt.from(h,Tt.ERR_BAD_RESPONSE,this,null,this.response):h}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Or.classes.FormData,Blob:Or.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};xe.forEach(["delete","get","head"],function(e){Ws.headers[e]={}});xe.forEach(["post","put","patch"],function(e){Ws.headers[e]=xe.merge(Im)});var Oi=Ws;function Co(t,e){let r=this||Oi,n=e||r,a=Pn.from(n.headers),o=n.data;return xe.forEach(t,function(h){o=h.call(r,o,a.normalize(),e?e.status:void 0)}),a.normalize(),o}function Mo(t){return!!(t&&t.__CANCEL__)}function d1(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new ha}function Ys(t){return d1(t),t.headers=Pn.from(t.headers),t.data=Co.call(t,t.transformRequest),(t.adapter||Oi.adapter)(t).then(function(n){return d1(t),n.data=Co.call(t,t.transformResponse,n),n.headers=Pn.from(n.headers),n},function(n){return Mo(n)||(d1(t),n&&n.response&&(n.response.data=Co.call(t,t.transformResponse,n.response),n.response.headers=Pn.from(n.response.headers))),Promise.reject(n)})}function _a(t,e){e=e||{};let r={};function n(_,L){return xe.isPlainObject(_)&&xe.isPlainObject(L)?xe.merge(_,L):xe.isPlainObject(L)?xe.merge({},L):xe.isArray(L)?L.slice():L}function a(_){if(xe.isUndefined(e[_])){if(!xe.isUndefined(t[_]))return n(void 0,t[_])}else return n(t[_],e[_])}function o(_){if(!xe.isUndefined(e[_]))return n(void 0,e[_])}function s(_){if(xe.isUndefined(e[_])){if(!xe.isUndefined(t[_]))return n(void 0,t[_])}else return n(void 0,e[_])}function h(_){if(_ in e)return n(t[_],e[_]);if(_ in t)return n(void 0,t[_])}let v={url:o,method:o,data:o,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:h};return xe.forEach(Object.keys(t).concat(Object.keys(e)),function(L){let J=v[L]||a,ne=J(L);xe.isUndefined(ne)&&J!==h||(r[L]=ne)}),r}var $s="1.1.3";var v1={};["object","boolean","number","function","string","symbol"].forEach((t,e)=>{v1[t]=function(n){return typeof n===t||"a"+(e<1?"n ":" ")+t}});var If={};v1.transitional=function(e,r,n){function a(o,s){return"[Axios v"+$s+"] Transitional option '"+o+"'"+s+(n?". "+n:"")}return(o,s,h)=>{if(e===!1)throw new Tt(a(s," has been removed"+(r?" in "+r:"")),Tt.ERR_DEPRECATED);return r&&!If[s]&&(If[s]=!0,console.warn(a(s," has been deprecated since v"+r+" and will be removed in the near future"))),e?e(o,s,h):!0}};function Pm(t,e,r){if(typeof t!="object")throw new Tt("options must be an object",Tt.ERR_BAD_OPTION_VALUE);let n=Object.keys(t),a=n.length;for(;a-- >0;){let o=n[a],s=e[o];if(s){let h=t[o],v=h===void 0||s(h,o,t);if(v!==!0)throw new Tt("option "+o+" must be "+v,Tt.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new Tt("Unknown option "+o,Tt.ERR_BAD_OPTION)}}var Zs={assertOptions:Pm,validators:v1};var pa=Zs.validators,Fi=class{constructor(e){this.defaults=e,this.interceptors={request:new i1,response:new i1}}request(e,r){typeof e=="string"?(r=r||{},r.url=e):r=e||{},r=_a(this.defaults,r);let{transitional:n,paramsSerializer:a}=r;n!==void 0&&Zs.assertOptions(n,{silentJSONParsing:pa.transitional(pa.boolean),forcedJSONParsing:pa.transitional(pa.boolean),clarifyTimeoutError:pa.transitional(pa.boolean)},!1),a!==void 0&&Zs.assertOptions(a,{encode:pa.function,serialize:pa.function},!0),r.method=(r.method||this.defaults.method||"get").toLowerCase();let o=r.headers&&xe.merge(r.headers.common,r.headers[r.method]);o&&xe.forEach(["delete","get","head","post","put","patch","common"],function(F){delete r.headers[F]}),r.headers=new Pn(r.headers,o);let s=[],h=!0;this.interceptors.request.forEach(function(F){typeof F.runWhen=="function"&&F.runWhen(r)===!1||(h=h&&F.synchronous,s.unshift(F.fulfilled,F.rejected))});let v=[];this.interceptors.response.forEach(function(F){v.push(F.fulfilled,F.rejected)});let _,L=0,J;if(!h){let oe=[Ys.bind(this),void 0];for(oe.unshift.apply(oe,s),oe.push.apply(oe,v),J=oe.length,_=Promise.resolve(r);L<J;)_=_.then(oe[L++],oe[L++]);return _}J=s.length;let ne=r;for(L=0;L<J;){let oe=s[L++],F=s[L++];try{ne=oe(ne)}catch(_e){F.call(this,_e);break}}try{_=Ys.call(this,ne)}catch(oe){return Promise.reject(oe)}for(L=0,J=v.length;L<J;)_=_.then(v[L++],v[L++]);return _}getUri(e){e=_a(this.defaults,e);let r=wo(e.baseURL,e.url);return To(r,e.params,e.paramsSerializer)}};xe.forEach(["delete","get","head","options"],function(e){Fi.prototype[e]=function(r,n){return this.request(_a(n||{},{method:e,url:r,data:(n||{}).data}))}});xe.forEach(["post","put","patch"],function(e){function r(n){return function(o,s,h){return this.request(_a(h||{},{method:e,headers:n?{"Content-Type":"multipart/form-data"}:{},url:o,data:s}))}}Fi.prototype[e]=r(),Fi.prototype[e+"Form"]=r(!0)});var Po=Fi;var Bo=class{constructor(e){if(typeof e!="function")throw new TypeError("executor must be a function.");let r;this.promise=new Promise(function(o){r=o});let n=this;this.promise.then(a=>{if(!n._listeners)return;let o=n._listeners.length;for(;o-- >0;)n._listeners[o](a);n._listeners=null}),this.promise.then=a=>{let o,s=new Promise(h=>{n.subscribe(h),o=h}).then(a);return s.cancel=function(){n.unsubscribe(o)},s},e(function(o,s,h){n.reason||(n.reason=new ha(o,s,h),r(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;let r=this._listeners.indexOf(e);r!==-1&&this._listeners.splice(r,1)}static source(){let e;return{token:new Bo(function(a){e=a}),cancel:e}}},Cf=Bo;function m1(t){return function(r){return t.apply(null,r)}}function h1(t){return xe.isObject(t)&&t.isAxiosError===!0}function Mf(t){let e=new Po(t),r=yo(Po.prototype.request,e);return xe.extend(r,Po.prototype,e,{allOwnKeys:!0}),xe.extend(r,e,null,{allOwnKeys:!0}),r.create=function(a){return Mf(_a(t,a))},r}var zr=Mf(Oi);zr.Axios=Po;zr.CanceledError=ha;zr.CancelToken=Cf;zr.isCancel=Mo;zr.VERSION=$s;zr.toFormData=ma;zr.AxiosError=Tt;zr.Cancel=zr.CanceledError;zr.all=function(e){return Promise.all(e)};zr.spread=m1;zr.isAxiosError=h1;zr.formToJSON=t=>Xs(xe.isHTMLForm(t)?new FormData(t):t);var _1=zr;var{Axios:K9,AxiosError:W9,CanceledError:Y9,isCancel:$9,CancelToken:Z9,VERSION:Q9,all:J9,Cancel:ex,isAxiosError:tx,spread:rx,toFormData:nx}=_1,ki=_1;var Bm="https://proctoring-api-dev.easyproctor.tech/api",Nm="https://proctoring-api-hml.easyproctor.tech/api",Dm="https://proctoring-api.easyproctor.tech/api",Qs=class{constructor(e){this.options=e;this.baseUrl=this.selectBaseUrl(e.type)}selectBaseUrl(e){return e==="dev"?Bm:e==="homol"?Nm:Dm}async confirmStart(e,r){return await this.makeRequest({path:`/proctoring/start/${e.examId}`,method:"POST",body:{clientId:e.clientId,proctoringType:r},jwt:e.token})}async getInsights(e){return(await this.makeRequestAxios({path:"/AzureKey/getInsights",method:"GET",jwt:e.token})).data}async getAzureSignedUrl(e,r){let n=await this.makeRequestAxios({path:"/AzureKey/signed-url",method:"POST",jwt:e,body:{objectName:r.name,contentType:r.type}});return console.log("getAzureSignedUrl",n),n.data}async getAwsSignedUrl(e,r){return(await this.makeRequestAxios({path:"/AwsKey/signed-url",method:"POST",jwt:e,body:{objectName:r.name,contentType:r.type}})).data}async sendAwsToAzure(e,r){await this.makeRequest({path:"/Proctoring/aws-to-azure",method:"POST",jwt:e,body:{objectName:`${r.name}`}})}async saveScreenAlerts(e,r){await this.makeRequest({path:"/proctoring/save-screen",method:"POST",jwt:e.token,body:{proctoringId:r.id,alerts:r.alerts}})}async finishAndSendUrls(e,r){let n=await this.getServerHour(e.token).catch(()=>{}),a=n?new Date(n).toISOString():new Date().toISOString(),o=r.recordings.find(ne=>ne.origin==="Camera")?.upload,s=r.recordings.find(ne=>ne.origin==="Mic")?.upload,h=r.recordings.find(ne=>ne.origin==="Screen")?.upload,v=ne=>ne?ne.substring(0,ne.indexOf("?")):void 0,_=v(o?.azureUrl),L=v(s?.azureUrl),J=v(h?.azureUrl);await this.makeRequest({path:`/proctoring/finish/${e.examId}`,method:"POST",body:{endDate:a,videoCameraUrl:_,audioCameraUrl:L,videoScreenUrl:J},jwt:e.token})}async getServerHour(e){return await this.makeRequest({path:"/Proctoring/server-hour",method:"GET",jwt:e})}async makeRequest(e){console.log("MAKE REQUEST",e.method,e.path);let{path:r,method:n,body:a,jwt:o}=e,s=await fetch(this.baseUrl+r,{method:n,body:a!=null?JSON.stringify(a):void 0,headers:{Authorization:`Bearer ${o}`,"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 h=s.headers.get("content-type");return(h?h.includes("application/json"):!1)?await s.json():null}async makeRequestAxios(e){let{path:r,method:n,body:a,jwt:o}=e,s=await ki.request({url:this.baseUrl+r,method:n,headers:{Authorization:`Bearer ${o}`,"Access-Control-Allow-Origin":"*"},data:a});if(s.status>=400)throw"N\xE3o foi poss\xEDvel realizar a requisi\xE7\xE3o, tente novamente mais tarde";return s}async makeRequestPUT(e){let{url:r,method:n,body:a,jwt:o}=e,s=await fetch(r,{method:n,body:a!=null?JSON.stringify(a):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 h=s.headers.get("content-type");return(h?h.includes("application/json"):!1)?await s.json():null}};var Li=class{constructor(e){this.loadingBoolean=!0;this.proctoringId=e}async upload(e,r){try{let{file:n,onProgress:a}=e,o=URL.createObjectURL(n),s=document.createElement("a");document.body.appendChild(s),s.style.display="none",s.href=o,s.download=n.name,s.click(),window.URL.revokeObjectURL(o),this.loadingBoolean=!1,clearInterval(this.loadingInterval),a&&a(Math.round(100))}catch{throw new Error("Error on machine download")}}};var Js=class{constructor(e,r){this.session=e;this.recorders=r}async startAll(){this.session.start();let e=this.recorders.map(r=>r.startRecording());await Promise.all(e)}async stopAll(){let e=this.recorders.map(r=>r.stopRecording());await Promise.all(e),this.session.stop()}async saveAllOnSession(){let e=this.recorders.map(r=>{r.saveOnSession(this.session)});await Promise.all(e)}};var Ui=class{constructor(e,r){this.session=e;this.uploadServices=r}async upload(e,r){await this.uploadRecordings(e,r)}async uploadRecordings(e,r){await this.uploadAllFiles(e,r),this.session.hasSomethingToUpload||this.session.setUploaded()}async uploadAllFiles(e,r){for(let n=0;n<this.session.recordings.length;n++){let a=this.session.recordings[n];if(a.upload)continue;let o=h=>{let v=(n*100+h)/this.session.recordings.length;console.log("progress",a.origin,h,v),r&&r(v)},s=await this.uploadFile(a,e,o).catch(()=>{});s&&(a.upload||(a.upload={storage:"AzureBlob",awsUrl:"",azureUrl:""}),s.uploaded&&(a.upload.storage=s.storage),s.storage==="AzureBlob"?a.upload.azureUrl=s.url:a.upload.awsUrl=s.url)}r&&r(100)}async uploadFile(e,r,n){console.log("uploadService");for await(let a of this.uploadServices){console.log("uploadService 1"),console.log(a);let o=await a.upload({file:e.file,onProgress:s=>{n&&n(s)}},r);if(console.log("RESULTADO",o),o)return o}throw new Error("Could not upload")}};var e0=class{constructor(e,r){this.alerts=[];this.onLostFocusCallback=e.onLostFocusCallback,this.onFocusCallback=e.onFocusCallback,this.optionsProctoring=r}async startRecording(){this.startTime=new Date(Date.now()),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(e){this.alerts.forEach(r=>{e.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 e=this.alerts[this.alerts.length-1];e&&(this.onFocusCallback(),e.end=Date.now()-this.startTime.getTime())}};var Om=Bf();function Nf(t){return new Om(t)}var t0=class{constructor(){this.blobs=[]}async startRecording(){this.recorder=Nf({bitRate:128}),this.recorder.start().catch(e=>{throw new Error("Error on Audio to Start Recording")})}async stopRecording(){if(!this.recorder)return;let e=await this.recorder.stop().getMp3().then(async([r,n])=>({buffer:r,blob:n})).catch(r=>{alert("We could not retrieve your message"),console.log(r)});e&&this.blobs.push(e.blob)}async saveOnSession(e){console.log("audio buffer",[this.blobs]),e.addRecording({device:"",file:new File(this.blobs,`EP_${e.id}_audio_0.mp3`,{type:"audio/mp3"}),origin:"Mic"})}};var No=class{constructor(e,r){this.dbName="EasyProctorDb";this.dbVersion=2;this.storeName="exams2";this.dbName=e,this.storeName=r}async save(e){let{transaction:r,store:n}=await this.connectToStore("readwrite");return this.processRequest(n.put(e),r).then(()=>{})}async delete(e){let{transaction:r,store:n}=await this.connectToStore("readwrite");return this.processRequest(n.delete(e),r)}async get(e){let{transaction:r,store:n}=await this.connectToStore("readwrite");return this.processRequest(n.get(e),r).catch(()=>{})}async getDevices(e){let{transaction:r,store:n}=await this.connectToStore("readwrite");return this.processRequest(n.get(e),r).catch(()=>{})}async list(){let{transaction:e,store:r}=await this.connectToStore("readonly");return this.processRequest(r.getAll(),e)}async clear(){let{transaction:e,store:r}=await this.connectToStore("readwrite");return this.processRequest(r.clear(),e)}async processRequest(e,r){return new Promise((n,a)=>{e.onerror=o=>{a(e.error?.message)},e.onsuccess=o=>{r.commit(),n(e.result)}})}async hasSessions(){return(await this.list()).length>0}async connectToStore(e){let a=(await this.connect()).result.transaction(this.storeName,e),o=a.objectStore(this.storeName);return{transaction:a,store:o}}async connect(){return this.connection?this.connection:new Promise((e,r)=>{let n=window.indexedDB.open(this.dbName,this.dbVersion);n.onerror=a=>{console.log("request.onerror",a),r("Can't connect to IndexedDB")},n.onupgradeneeded=a=>{console.log("request.onupgradeneeded",a);let o=n.result;o.onerror=s=>{console.log("request.onupgradeneeded/db.onerror",s)},o.createObjectStore(this.storeName,{keyPath:"id"})},n.onsuccess=a=>{this.connection=n,e(n)}})}};var Do=class{constructor(e,r){this.backend=r;this.proctoringId=e}async upload(e,r){try{let{file:n,onProgress:a}=e,o=v=>{let _=v.loadedBytes/n.size*100;a&&a(Math.round(_))},s=await this.backend.getAwsSignedUrl(r,n),h=await ki.request({url:s,method:"PUT",headers:{"Content-Type":n.type},data:n,onUploadProgress:v=>{o({loadedBytes:v.loaded})}}).then(()=>!0).catch(()=>!1);return await this.backend.sendAwsToAzure(r,n),{storage:"AwsS3",url:s,uploaded:h}}catch{throw hr.registerError(this.proctoringId,"Failed to upload to azure"),new Error("Failed to upload to azure")}}};var Oo=class{constructor(e,r){this.backend=r;this.proctoringId=e}async upload(e,r){try{let{file:n,onProgress:a}=e,o=v=>{let _=v.loadedBytes/n.size*100;a&&a(Math.round(_))},s=await this.backend.getAzureSignedUrl(r,n),h=await ki.request({url:s,method:"PUT",headers:{"x-ms-blob-type":"BlockBlob"},data:n,onUploadProgress:v=>{o({loadedBytes:v.loaded})}}).then(()=>!0).catch(()=>!1);return{storage:"AzureBlob",url:s,uploaded:h}}catch{throw hr.registerError(this.proctoringId,"Failed to upload to azure"),new Error("Failed to upload to azure")}}};function x1(){let t=window.navigator.userAgent.split("SEB/");return t.length>1?t[1]:"1.0.0.0"}var r0=class{constructor(e){this.context=e;this.proctoringId="";this.insights=void 0;this.state="Stop";this.serviceType="Upload";this.onStopSharingScreenCallback=()=>{};this.onLostFocusCallback=()=>{};this.onFocusCallback=()=>{};console.log("new proctoring",e),this.backend=new Qs({type:e.type}),this.repository=new No("EasyProctorDb","exams2"),this.repositoryDevices=new No("EasyProctorDbDevices","devices")}setOnStopSharingScreenCallback(e){console.log("proctoring.setOnStopSharingScreenCallback"),this.onStopSharingScreenCallback=()=>e()}setOnLostFocusCallback(e){console.log("proctoring.setOnLostFocusCallback"),this.onLostFocusCallback=()=>e()}setOnFocusCallback(e){console.log("proctoring.setOnFocusCallback"),this.onFocusCallback=()=>e()}async onChangeDevices(e={}){new Hs(this.repositoryDevices,this.proctoringId).startRecording(e)}createRecorders(e=Ma()){let r=new ti({cameraId:this.sessionOptions.cameraId,microphoneId:this.sessionOptions.microphoneId},{width:this.videoOptions.width,height:this.videoOptions.height}),n=new t0,a=this.sessionOptions.captureScreen?new ri({allowOnlyFirstMonitor:this.sessionOptions.allowOnlyFirstMonitor??!0,onStopSharingScreenCallback:()=>this.onStopSharingScreenCallback()}):void 0,o=new e0({onFocusCallback:()=>this.onFocusCallback(),onLostFocusCallback:()=>this.onLostFocusCallback()},e);this.onChangeDevices();let s=[r,n,a,o].filter(Boolean);return this.recorder=new Js(this.proctoringSession,s),{cameraRecorder:r,audioRecorder:n,screenRecorder:a,alertRecorder:o}}async start(e=Ma(),r={}){console.log("proctoring.start",e,r),this.extension=new es,this.extension.addEventListener();let n=await Ca();if(await this.repositoryDevices.save({...n,id:"devices"}),this.sessionOptions=e,this.videoOptions=Qo(r),this.state!="Stop")throw W1;this.state="Starting",await this.initConfig(),await this.verifyMultipleMonitors(this.sessionOptions),await this.repository.hasSessions()&&await this.repository.clear();try{let a=await this.backend.confirmStart({clientId:this.context.clientId,examId:this.context.examId,token:this.context.token},this.sessionOptions.proctoringType);this.proctoringId=a.id,this.proctoringSession=new Yo(this.proctoringId);let o=this.createRecorders(e);return await this.recorder.startAll(),await this.repository.save(this.proctoringSession),hr.registerStart(this.proctoringId,!0,""),a.cameraStream=o.cameraRecorder.cameraStream,o.screenRecorder&&(a.screenStream=o.screenRecorder.screenStream),this.state="Recording",console.log("ProctoringState.Recording ","Recording"),a}catch(a){throw await this.cancel(),hr.registerStart(this.proctoringId,!1,""+a),console.log("Entrei no CATCH"),this.state="Stop",a}}async cancel(){this.state==="Recording"&&await this.recorder.stopAll(),this.state="Stop"}async finish(e={}){if(console.log("proctoring.finish",e),console.log("state ",this.state),console.log("ProctoringState.Recording ","Recording"),this.state!=="Recording")throw Zo;await this.recorder.stopAll(),await this.recorder.saveAllOnSession(),await this.repository.save(this.proctoringSession);let r,n;x1()!=="1.0.0.0"?(r=new Ui(this.proctoringSession,[new Li(this.proctoringId)]),n="Download",this.serviceType="Download"):(r=new Ui(this.proctoringSession,[new Oo(this.proctoringId,this.backend),new Do(this.proctoringId,this.backend),new Li(this.proctoringId)]),n="Azure, AWS, Download",this.serviceType="Upload"),console.log("tem a extens\xE3o ?",this.extension.hasExtension),this.extension.hasExtension?this.extension.start():(await r.upload(this.context.token,e.onProgress).catch(async a=>{hr.registerUploadVideo(this.proctoringSession.id,!1,`upload error: ${a}
|
|
21
|
+
`).forEach(function(s){a=s.indexOf(":"),r=s.substring(0,a).trim().toLowerCase(),n=s.substring(a+1).trim(),!(!r||e[r]&&Em[r])&&(r==="set-cookie"?e[r]?e[r].push(n):e[r]=[n]:e[r]=e[r]?e[r]+", "+n:n)}),e};var yf=Symbol("internals"),Tf=Symbol("defaults");function Ao(t){return t&&String(t).trim().toLowerCase()}function Ks(t){return t===!1||t==null?t:xe.isArray(t)?t.map(Ks):String(t)}function Tm(t){let e=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g,n;for(;n=r.exec(t);)e[n[1]]=n[2];return e}function Ef(t,e,r,n){if(xe.isFunction(n))return n.call(this,e,r);if(!!xe.isString(e)){if(xe.isString(n))return e.indexOf(n)!==-1;if(xe.isRegExp(n))return n.test(e)}}function wm(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,r,n)=>r.toUpperCase()+n)}function Rm(t,e){let r=xe.toCamelCase(" "+e);["get","set","has"].forEach(n=>{Object.defineProperty(t,n+r,{value:function(a,o,s){return this[n].call(this,e,a,o,s)},configurable:!0})})}function Ro(t,e){e=e.toLowerCase();let r=Object.keys(t),n=r.length,a;for(;n-- >0;)if(a=r[n],e===a.toLowerCase())return a;return null}function Di(t,e){t&&this.set(t),this[Tf]=e||null}Object.assign(Di.prototype,{set:function(t,e,r){let n=this;function a(o,s,h){let v=Ao(s);if(!v)throw new Error("header name must be a non-empty string");let _=Ro(n,v);_&&h!==!0&&(n[_]===!1||h===!1)||(n[_||s]=Ks(o))}return xe.isPlainObject(t)?xe.forEach(t,(o,s)=>{a(o,s,e)}):a(e,t,r),this},get:function(t,e){if(t=Ao(t),!t)return;let r=Ro(this,t);if(r){let n=this[r];if(!e)return n;if(e===!0)return Tm(n);if(xe.isFunction(e))return e.call(this,n,r);if(xe.isRegExp(e))return e.exec(n);throw new TypeError("parser must be boolean|regexp|function")}},has:function(t,e){if(t=Ao(t),t){let r=Ro(this,t);return!!(r&&(!e||Ef(this,this[r],r,e)))}return!1},delete:function(t,e){let r=this,n=!1;function a(o){if(o=Ao(o),o){let s=Ro(r,o);s&&(!e||Ef(r,r[s],s,e))&&(delete r[s],n=!0)}}return xe.isArray(t)?t.forEach(a):a(t),n},clear:function(){return Object.keys(this).forEach(this.delete.bind(this))},normalize:function(t){let e=this,r={};return xe.forEach(this,(n,a)=>{let o=Ro(r,a);if(o){e[o]=Ks(n),delete e[a];return}let s=t?wm(a):String(a).trim();s!==a&&delete e[a],e[s]=Ks(n),r[s]=!0}),this},toJSON:function(t){let e=Object.create(null);return xe.forEach(Object.assign({},this[Tf]||null,this),(r,n)=>{r==null||r===!1||(e[n]=t&&xe.isArray(r)?r.join(", "):r)}),e}});Object.assign(Di,{from:function(t){return xe.isString(t)?new this(gf(t)):t instanceof this?t:new this(t)},accessor:function(t){let r=(this[yf]=this[yf]={accessors:{}}).accessors,n=this.prototype;function a(o){let s=Ao(o);r[s]||(Rm(n,o),r[s]=!0)}return xe.isArray(t)?t.forEach(a):a(t),this}});Di.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent"]);xe.freezeMethods(Di.prototype);xe.freezeMethods(Di);var Pn=Di;function Am(t,e){t=t||10;let r=new Array(t),n=new Array(t),a=0,o=0,s;return e=e!==void 0?e:1e3,function(v){let _=Date.now(),L=n[o];s||(s=_),r[a]=v,n[a]=_;let J=o,ne=0;for(;J!==a;)ne+=r[J++],J=J%t;if(a=(a+1)%t,a===o&&(o=(o+1)%t),_-s<e)return;let oe=L&&_-L;return oe?Math.round(ne*1e3/oe):void 0}}var wf=Am;function Rf(t,e){let r=0,n=wf(50,250);return a=>{let o=a.loaded,s=a.lengthComputable?a.total:void 0,h=o-r,v=n(h),_=o<=s;r=o;let L={loaded:o,total:s,progress:s?o/s:void 0,bytes:h,rate:v||void 0,estimated:v&&s&&_?(s-o)/v:void 0};L[e?"download":"upload"]=!0,t(L)}}function Io(t){return new Promise(function(r,n){let a=t.data,o=Pn.from(t.headers).normalize(),s=t.responseType,h;function v(){t.cancelToken&&t.cancelToken.unsubscribe(h),t.signal&&t.signal.removeEventListener("abort",h)}xe.isFormData(a)&&Or.isStandardBrowserEnv&&o.setContentType(!1);let _=new XMLHttpRequest;if(t.auth){let oe=t.auth.username||"",F=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";o.set("Authorization","Basic "+btoa(oe+":"+F))}let L=wo(t.baseURL,t.url);_.open(t.method.toUpperCase(),To(L,t.params,t.paramsSerializer),!0),_.timeout=t.timeout;function J(){if(!_)return;let oe=Pn.from("getAllResponseHeaders"in _&&_.getAllResponseHeaders()),_e={data:!s||s==="text"||s==="json"?_.responseText:_.response,status:_.status,statusText:_.statusText,headers:oe,config:t,request:_};s1(function(le){r(le),v()},function(le){n(le),v()},_e),_=null}if("onloadend"in _?_.onloadend=J:_.onreadystatechange=function(){!_||_.readyState!==4||_.status===0&&!(_.responseURL&&_.responseURL.indexOf("file:")===0)||setTimeout(J)},_.onabort=function(){!_||(n(new Tt("Request aborted",Tt.ECONNABORTED,t,_)),_=null)},_.onerror=function(){n(new Tt("Network Error",Tt.ERR_NETWORK,t,_)),_=null},_.ontimeout=function(){let F=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded",_e=t.transitional||Gs;t.timeoutErrorMessage&&(F=t.timeoutErrorMessage),n(new Tt(F,_e.clarifyTimeoutError?Tt.ETIMEDOUT:Tt.ECONNABORTED,t,_)),_=null},Or.isStandardBrowserEnv){let oe=(t.withCredentials||xf(L))&&t.xsrfCookieName&&Sf.read(t.xsrfCookieName);oe&&o.set(t.xsrfHeaderName,oe)}a===void 0&&o.setContentType(null),"setRequestHeader"in _&&xe.forEach(o.toJSON(),function(F,_e){_.setRequestHeader(_e,F)}),xe.isUndefined(t.withCredentials)||(_.withCredentials=!!t.withCredentials),s&&s!=="json"&&(_.responseType=t.responseType),typeof t.onDownloadProgress=="function"&&_.addEventListener("progress",Rf(t.onDownloadProgress,!0)),typeof t.onUploadProgress=="function"&&_.upload&&_.upload.addEventListener("progress",Rf(t.onUploadProgress)),(t.cancelToken||t.signal)&&(h=oe=>{!_||(n(!oe||oe.type?new ha(null,t,_):oe),_.abort(),_=null)},t.cancelToken&&t.cancelToken.subscribe(h),t.signal&&(t.signal.aborted?h():t.signal.addEventListener("abort",h)));let ne=u1(L);if(ne&&Or.protocols.indexOf(ne)===-1){n(new Tt("Unsupported protocol "+ne+":",Tt.ERR_BAD_REQUEST,t));return}_.send(a||null)})}var Af={http:Io,xhr:Io},f1={getAdapter:t=>{if(xe.isString(t)){let e=Af[t];if(!t)throw Error(xe.hasOwnProp(t)?`Adapter '${t}' is not available in the build`:`Can not resolve adapter '${t}'`);return e}if(!xe.isFunction(t))throw new TypeError("adapter is not a function");return t},adapters:Af};var Im={"Content-Type":"application/x-www-form-urlencoded"};function Cm(){let t;return typeof XMLHttpRequest<"u"?t=f1.getAdapter("xhr"):typeof process<"u"&&xe.kindOf(process)==="process"&&(t=f1.getAdapter("http")),t}function Mm(t,e,r){if(xe.isString(t))try{return(e||JSON.parse)(t),xe.trim(t)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(t)}var Ws={transitional:Gs,adapter:Cm(),transformRequest:[function(e,r){let n=r.getContentType()||"",a=n.indexOf("application/json")>-1,o=xe.isObject(e);if(o&&xe.isHTMLForm(e)&&(e=new FormData(e)),xe.isFormData(e))return a&&a?JSON.stringify(Xs(e)):e;if(xe.isArrayBuffer(e)||xe.isBuffer(e)||xe.isStream(e)||xe.isFile(e)||xe.isBlob(e))return e;if(xe.isArrayBufferView(e))return e.buffer;if(xe.isURLSearchParams(e))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let h;if(o){if(n.indexOf("application/x-www-form-urlencoded")>-1)return o1(e,this.formSerializer).toString();if((h=xe.isFileList(e))||n.indexOf("multipart/form-data")>-1){let v=this.env&&this.env.FormData;return ma(h?{"files[]":e}:e,v&&new v,this.formSerializer)}}return o||a?(r.setContentType("application/json",!1),Mm(e)):e}],transformResponse:[function(e){let r=this.transitional||Ws.transitional,n=r&&r.forcedJSONParsing,a=this.responseType==="json";if(e&&xe.isString(e)&&(n&&!this.responseType||a)){let s=!(r&&r.silentJSONParsing)&&a;try{return JSON.parse(e)}catch(h){if(s)throw h.name==="SyntaxError"?Tt.from(h,Tt.ERR_BAD_RESPONSE,this,null,this.response):h}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Or.classes.FormData,Blob:Or.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};xe.forEach(["delete","get","head"],function(e){Ws.headers[e]={}});xe.forEach(["post","put","patch"],function(e){Ws.headers[e]=xe.merge(Im)});var Oi=Ws;function Co(t,e){let r=this||Oi,n=e||r,a=Pn.from(n.headers),o=n.data;return xe.forEach(t,function(h){o=h.call(r,o,a.normalize(),e?e.status:void 0)}),a.normalize(),o}function Mo(t){return!!(t&&t.__CANCEL__)}function d1(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new ha}function Ys(t){return d1(t),t.headers=Pn.from(t.headers),t.data=Co.call(t,t.transformRequest),(t.adapter||Oi.adapter)(t).then(function(n){return d1(t),n.data=Co.call(t,t.transformResponse,n),n.headers=Pn.from(n.headers),n},function(n){return Mo(n)||(d1(t),n&&n.response&&(n.response.data=Co.call(t,t.transformResponse,n.response),n.response.headers=Pn.from(n.response.headers))),Promise.reject(n)})}function _a(t,e){e=e||{};let r={};function n(_,L){return xe.isPlainObject(_)&&xe.isPlainObject(L)?xe.merge(_,L):xe.isPlainObject(L)?xe.merge({},L):xe.isArray(L)?L.slice():L}function a(_){if(xe.isUndefined(e[_])){if(!xe.isUndefined(t[_]))return n(void 0,t[_])}else return n(t[_],e[_])}function o(_){if(!xe.isUndefined(e[_]))return n(void 0,e[_])}function s(_){if(xe.isUndefined(e[_])){if(!xe.isUndefined(t[_]))return n(void 0,t[_])}else return n(void 0,e[_])}function h(_){if(_ in e)return n(t[_],e[_]);if(_ in t)return n(void 0,t[_])}let v={url:o,method:o,data:o,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:h};return xe.forEach(Object.keys(t).concat(Object.keys(e)),function(L){let J=v[L]||a,ne=J(L);xe.isUndefined(ne)&&J!==h||(r[L]=ne)}),r}var $s="1.1.3";var v1={};["object","boolean","number","function","string","symbol"].forEach((t,e)=>{v1[t]=function(n){return typeof n===t||"a"+(e<1?"n ":" ")+t}});var If={};v1.transitional=function(e,r,n){function a(o,s){return"[Axios v"+$s+"] Transitional option '"+o+"'"+s+(n?". "+n:"")}return(o,s,h)=>{if(e===!1)throw new Tt(a(s," has been removed"+(r?" in "+r:"")),Tt.ERR_DEPRECATED);return r&&!If[s]&&(If[s]=!0,console.warn(a(s," has been deprecated since v"+r+" and will be removed in the near future"))),e?e(o,s,h):!0}};function Pm(t,e,r){if(typeof t!="object")throw new Tt("options must be an object",Tt.ERR_BAD_OPTION_VALUE);let n=Object.keys(t),a=n.length;for(;a-- >0;){let o=n[a],s=e[o];if(s){let h=t[o],v=h===void 0||s(h,o,t);if(v!==!0)throw new Tt("option "+o+" must be "+v,Tt.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new Tt("Unknown option "+o,Tt.ERR_BAD_OPTION)}}var Zs={assertOptions:Pm,validators:v1};var pa=Zs.validators,Fi=class{constructor(e){this.defaults=e,this.interceptors={request:new i1,response:new i1}}request(e,r){typeof e=="string"?(r=r||{},r.url=e):r=e||{},r=_a(this.defaults,r);let{transitional:n,paramsSerializer:a}=r;n!==void 0&&Zs.assertOptions(n,{silentJSONParsing:pa.transitional(pa.boolean),forcedJSONParsing:pa.transitional(pa.boolean),clarifyTimeoutError:pa.transitional(pa.boolean)},!1),a!==void 0&&Zs.assertOptions(a,{encode:pa.function,serialize:pa.function},!0),r.method=(r.method||this.defaults.method||"get").toLowerCase();let o=r.headers&&xe.merge(r.headers.common,r.headers[r.method]);o&&xe.forEach(["delete","get","head","post","put","patch","common"],function(F){delete r.headers[F]}),r.headers=new Pn(r.headers,o);let s=[],h=!0;this.interceptors.request.forEach(function(F){typeof F.runWhen=="function"&&F.runWhen(r)===!1||(h=h&&F.synchronous,s.unshift(F.fulfilled,F.rejected))});let v=[];this.interceptors.response.forEach(function(F){v.push(F.fulfilled,F.rejected)});let _,L=0,J;if(!h){let oe=[Ys.bind(this),void 0];for(oe.unshift.apply(oe,s),oe.push.apply(oe,v),J=oe.length,_=Promise.resolve(r);L<J;)_=_.then(oe[L++],oe[L++]);return _}J=s.length;let ne=r;for(L=0;L<J;){let oe=s[L++],F=s[L++];try{ne=oe(ne)}catch(_e){F.call(this,_e);break}}try{_=Ys.call(this,ne)}catch(oe){return Promise.reject(oe)}for(L=0,J=v.length;L<J;)_=_.then(v[L++],v[L++]);return _}getUri(e){e=_a(this.defaults,e);let r=wo(e.baseURL,e.url);return To(r,e.params,e.paramsSerializer)}};xe.forEach(["delete","get","head","options"],function(e){Fi.prototype[e]=function(r,n){return this.request(_a(n||{},{method:e,url:r,data:(n||{}).data}))}});xe.forEach(["post","put","patch"],function(e){function r(n){return function(o,s,h){return this.request(_a(h||{},{method:e,headers:n?{"Content-Type":"multipart/form-data"}:{},url:o,data:s}))}}Fi.prototype[e]=r(),Fi.prototype[e+"Form"]=r(!0)});var Po=Fi;var Bo=class{constructor(e){if(typeof e!="function")throw new TypeError("executor must be a function.");let r;this.promise=new Promise(function(o){r=o});let n=this;this.promise.then(a=>{if(!n._listeners)return;let o=n._listeners.length;for(;o-- >0;)n._listeners[o](a);n._listeners=null}),this.promise.then=a=>{let o,s=new Promise(h=>{n.subscribe(h),o=h}).then(a);return s.cancel=function(){n.unsubscribe(o)},s},e(function(o,s,h){n.reason||(n.reason=new ha(o,s,h),r(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;let r=this._listeners.indexOf(e);r!==-1&&this._listeners.splice(r,1)}static source(){let e;return{token:new Bo(function(a){e=a}),cancel:e}}},Cf=Bo;function m1(t){return function(r){return t.apply(null,r)}}function h1(t){return xe.isObject(t)&&t.isAxiosError===!0}function Mf(t){let e=new Po(t),r=yo(Po.prototype.request,e);return xe.extend(r,Po.prototype,e,{allOwnKeys:!0}),xe.extend(r,e,null,{allOwnKeys:!0}),r.create=function(a){return Mf(_a(t,a))},r}var zr=Mf(Oi);zr.Axios=Po;zr.CanceledError=ha;zr.CancelToken=Cf;zr.isCancel=Mo;zr.VERSION=$s;zr.toFormData=ma;zr.AxiosError=Tt;zr.Cancel=zr.CanceledError;zr.all=function(e){return Promise.all(e)};zr.spread=m1;zr.isAxiosError=h1;zr.formToJSON=t=>Xs(xe.isHTMLForm(t)?new FormData(t):t);var _1=zr;var{Axios:K9,AxiosError:W9,CanceledError:Y9,isCancel:$9,CancelToken:Z9,VERSION:Q9,all:J9,Cancel:ex,isAxiosError:tx,spread:rx,toFormData:nx}=_1,ki=_1;var Bm="https://proctoring-api-dev.easyproctor.tech/api",Nm="https://proctoring-api-hml.easyproctor.tech/api",Dm="https://proctoring-api.easyproctor.tech/api",Qs=class{constructor(e){this.options=e;this.baseUrl=this.selectBaseUrl(e.type)}selectBaseUrl(e){return e==="dev"?Bm:e==="homol"?Nm:Dm}async confirmStart(e,r){return await this.makeRequest({path:`/proctoring/start/${e.examId}`,method:"POST",body:{clientId:e.clientId,proctoringType:r},jwt:e.token})}async getInsights(e){return(await this.makeRequestAxios({path:"/AzureKey/getInsights",method:"GET",jwt:e.token})).data}async getAzureSignedUrl(e,r){let n=await this.makeRequestAxios({path:"/AzureKey/signed-url",method:"POST",jwt:e,body:{objectName:r.name,contentType:r.type}});return console.log("getAzureSignedUrl",n),n.data}async getAwsSignedUrl(e,r){return(await this.makeRequestAxios({path:"/AwsKey/signed-url",method:"POST",jwt:e,body:{objectName:r.name,contentType:r.type}})).data}async sendAwsToAzure(e,r){await this.makeRequest({path:"/Proctoring/aws-to-azure",method:"POST",jwt:e,body:{objectName:`${r.name}`}})}async saveScreenAlerts(e,r){await this.makeRequest({path:"/proctoring/save-screen",method:"POST",jwt:e.token,body:{proctoringId:r.id,alerts:r.alerts}})}async finishAndSendUrls(e,r){let n=await this.getServerHour(e.token).catch(()=>{}),a=n?new Date(n).toISOString():new Date().toISOString(),o=r.recordings.find(ne=>ne.origin==="Camera")?.upload,s=r.recordings.find(ne=>ne.origin==="Mic")?.upload,h=r.recordings.find(ne=>ne.origin==="Screen")?.upload,v=ne=>ne?ne.substring(0,ne.indexOf("?")):void 0,_=v(o?.azureUrl),L=v(s?.azureUrl),J=v(h?.azureUrl);await this.makeRequest({path:`/proctoring/finish/${e.examId}`,method:"POST",body:{endDate:a,videoCameraUrl:_,audioCameraUrl:L,videoScreenUrl:J},jwt:e.token})}async getServerHour(e){return await this.makeRequest({path:"/Proctoring/server-hour",method:"GET",jwt:e})}async makeRequest(e){console.log("MAKE REQUEST",e.method,e.path);let{path:r,method:n,body:a,jwt:o}=e,s=await fetch(this.baseUrl+r,{method:n,body:a!=null?JSON.stringify(a):void 0,headers:{Authorization:`Bearer ${o}`,"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 h=s.headers.get("content-type");return(h?h.includes("application/json"):!1)?await s.json():null}async makeRequestAxios(e){let{path:r,method:n,body:a,jwt:o}=e,s=await ki.request({url:this.baseUrl+r,method:n,headers:{Authorization:`Bearer ${o}`,"Access-Control-Allow-Origin":"*"},data:a});if(s.status>=400)throw"N\xE3o foi poss\xEDvel realizar a requisi\xE7\xE3o, tente novamente mais tarde";return s}async makeRequestPUT(e){let{url:r,method:n,body:a,jwt:o}=e,s=await fetch(r,{method:n,body:a!=null?JSON.stringify(a):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 h=s.headers.get("content-type");return(h?h.includes("application/json"):!1)?await s.json():null}};var Li=class{constructor(e){this.loadingBoolean=!0;this.proctoringId=e}async upload(e,r){try{let{file:n,onProgress:a}=e,o=URL.createObjectURL(n),s=document.createElement("a");document.body.appendChild(s),s.style.display="none",s.href=o,s.download=n.name,s.click(),window.URL.revokeObjectURL(o),this.loadingBoolean=!1,clearInterval(this.loadingInterval),a&&a(Math.round(100))}catch{throw new Error("Error on machine download")}}};var Js=class{constructor(e,r){this.session=e;this.recorders=r}async startAll(){this.session.start();let e=this.recorders.map(r=>r.startRecording());await Promise.all(e)}async stopAll(){let e=this.recorders.map(r=>r.stopRecording());await Promise.all(e),this.session.stop()}async saveAllOnSession(){let e=this.recorders.map(r=>{r.saveOnSession(this.session)});await Promise.all(e)}};var Ui=class{constructor(e,r){this.session=e;this.uploadServices=r}async upload(e,r){await this.uploadRecordings(e,r)}async uploadRecordings(e,r){await this.uploadAllFiles(e,r),this.session.hasSomethingToUpload||this.session.setUploaded()}async uploadAllFiles(e,r){for(let n=0;n<this.session.recordings.length;n++){let a=this.session.recordings[n];if(a.upload)continue;let o=h=>{let v=(n*100+h)/this.session.recordings.length;console.log("progress",a.origin,h,v),r&&r(v)},s=await this.uploadFile(a,e,o).catch(()=>{});s&&(a.upload||(a.upload={storage:"AzureBlob",awsUrl:"",azureUrl:""}),s.uploaded&&(a.upload.storage=s.storage),s.storage==="AzureBlob"?a.upload.azureUrl=s.url:a.upload.awsUrl=s.url)}r&&r(100)}async uploadFile(e,r,n){console.log("uploadService");for await(let a of this.uploadServices){console.log("uploadService 1"),console.log(a);let o=await a.upload({file:e.file,onProgress:s=>{n&&n(s)}},r);if(console.log("RESULTADO",o),o)return o}throw new Error("Could not upload")}};var e0=class{constructor(e,r){this.alerts=[];this.onLostFocusCallback=e.onLostFocusCallback,this.onFocusCallback=e.onFocusCallback,this.optionsProctoring=r}async startRecording(){this.startTime=new Date(Date.now()),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(e){this.alerts.forEach(r=>{e.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 e=this.alerts[this.alerts.length-1];e&&(this.onFocusCallback(),e.end=Date.now()-this.startTime.getTime())}};var Om=Bf();function Nf(t){return new Om(t)}var t0=class{constructor(){this.blobs=[]}async startRecording(){this.recorder=Nf({bitRate:128}),this.recorder.start().catch(e=>{throw new Error("Error on Audio to Start Recording")})}async stopRecording(){if(!this.recorder)return;let e=await this.recorder.stop().getMp3().then(async([r,n])=>({buffer:r,blob:n})).catch(r=>{alert("We could not retrieve your message"),console.log(r)});e&&this.blobs.push(e.blob)}async saveOnSession(e){console.log("audio buffer",[this.blobs]),e.addRecording({device:"",file:new File(this.blobs,`EP_${e.id}_audio_0.mp3`,{type:"audio/mp3"}),origin:"Mic"})}};var No=class{constructor(e,r){this.dbName="EasyProctorDb";this.dbVersion=2;this.storeName="exams2";this.dbName=e,this.storeName=r}async save(e){let{transaction:r,store:n}=await this.connectToStore("readwrite");return this.processRequest(n.put(e),r).then(()=>{})}async delete(e){let{transaction:r,store:n}=await this.connectToStore("readwrite");return this.processRequest(n.delete(e),r)}async get(e){let{transaction:r,store:n}=await this.connectToStore("readwrite");return this.processRequest(n.get(e),r).catch(()=>{})}async getDevices(e){let{transaction:r,store:n}=await this.connectToStore("readwrite");return this.processRequest(n.get(e),r).catch(()=>{})}async list(){let{transaction:e,store:r}=await this.connectToStore("readonly");return this.processRequest(r.getAll(),e)}async clear(){let{transaction:e,store:r}=await this.connectToStore("readwrite");return this.processRequest(r.clear(),e)}async processRequest(e,r){return new Promise((n,a)=>{e.onerror=o=>{a(e.error?.message)},e.onsuccess=o=>{r.commit(),n(e.result)}})}async hasSessions(){return(await this.list()).length>0}async connectToStore(e){let a=(await this.connect()).result.transaction(this.storeName,e),o=a.objectStore(this.storeName);return{transaction:a,store:o}}async connect(){return this.connection?this.connection:new Promise((e,r)=>{let n=window.indexedDB.open(this.dbName,this.dbVersion);n.onerror=a=>{console.log("request.onerror",a),r("Can't connect to IndexedDB")},n.onupgradeneeded=a=>{console.log("request.onupgradeneeded",a);let o=n.result;o.onerror=s=>{console.log("request.onupgradeneeded/db.onerror",s)},o.createObjectStore(this.storeName,{keyPath:"id"})},n.onsuccess=a=>{this.connection=n,e(n)}})}};var Do=class{constructor(e,r){this.backend=r;this.proctoringId=e}async upload(e,r){try{let{file:n,onProgress:a}=e,o=v=>{let _=v.loadedBytes/n.size*100;a&&a(Math.round(_))},s=await this.backend.getAwsSignedUrl(r,n),h=await ki.request({url:s,method:"PUT",headers:{"Content-Type":n.type},data:n,onUploadProgress:v=>{o({loadedBytes:v.loaded})}}).then(()=>!0).catch(()=>!1);return await this.backend.sendAwsToAzure(r,n),{storage:"AwsS3",url:s,uploaded:h}}catch{throw hr.registerError(this.proctoringId,"Failed to upload to azure"),new Error("Failed to upload to azure")}}};var Oo=class{constructor(e,r){this.backend=r;this.proctoringId=e}async upload(e,r){try{let{file:n,onProgress:a}=e,o=v=>{let _=v.loadedBytes/n.size*100;a&&a(Math.round(_))},s=await this.backend.getAzureSignedUrl(r,n),h=await ki.request({url:s,method:"PUT",headers:{"x-ms-blob-type":"BlockBlob"},data:n,onUploadProgress:v=>{o({loadedBytes:v.loaded})}}).then(()=>!0).catch(()=>!1);return{storage:"AzureBlob",url:s,uploaded:h}}catch{throw hr.registerError(this.proctoringId,"Failed to upload to azure"),new Error("Failed to upload to azure")}}};function x1(){let t=window.navigator.userAgent.split("SEB/");return t.length>1?t[1]:"1.0.0.0"}var r0=class{constructor(e){this.context=e;this.proctoringId="";this.insights=void 0;this.state="Stop";this.serviceType="Upload";this.onStopSharingScreenCallback=()=>{};this.onLostFocusCallback=()=>{};this.onFocusCallback=()=>{};console.log("new proctoring",e),this.backend=new Qs({type:e.type}),this.repository=new No("EasyProctorDb","exams2"),this.repositoryDevices=new No("EasyProctorDbDevices","devices")}setOnStopSharingScreenCallback(e){console.log("proctoring.setOnStopSharingScreenCallback"),this.onStopSharingScreenCallback=()=>e()}setOnLostFocusCallback(e){console.log("proctoring.setOnLostFocusCallback"),this.onLostFocusCallback=()=>e()}setOnFocusCallback(e){console.log("proctoring.setOnFocusCallback"),this.onFocusCallback=()=>e()}async onChangeDevices(e={}){new Hs(this.repositoryDevices,this.proctoringId).startRecording(e)}createRecorders(e=Ma()){let r=new ti({cameraId:this.sessionOptions.cameraId,microphoneId:this.sessionOptions.microphoneId},{width:this.videoOptions.width,height:this.videoOptions.height}),n=new t0,a=this.sessionOptions.captureScreen?new ri({allowOnlyFirstMonitor:this.sessionOptions.allowOnlyFirstMonitor??!0,onStopSharingScreenCallback:()=>this.onStopSharingScreenCallback()}):void 0,o=new e0({onFocusCallback:()=>this.onFocusCallback(),onLostFocusCallback:()=>this.onLostFocusCallback()},e);this.onChangeDevices();let s=[r,n,a,o].filter(Boolean);return this.recorder=new Js(this.proctoringSession,s),{cameraRecorder:r,audioRecorder:n,screenRecorder:a,alertRecorder:o}}async start(e=Ma(),r={}){console.log("proctoring.start",e,r),this.extension=new es,this.extension.addEventListener();let n=await Ca();if(await this.repositoryDevices.save({...n,id:"devices"}),this.sessionOptions=e,this.videoOptions=Qo(r),this.state!="Stop")throw W1;this.state="Starting",await this.initConfig(),await this.verifyMultipleMonitors(this.sessionOptions),await this.repository.hasSessions()&&await this.repository.clear();try{let a=await this.backend.confirmStart({clientId:this.context.clientId,examId:this.context.examId,token:this.context.token},this.sessionOptions.proctoringType);this.proctoringId=a.id,this.proctoringSession=new Yo(this.proctoringId);let o=this.createRecorders(e);return await this.recorder.startAll(),await this.repository.save(this.proctoringSession),hr.registerStart(this.proctoringId,!0,""),a.cameraStream=o.cameraRecorder.cameraStream,o.screenRecorder&&(a.screenStream=o.screenRecorder.screenStream),this.state="Recording",console.log("ProctoringState.Recording ","Recording"),a}catch(a){throw await this.cancel(),hr.registerStart(this.proctoringId,!1,""+a),console.log("Entrei no CATCH"),this.state="Stop",a}}async cancel(){this.state==="Recording"&&await this.recorder.stopAll(),this.state="Stop"}async finish(e={}){if(this.extension.onProgress=()=>e.onProgress,console.log("proctoring.finish",e),console.log("state ",this.state),console.log("ProctoringState.Recording ","Recording"),this.state!=="Recording")throw Zo;await this.recorder.stopAll(),await this.recorder.saveAllOnSession(),await this.repository.save(this.proctoringSession);let r,n;x1()!=="1.0.0.0"?(r=new Ui(this.proctoringSession,[new Li(this.proctoringId)]),n="Download",this.serviceType="Download"):(r=new Ui(this.proctoringSession,[new Oo(this.proctoringId,this.backend),new Do(this.proctoringId,this.backend),new Li(this.proctoringId)]),n="Azure, AWS, Download",this.serviceType="Upload"),console.log("tem a extens\xE3o ?",this.extension.hasExtension),this.extension.hasExtension?this.extension.start():(await r.upload(this.context.token,e.onProgress).catch(async a=>{hr.registerUploadVideo(this.proctoringSession.id,!1,`upload error: ${a}
|
|
22
22
|
|
|
23
23
|
Upload Services: ${n}`,this.serviceType),x1()!=="1.0.0.0"&&(r=new Ui(this.proctoringSession,[new Oo(this.proctoringId,this.backend),new Do(this.proctoringId,this.backend),new Li(this.proctoringId)]),n="Azure, AWS, Download",this.serviceType="Upload",await r.upload(this.context.token,e.onProgress).catch(o=>{hr.registerUploadVideo(this.proctoringSession.id,!1,`upload backup error: ${o}
|
|
24
24
|
|