From 25015a33a3b126e14c952e84934537eb9eabffc1 Mon Sep 17 00:00:00 2001 From: steveseguin Date: Thu, 27 Oct 2022 08:22:45 -0400 Subject: [PATCH] recent updates; comms app,etc --- comms.html | 2140 +++++++++++++++ examples/muteguestiframe.html | 319 +++ index.html | 110 +- lib.js | 648 +++-- main.css | 14 +- main.js | 172 +- meet.html | 1949 +++++++++++++ mixer.html | 21 +- speedtest.html | 8 + thirdparty/CodecsHandler.js | 31 +- thirdparty/adapter.js | 3514 ++++++++++++++++++++++++ thirdparty/adapter.min.js | 11 - thirdparty/jeeliz/JeelizThreeHelper.js | 2 +- translations/blank.json | 4 +- translations/cn.json | 2 +- translations/cs.json | 2 +- translations/de.json | 2 +- translations/en.json | 2 +- translations/es.json | 2 +- translations/eu.json | 2 +- translations/fr.json | 2 +- translations/it.json | 2 +- translations/ja.json | 2 +- translations/nl.json | 2 +- translations/pig.json | 2 +- translations/pt-br.json | 2 +- translations/pt.json | 2 +- translations/ru.json | 2 +- translations/tr.json | 2 +- translations/uk.json | 2 +- webrtc.js | 2 +- 31 files changed, 8647 insertions(+), 330 deletions(-) create mode 100644 comms.html create mode 100644 examples/muteguestiframe.html create mode 100644 meet.html create mode 100644 thirdparty/adapter.js delete mode 100644 thirdparty/adapter.min.js diff --git a/comms.html b/comms.html new file mode 100644 index 0000000..d995350 --- /dev/null +++ b/comms.html @@ -0,0 +1,2140 @@ + + + Comms app + + + + + + + + + + + + + + + + +
+
+
+ + +
+
+

Comms

multi-group audio chat

+ + + + Generate a random room name + +
+
+

+ +

+ +
+
+
+
+
+ + +
+ + + + \ No newline at end of file diff --git a/examples/muteguestiframe.html b/examples/muteguestiframe.html new file mode 100644 index 0000000..74f24bd --- /dev/null +++ b/examples/muteguestiframe.html @@ -0,0 +1,319 @@ + + + IFRAME Example + + + + + + + + +
+ + +
+ The password for guests is 1234
+
+
+ Custom guest invites and toggles for add/removing from scene=1 are on the bottom. +
+ + \ No newline at end of file diff --git a/index.html b/index.html index a65074a..853606f 100644 --- a/index.html +++ b/index.html @@ -57,8 +57,8 @@ - - + + - + diff --git a/lib.js b/lib.js index d5e2943..2d441eb 100644 --- a/lib.js +++ b/lib.js @@ -146,12 +146,25 @@ if (typeof session === 'undefined') { // make sure to init the WebRTC if not exi var urlEdited = window.location.search.replace(/\?\?/g, "?"); urlEdited = urlEdited.replace(/\?/g, "&"); urlEdited = urlEdited.replace(/\&/, "?"); - -if (urlEdited !== window.location.search){ - warnlog(window.location.search + " changed to " + urlEdited); - window.history.pushState({path: urlEdited.toString()}, '', urlEdited.toString()); -} var urlParams = new URLSearchParams(urlEdited); + +if (urlParams.has("invite") || urlParams.has("i") || urlParams.has("code")){ + session.decodeInvite(urlParams.get("invite") || urlParams.get("i") || urlParams.get("code")); +} + +if (session.decrypted){ + session.decrypted = session.decrypted + urlEdited.replace("?","&"); + session.decrypted = session.decrypted.replace(/\?/g, "&"); + session.decrypted = session.decrypted.replace(/\&/, "?"); + urlParams = new URLSearchParams(session.decrypted); + //session.decrypted = true; +} else { + if (urlEdited !== window.location.search){ + warnlog(window.location.search + " changed to " + urlEdited); + window.history.pushState({path: urlEdited.toString()}, '', urlEdited.toString()); + } +} +delete urlEdited; var isIFrame = false; if ( parent && (window.location !== window.parent.location )) { @@ -215,6 +228,8 @@ function saveRoom(ele){ } function updateURL(param, force = false, cleanUrl = false) { + if (session.decrypted){return;} + param = param.replace("?", ""); var para = param.split('='); if (cleanUrl) { @@ -437,18 +452,33 @@ function toByteArray(hexString){ return new Uint8Array(result); } -function playAllVideos(){ +function playAllVideos(){ + + if (session.firstPlayTriggered && (session.audioCtx.state == "suspended")){ // added oct 9th 2022 + try { + session.audioCtx.resume(); + } catch(e){warnlog(e);} + } + for (var i in session.rpcs){ try{ if (session.rpcs[i].videoElement){ + log("I: "+i); if (session.rpcs[i].videoElement.paused){ - session.rpcs[i].videoElement.play().then(_ => { - log("playing 3"); - if ((session.audioEffects===true) || session.pushLoudness){ - updateIncomingAudioElement(i); - } - }).catch(errorlog); + setTimeout(function(UUID){ + session.rpcs[UUID].videoElement.play().then(_ => { + log("playing 3 "); + if ((session.audioEffects===true) || session.pushLoudness){ + log("updateIncomingAudioElement('"+UUID+"')"); + updateIncomingAudioElement(UUID); + } + }).catch(errorlog); + },0,i); + } else if ((session.audioEffects===true) || session.pushLoudness){ + updateIncomingAudioElement(i); + log("updateIncomingAudioElement('"+i+"')"); } + } } catch(e){ errorlog(e); @@ -3095,7 +3125,7 @@ function updateMixerRun(e=false){ // this is the main auto-mixing code. It's a if (session.infocus===true){ soloVideo = true; } else if (session.infocus && (session.infocus!==true) && (session.infocus in session.rpcs)){ // if the infocus stream is connected - if (session.group.length){ + if (session.group.length || session.allowNoGroup){ try { if (session.group.some(item => session.rpcs[session.infocus].group.includes(item))){ soloVideo = session.infocus; @@ -3203,7 +3233,7 @@ function updateMixerRun(e=false){ // this is the main auto-mixing code. It's a for (var j in session.rpcs){ - if (session.group.length){ + if (session.group.length || session.allowNoGroup){ try { if (!(session.group.some(item => session.rpcs[j].group.includes(item)))){ continue; @@ -3275,7 +3305,7 @@ function updateMixerRun(e=false){ // this is the main auto-mixing code. It's a } else if ((soloVideo) && (soloVideo === true)){ // well, fullscreen myself. "true" represents me. UUID would be for others. // already added myself to this as fullscreen for (var j in session.rpcs){ - if (session.group.length){ + if (session.group.length || session.allowNoGroup){ try { if (!(session.group.some(item => session.rpcs[j].group.includes(item)))){ continue; @@ -3303,7 +3333,7 @@ function updateMixerRun(e=false){ // this is the main auto-mixing code. It's a for (var i in session.rpcs){ if (session.rpcs[i]===null){continue;} - if (session.group.length){ + if (session.group.length || session.allowNoGroup){ try { if (!(session.group.some(item => session.rpcs[i].group.includes(item)))){ continue; @@ -3432,7 +3462,7 @@ function updateMixerRun(e=false){ // this is the main auto-mixing code. It's a i = RPCSkeys[keyIndex]; if (session.rpcs[i]===null){continue;} session.rpcs[i].mutedStateMixer = false; - if (session.group.length){ // The MAIN and LAST group filter. + if (session.group.length || session.allowNoGroup){ // The MAIN and LAST group filter. try { if (!(session.group.some(item => session.rpcs[i].group.includes(item)))){ if (session.scene!==false){ @@ -3453,12 +3483,13 @@ function updateMixerRun(e=false){ // this is the main auto-mixing code. It's a session.rpcs[i].mutedStateMixer = true; } } - applyMuteState(i); + applyMuteState(i); continue; } } catch(e){} } applyMuteState(i); + var doNotPush = false; if (session.rpcs[i].iframeEle){ if (session.rpcs[i].iframeEle.style.display=="none"){ @@ -3546,7 +3577,7 @@ function updateMixerRun(e=false){ // this is the main auto-mixing code. It's a mediaPool.push(session.rpcs[i].imageElement); } - continue; + doNotPush = true; } if (session.rpcs[i].videoElement){ // remote feeds @@ -3584,17 +3615,18 @@ function updateMixerRun(e=false){ // this is the main auto-mixing code. It's a mediaPool.push(session.rpcs[i].canvas); } - continue; + doNotPush = true; + //continue; } } else if (session.style==1){ if (session.rpcs[i].videoElement.srcObject && ((session.rpcs[i].videoElement.srcObject.getVideoTracks().length==0) || session.rpcs[i].videoMuted)){ //if (session.style==1){ // avatars and waveforms might be better done elsewhere? as a canvas effect even? - continue; + doNotPush = true; //} } } else if (session.rpcs[i].videoElement.srcObject && ((session.rpcs[i].videoElement.srcObject.getVideoTracks().length==0) || session.rpcs[i].videoMuted)){ if (session.rpcs[i].screenShareState){ - continue; + doNotPush = true;; } } //} else if (!session.directorList.indexOf(i)>=0){ // director is never audio-only. Video if need, yes, but not visualized-audio. @@ -3603,6 +3635,7 @@ function updateMixerRun(e=false){ // this is the main auto-mixing code. It's a // } //} + session.rpcs[i].opacityMuted = "1"; if (session.rpcs[i].opacityDisconnect=="1"){ if (session.rpcs[i].videoElement){ @@ -3659,6 +3692,7 @@ function updateMixerRun(e=false){ // this is the main auto-mixing code. It's a session.requestRateLimit(sceneBitrate, i); // well, screw that. Setting it to room quality. } } else { + session.requestRateLimit(-1, i); // unlock. } if (session.rpcs[i].order!==false){ @@ -3672,7 +3706,7 @@ function updateMixerRun(e=false){ // this is the main auto-mixing code. It's a } else { errorlog("THIS SHOULD NOT HAPPEN; 650"); } - } else { + } else if (!doNotPush){ mediaPool.push(session.rpcs[i].videoElement); } } else if (session.roomid!==false){ // guests should see video at low bitrate, ie: 100kbps (not 35kbps like if disabled) @@ -3687,7 +3721,7 @@ function updateMixerRun(e=false){ // this is the main auto-mixing code. It's a } else { errorlog("THIS SHOULD NOT HAPPEN; 665"); } - } else { + } else if (!doNotPush){ mediaPool.push(session.rpcs[i].videoElement); } if ((session.roomid==="") && (session.bitrate)){ @@ -3712,7 +3746,7 @@ function updateMixerRun(e=false){ // this is the main auto-mixing code. It's a } else { errorlog("THIS SHOULD NOT HAPPEN; 684"); } - } else { + } else if (!doNotPush){ mediaPool.push(session.rpcs[i].videoElement); } if (sceneBitrate){ @@ -4769,23 +4803,24 @@ function updateMixerRun(e=false){ // this is the main auto-mixing code. It's a try { if (!(session.cleanOutput && session.cleanish==false)){ if (session.firstPlayTriggered===false){ // don't play unless needed; might cause clicking or who knows what else. - warnlog("VIDEO IS NOT PLAYING"); if (vid.tagName.toLowerCase()=="video"){ // we don't want to try playing an Iframe or Canvas. - var playPromise = vid.play(); - if (playPromise !== undefined){ - playPromise.then(_ => { - // playing - session.firstPlayTriggered=true; // global tracking. "user gesture obtained", so no longer needed if playing. - }).catch((err)=>{ - - var bigPlayButton = document.getElementById("bigPlayButton"); - if (bigPlayButton){ - bigPlayButton.innerHTML = ''; - bigPlayButton.style.display="block"; - } - }); - } else { - session.firstPlayTriggered=true; // well, I don't know if it's playing, and so whatever. fail gracefully. + if (vid.paused){ + warnlog("VIDEO IS NOT PLAYING"); + var playPromise = vid.play(); + if (playPromise !== undefined){ + playPromise.then(_ => { + // playing + //session.firstPlayTriggered=true; // global tracking. "user gesture obtained", so no longer needed if playing. + }).catch((err)=>{ + var bigPlayButton = document.getElementById("bigPlayButton"); + if (bigPlayButton){ + bigPlayButton.innerHTML = ''; + bigPlayButton.style.display="block"; + } + }); + } else { + session.firstPlayTriggered=true; // well, I don't know if it's playing, and so whatever. fail gracefully. + } } } } @@ -5158,7 +5193,7 @@ function requestKeyframeScene(ele) { } } -function pokeIframeAPI(action, value = null, UUID = null) { +function pokeIframeAPI(action, value = null, UUID = null, SID=null) { if (!isIFrame){return;} try { var data = {}; @@ -5171,11 +5206,11 @@ function pokeIframeAPI(action, value = null, UUID = null) { if (UUID !== null) { data.UUID = UUID; } - - var SID = null; - if (UUID && (UUID in session.rpcs)){ - if (session.rpcs[UUID].streamID){ - SID = session.rpcs[UUID].streamID; + if (!SID){ + if (UUID && (UUID in session.rpcs)){ + if (session.rpcs[UUID].streamID){ + SID = session.rpcs[UUID].streamID; + } } } if (!SID){ @@ -5185,7 +5220,8 @@ function pokeIframeAPI(action, value = null, UUID = null) { } } } - if (UUID){ + + if (SID){ data.streamID = SID; } @@ -6364,7 +6400,10 @@ async function makeImages(startup=false){ var updateUserListTimeout=null var updateUserListActive = false; function updateUserList(){ - if ((session.showList!==true) && (session.cleanOutput || (session.scene!==false) || !session.roomid || session.director || (session.showList===false))){return;} + if (session.showList===true){ + // continue + } + else if ((session.showList!==true) && (session.cleanOutput || (session.scene!==false) || !session.roomid || session.director || (session.showList===false))){return;} clearInterval(updateUserListTimeout); updateUserListTimeout = setTimeout(function(){ if (updateUserListActive){return;} @@ -6374,14 +6413,16 @@ function updateUserList(){ getById("userList").innerHTML = ""; for (var UUID in session.rpcs){ - if (session.rpcs[UUID].videoElement && session.rpcs[UUID].streamSrc && session.rpcs[UUID].streamSrc.getTracks().length){ - if (document.body.contains(session.rpcs[UUID].videoElement)){ + if ((session.rpcs[UUID].videoElement && session.rpcs[UUID].streamSrc && session.rpcs[UUID].streamSrc.getTracks().length) || (session.rpcs[UUID].canvas) || (session.rpcs[UUID].imageElement)){ + if (session.rpcs[UUID].videoElement && document.body.contains(session.rpcs[UUID].videoElement)){ + continue; + } else if (session.rpcs[UUID].canvas && document.body.contains(session.rpcs[UUID].canvas)){ + continue; + } else if (session.rpcs[UUID].imageElement && document.body.contains(session.rpcs[UUID].imageElement)){ continue; } - } else { - continue; - } - if ((session.rpcs[UUID].videoMuted || (!session.rpcs[UUID].imageElement && !session.rpcs[UUID].canvas)) || ( session.infocus && session.infocus!==UUID )){ + } + if ((session.rpcs[UUID].videoMuted || (!session.rpcs[UUID].imageElement && !session.rpcs[UUID].canvas)) || ( session.infocus && session.infocus!==UUID ) || (!session.rpcs[UUID].defaultSpeaker && session.activeSpeaker)){ if (session.directorList.indexOf(UUID)>=0){ if (!session.rpcs[UUID].streamSrc){ // director not active yet, so we won't bother showing it. @@ -7575,14 +7616,24 @@ function processStats(UUID){ } try { - if (session.rpcs[UUID].videoElement.paused){ - // if (firstPlayTriggered || (session.audioCtx.state == "running")){ - log("trying to play"); - session.rpcs[UUID].videoElement.play().then(_ => { - log("playing 8"); - session.firstPlayTriggered = true; - }).catch(warnlog); - // } + if (session.rpcs[UUID].videoElement.paused){ + if (session.firstPlayTriggered){ + if (session.audioCtx.state == "suspended"){ // added oct 9th 2022 + try { + session.audioCtx.resume(); + } catch(e){warnlog(e);} + } + if (session.audioCtx.state == "running"){ // NOTE: I Don't know why this was + log("trying to play"); + session.rpcs[UUID].videoElement.play().then(_ => { + log("playing 8"); + + //if ((session.audioEffects===true) || session.pushLoudness){ + // updateIncomingAudioElement(UUID); + //} + }).catch(warnlog); + } + } } } catch (e){}; @@ -8669,7 +8720,9 @@ function updateLocalStats(){ if (stat.encoderImplementation=="ExternalEncoder"){ session.mc.stats._hardwareEncoder = true; // I won't set this to false again, just because once I know it has one, I just need to assume it could always be used unexpectednly session.mc.encoder = true; - + } else if (stat.encoderImplementation=="MediaFoundationVideoEncodeAccelerator"){ + session.mc.stats._hardwareEncoder = true; // I won't set this to false again, just because once I know it has one, I just need to assume it could always be used unexpectednly + session.mc.encoder = true; } else { session.mc.encoder = false; // this may not be actually accurate, but lets assume so. } @@ -8937,15 +8990,32 @@ function updateLocalStats(){ } } + var miniInfo = {}; + var sendMini = false; if ("encoderImplementation" in stat) { session.pcs[UUID].stats.video_encoder = stat.encoderImplementation; + if (stat.encoderImplementation=="ExternalEncoder"){ session.pcs[UUID].stats._hardwareEncoder = true; // I won't set this to false again, just because once I know it has one, I just need to assume it could always be used unexpectednly - session.pcs[UUID].encoder = true; - + if (session.pcs[UUID].encoder !== true){ + session.pcs[UUID].encoder = true; + miniInfo.hw_enc = true; + sendMini = true; + } + } else if (stat.encoderImplementation=="MediaFoundationVideoEncodeAccelerator"){ + session.pcs[UUID].stats._hardwareEncoder = true; // I won't set this to false again, just because once I know it has one, I just need to assume it could always be used unexpectednly + if (session.pcs[UUID].encoder !== true){ + session.pcs[UUID].encoder = true; + miniInfo.hw_enc = true; + sendMini = true; + } } else { - session.pcs[UUID].encoder = false; // this may not be actually accurate, but lets assume so. + if (session.pcs[UUID].encoder === true){ + session.pcs[UUID].encoder = false; + miniInfo.hw_enc = false; + sendMini = true; + } } } @@ -8953,20 +9023,18 @@ function updateLocalStats(){ if (session.pcs[UUID].stats.quality_limitation_reason){ if (session.pcs[UUID].stats.quality_limitation_reason !== stat.qualityLimitationReason){ try{ - var miniInfo = {}; + sendMini = true; miniInfo.qlr = stat.qualityLimitationReason; - if ("_hardwareEncoder" in session.pcs[UUID].stats){ - miniInfo.hw_enc = session.pcs[UUID].stats._hardwareEncoder; - } else { - miniInfo.hw_enc = null; - } - session.sendMessage({"miniInfo":miniInfo}, UUID); } catch(e){warnlog(e);} } } session.pcs[UUID].stats.quality_limitation_reason = stat.qualityLimitationReason; } + if (sendMini){ + session.sendMessage({"miniInfo":miniInfo}, UUID); + } + if ("bytesSent" in stat) { if ("_bytesSentVideo" in session.pcs[UUID].stats){ if (session.pcs[UUID].stats._timestamp1){ @@ -10309,21 +10377,61 @@ function syncOtherState(sid){ } } - var groups = session.syncState[sid].group; - var elements = document.querySelectorAll('[data-action-type="toggle-group"][data-sid="'+sid+'"]'); - if (elements.length){ - var UUID = elements[0].dataset.UUID; - if (UUID){ - session.rpcs[UUID].group = groups; + var UUID = document.querySelector('[data-sid="'+sid+'"][data--u-u-i-d'); + if (UUID && UUID.dataset.UUID){ + if (session.syncState[sid].group){ + session.rpcs[UUID].group = session.syncState[sid].group; + syncGroup(groups, UUID); } - for (var i=0;i{ + var ele = getById("container_" + UUID).querySelector('[data-action-type="toggle-group"][data--u-u-i-d="'+UUID+'"][data-group="'+group+'"]'); + if (!ele){ + var newGroup = htmlToElement(''); + + var added = false; + getById("container_" + UUID).querySelectorAll('.customGroup>[data-group]').forEach(ele=>{ + log(ele); + if (!added && ele.dataset.group>group+""){ + ele.parentNode.insertBefore(newGroup, ele); + added = true; } + }); + if (!added){ + var newGroupCon = getById("container_" + UUID).querySelector(".customGroup"); + if (!newGroupCon){ + newGroupCon = document.createElement("div"); + newGroupCon.classList.add("customGroup"); + getById("container_" + UUID).appendChild(newGroupCon); + } + newGroupCon.appendChild(newGroup); } } + }); + + var elements = document.querySelectorAll('[data-action-type="toggle-group"][data--u-u-i-d="'+UUID+'"][data-group]'); + if (elements.length){ + for (var i=0;ibiggestSlot){ - biggestSlot = parseInt(slots[i].dataset.slot); + biggestSlot = parseInt(slots[i].dataset.slot); } } biggestSlot+=1; @@ -13741,9 +13853,9 @@ async function createDirectorOnlyBox() { slotName = "unset"; } - buttons += "
\ + buttons += "
\
"; - + } buttons += "
\
ID: " + session.streamID + "\ @@ -13845,6 +13957,9 @@ async function createDirectorOnlyBox() { labelID.innerText = session.label; } pokeIframeAPI("control-box", true, true); + if (session.slotmode){ + pokeIframeAPI("slot-updated", biggestSlot, null, session.streamID); // need to support self-director + } } function shiftPC(ele, shift, director=false){ @@ -14008,8 +14123,8 @@ function dropSlot(event) { swapNodes(event.target, origThing); - pokeIframeAPI("slot-updated", parseInt(event.target.dataset.slot), event.target.dataset.UUID); // need to support self-director - pokeIframeAPI("slot-updated", parseInt(origThing.dataset.slot), origThing.dataset.UUID); // need to support self-director + pokeIframeAPI("slot-updated", parseInt(event.target.dataset.slot), null, event.target.dataset.sid ); // need to support self-director + pokeIframeAPI("slot-updated", parseInt(origThing.dataset.slot), null, origThing.dataset.sid); // need to support self-director } else if (origThing && ("slot" in event.target.parentNode.dataset)){ log(event.target.parentNode); @@ -14019,8 +14134,8 @@ function dropSlot(event) { swapNodes(event.target.parentNode, origThing); - pokeIframeAPI("slot-updated", parseInt(event.target.parentNode.dataset.slot), event.target.parentNode.dataset.UUID); // need to support self-director - pokeIframeAPI("slot-updated", parseInt(origThing.dataset.slot), origThing.dataset.UUID); // need to support self-director + pokeIframeAPI("slot-updated", parseInt(event.target.parentNode.dataset.slot), null, event.target.parentNode.dataset.sid); // need to support self-director + pokeIframeAPI("slot-updated", parseInt(origThing.dataset.slot), null, origThing.dataset.sid); // need to support self-director } return false; @@ -14094,13 +14209,13 @@ function setSlot(ele,slot){ getById("slotPicker").classList.add("hidden"); if (slot!==null){ slot = (parseInt(slot) || 0); - var slots = document.querySelectorAll("div.slotsbar[data--u-u-i-d][data-slot]"); + var slots = document.querySelectorAll("div.slotsbar[data-slot]"); for (var i=0;i\ + buttons += "
\
"; } @@ -14362,6 +14477,31 @@ function createControlBox(UUID, soloLink, streamID) { videoContainer.appendChild(iframeDetails); container.appendChild(controls); + session.group.forEach(group=>{ + var ele = controls.querySelector('[data-action-type="toggle-group"][data--u-u-i-d="'+UUID+'"][data-group="'+group+'"]'); + if (!ele){ + var newGroup = htmlToElement(''); + + var added = false; + container.querySelectorAll('.customGroup>[data-group]').forEach(ele=>{ + log(ele); + if (!added && ele.dataset.group>group+""){ + ele.parentNode.insertBefore(newGroup, ele); + added = true; + } + }); + if (!added){ + var newGroupCon = container.querySelector(".customGroup"); + if (!newGroupCon){ + newGroupCon = document.createElement("div"); + newGroupCon.classList.add("customGroup"); + container.appendChild(newGroupCon); + } + newGroupCon.appendChild(newGroup); + } + } + }); + initSceneList(UUID); syncSceneState(streamID); syncOtherState(streamID); @@ -15767,15 +15907,23 @@ function gotDevicesRemote(deviceInfos, UUID) { var videoSelect = document.createElement("select"); videoSelect.id = "remoteVideoSelect_"+UUID; videoSelect.style = "max-width:170px;font-size: 70% !important; margin: 5px 5px 5px 0; padding:2px;"; + + + videoSelect.onchange = function(){ - getById("requestVideoDevice_"+UUID).innerHTML = ' request'; - getById("requestVideoDevice_"+UUID).title = "This will ask the remote guest for permission to change"; + if (session.rpcs[UUID].stats.info && session.rpcs[UUID].stats.info.consent){ + getById("requestVideoDevice_"+UUID).innerHTML = ' apply'; + getById("requestVideoDevice_"+UUID).title = "This will update the remote device to the selected one"; + } else { + getById("requestVideoDevice_"+UUID).innerHTML = ' request'; + getById("requestVideoDevice_"+UUID).title = "This will ask the remote guest for permission to change"; + } } var buttonGO = document.createElement("button"); - buttonGO.innerHTML = ' request'; + buttonGO.innerHTML = ' refresh'; buttonGO.style = "padding: 5px;"; - buttonGO.title = "This will ask the remote guest for permission to change"; + buttonGO.title = "This will refresh the current device"; buttonGO.id = "requestVideoDevice_"+UUID; buttonGO.onclick = function(){ var data = {} @@ -15789,6 +15937,7 @@ function gotDevicesRemote(deviceInfos, UUID) { } if (document.getElementById("remoteAudioSelect_"+UUID)){ + log("remoteAudioSelect_ "); var audioSelect = document.getElementById("remoteAudioSelect_"+UUID); var length = audioSelect.options.length; for (i = length-1; i >= 0; i--) { @@ -15798,10 +15947,25 @@ function gotDevicesRemote(deviceInfos, UUID) { var audioSelect = document.createElement("select"); audioSelect.id = "remoteAudioSelect_"+UUID; audioSelect.style = "max-width:170px;font-size: 70% !important; margin: 5px 5px 5px 0; padding:2px;"; + + + audioSelect.onchange = function(){ + log("ON CHANGE"); + if (session.rpcs[UUID].stats.info && session.rpcs[UUID].stats.info.consent){ + getById("requestAudioDevice_"+UUID).innerHTML = ' apply'; + getById("requestAudioDevice_"+UUID).title = "This will update the remote device to the selected one"; + } else { + getById("requestAudioDevice_"+UUID).innerHTML = ' request'; + getById("requestAudioDevice_"+UUID).title = "This will ask the remote guest for permission to change"; + } + } + var buttonGO = document.createElement("button"); - buttonGO.innerHTML = ' request'; + buttonGO.innerHTML = ' refresh'; buttonGO.style = "padding: 5px;"; - buttonGO.title = "This will ask the remote guest for permission to change"; + buttonGO.title = "This will refresh the current device"; + buttonGO.id = "requestAudioDevice_"+UUID; + buttonGO.onclick = function(){ var data = {} data.changeMicrophone = audioSelect.value; @@ -15825,10 +15989,22 @@ function gotDevicesRemote(deviceInfos, UUID) { var audioOutputSelect = document.createElement("select"); audioOutputSelect.id = "remoteAudioOutputSelect_"+UUID; audioOutputSelect.style = "max-width:170px;font-size: 70% !important; margin: 5px 5px 5px 0; padding:2px;"; + + audioOutputSelect.onchange = function(){ + if (session.rpcs[UUID].stats.info && session.rpcs[UUID].stats.info.consent){ + getById("requestAudioOutputDevice_"+UUID).innerHTML = ' apply'; + getById("requestAudioOutputDevice_"+UUID).title = "This will update the remote device to the selected one"; + } else { + getById("requestAudioOutputDevice_"+UUID).innerHTML = ' request'; + getById("requestAudioOutputDevice_"+UUID).title = "This will ask the remote guest for permission to change"; + } + } + var buttonGO = document.createElement("button"); - buttonGO.innerHTML = ' request'; + buttonGO.innerHTML = ' refresh'; buttonGO.style = "padding: 5px;"; - buttonGO.title = "This will ask the remote guest for permission to change"; + buttonGO.title = "This will refresh the current device"; + buttonGO.id = "requestAudioOutputDevice_"+UUID; buttonGO.onclick = function(){ var data = {} data.changeSpeaker = audioOutputSelect.value; @@ -16231,7 +16407,7 @@ var playbackReconnectTimeout = null; function reconnectDevices(event) { /// TODO: Perhaps change this to only if there is a DISCONNECT; rather than ON NEW DEVICE? try { - if (session.audioCtx.state == "suspended"){ + if (session.firstPlayTriggered && (session.audioCtx.state == "suspended")){ session.audioCtx.resume(); } } catch(e){warnlog("session.audioCtx.resume(); failed");} @@ -17425,16 +17601,16 @@ function changeVideoDeviceById(deviceId, UUID=false){ } } if (index!==false){ - if (document.getElementById("videoSource3").selectedIndex === j){ // this is just refreshing the device. + if (document.getElementById("videoSource3").selectedIndex === index){ // this is just refreshing the device. activatedPreview=false; - grabVideo(0, "videosource", "#videoSource3", callback=UUID); + grabVideo(0, "videosource", "#videoSource3", UUID); } else if (UUID && !session.consent){ window.focus(); confirmAlt("Allow the director to change your video device to:\n\n"+opts[index].text+" ?").then(res=>{ if (res){ - document.getElementById("videoSource3").selectedIndex = j; + document.getElementById("videoSource3").selectedIndex = index; activatedPreview=false; - grabVideo(0, "videosource", "#videoSource3", callback=UUID); + grabVideo(0, "videosource", "#videoSource3", UUID); } else { try { var data = {}; @@ -17445,20 +17621,59 @@ function changeVideoDeviceById(deviceId, UUID=false){ } }); } else { - document.getElementById("videoSource3").selectedIndex = j; + document.getElementById("videoSource3").selectedIndex = index; activatedPreview=false; - grabVideo(0, "videosource", "#videoSource3", callback=UUID); + grabVideo(0, "videosource", "#videoSource3", UUID); } } }); } function changeAudioDeviceById(deviceId, UUID=false){ - if (UUID && !session.consent){ - window.focus(); - confirmAlt("Allow the director to change your audio mic source").then(res=>{ - if (res){ - enumerateDevices().then(gotDevices2).then(function() { + enumerateDevices().then(gotDevices2).then(function() { + var audioSelect = document.getElementById("audioSource3").querySelectorAll("input"); + var matched = false; + var exists = false; + for (var i = 0; i < audioSelect.length; i++) { + if (audioSelect[i].value == deviceId){ + exists = true; + if (audioSelect[i].checked){ + matched = true; + } + } + } + + if (exists){ + if (matched){ // this is just refreshing the device. + activatedPreview=false; + grabAudio("#audioSource3", UUID); + } else if (UUID && !session.consent){ + window.focus(); + confirmAlt("Allow the director to change your audio mic source?").then(res=>{ + if (res){ + // enumerateDevices().then(gotDevices2).then(function() { + var audioSelect = document.getElementById("audioSource3").querySelectorAll("input"); + for (var i = 0; i < audioSelect.length; i++) { + if (audioSelect[i].value == deviceId){ + audioSelect[i].checked=true; + } else { + audioSelect[i].checked = false; + } + } + activatedPreview=false; + grabAudio("#audioSource3", UUID); + // }); + } else { + try { + var data = {}; + data.UUID = UUID; + data.rejected = "changeMicrophone"; + session.sendMessage(data, data.UUID); + } catch(e){} + } + }); + } else { + //enumerateDevices().then(gotDevices2).then(function() { var audioSelect = document.getElementById("audioSource3").querySelectorAll("input"); for (var i = 0; i < audioSelect.length; i++) { if (audioSelect[i].value == deviceId){ @@ -17468,31 +17683,11 @@ function changeAudioDeviceById(deviceId, UUID=false){ } } activatedPreview=false; - grabAudio("#audioSource3", callback=UUID); - }); - } else { - try { - var data = {}; - data.UUID = UUID; - data.rejected = "changeMicrophone"; - session.sendMessage(data, data.UUID); - } catch(e){} + grabAudio("#audioSource3", UUID); + // }); } - }); - } else { - enumerateDevices().then(gotDevices2).then(function() { - var audioSelect = document.getElementById("audioSource3").querySelectorAll("input"); - for (var i = 0; i < audioSelect.length; i++) { - if (audioSelect[i].value == deviceId){ - audioSelect[i].checked=true; - } else { - audioSelect[i].checked = false; - } - } - activatedPreview=false; - grabAudio("#audioSource3", callback=UUID); - }); - } + } + }); } function changeAudioOutputDeviceById(deviceId, UUID=false){ // remote control of the speaker output. @@ -17509,36 +17704,42 @@ function changeAudioOutputDeviceById(deviceId, UUID=false){ // remote control of } } } - if (UUID && !session.consent){ // UUID just lets us inform the requester - window.focus(); - confirmAlt("Allow the director to change your audio's speaker to:\n\n"+opts[index].text+" ?").then(res=>{ - if (res){ - if (index!==false){ - document.getElementById("outputSource3").selectedIndex = index; - } - session.sink = deviceId; - saveSettings(); - resetupAudioOut(); - var data = {}; - data.UUID = UUID; - sendMediaDevices(data.UUID); - session.sendMessage(data, data.UUID); - } else { - try { + if (index!==false){ + if (document.getElementById("outputSource3").selectedIndex === index){ // this is just refreshing the device. + session.sink = deviceId; + saveSettings(); + resetupAudioOut(); + } else if (UUID && !session.consent){ // UUID just lets us inform the requester + window.focus(); + confirmAlt("Allow the director to change your audio's speaker to:\n\n"+opts[index].text+" ?").then(res=>{ + if (res){ + if (index!==false){ + document.getElementById("outputSource3").selectedIndex = index; + } + session.sink = deviceId; + saveSettings(); + resetupAudioOut(); var data = {}; data.UUID = UUID; - data.rejected = "changeSpeaker"; + sendMediaDevices(data.UUID); session.sendMessage(data, data.UUID); - } catch(e){} + } else { + try { + var data = {}; + data.UUID = UUID; + data.rejected = "changeSpeaker"; + session.sendMessage(data, data.UUID); + } catch(e){} + } + }); + } else { + if (index!==false){ + document.getElementById("outputSource3").selectedIndex = index; } - }); - } else { - if (index!==false){ - document.getElementById("outputSource3").selectedIndex = index; + session.sink = deviceId; + saveSettings(); + resetupAudioOut(); } - session.sink = deviceId; - saveSettings(); - resetupAudioOut(); } }); } else { @@ -18405,13 +18606,17 @@ async function grabAudio(selector = "#audioSource", trackid = null, override = f } session.toggleSoloChat = function(UUID, event=false){ // ==> applyIsolatedChat -- this should be trigger by the director only I think - if (session.director){ + if (Firefox){ + warnUser("Sorry, but Firefox does not support solo talk.",2000) + return false; + } else if (session.director){ if (!session.directorEnabledPPT){ - warnUser("Enable the director's microphone first."); + warnUser("Enable the director's microphone first.",2000); return false; } } + var msg = {}; msg.micIsolate = false; @@ -23321,7 +23526,7 @@ function listCameraSettings() { track0.applyConstraints({ advanced: [{[i]:cameraSettings['default'][i]}] }).then(() => {}).catch(e => { - errorlog("Failed to reset to defaults: "+i); + errorlog("Failed to reset to defaults"); failed = true; }); } @@ -23954,7 +24159,7 @@ function screenshareTypeDecider(sstype=1){ } } -function createScreenShareURL(transparent=true){ +function createScreenShareURL(transparent=true){ // iframe.src = if (session.screenShareElement) { var iFrameID = session.streamID.substring(0, 12) + "_" + session.generateStreamID(5); } else if (session.screenshareid) { @@ -24060,6 +24265,15 @@ function createScreenShareURL(transparent=true){ if (session.muted){ extras += "&muted"; } + + if (session.recordLocal){ + extras += "&record="+session.recordLocal; + } + + if (session.autorecordlocal){ + extras += "&autorecordlocal"; + } + if (transparent){ extras += "&transparent&cleanish"; } @@ -27063,15 +27277,19 @@ function addAudioPipeline(UUID, track){ // INBOUND AUDIO EFFECTS session.rpcs[UUID].inboundAudioPipeline[trackid].mediaStream = createMediaStream(); session.rpcs[UUID].inboundAudioPipeline[trackid].mediaStream.addTrack(track); - session.rpcs[UUID].inboundAudioPipeline[trackid].mutedAudio = createAudioElement(); - session.rpcs[UUID].inboundAudioPipeline[trackid].mutedAudio.muted = true; - session.rpcs[UUID].inboundAudioPipeline[trackid].mutedAudio.srcObject = session.rpcs[UUID].inboundAudioPipeline[trackid].mediaStream; // needs to be added as an streamed element to be usable, even if its hidden - session.rpcs[UUID].inboundAudioPipeline[trackid].mutedAudio.muted = true; - //session.rpcs[UUID].inboundAudioPipeline[trackid].mutedAudio.volume = 0.01; - session.rpcs[UUID].inboundAudioPipeline[trackid].mutedAudio.play().then(_ => { - //session.rpcs[UUID].inboundAudioPipeline[trackid].mutedAudio.muted = false; - log("playing 1"); - }).catch(warnlog); + + if (ChromeVersion && (ChromeVersion<106)){ // I'm going to deprecate this. + session.rpcs[UUID].inboundAudioPipeline[trackid].mutedAudio = createAudioElement(); // TODO: I don't know if this mutedAudio thing matters any more, in recent versions of Chrome, since it won't play even if muted. + session.rpcs[UUID].inboundAudioPipeline[trackid].mutedAudio.muted = true; + session.rpcs[UUID].inboundAudioPipeline[trackid].mutedAudio.playsinline = true; // ## Added Oct 9th 2022. Not sure it's does anything, but might help with iPhones? + session.rpcs[UUID].inboundAudioPipeline[trackid].mutedAudio.srcObject = session.rpcs[UUID].inboundAudioPipeline[trackid].mediaStream; // needs to be added as an streamed element to be usable, even if its hidden + session.rpcs[UUID].inboundAudioPipeline[trackid].mutedAudio.muted = true; + //session.rpcs[UUID].inboundAudioPipeline[trackid].mutedAudio.volume = 0.01; + session.rpcs[UUID].inboundAudioPipeline[trackid].mutedAudio.play().then(_ => { + //session.rpcs[UUID].inboundAudioPipeline[trackid].mutedAudio.muted = false; + log("playing 1"); + }).catch(warnlog); + } // https://developer.mozilla.org/en-US/docs/Web/API/AudioContext/createMediaStreamTrackSource var source = session.audioCtx.createMediaStreamSource(session.rpcs[UUID].inboundAudioPipeline[trackid].mediaStream); @@ -27080,6 +27298,7 @@ function addAudioPipeline(UUID, track){ // INBOUND AUDIO EFFECTS var screwedUp = false; session.rpcs[UUID].inboundAudioPipeline[trackid].destination = false; + if (session.sync!==false){ log("adding a delay node to audio"); source = addDelayNode( source, UUID, trackid); @@ -27130,7 +27349,8 @@ function addAudioPipeline(UUID, track){ // INBOUND AUDIO EFFECTS source.connect(session.rpcs[UUID].inboundAudioPipeline[trackid].destination); try { - if (session.audioCtx.state == "suspended"){ + if (session.firstPlayTriggered && (session.audioCtx.state == "suspended")){ + log("trying to resume.."); session.audioCtx.resume(); } } catch(e){warnlog("session.audioCtx.resume(); failed");} @@ -27139,10 +27359,10 @@ function addAudioPipeline(UUID, track){ // INBOUND AUDIO EFFECTS } try { - if (session.audioCtx.state == "suspended"){ + if (session.firstPlayTriggered && (session.audioCtx.state == "suspended")){ session.audioCtx.resume(); } - } catch(e){warnlog("session.audioCtx.resume(); failed");} + } catch(e){warnlog("session.audioCtx.resume(); failed 2");} return track; } catch(e) {errorlog(e);} @@ -27177,7 +27397,7 @@ function changeGroupDirector(ele, state=null){ } } - if (session.group.length){ + if (session.group.length || session.allowNoGroup){ session.sendMessage({"group":session.group.join(",")}); } else { session.sendMessage({"group":false}); @@ -27253,7 +27473,7 @@ function changeGroupDirectorAPI(group, state=null, update=true){ } } if (update){ - if (session.group.length){ + if (session.group.length || session.allowNoGroup){ session.sendMessage({"group":session.group.join(",")}); } else { session.sendMessage({"group":false}); @@ -28380,6 +28600,15 @@ function oscClient(){ // api.vdo.ninja api OSC (websocket / https API hotkey sup if ("msg" in data){ data = data.msg } + + if ("value" in data){ + if (("action" in data) && (data.action == "layout")){ + try { + data.value = JSON.parse(data.value) || data.value; + } catch(e){} + } + } + var resp = processMessage(data); if (resp!==null){ var ret = {}; @@ -28572,9 +28801,9 @@ function setupCommands(){ if (!("slot" in session.layout[i])){ continue; } - var slot = document.querySelector("div.slotsbar[data--u-u-i-d][data-slot='"+(parseInt(session.layout[i].slot)+1)+"']") + var slot = document.querySelector("div.slotsbar[data-slot='"+(parseInt(session.layout[i].slot)+1)+"']") if (!slot){continue;} - var streamID = session.rpcs[slot.dataset.UUID].streamID; + var streamID = slot.dataset.sid; combined[streamID] = session.layout[i]; } issueLayout(combined, "0"); @@ -28610,9 +28839,9 @@ function setupCommands(){ if (!("slot" in session.layout[i])){ continue; } - var slot = document.querySelector("div.slotsbar[data--u-u-i-d][data-slot='"+(parseInt(session.layout[i].slot)+1)+"']") + var slot = document.querySelector("div.slotsbar[data-slot='"+(parseInt(session.layout[i].slot)+1)+"']") if (!slot){continue;} - var streamID = session.rpcs[slot.dataset.UUID].streamID; + var streamID = slot.dataset.sid; combined[streamID] = session.layout[i]; } issueLayout(combined, "0"); @@ -29826,14 +30055,10 @@ function createControlBoxScreenshare(UUID, soloLink, streamID) { ele.dataset.sid = streamID; }); - //var buttons = ""; - //if (session.slotmode){ - // buttons += "
slot: "+biggestSlot+"
"; - //} var buttons = ""; if (session.slotmode){ - var slots = document.querySelectorAll("div.slotsbar[data--u-u-i-d][data-slot]"); + var slots = document.querySelectorAll("div.slotsbar[data-slot]"); var biggestSlot=0; if (session.slotmode==1){ for (var i=0;i\ + buttons += "
\
"; } @@ -29859,6 +30084,7 @@ function createControlBoxScreenshare(UUID, soloLink, streamID) { container.innerHTML = buttons; updateLockedElements(); + var videoContainerControlBox = document.createElement("div"); videoContainerControlBox.className = "controlVideoBox"; container.containerControlBox = videoContainerControlBox @@ -29916,6 +30142,32 @@ function createControlBoxScreenshare(UUID, soloLink, streamID) { videoContainer.appendChild(iframeDetails); videoContainer.appendChild(session.rpcs[UUID].videoElement); container.appendChild(controls); + + session.group.forEach(group=>{ + var ele = controls.querySelector('[data-action-type="toggle-group"][data--u-u-i-d="'+UUID+'"][data-group="'+group+'"]'); + if (!ele){ + var newGroup = htmlToElement(''); + + var added = false; + container.querySelectorAll('.customGroup>[data-group]').forEach(ele=>{ + log(ele); + if (!added && ele.dataset.group>group+""){ + ele.parentNode.insertBefore(newGroup, ele); + added = true; + } + }); + if (!added){ + var newGroupCon = container.querySelector(".customGroup"); + if (!newGroupCon){ + newGroupCon = document.createElement("div"); + newGroupCon.classList.add("customGroup"); + container.appendChild(newGroupCon); + } + newGroupCon.appendChild(newGroup); + } + } + }); + initSceneList(UUID); pokeIframeAPI("control-box", true, UUID); } \ No newline at end of file diff --git a/main.css b/main.css index ec3acfd..cd159de 100644 --- a/main.css +++ b/main.css @@ -277,7 +277,7 @@ button.white:active { } #header { width: 100%; - margin: 1px; + padding: 1px; background-color: #0F131D; color: #FFF; -webkit-app-region: drag; @@ -1351,7 +1351,9 @@ body { display:block; z-index:10; } - +div[data-action-type='toggle-group'] { + padding: 0 10px; +} .infoblob { color: white; width: 100%; @@ -2617,11 +2619,13 @@ button.toggleSettings{ font-size: 100%; } + #minipreview > #videosource { height:auto!important; width:auto!important; max-height:100%!important; max-width:100%!important; + border-radius: 0!important; } #videoSourceSelect { @@ -3787,9 +3791,6 @@ input:checked + .slider:before { margin: 0px auto 10px auto; } -.darktheme .startupWarning{ -} - #alertModal { position: absolute; background-color: rgb(221 221 221); @@ -4369,4 +4370,7 @@ body.darktheme .containerGreen{ } body.darktheme .startupWarning>.las { color:white!important; +} +body.darktheme .invite_setting_group_links a { + color:#d2e5ff!important; } \ No newline at end of file diff --git a/main.js b/main.js index 305ec9d..10ba0f5 100644 --- a/main.js +++ b/main.js @@ -345,10 +345,6 @@ async function main(){ // main asyncronous thread; mostly initializes the user s } - // flagship - - - if (urlParams.has('broadcast') || urlParams.has('bc')) { log("Broadcast flag set"); session.broadcast = urlParams.get('broadcast') || urlParams.get('bc') || null; @@ -389,6 +385,9 @@ async function main(){ // main asyncronous thread; mostly initializes the user s session.showList = true; } } + if (session.showList===true){ + getById("hideusers").classList.add("hidden"); + } if (urlParams.has('meshcast')) { session.meshcast = urlParams.get('meshcast') || "any"; @@ -398,37 +397,39 @@ async function main(){ // main asyncronous thread; mostly initializes the user s var filename = false; try { - filename = window.location.pathname.substring(window.location.pathname.lastIndexOf('/') + 1); - filename = filename.replace("??", "?"); - filename2 = filename.split("?")[0]; - // split at ??? - if (filename.split(".").length == 1) { - if (filename2.length < 2) { // easy win - filename = false; - } else if (filename.startsWith("&")) { // easy win - var tmpHref = window.location.href.substring(0, window.location.href.lastIndexOf('/')) + "/?" + filename.split("&").slice(1).join("&"); - log("TMP " + tmpHref); - updateURL(filename.split("&")[1], true, tmpHref); - filename = false; - } else if (filename2.split("&")[0].includes("=")) { - log("asdf " + filename.split("&")[0]); - if (history.pushState) { - var tmpHref = window.location.href.substring(0, window.location.href.lastIndexOf('/')); - tmpHref = tmpHref + "/?" + filename; + if (!session.decrypted){ + filename = window.location.pathname.substring(window.location.pathname.lastIndexOf('/') + 1); + filename = filename.replace("??", "?"); + filename2 = filename.split("?")[0]; + // split at ??? + if (filename.split(".").length == 1) { + if (filename2.length < 2) { // easy win filename = false; - //warnUser("Please ensure your URL is correctly formatted."); - window.history.pushState({path: tmpHref.toString()}, '', tmpHref.toString()); + } else if (filename.startsWith("&")) { // easy win + var tmpHref = window.location.href.substring(0, window.location.href.lastIndexOf('/')) + "/?" + filename.split("&").slice(1).join("&"); + log("TMP " + tmpHref); + updateURL(filename.split("&")[1], true, tmpHref); + filename = false; + } else if (filename2.split("&")[0].includes("=")) { + log("asdf " + filename.split("&")[0]); + if (history.pushState) { + var tmpHref = window.location.href.substring(0, window.location.href.lastIndexOf('/')); + tmpHref = tmpHref + "/?" + filename; + filename = false; + //warnUser("Please ensure your URL is correctly formatted."); + window.history.pushState({path: tmpHref.toString()}, '', tmpHref.toString()); + } + } else { + filename = filename2.split("&")[0]; + if (filename2 != filename) { + warnUser("Warning: Please ensure your URL is correctly formatted."); + } } } else { - filename = filename2.split("&")[0]; - if (filename2 != filename) { - warnUser("Warning: Please ensure your URL is correctly formatted."); - } + filename = false; } - } else { - filename = false; + log(filename); } - log(filename); } catch (e) { errorlog(e); } @@ -454,8 +455,8 @@ async function main(){ // main asyncronous thread; mostly initializes the user s } session.slotmode = false; // temporary; remove in the future TODO: ## ----------------------- - if (urlParams.has('slotmode')){ - session.slotmode = parseInt(urlParams.get('slotmode')) || 1; + if (urlParams.has('slotmode') || urlParams.has('slotsmode')){ + session.slotmode = parseInt(urlParams.get('slotmode')) || parseInt(urlParams.get('slotsmode')) || 1; } @@ -698,6 +699,19 @@ async function main(){ // main asyncronous thread; mostly initializes the user s } } } + + if (urlParams.has('layouts')) { // an ordered array of layouts, which can be used to switch between using the API layouts action. + // ie: ?layouts=[[{"x":0,"y":0,"w":100,"h":100,"slot":0}],[{"x":0,"y":0,"w":100,"h":100,"slot":1}],[{"x":0,"y":0,"w":100,"h":100,"slot":2}],[{"x":0,"y":0,"w":100,"h":100,"slot":3}],[{"x":0,"y":0,"w":50,"h":100,"c":false,"slot":0},{"x":50,"y":0,"w":50,"h":100,"c":false,"slot":1}],[{"x":0,"y":0,"w":100,"h":100,"z":0,"c":false,"slot":1},{"x":70,"y":70,"w":30,"h":30,"z":1,"c":true,"slot":0}],[{"x":0,"y":0,"w":50,"h":50,"c":true,"slot":0},{"x":50,"y":0,"w":50,"h":50,"c":true,"slot":1},{"x":0,"y":50,"w":50,"h":50,"c":true,"slot":2},{"x":50,"y":50,"w":50,"h":50,"c":true,"slot":3}],[{"x":0,"y":16.667,"w":66.667,"h":66.667,"c":true,"slot":0},{"x":66.667,"y":0,"w":33.333,"h":33.333,"c":true,"slot":1},{"x":66.667,"y":33.333,"w":33.333,"h":33.333,"c":true,"slot":2},{"x":66.667,"y":66.667,"w":33.333,"h":33.333,"c":true,"slot":3}]] + try { + session.layouts = JSON.parse(decodeURIComponent(urlParams.get('layouts'))) || JSON.parse(urlParams.get('layouts')) || {}; + } catch(e){ + try { + session.layouts = JSON.parse(urlParams.get('layouts')) || false; + } catch(e){ + session.layouts = false; + } + } + } if (urlParams.has('deaf') || urlParams.has('deafen')) { session.directorSpeakerMuted=true; // false == true in this case. @@ -1261,6 +1275,28 @@ async function main(){ // main asyncronous thread; mostly initializes the user s } } } + } else if (urlParams.has('labelsuggestion') || urlParams.has('ls')) { + session.label = urlParams.get('labelsuggestion') || urlParams.get('ls') || null; + var updateURLAsNeed = true; + window.focus(); + var label = await promptAlt(miscTranslations["enter-display-name"], true); + if (label) { + session.label = sanitizeLabel(label); // alphanumeric was too strict. + } else { + session.label = sanitizeLabel(session.label); + updateURLAsNeed = false; + } + + document.title = session.label; // what the result is. + + if (updateURLAsNeed) { + var label = encodeURIComponent(session.label); + if (urlParams.has('l')) { + updateURL("l=" + label, true, false); + } else { + updateURL("label=" + label, true, false); + } + } } if (urlParams.has('transparent') || urlParams.has('transparency')) { // sets the window to be transparent - useful for IFRAMES? @@ -1778,10 +1814,10 @@ async function main(){ // main asyncronous thread; mostly initializes the user s //session.manual=true; //innerHTML = } - - if (urlParams.has('keyframeinterval') || urlParams.has('keyframeRate') || urlParams.has('keyframe') || urlParams.has('fki')) { + + if (urlParams.has('keyframeinterval') || urlParams.has('keyframerate') || urlParams.has('keyframe') || urlParams.has('fki')) { log("keyframeRate ENABLED"); - session.keyframeRate = parseInt(urlParams.get('keyframeinterval') || urlParams.get('keyframeRate') || urlParams.get('keyframe') || urlParams.get('fki')) || 0; + session.keyframeRate = parseInt(urlParams.get('keyframeinterval') || urlParams.get('keyframerate') || urlParams.get('keyframe') || urlParams.get('fki')) || 0; } if (urlParams.has('obsoff') || urlParams.has('oo') || urlParams.has('disableobs')) { @@ -2247,6 +2283,10 @@ async function main(){ // main asyncronous thread; mostly initializes the user s session.groupAudio = true; } + if (urlParams.has('groupmode') || urlParams.has('gm')) { + session.allowNoGroup = true; + } + if (urlParams.has('host')) { session.roomhost = true; } @@ -3329,21 +3369,20 @@ async function main(){ // main asyncronous thread; mostly initializes the user s } } } - if (session.roomid || urlParams.has('roomid') || urlParams.has('r') || urlParams.has('room') || filename || (session.permaid !== false)) { var roomid = ""; if (urlParams.has('room')) { // needs to be first; takes priority roomid = urlParams.get('room'); - } else if (filename) { - roomid = filename; } else if (urlParams.has('roomid')) { roomid = urlParams.get('roomid'); } else if (urlParams.has('r')) { roomid = urlParams.get('r'); } else if (session.roomid) { roomid = session.roomid; - } + } else if (filename) { + roomid = filename; + } session.roomid = sanitizeRoomName(roomid); } @@ -3544,6 +3583,8 @@ async function main(){ // main asyncronous thread; mostly initializes the user s getById("container-11").style.display = 'none'; getById("container-12").style.display = 'none'; getById("container-13").style.display = 'none'; + getById("container-14").style.display = 'none'; + getById("container-15").style.display = 'none'; getById("mainmenu").style.alignSelf = "center"; getById("mainmenu").classList.add("mainmenuclass"); getById("header").style.alignSelf = "center"; @@ -4016,6 +4057,58 @@ async function main(){ // main asyncronous thread; mostly initializes the user s } + if ("groups" in e.data) { + if (typeof e.data.groups == "object"){ + session.group = e.data.groups || []; + } else if (!e.data.group){ + session.group = []; + } else { + session.group = e.data.groups.split(","); + } + var eleGroup = getById("groups"); + eleGroup.querySelectorAll('[data-action-type="toggle-group"][data-group]').forEach(group=>{ + if (!(session.group && session.group.includes(group))){ + group.remove("green"); + } + }); + + if (session.group){ + session.group.forEach(group =>{ + + var ele = eleGroup.querySelector('[data-action-type="toggle-group"][data-group="'+group+'"'); + if (!ele){ + ele = document.createElement("div"); + ele.dataset.actionType = "toggle-group"; + ele.dataset.group = group; + ele.classList.add('float'); + ele.style.display = "inline-block"; + ele.role = "button"; + ele.innerHTML = '
'+group; + eleGroup.appendChild(ele); + ele.onclick = function(){ + changeGroupDirectorAPI(this.dataset.group); + } + } + ele.classList.add("green"); + }); + } + + updateMixer(); + + if (session.group.length || session.allowNoGroup){ + session.sendMessage({"group":session.group.join(",")}); + if (session.screenShareState && (session.screenshareType ===3)){ + session.sendMessage({"group":session.group.join(","), altUUID:true}); + } + } else { + session.sendMessage({"group":false}); + if (session.screenShareState && (session.screenshareType ===3)){ + session.sendMessage({"group":false, altUUID:true}); + } + } + + } + if ("mute" in e.data) { if (e.data.mute === true) { // unmute session.speakerMuted = true; // set @@ -4314,7 +4407,6 @@ async function main(){ // main asyncronous thread; mostly initializes the user s stats.total_inbound_connections = Object.keys(session.rpcs).length; for (var i in session.rpcs) { stats.inbound_stats[session.rpcs[i].streamID] = session.rpcs[i].stats; - console.log(stats); } for (var uuid in session.pcs) { setTimeout(function(UUID) { diff --git a/meet.html b/meet.html new file mode 100644 index 0000000..24e95db --- /dev/null +++ b/meet.html @@ -0,0 +1,1949 @@ + + + Meet app + + + + + + + + + + + + + + + + +
+
+
+ + +
+
+

Meet

A simple free chat room

+ + + + Generate a random room name + +
+
+

+ +

+ +
+
+
+
+
+ + +
+ + + + \ No newline at end of file diff --git a/mixer.html b/mixer.html index 4487ad9..487eb61 100644 --- a/mixer.html +++ b/mixer.html @@ -867,19 +867,19 @@

Mixer App

Video chat with custom layouts

- + Generate a random room name
-
+




@@ -1068,7 +1068,7 @@ var assignSlotToGuest = true; var toggleLabel = false; var toggleBroadcast = true; - + var messageList = []; var password = false; if (urlParams.has('password') || urlParams.has('pass') || urlParams.has('pw') || urlParams.has('p')) { password = urlParams.get('password') || urlParams.get('pass') || urlParams.get('pw') || urlParams.get('p'); @@ -1966,7 +1966,7 @@ roomname = generateString(10); } - var iframesrc = "./index.html?novice<b=350&transparent&hideheader&hidetranslate&cleandirector&chatbutton=0&director="+roomname+additional+additional2+"&b64css="+injectCSS; + var iframesrc = "./index.html?novice&showdirector<b=350&transparent&hideheader&hidetranslate&cleandirector&chatbutton=0&director="+roomname+additional+additional2+"&b64css="+injectCSS; if (roomname!==false){ setStorage("savedRoom", {roomname:roomname,password:password}, 9999); @@ -2112,6 +2112,15 @@ //console.log(e.data); + if ("gotChat" in e.data){ + messageList.push(e.data.gotChat); + messageList = messageList.slice(-100); + updateMessages(e.data.gotChat); + } else if ("messageList" in e.data){ + messageList = e.data.messageList; + updateMessages(); + } + if ("action" in e.data){ ///var outputWindow = document.createElement("div"); //outputWindow.innerHTML = "event: "+e.data.action+"
"; diff --git a/speedtest.html b/speedtest.html index 0d886e7..00c3897 100644 --- a/speedtest.html +++ b/speedtest.html @@ -59,6 +59,14 @@ Check out this Youtube video for more details and solutions to reduce packet loss if suffering from any. +

Unsupervised guest check option

+ + You can also use this tool to have a guest perform a system and connection test, with those results being available to you via a result's page for up to a week.
+ You can either ask the remote guest to send you the link to their results page when they complete the test, or you can use check.html?id=xxx to pre-assign the test ID (ie: xxx), which will have the results then be available at results.html?id=xxx. +
If you have questions, join the Discord here. +
+
+

More testing options below


diff --git a/thirdparty/CodecsHandler.js b/thirdparty/CodecsHandler.js index 93b8fd4..b48650c 100644 --- a/thirdparty/CodecsHandler.js +++ b/thirdparty/CodecsHandler.js @@ -300,6 +300,8 @@ var CodecsHandler = (function() { if (!codecPayload) { return defaultBitrate; } + + var codecDetails = findLine(sdpLines, 'a=fmtp:'+codecPayload); var rtxIndex = findLine(sdpLines, 'a=rtpmap', 'rtx/90000'); var rtxPayload; @@ -311,13 +313,23 @@ var CodecsHandler = (function() { return defaultBitrate; } - var rtxFmtpLineIndex = findLine(sdpLines, 'a=fmtp:' + rtxPayload.toString()); + var rtxFmtpLineIndex = findLine(sdpLines, 'a=fmtp:' + codecPayload.toString()); if (rtxFmtpLineIndex !== null) { try { var maxBitrate = parseInt(sdpLines[rtxFmtpLineIndex].split("x-google-max-bitrate=")[1].split(";")[0]); var minBitrate = parseInt(sdpLines[rtxFmtpLineIndex].split("x-google-min-bitrate=")[1].split(";")[0]); } catch(e){ - return defaultBitrate; + rtxFmtpLineIndex = findLine(sdpLines, 'a=fmtp:' + codecPayload.toString()); + if (rtxFmtpLineIndex !== null) { + try { + var maxBitrate = parseInt(sdpLines[rtxFmtpLineIndex].split("x-google-max-bitrate=")[1].split(";")[0]); + var minBitrate = parseInt(sdpLines[rtxFmtpLineIndex].split("x-google-min-bitrate=")[1].split(";")[0]); + } catch(e){ + return defaultBitrate; + } + } else { + return defaultBitrate; + } } if (minBitrate>maxBitrate){ @@ -328,12 +340,9 @@ var CodecsHandler = (function() { } else { return defaultBitrate; } - - - } - function setVideoBitrates(sdp, params, codec) { // modified + Improved by Steve. + function setVideoBitrates(sdp, params = false, codec=false) { // modified + Improved by Steve. if (codec){ codec = codec.toUpperCase(); @@ -358,9 +367,15 @@ var CodecsHandler = (function() { codec = codecName || codec; // Try to find first Codec; else use expected/default params = params || {}; - var min_bitrate = params.min.toString() || '30'; - var max_bitrate = params.max.toString() || '2500'; + var min_bitrate = "30"; + if (params.min){ + min_bitrate = params.min.toString() || '30'; + } + var max_bitrate = "2500"; + if (params.max){ + max_bitrate = params.max.toString() || '2500'; + } var codecIndex = findLine(sdpLines, 'a=rtpmap', codec+'/90000'); var codecPayload; diff --git a/thirdparty/adapter.js b/thirdparty/adapter.js new file mode 100644 index 0000000..f766aa6 --- /dev/null +++ b/thirdparty/adapter.js @@ -0,0 +1,3514 @@ +(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.adapter = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i 0 && arguments[0] !== undefined ? arguments[0] : {}, + window = _ref.window; + + var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : { + shimChrome: true, + shimFirefox: true, + shimSafari: true + }; + + // Utils. + var logging = utils.log; + var browserDetails = utils.detectBrowser(window); + + var adapter = { + browserDetails: browserDetails, + commonShim: commonShim, + extractVersion: utils.extractVersion, + disableLog: utils.disableLog, + disableWarnings: utils.disableWarnings, + // Expose sdp as a convenience. For production apps include directly. + sdp: sdp + }; + + // Shim browser if found. + switch (browserDetails.browser) { + case 'chrome': + if (!chromeShim || !chromeShim.shimPeerConnection || !options.shimChrome) { + logging('Chrome shim is not included in this adapter release.'); + return adapter; + } + if (browserDetails.version === null) { + logging('Chrome shim can not determine version, not shimming.'); + return adapter; + } + logging('adapter.js shimming chrome.'); + // Export to the adapter global object visible in the browser. + adapter.browserShim = chromeShim; + + // Must be called before shimPeerConnection. + commonShim.shimAddIceCandidateNullOrEmpty(window, browserDetails); + commonShim.shimParameterlessSetLocalDescription(window, browserDetails); + + chromeShim.shimGetUserMedia(window, browserDetails); + chromeShim.shimMediaStream(window, browserDetails); + chromeShim.shimPeerConnection(window, browserDetails); + chromeShim.shimOnTrack(window, browserDetails); + chromeShim.shimAddTrackRemoveTrack(window, browserDetails); + chromeShim.shimGetSendersWithDtmf(window, browserDetails); + chromeShim.shimGetStats(window, browserDetails); + chromeShim.shimSenderReceiverGetStats(window, browserDetails); + chromeShim.fixNegotiationNeeded(window, browserDetails); + + commonShim.shimRTCIceCandidate(window, browserDetails); + commonShim.shimRTCIceCandidateRelayProtocol(window, browserDetails); + commonShim.shimConnectionState(window, browserDetails); + commonShim.shimMaxMessageSize(window, browserDetails); + commonShim.shimSendThrowTypeError(window, browserDetails); + commonShim.removeExtmapAllowMixed(window, browserDetails); + break; + case 'firefox': + if (!firefoxShim || !firefoxShim.shimPeerConnection || !options.shimFirefox) { + logging('Firefox shim is not included in this adapter release.'); + return adapter; + } + logging('adapter.js shimming firefox.'); + // Export to the adapter global object visible in the browser. + adapter.browserShim = firefoxShim; + + // Must be called before shimPeerConnection. + commonShim.shimAddIceCandidateNullOrEmpty(window, browserDetails); + commonShim.shimParameterlessSetLocalDescription(window, browserDetails); + + firefoxShim.shimGetUserMedia(window, browserDetails); + firefoxShim.shimPeerConnection(window, browserDetails); + firefoxShim.shimOnTrack(window, browserDetails); + firefoxShim.shimRemoveStream(window, browserDetails); + firefoxShim.shimSenderGetStats(window, browserDetails); + firefoxShim.shimReceiverGetStats(window, browserDetails); + firefoxShim.shimRTCDataChannel(window, browserDetails); + firefoxShim.shimAddTransceiver(window, browserDetails); + firefoxShim.shimGetParameters(window, browserDetails); + firefoxShim.shimCreateOffer(window, browserDetails); + firefoxShim.shimCreateAnswer(window, browserDetails); + + commonShim.shimRTCIceCandidate(window, browserDetails); + commonShim.shimConnectionState(window, browserDetails); + commonShim.shimMaxMessageSize(window, browserDetails); + commonShim.shimSendThrowTypeError(window, browserDetails); + break; + case 'safari': + if (!safariShim || !options.shimSafari) { + logging('Safari shim is not included in this adapter release.'); + return adapter; + } + logging('adapter.js shimming safari.'); + // Export to the adapter global object visible in the browser. + adapter.browserShim = safariShim; + + // Must be called before shimCallbackAPI. + commonShim.shimAddIceCandidateNullOrEmpty(window, browserDetails); + commonShim.shimParameterlessSetLocalDescription(window, browserDetails); + + safariShim.shimRTCIceServerUrls(window, browserDetails); + safariShim.shimCreateOfferLegacy(window, browserDetails); + safariShim.shimCallbacksAPI(window, browserDetails); + safariShim.shimLocalStreamsAPI(window, browserDetails); + safariShim.shimRemoteStreamsAPI(window, browserDetails); + safariShim.shimTrackEventTransceiver(window, browserDetails); + safariShim.shimGetUserMedia(window, browserDetails); + safariShim.shimAudioContext(window, browserDetails); + + commonShim.shimRTCIceCandidate(window, browserDetails); + commonShim.shimRTCIceCandidateRelayProtocol(window, browserDetails); + commonShim.shimMaxMessageSize(window, browserDetails); + commonShim.shimSendThrowTypeError(window, browserDetails); + commonShim.removeExtmapAllowMixed(window, browserDetails); + break; + default: + logging('Unsupported browser!'); + break; + } + + return adapter; +} + +// Browser shims. + +},{"./chrome/chrome_shim":3,"./common_shim":6,"./firefox/firefox_shim":7,"./safari/safari_shim":10,"./utils":11,"sdp":12}],3:[function(require,module,exports){ +/* + * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. + */ +/* eslint-env node */ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.shimGetDisplayMedia = exports.shimGetUserMedia = undefined; + +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + +var _getusermedia = require('./getusermedia'); + +Object.defineProperty(exports, 'shimGetUserMedia', { + enumerable: true, + get: function get() { + return _getusermedia.shimGetUserMedia; + } +}); + +var _getdisplaymedia = require('./getdisplaymedia'); + +Object.defineProperty(exports, 'shimGetDisplayMedia', { + enumerable: true, + get: function get() { + return _getdisplaymedia.shimGetDisplayMedia; + } +}); +exports.shimMediaStream = shimMediaStream; +exports.shimOnTrack = shimOnTrack; +exports.shimGetSendersWithDtmf = shimGetSendersWithDtmf; +exports.shimGetStats = shimGetStats; +exports.shimSenderReceiverGetStats = shimSenderReceiverGetStats; +exports.shimAddTrackRemoveTrackWithNative = shimAddTrackRemoveTrackWithNative; +exports.shimAddTrackRemoveTrack = shimAddTrackRemoveTrack; +exports.shimPeerConnection = shimPeerConnection; +exports.fixNegotiationNeeded = fixNegotiationNeeded; + +var _utils = require('../utils.js'); + +var utils = _interopRequireWildcard(_utils); + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } + +function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + +function shimMediaStream(window) { + window.MediaStream = window.MediaStream || window.webkitMediaStream; +} + +function shimOnTrack(window) { + if ((typeof window === 'undefined' ? 'undefined' : _typeof(window)) === 'object' && window.RTCPeerConnection && !('ontrack' in window.RTCPeerConnection.prototype)) { + Object.defineProperty(window.RTCPeerConnection.prototype, 'ontrack', { + get: function get() { + return this._ontrack; + }, + set: function set(f) { + if (this._ontrack) { + this.removeEventListener('track', this._ontrack); + } + this.addEventListener('track', this._ontrack = f); + }, + + enumerable: true, + configurable: true + }); + var origSetRemoteDescription = window.RTCPeerConnection.prototype.setRemoteDescription; + window.RTCPeerConnection.prototype.setRemoteDescription = function setRemoteDescription() { + var _this = this; + + if (!this._ontrackpoly) { + this._ontrackpoly = function (e) { + // onaddstream does not fire when a track is added to an existing + // stream. But stream.onaddtrack is implemented so we use that. + e.stream.addEventListener('addtrack', function (te) { + var receiver = void 0; + if (window.RTCPeerConnection.prototype.getReceivers) { + receiver = _this.getReceivers().find(function (r) { + return r.track && r.track.id === te.track.id; + }); + } else { + receiver = { track: te.track }; + } + + var event = new Event('track'); + event.track = te.track; + event.receiver = receiver; + event.transceiver = { receiver: receiver }; + event.streams = [e.stream]; + _this.dispatchEvent(event); + }); + e.stream.getTracks().forEach(function (track) { + var receiver = void 0; + if (window.RTCPeerConnection.prototype.getReceivers) { + receiver = _this.getReceivers().find(function (r) { + return r.track && r.track.id === track.id; + }); + } else { + receiver = { track: track }; + } + var event = new Event('track'); + event.track = track; + event.receiver = receiver; + event.transceiver = { receiver: receiver }; + event.streams = [e.stream]; + _this.dispatchEvent(event); + }); + }; + this.addEventListener('addstream', this._ontrackpoly); + } + return origSetRemoteDescription.apply(this, arguments); + }; + } else { + // even if RTCRtpTransceiver is in window, it is only used and + // emitted in unified-plan. Unfortunately this means we need + // to unconditionally wrap the event. + utils.wrapPeerConnectionEvent(window, 'track', function (e) { + if (!e.transceiver) { + Object.defineProperty(e, 'transceiver', { value: { receiver: e.receiver } }); + } + return e; + }); + } +} + +function shimGetSendersWithDtmf(window) { + // Overrides addTrack/removeTrack, depends on shimAddTrackRemoveTrack. + if ((typeof window === 'undefined' ? 'undefined' : _typeof(window)) === 'object' && window.RTCPeerConnection && !('getSenders' in window.RTCPeerConnection.prototype) && 'createDTMFSender' in window.RTCPeerConnection.prototype) { + var shimSenderWithDtmf = function shimSenderWithDtmf(pc, track) { + return { + track: track, + get dtmf() { + if (this._dtmf === undefined) { + if (track.kind === 'audio') { + this._dtmf = pc.createDTMFSender(track); + } else { + this._dtmf = null; + } + } + return this._dtmf; + }, + _pc: pc + }; + }; + + // augment addTrack when getSenders is not available. + if (!window.RTCPeerConnection.prototype.getSenders) { + window.RTCPeerConnection.prototype.getSenders = function getSenders() { + this._senders = this._senders || []; + return this._senders.slice(); // return a copy of the internal state. + }; + var origAddTrack = window.RTCPeerConnection.prototype.addTrack; + window.RTCPeerConnection.prototype.addTrack = function addTrack(track, stream) { + var sender = origAddTrack.apply(this, arguments); + if (!sender) { + sender = shimSenderWithDtmf(this, track); + this._senders.push(sender); + } + return sender; + }; + + var origRemoveTrack = window.RTCPeerConnection.prototype.removeTrack; + window.RTCPeerConnection.prototype.removeTrack = function removeTrack(sender) { + origRemoveTrack.apply(this, arguments); + var idx = this._senders.indexOf(sender); + if (idx !== -1) { + this._senders.splice(idx, 1); + } + }; + } + var origAddStream = window.RTCPeerConnection.prototype.addStream; + window.RTCPeerConnection.prototype.addStream = function addStream(stream) { + var _this2 = this; + + this._senders = this._senders || []; + origAddStream.apply(this, [stream]); + stream.getTracks().forEach(function (track) { + _this2._senders.push(shimSenderWithDtmf(_this2, track)); + }); + }; + + var origRemoveStream = window.RTCPeerConnection.prototype.removeStream; + window.RTCPeerConnection.prototype.removeStream = function removeStream(stream) { + var _this3 = this; + + this._senders = this._senders || []; + origRemoveStream.apply(this, [stream]); + + stream.getTracks().forEach(function (track) { + var sender = _this3._senders.find(function (s) { + return s.track === track; + }); + if (sender) { + // remove sender + _this3._senders.splice(_this3._senders.indexOf(sender), 1); + } + }); + }; + } else if ((typeof window === 'undefined' ? 'undefined' : _typeof(window)) === 'object' && window.RTCPeerConnection && 'getSenders' in window.RTCPeerConnection.prototype && 'createDTMFSender' in window.RTCPeerConnection.prototype && window.RTCRtpSender && !('dtmf' in window.RTCRtpSender.prototype)) { + var origGetSenders = window.RTCPeerConnection.prototype.getSenders; + window.RTCPeerConnection.prototype.getSenders = function getSenders() { + var _this4 = this; + + var senders = origGetSenders.apply(this, []); + senders.forEach(function (sender) { + return sender._pc = _this4; + }); + return senders; + }; + + Object.defineProperty(window.RTCRtpSender.prototype, 'dtmf', { + get: function get() { + if (this._dtmf === undefined) { + if (this.track.kind === 'audio') { + this._dtmf = this._pc.createDTMFSender(this.track); + } else { + this._dtmf = null; + } + } + return this._dtmf; + } + }); + } +} + +function shimGetStats(window) { + if (!window.RTCPeerConnection) { + return; + } + + var origGetStats = window.RTCPeerConnection.prototype.getStats; + window.RTCPeerConnection.prototype.getStats = function getStats() { + var _this5 = this; + + var _arguments = Array.prototype.slice.call(arguments), + selector = _arguments[0], + onSucc = _arguments[1], + onErr = _arguments[2]; + + // If selector is a function then we are in the old style stats so just + // pass back the original getStats format to avoid breaking old users. + + + if (arguments.length > 0 && typeof selector === 'function') { + return origGetStats.apply(this, arguments); + } + + // When spec-style getStats is supported, return those when called with + // either no arguments or the selector argument is null. + if (origGetStats.length === 0 && (arguments.length === 0 || typeof selector !== 'function')) { + return origGetStats.apply(this, []); + } + + var fixChromeStats_ = function fixChromeStats_(response) { + var standardReport = {}; + var reports = response.result(); + reports.forEach(function (report) { + var standardStats = { + id: report.id, + timestamp: report.timestamp, + type: { + localcandidate: 'local-candidate', + remotecandidate: 'remote-candidate' + }[report.type] || report.type + }; + report.names().forEach(function (name) { + standardStats[name] = report.stat(name); + }); + standardReport[standardStats.id] = standardStats; + }); + + return standardReport; + }; + + // shim getStats with maplike support + var makeMapStats = function makeMapStats(stats) { + return new Map(Object.keys(stats).map(function (key) { + return [key, stats[key]]; + })); + }; + + if (arguments.length >= 2) { + var successCallbackWrapper_ = function successCallbackWrapper_(response) { + onSucc(makeMapStats(fixChromeStats_(response))); + }; + + return origGetStats.apply(this, [successCallbackWrapper_, selector]); + } + + // promise-support + return new Promise(function (resolve, reject) { + origGetStats.apply(_this5, [function (response) { + resolve(makeMapStats(fixChromeStats_(response))); + }, reject]); + }).then(onSucc, onErr); + }; +} + +function shimSenderReceiverGetStats(window) { + if (!((typeof window === 'undefined' ? 'undefined' : _typeof(window)) === 'object' && window.RTCPeerConnection && window.RTCRtpSender && window.RTCRtpReceiver)) { + return; + } + + // shim sender stats. + if (!('getStats' in window.RTCRtpSender.prototype)) { + var origGetSenders = window.RTCPeerConnection.prototype.getSenders; + if (origGetSenders) { + window.RTCPeerConnection.prototype.getSenders = function getSenders() { + var _this6 = this; + + var senders = origGetSenders.apply(this, []); + senders.forEach(function (sender) { + return sender._pc = _this6; + }); + return senders; + }; + } + + var origAddTrack = window.RTCPeerConnection.prototype.addTrack; + if (origAddTrack) { + window.RTCPeerConnection.prototype.addTrack = function addTrack() { + var sender = origAddTrack.apply(this, arguments); + sender._pc = this; + return sender; + }; + } + window.RTCRtpSender.prototype.getStats = function getStats() { + var sender = this; + return this._pc.getStats().then(function (result) { + return ( + /* Note: this will include stats of all senders that + * send a track with the same id as sender.track as + * it is not possible to identify the RTCRtpSender. + */ + utils.filterStats(result, sender.track, true) + ); + }); + }; + } + + // shim receiver stats. + if (!('getStats' in window.RTCRtpReceiver.prototype)) { + var origGetReceivers = window.RTCPeerConnection.prototype.getReceivers; + if (origGetReceivers) { + window.RTCPeerConnection.prototype.getReceivers = function getReceivers() { + var _this7 = this; + + var receivers = origGetReceivers.apply(this, []); + receivers.forEach(function (receiver) { + return receiver._pc = _this7; + }); + return receivers; + }; + } + utils.wrapPeerConnectionEvent(window, 'track', function (e) { + e.receiver._pc = e.srcElement; + return e; + }); + window.RTCRtpReceiver.prototype.getStats = function getStats() { + var receiver = this; + return this._pc.getStats().then(function (result) { + return utils.filterStats(result, receiver.track, false); + }); + }; + } + + if (!('getStats' in window.RTCRtpSender.prototype && 'getStats' in window.RTCRtpReceiver.prototype)) { + return; + } + + // shim RTCPeerConnection.getStats(track). + var origGetStats = window.RTCPeerConnection.prototype.getStats; + window.RTCPeerConnection.prototype.getStats = function getStats() { + if (arguments.length > 0 && arguments[0] instanceof window.MediaStreamTrack) { + var track = arguments[0]; + var sender = void 0; + var receiver = void 0; + var err = void 0; + this.getSenders().forEach(function (s) { + if (s.track === track) { + if (sender) { + err = true; + } else { + sender = s; + } + } + }); + this.getReceivers().forEach(function (r) { + if (r.track === track) { + if (receiver) { + err = true; + } else { + receiver = r; + } + } + return r.track === track; + }); + if (err || sender && receiver) { + return Promise.reject(new DOMException('There are more than one sender or receiver for the track.', 'InvalidAccessError')); + } else if (sender) { + return sender.getStats(); + } else if (receiver) { + return receiver.getStats(); + } + return Promise.reject(new DOMException('There is no sender or receiver for the track.', 'InvalidAccessError')); + } + return origGetStats.apply(this, arguments); + }; +} + +function shimAddTrackRemoveTrackWithNative(window) { + // shim addTrack/removeTrack with native variants in order to make + // the interactions with legacy getLocalStreams behave as in other browsers. + // Keeps a mapping stream.id => [stream, rtpsenders...] + window.RTCPeerConnection.prototype.getLocalStreams = function getLocalStreams() { + var _this8 = this; + + this._shimmedLocalStreams = this._shimmedLocalStreams || {}; + return Object.keys(this._shimmedLocalStreams).map(function (streamId) { + return _this8._shimmedLocalStreams[streamId][0]; + }); + }; + + var origAddTrack = window.RTCPeerConnection.prototype.addTrack; + window.RTCPeerConnection.prototype.addTrack = function addTrack(track, stream) { + if (!stream) { + return origAddTrack.apply(this, arguments); + } + this._shimmedLocalStreams = this._shimmedLocalStreams || {}; + + var sender = origAddTrack.apply(this, arguments); + if (!this._shimmedLocalStreams[stream.id]) { + this._shimmedLocalStreams[stream.id] = [stream, sender]; + } else if (this._shimmedLocalStreams[stream.id].indexOf(sender) === -1) { + this._shimmedLocalStreams[stream.id].push(sender); + } + return sender; + }; + + var origAddStream = window.RTCPeerConnection.prototype.addStream; + window.RTCPeerConnection.prototype.addStream = function addStream(stream) { + var _this9 = this; + + this._shimmedLocalStreams = this._shimmedLocalStreams || {}; + + stream.getTracks().forEach(function (track) { + var alreadyExists = _this9.getSenders().find(function (s) { + return s.track === track; + }); + if (alreadyExists) { + throw new DOMException('Track already exists.', 'InvalidAccessError'); + } + }); + var existingSenders = this.getSenders(); + origAddStream.apply(this, arguments); + var newSenders = this.getSenders().filter(function (newSender) { + return existingSenders.indexOf(newSender) === -1; + }); + this._shimmedLocalStreams[stream.id] = [stream].concat(newSenders); + }; + + var origRemoveStream = window.RTCPeerConnection.prototype.removeStream; + window.RTCPeerConnection.prototype.removeStream = function removeStream(stream) { + this._shimmedLocalStreams = this._shimmedLocalStreams || {}; + delete this._shimmedLocalStreams[stream.id]; + return origRemoveStream.apply(this, arguments); + }; + + var origRemoveTrack = window.RTCPeerConnection.prototype.removeTrack; + window.RTCPeerConnection.prototype.removeTrack = function removeTrack(sender) { + var _this10 = this; + + this._shimmedLocalStreams = this._shimmedLocalStreams || {}; + if (sender) { + Object.keys(this._shimmedLocalStreams).forEach(function (streamId) { + var idx = _this10._shimmedLocalStreams[streamId].indexOf(sender); + if (idx !== -1) { + _this10._shimmedLocalStreams[streamId].splice(idx, 1); + } + if (_this10._shimmedLocalStreams[streamId].length === 1) { + delete _this10._shimmedLocalStreams[streamId]; + } + }); + } + return origRemoveTrack.apply(this, arguments); + }; +} + +function shimAddTrackRemoveTrack(window, browserDetails) { + if (!window.RTCPeerConnection) { + return; + } + // shim addTrack and removeTrack. + if (window.RTCPeerConnection.prototype.addTrack && browserDetails.version >= 65) { + return shimAddTrackRemoveTrackWithNative(window); + } + + // also shim pc.getLocalStreams when addTrack is shimmed + // to return the original streams. + var origGetLocalStreams = window.RTCPeerConnection.prototype.getLocalStreams; + window.RTCPeerConnection.prototype.getLocalStreams = function getLocalStreams() { + var _this11 = this; + + var nativeStreams = origGetLocalStreams.apply(this); + this._reverseStreams = this._reverseStreams || {}; + return nativeStreams.map(function (stream) { + return _this11._reverseStreams[stream.id]; + }); + }; + + var origAddStream = window.RTCPeerConnection.prototype.addStream; + window.RTCPeerConnection.prototype.addStream = function addStream(stream) { + var _this12 = this; + + this._streams = this._streams || {}; + this._reverseStreams = this._reverseStreams || {}; + + stream.getTracks().forEach(function (track) { + var alreadyExists = _this12.getSenders().find(function (s) { + return s.track === track; + }); + if (alreadyExists) { + throw new DOMException('Track already exists.', 'InvalidAccessError'); + } + }); + // Add identity mapping for consistency with addTrack. + // Unless this is being used with a stream from addTrack. + if (!this._reverseStreams[stream.id]) { + var newStream = new window.MediaStream(stream.getTracks()); + this._streams[stream.id] = newStream; + this._reverseStreams[newStream.id] = stream; + stream = newStream; + } + origAddStream.apply(this, [stream]); + }; + + var origRemoveStream = window.RTCPeerConnection.prototype.removeStream; + window.RTCPeerConnection.prototype.removeStream = function removeStream(stream) { + this._streams = this._streams || {}; + this._reverseStreams = this._reverseStreams || {}; + + origRemoveStream.apply(this, [this._streams[stream.id] || stream]); + delete this._reverseStreams[this._streams[stream.id] ? this._streams[stream.id].id : stream.id]; + delete this._streams[stream.id]; + }; + + window.RTCPeerConnection.prototype.addTrack = function addTrack(track, stream) { + var _this13 = this; + + if (this.signalingState === 'closed') { + throw new DOMException('The RTCPeerConnection\'s signalingState is \'closed\'.', 'InvalidStateError'); + } + var streams = [].slice.call(arguments, 1); + if (streams.length !== 1 || !streams[0].getTracks().find(function (t) { + return t === track; + })) { + // this is not fully correct but all we can manage without + // [[associated MediaStreams]] internal slot. + throw new DOMException('The adapter.js addTrack polyfill only supports a single ' + ' stream which is associated with the specified track.', 'NotSupportedError'); + } + + var alreadyExists = this.getSenders().find(function (s) { + return s.track === track; + }); + if (alreadyExists) { + throw new DOMException('Track already exists.', 'InvalidAccessError'); + } + + this._streams = this._streams || {}; + this._reverseStreams = this._reverseStreams || {}; + var oldStream = this._streams[stream.id]; + if (oldStream) { + // this is using odd Chrome behaviour, use with caution: + // https://bugs.chromium.org/p/webrtc/issues/detail?id=7815 + // Note: we rely on the high-level addTrack/dtmf shim to + // create the sender with a dtmf sender. + oldStream.addTrack(track); + + // Trigger ONN async. + Promise.resolve().then(function () { + _this13.dispatchEvent(new Event('negotiationneeded')); + }); + } else { + var newStream = new window.MediaStream([track]); + this._streams[stream.id] = newStream; + this._reverseStreams[newStream.id] = stream; + this.addStream(newStream); + } + return this.getSenders().find(function (s) { + return s.track === track; + }); + }; + + // replace the internal stream id with the external one and + // vice versa. + function replaceInternalStreamId(pc, description) { + var sdp = description.sdp; + Object.keys(pc._reverseStreams || []).forEach(function (internalId) { + var externalStream = pc._reverseStreams[internalId]; + var internalStream = pc._streams[externalStream.id]; + sdp = sdp.replace(new RegExp(internalStream.id, 'g'), externalStream.id); + }); + return new RTCSessionDescription({ + type: description.type, + sdp: sdp + }); + } + function replaceExternalStreamId(pc, description) { + var sdp = description.sdp; + Object.keys(pc._reverseStreams || []).forEach(function (internalId) { + var externalStream = pc._reverseStreams[internalId]; + var internalStream = pc._streams[externalStream.id]; + sdp = sdp.replace(new RegExp(externalStream.id, 'g'), internalStream.id); + }); + return new RTCSessionDescription({ + type: description.type, + sdp: sdp + }); + } + ['createOffer', 'createAnswer'].forEach(function (method) { + var nativeMethod = window.RTCPeerConnection.prototype[method]; + var methodObj = _defineProperty({}, method, function () { + var _this14 = this; + + var args = arguments; + var isLegacyCall = arguments.length && typeof arguments[0] === 'function'; + if (isLegacyCall) { + return nativeMethod.apply(this, [function (description) { + var desc = replaceInternalStreamId(_this14, description); + args[0].apply(null, [desc]); + }, function (err) { + if (args[1]) { + args[1].apply(null, err); + } + }, arguments[2]]); + } + return nativeMethod.apply(this, arguments).then(function (description) { + return replaceInternalStreamId(_this14, description); + }); + }); + window.RTCPeerConnection.prototype[method] = methodObj[method]; + }); + + var origSetLocalDescription = window.RTCPeerConnection.prototype.setLocalDescription; + window.RTCPeerConnection.prototype.setLocalDescription = function setLocalDescription() { + if (!arguments.length || !arguments[0].type) { + return origSetLocalDescription.apply(this, arguments); + } + arguments[0] = replaceExternalStreamId(this, arguments[0]); + return origSetLocalDescription.apply(this, arguments); + }; + + // TODO: mangle getStats: https://w3c.github.io/webrtc-stats/#dom-rtcmediastreamstats-streamidentifier + + var origLocalDescription = Object.getOwnPropertyDescriptor(window.RTCPeerConnection.prototype, 'localDescription'); + Object.defineProperty(window.RTCPeerConnection.prototype, 'localDescription', { + get: function get() { + var description = origLocalDescription.get.apply(this); + if (description.type === '') { + return description; + } + return replaceInternalStreamId(this, description); + } + }); + + window.RTCPeerConnection.prototype.removeTrack = function removeTrack(sender) { + var _this15 = this; + + if (this.signalingState === 'closed') { + throw new DOMException('The RTCPeerConnection\'s signalingState is \'closed\'.', 'InvalidStateError'); + } + // We can not yet check for sender instanceof RTCRtpSender + // since we shim RTPSender. So we check if sender._pc is set. + if (!sender._pc) { + throw new DOMException('Argument 1 of RTCPeerConnection.removeTrack ' + 'does not implement interface RTCRtpSender.', 'TypeError'); + } + var isLocal = sender._pc === this; + if (!isLocal) { + throw new DOMException('Sender was not created by this connection.', 'InvalidAccessError'); + } + + // Search for the native stream the senders track belongs to. + this._streams = this._streams || {}; + var stream = void 0; + Object.keys(this._streams).forEach(function (streamid) { + var hasTrack = _this15._streams[streamid].getTracks().find(function (track) { + return sender.track === track; + }); + if (hasTrack) { + stream = _this15._streams[streamid]; + } + }); + + if (stream) { + if (stream.getTracks().length === 1) { + // if this is the last track of the stream, remove the stream. This + // takes care of any shimmed _senders. + this.removeStream(this._reverseStreams[stream.id]); + } else { + // relying on the same odd chrome behaviour as above. + stream.removeTrack(sender.track); + } + this.dispatchEvent(new Event('negotiationneeded')); + } + }; +} + +function shimPeerConnection(window, browserDetails) { + if (!window.RTCPeerConnection && window.webkitRTCPeerConnection) { + // very basic support for old versions. + window.RTCPeerConnection = window.webkitRTCPeerConnection; + } + if (!window.RTCPeerConnection) { + return; + } + + // shim implicit creation of RTCSessionDescription/RTCIceCandidate + if (browserDetails.version < 53) { + ['setLocalDescription', 'setRemoteDescription', 'addIceCandidate'].forEach(function (method) { + var nativeMethod = window.RTCPeerConnection.prototype[method]; + var methodObj = _defineProperty({}, method, function () { + arguments[0] = new (method === 'addIceCandidate' ? window.RTCIceCandidate : window.RTCSessionDescription)(arguments[0]); + return nativeMethod.apply(this, arguments); + }); + window.RTCPeerConnection.prototype[method] = methodObj[method]; + }); + } +} + +// Attempt to fix ONN in plan-b mode. +function fixNegotiationNeeded(window, browserDetails) { + utils.wrapPeerConnectionEvent(window, 'negotiationneeded', function (e) { + var pc = e.target; + if (browserDetails.version < 72 || pc.getConfiguration && pc.getConfiguration().sdpSemantics === 'plan-b') { + if (pc.signalingState !== 'stable') { + return; + } + } + return e; + }); +} + +},{"../utils.js":11,"./getdisplaymedia":4,"./getusermedia":5}],4:[function(require,module,exports){ +/* + * Copyright (c) 2018 The adapter.js project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. + */ +/* eslint-env node */ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.shimGetDisplayMedia = shimGetDisplayMedia; +function shimGetDisplayMedia(window, getSourceId) { + if (window.navigator.mediaDevices && 'getDisplayMedia' in window.navigator.mediaDevices) { + return; + } + if (!window.navigator.mediaDevices) { + return; + } + // getSourceId is a function that returns a promise resolving with + // the sourceId of the screen/window/tab to be shared. + if (typeof getSourceId !== 'function') { + console.error('shimGetDisplayMedia: getSourceId argument is not ' + 'a function'); + return; + } + window.navigator.mediaDevices.getDisplayMedia = function getDisplayMedia(constraints) { + return getSourceId(constraints).then(function (sourceId) { + var widthSpecified = constraints.video && constraints.video.width; + var heightSpecified = constraints.video && constraints.video.height; + var frameRateSpecified = constraints.video && constraints.video.frameRate; + constraints.video = { + mandatory: { + chromeMediaSource: 'desktop', + chromeMediaSourceId: sourceId, + maxFrameRate: frameRateSpecified || 3 + } + }; + if (widthSpecified) { + constraints.video.mandatory.maxWidth = widthSpecified; + } + if (heightSpecified) { + constraints.video.mandatory.maxHeight = heightSpecified; + } + return window.navigator.mediaDevices.getUserMedia(constraints); + }); + }; +} + +},{}],5:[function(require,module,exports){ +/* + * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. + */ +/* eslint-env node */ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); + +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + +exports.shimGetUserMedia = shimGetUserMedia; + +var _utils = require('../utils.js'); + +var utils = _interopRequireWildcard(_utils); + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } + +var logging = utils.log; + +function shimGetUserMedia(window, browserDetails) { + var navigator = window && window.navigator; + + if (!navigator.mediaDevices) { + return; + } + + var constraintsToChrome_ = function constraintsToChrome_(c) { + if ((typeof c === 'undefined' ? 'undefined' : _typeof(c)) !== 'object' || c.mandatory || c.optional) { + return c; + } + var cc = {}; + Object.keys(c).forEach(function (key) { + if (key === 'require' || key === 'advanced' || key === 'mediaSource') { + return; + } + var r = _typeof(c[key]) === 'object' ? c[key] : { ideal: c[key] }; + if (r.exact !== undefined && typeof r.exact === 'number') { + r.min = r.max = r.exact; + } + var oldname_ = function oldname_(prefix, name) { + if (prefix) { + return prefix + name.charAt(0).toUpperCase() + name.slice(1); + } + return name === 'deviceId' ? 'sourceId' : name; + }; + if (r.ideal !== undefined) { + cc.optional = cc.optional || []; + var oc = {}; + if (typeof r.ideal === 'number') { + oc[oldname_('min', key)] = r.ideal; + cc.optional.push(oc); + oc = {}; + oc[oldname_('max', key)] = r.ideal; + cc.optional.push(oc); + } else { + oc[oldname_('', key)] = r.ideal; + cc.optional.push(oc); + } + } + if (r.exact !== undefined && typeof r.exact !== 'number') { + cc.mandatory = cc.mandatory || {}; + cc.mandatory[oldname_('', key)] = r.exact; + } else { + ['min', 'max'].forEach(function (mix) { + if (r[mix] !== undefined) { + cc.mandatory = cc.mandatory || {}; + cc.mandatory[oldname_(mix, key)] = r[mix]; + } + }); + } + }); + if (c.advanced) { + cc.optional = (cc.optional || []).concat(c.advanced); + } + return cc; + }; + + var shimConstraints_ = function shimConstraints_(constraints, func) { + if (browserDetails.version >= 61) { + return func(constraints); + } + constraints = JSON.parse(JSON.stringify(constraints)); + if (constraints && _typeof(constraints.audio) === 'object') { + var remap = function remap(obj, a, b) { + if (a in obj && !(b in obj)) { + obj[b] = obj[a]; + delete obj[a]; + } + }; + constraints = JSON.parse(JSON.stringify(constraints)); + remap(constraints.audio, 'autoGainControl', 'googAutoGainControl'); + remap(constraints.audio, 'noiseSuppression', 'googNoiseSuppression'); + constraints.audio = constraintsToChrome_(constraints.audio); + } + if (constraints && _typeof(constraints.video) === 'object') { + // Shim facingMode for mobile & surface pro. + var face = constraints.video.facingMode; + face = face && ((typeof face === 'undefined' ? 'undefined' : _typeof(face)) === 'object' ? face : { ideal: face }); + var getSupportedFacingModeLies = browserDetails.version < 66; + + if (face && (face.exact === 'user' || face.exact === 'environment' || face.ideal === 'user' || face.ideal === 'environment') && !(navigator.mediaDevices.getSupportedConstraints && navigator.mediaDevices.getSupportedConstraints().facingMode && !getSupportedFacingModeLies)) { + delete constraints.video.facingMode; + var matches = void 0; + if (face.exact === 'environment' || face.ideal === 'environment') { + matches = ['back', 'rear']; + } else if (face.exact === 'user' || face.ideal === 'user') { + matches = ['front']; + } + if (matches) { + // Look for matches in label, or use last cam for back (typical). + return navigator.mediaDevices.enumerateDevices().then(function (devices) { + devices = devices.filter(function (d) { + return d.kind === 'videoinput'; + }); + var dev = devices.find(function (d) { + return matches.some(function (match) { + return d.label.toLowerCase().includes(match); + }); + }); + if (!dev && devices.length && matches.includes('back')) { + dev = devices[devices.length - 1]; // more likely the back cam + } + if (dev) { + constraints.video.deviceId = face.exact ? { exact: dev.deviceId } : { ideal: dev.deviceId }; + } + constraints.video = constraintsToChrome_(constraints.video); + logging('chrome: ' + JSON.stringify(constraints)); + return func(constraints); + }); + } + } + constraints.video = constraintsToChrome_(constraints.video); + } + logging('chrome: ' + JSON.stringify(constraints)); + return func(constraints); + }; + + var shimError_ = function shimError_(e) { + if (browserDetails.version >= 64) { + return e; + } + return { + name: { + PermissionDeniedError: 'NotAllowedError', + PermissionDismissedError: 'NotAllowedError', + InvalidStateError: 'NotAllowedError', + DevicesNotFoundError: 'NotFoundError', + ConstraintNotSatisfiedError: 'OverconstrainedError', + TrackStartError: 'NotReadableError', + MediaDeviceFailedDueToShutdown: 'NotAllowedError', + MediaDeviceKillSwitchOn: 'NotAllowedError', + TabCaptureError: 'AbortError', + ScreenCaptureError: 'AbortError', + DeviceCaptureError: 'AbortError' + }[e.name] || e.name, + message: e.message, + constraint: e.constraint || e.constraintName, + toString: function toString() { + return this.name + (this.message && ': ') + this.message; + } + }; + }; + + var getUserMedia_ = function getUserMedia_(constraints, onSuccess, onError) { + shimConstraints_(constraints, function (c) { + navigator.webkitGetUserMedia(c, onSuccess, function (e) { + if (onError) { + onError(shimError_(e)); + } + }); + }); + }; + navigator.getUserMedia = getUserMedia_.bind(navigator); + + // Even though Chrome 45 has navigator.mediaDevices and a getUserMedia + // function which returns a Promise, it does not accept spec-style + // constraints. + if (navigator.mediaDevices.getUserMedia) { + var origGetUserMedia = navigator.mediaDevices.getUserMedia.bind(navigator.mediaDevices); + navigator.mediaDevices.getUserMedia = function (cs) { + return shimConstraints_(cs, function (c) { + return origGetUserMedia(c).then(function (stream) { + if (c.audio && !stream.getAudioTracks().length || c.video && !stream.getVideoTracks().length) { + stream.getTracks().forEach(function (track) { + track.stop(); + }); + throw new DOMException('', 'NotFoundError'); + } + return stream; + }, function (e) { + return Promise.reject(shimError_(e)); + }); + }); + }; + } +} + +},{"../utils.js":11}],6:[function(require,module,exports){ +/* + * Copyright (c) 2017 The WebRTC project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. + */ +/* eslint-env node */ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); + +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + +exports.shimRTCIceCandidate = shimRTCIceCandidate; +exports.shimRTCIceCandidateRelayProtocol = shimRTCIceCandidateRelayProtocol; +exports.shimMaxMessageSize = shimMaxMessageSize; +exports.shimSendThrowTypeError = shimSendThrowTypeError; +exports.shimConnectionState = shimConnectionState; +exports.removeExtmapAllowMixed = removeExtmapAllowMixed; +exports.shimAddIceCandidateNullOrEmpty = shimAddIceCandidateNullOrEmpty; +exports.shimParameterlessSetLocalDescription = shimParameterlessSetLocalDescription; + +var _sdp = require('sdp'); + +var _sdp2 = _interopRequireDefault(_sdp); + +var _utils = require('./utils'); + +var utils = _interopRequireWildcard(_utils); + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function shimRTCIceCandidate(window) { + // foundation is arbitrarily chosen as an indicator for full support for + // https://w3c.github.io/webrtc-pc/#rtcicecandidate-interface + if (!window.RTCIceCandidate || window.RTCIceCandidate && 'foundation' in window.RTCIceCandidate.prototype) { + return; + } + + var NativeRTCIceCandidate = window.RTCIceCandidate; + window.RTCIceCandidate = function RTCIceCandidate(args) { + // Remove the a= which shouldn't be part of the candidate string. + if ((typeof args === 'undefined' ? 'undefined' : _typeof(args)) === 'object' && args.candidate && args.candidate.indexOf('a=') === 0) { + args = JSON.parse(JSON.stringify(args)); + args.candidate = args.candidate.substr(2); + } + + if (args.candidate && args.candidate.length) { + // Augment the native candidate with the parsed fields. + var nativeCandidate = new NativeRTCIceCandidate(args); + var parsedCandidate = _sdp2.default.parseCandidate(args.candidate); + var augmentedCandidate = Object.assign(nativeCandidate, parsedCandidate); + + // Add a serializer that does not serialize the extra attributes. + augmentedCandidate.toJSON = function toJSON() { + return { + candidate: augmentedCandidate.candidate, + sdpMid: augmentedCandidate.sdpMid, + sdpMLineIndex: augmentedCandidate.sdpMLineIndex, + usernameFragment: augmentedCandidate.usernameFragment + }; + }; + return augmentedCandidate; + } + return new NativeRTCIceCandidate(args); + }; + window.RTCIceCandidate.prototype = NativeRTCIceCandidate.prototype; + + // Hook up the augmented candidate in onicecandidate and + // addEventListener('icecandidate', ...) + utils.wrapPeerConnectionEvent(window, 'icecandidate', function (e) { + if (e.candidate) { + Object.defineProperty(e, 'candidate', { + value: new window.RTCIceCandidate(e.candidate), + writable: 'false' + }); + } + return e; + }); +} + +function shimRTCIceCandidateRelayProtocol(window) { + if (!window.RTCIceCandidate || window.RTCIceCandidate && 'relayProtocol' in window.RTCIceCandidate.prototype) { + return; + } + + // Hook up the augmented candidate in onicecandidate and + // addEventListener('icecandidate', ...) + utils.wrapPeerConnectionEvent(window, 'icecandidate', function (e) { + if (e.candidate) { + var parsedCandidate = _sdp2.default.parseCandidate(e.candidate.candidate); + if (parsedCandidate.type === 'relay') { + // This is a libwebrtc-specific mapping of local type preference + // to relayProtocol. + e.candidate.relayProtocol = { + 0: 'tls', + 1: 'tcp', + 2: 'udp' + }[parsedCandidate.priority >> 24]; + } + } + return e; + }); +} + +function shimMaxMessageSize(window, browserDetails) { + if (!window.RTCPeerConnection) { + return; + } + + if (!('sctp' in window.RTCPeerConnection.prototype)) { + Object.defineProperty(window.RTCPeerConnection.prototype, 'sctp', { + get: function get() { + return typeof this._sctp === 'undefined' ? null : this._sctp; + } + }); + } + + var sctpInDescription = function sctpInDescription(description) { + if (!description || !description.sdp) { + return false; + } + var sections = _sdp2.default.splitSections(description.sdp); + sections.shift(); + return sections.some(function (mediaSection) { + var mLine = _sdp2.default.parseMLine(mediaSection); + return mLine && mLine.kind === 'application' && mLine.protocol.indexOf('SCTP') !== -1; + }); + }; + + var getRemoteFirefoxVersion = function getRemoteFirefoxVersion(description) { + // TODO: Is there a better solution for detecting Firefox? + var match = description.sdp.match(/mozilla...THIS_IS_SDPARTA-(\d+)/); + if (match === null || match.length < 2) { + return -1; + } + var version = parseInt(match[1], 10); + // Test for NaN (yes, this is ugly) + return version !== version ? -1 : version; + }; + + var getCanSendMaxMessageSize = function getCanSendMaxMessageSize(remoteIsFirefox) { + // Every implementation we know can send at least 64 KiB. + // Note: Although Chrome is technically able to send up to 256 KiB, the + // data does not reach the other peer reliably. + // See: https://bugs.chromium.org/p/webrtc/issues/detail?id=8419 + var canSendMaxMessageSize = 65536; + if (browserDetails.browser === 'firefox') { + if (browserDetails.version < 57) { + if (remoteIsFirefox === -1) { + // FF < 57 will send in 16 KiB chunks using the deprecated PPID + // fragmentation. + canSendMaxMessageSize = 16384; + } else { + // However, other FF (and RAWRTC) can reassemble PPID-fragmented + // messages. Thus, supporting ~2 GiB when sending. + canSendMaxMessageSize = 2147483637; + } + } else if (browserDetails.version < 60) { + // Currently, all FF >= 57 will reset the remote maximum message size + // to the default value when a data channel is created at a later + // stage. :( + // See: https://bugzilla.mozilla.org/show_bug.cgi?id=1426831 + canSendMaxMessageSize = browserDetails.version === 57 ? 65535 : 65536; + } else { + // FF >= 60 supports sending ~2 GiB + canSendMaxMessageSize = 2147483637; + } + } + return canSendMaxMessageSize; + }; + + var getMaxMessageSize = function getMaxMessageSize(description, remoteIsFirefox) { + // Note: 65536 bytes is the default value from the SDP spec. Also, + // every implementation we know supports receiving 65536 bytes. + var maxMessageSize = 65536; + + // FF 57 has a slightly incorrect default remote max message size, so + // we need to adjust it here to avoid a failure when sending. + // See: https://bugzilla.mozilla.org/show_bug.cgi?id=1425697 + if (browserDetails.browser === 'firefox' && browserDetails.version === 57) { + maxMessageSize = 65535; + } + + var match = _sdp2.default.matchPrefix(description.sdp, 'a=max-message-size:'); + if (match.length > 0) { + maxMessageSize = parseInt(match[0].substr(19), 10); + } else if (browserDetails.browser === 'firefox' && remoteIsFirefox !== -1) { + // If the maximum message size is not present in the remote SDP and + // both local and remote are Firefox, the remote peer can receive + // ~2 GiB. + maxMessageSize = 2147483637; + } + return maxMessageSize; + }; + + var origSetRemoteDescription = window.RTCPeerConnection.prototype.setRemoteDescription; + window.RTCPeerConnection.prototype.setRemoteDescription = function setRemoteDescription() { + this._sctp = null; + // Chrome decided to not expose .sctp in plan-b mode. + // As usual, adapter.js has to do an 'ugly worakaround' + // to cover up the mess. + if (browserDetails.browser === 'chrome' && browserDetails.version >= 76) { + var _getConfiguration = this.getConfiguration(), + sdpSemantics = _getConfiguration.sdpSemantics; + + if (sdpSemantics === 'plan-b') { + Object.defineProperty(this, 'sctp', { + get: function get() { + return typeof this._sctp === 'undefined' ? null : this._sctp; + }, + + enumerable: true, + configurable: true + }); + } + } + + if (sctpInDescription(arguments[0])) { + // Check if the remote is FF. + var isFirefox = getRemoteFirefoxVersion(arguments[0]); + + // Get the maximum message size the local peer is capable of sending + var canSendMMS = getCanSendMaxMessageSize(isFirefox); + + // Get the maximum message size of the remote peer. + var remoteMMS = getMaxMessageSize(arguments[0], isFirefox); + + // Determine final maximum message size + var maxMessageSize = void 0; + if (canSendMMS === 0 && remoteMMS === 0) { + maxMessageSize = Number.POSITIVE_INFINITY; + } else if (canSendMMS === 0 || remoteMMS === 0) { + maxMessageSize = Math.max(canSendMMS, remoteMMS); + } else { + maxMessageSize = Math.min(canSendMMS, remoteMMS); + } + + // Create a dummy RTCSctpTransport object and the 'maxMessageSize' + // attribute. + var sctp = {}; + Object.defineProperty(sctp, 'maxMessageSize', { + get: function get() { + return maxMessageSize; + } + }); + this._sctp = sctp; + } + + return origSetRemoteDescription.apply(this, arguments); + }; +} + +function shimSendThrowTypeError(window) { + if (!(window.RTCPeerConnection && 'createDataChannel' in window.RTCPeerConnection.prototype)) { + return; + } + + // Note: Although Firefox >= 57 has a native implementation, the maximum + // message size can be reset for all data channels at a later stage. + // See: https://bugzilla.mozilla.org/show_bug.cgi?id=1426831 + + function wrapDcSend(dc, pc) { + var origDataChannelSend = dc.send; + dc.send = function send() { + var data = arguments[0]; + var length = data.length || data.size || data.byteLength; + if (dc.readyState === 'open' && pc.sctp && length > pc.sctp.maxMessageSize) { + throw new TypeError('Message too large (can send a maximum of ' + pc.sctp.maxMessageSize + ' bytes)'); + } + return origDataChannelSend.apply(dc, arguments); + }; + } + var origCreateDataChannel = window.RTCPeerConnection.prototype.createDataChannel; + window.RTCPeerConnection.prototype.createDataChannel = function createDataChannel() { + var dataChannel = origCreateDataChannel.apply(this, arguments); + wrapDcSend(dataChannel, this); + return dataChannel; + }; + utils.wrapPeerConnectionEvent(window, 'datachannel', function (e) { + wrapDcSend(e.channel, e.target); + return e; + }); +} + +/* shims RTCConnectionState by pretending it is the same as iceConnectionState. + * See https://bugs.chromium.org/p/webrtc/issues/detail?id=6145#c12 + * for why this is a valid hack in Chrome. In Firefox it is slightly incorrect + * since DTLS failures would be hidden. See + * https://bugzilla.mozilla.org/show_bug.cgi?id=1265827 + * for the Firefox tracking bug. + */ +function shimConnectionState(window) { + if (!window.RTCPeerConnection || 'connectionState' in window.RTCPeerConnection.prototype) { + return; + } + var proto = window.RTCPeerConnection.prototype; + Object.defineProperty(proto, 'connectionState', { + get: function get() { + return { + completed: 'connected', + checking: 'connecting' + }[this.iceConnectionState] || this.iceConnectionState; + }, + + enumerable: true, + configurable: true + }); + Object.defineProperty(proto, 'onconnectionstatechange', { + get: function get() { + return this._onconnectionstatechange || null; + }, + set: function set(cb) { + if (this._onconnectionstatechange) { + this.removeEventListener('connectionstatechange', this._onconnectionstatechange); + delete this._onconnectionstatechange; + } + if (cb) { + this.addEventListener('connectionstatechange', this._onconnectionstatechange = cb); + } + }, + + enumerable: true, + configurable: true + }); + + ['setLocalDescription', 'setRemoteDescription'].forEach(function (method) { + var origMethod = proto[method]; + proto[method] = function () { + if (!this._connectionstatechangepoly) { + this._connectionstatechangepoly = function (e) { + var pc = e.target; + if (pc._lastConnectionState !== pc.connectionState) { + pc._lastConnectionState = pc.connectionState; + var newEvent = new Event('connectionstatechange', e); + pc.dispatchEvent(newEvent); + } + return e; + }; + this.addEventListener('iceconnectionstatechange', this._connectionstatechangepoly); + } + return origMethod.apply(this, arguments); + }; + }); +} + +function removeExtmapAllowMixed(window, browserDetails) { + /* remove a=extmap-allow-mixed for webrtc.org < M71 */ + if (!window.RTCPeerConnection) { + return; + } + if (browserDetails.browser === 'chrome' && browserDetails.version >= 71) { + return; + } + if (browserDetails.browser === 'safari' && browserDetails.version >= 605) { + return; + } + var nativeSRD = window.RTCPeerConnection.prototype.setRemoteDescription; + window.RTCPeerConnection.prototype.setRemoteDescription = function setRemoteDescription(desc) { + if (desc && desc.sdp && desc.sdp.indexOf('\na=extmap-allow-mixed') !== -1) { + var sdp = desc.sdp.split('\n').filter(function (line) { + return line.trim() !== 'a=extmap-allow-mixed'; + }).join('\n'); + // Safari enforces read-only-ness of RTCSessionDescription fields. + if (window.RTCSessionDescription && desc instanceof window.RTCSessionDescription) { + arguments[0] = new window.RTCSessionDescription({ + type: desc.type, + sdp: sdp + }); + } else { + desc.sdp = sdp; + } + } + return nativeSRD.apply(this, arguments); + }; +} + +function shimAddIceCandidateNullOrEmpty(window, browserDetails) { + // Support for addIceCandidate(null or undefined) + // as well as addIceCandidate({candidate: "", ...}) + // https://bugs.chromium.org/p/chromium/issues/detail?id=978582 + // Note: must be called before other polyfills which change the signature. + if (!(window.RTCPeerConnection && window.RTCPeerConnection.prototype)) { + return; + } + var nativeAddIceCandidate = window.RTCPeerConnection.prototype.addIceCandidate; + if (!nativeAddIceCandidate || nativeAddIceCandidate.length === 0) { + return; + } + window.RTCPeerConnection.prototype.addIceCandidate = function addIceCandidate() { + if (!arguments[0]) { + if (arguments[1]) { + arguments[1].apply(null); + } + return Promise.resolve(); + } + // Firefox 68+ emits and processes {candidate: "", ...}, ignore + // in older versions. + // Native support for ignoring exists for Chrome M77+. + // Safari ignores as well, exact version unknown but works in the same + // version that also ignores addIceCandidate(null). + if ((browserDetails.browser === 'chrome' && browserDetails.version < 78 || browserDetails.browser === 'firefox' && browserDetails.version < 68 || browserDetails.browser === 'safari') && arguments[0] && arguments[0].candidate === '') { + return Promise.resolve(); + } + return nativeAddIceCandidate.apply(this, arguments); + }; +} + +// Note: Make sure to call this ahead of APIs that modify +// setLocalDescription.length +function shimParameterlessSetLocalDescription(window, browserDetails) { + if (!(window.RTCPeerConnection && window.RTCPeerConnection.prototype)) { + return; + } + var nativeSetLocalDescription = window.RTCPeerConnection.prototype.setLocalDescription; + if (!nativeSetLocalDescription || nativeSetLocalDescription.length === 0) { + return; + } + window.RTCPeerConnection.prototype.setLocalDescription = function setLocalDescription() { + var _this = this; + + var desc = arguments[0] || {}; + if ((typeof desc === 'undefined' ? 'undefined' : _typeof(desc)) !== 'object' || desc.type && desc.sdp) { + return nativeSetLocalDescription.apply(this, arguments); + } + // The remaining steps should technically happen when SLD comes off the + // RTCPeerConnection's operations chain (not ahead of going on it), but + // this is too difficult to shim. Instead, this shim only covers the + // common case where the operations chain is empty. This is imperfect, but + // should cover many cases. Rationale: Even if we can't reduce the glare + // window to zero on imperfect implementations, there's value in tapping + // into the perfect negotiation pattern that several browsers support. + desc = { type: desc.type, sdp: desc.sdp }; + if (!desc.type) { + switch (this.signalingState) { + case 'stable': + case 'have-local-offer': + case 'have-remote-pranswer': + desc.type = 'offer'; + break; + default: + desc.type = 'answer'; + break; + } + } + if (desc.sdp || desc.type !== 'offer' && desc.type !== 'answer') { + return nativeSetLocalDescription.apply(this, [desc]); + } + var func = desc.type === 'offer' ? this.createOffer : this.createAnswer; + return func.apply(this).then(function (d) { + return nativeSetLocalDescription.apply(_this, [d]); + }); + }; +} + +},{"./utils":11,"sdp":12}],7:[function(require,module,exports){ +/* + * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. + */ +/* eslint-env node */ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.shimGetDisplayMedia = exports.shimGetUserMedia = undefined; + +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + +var _getusermedia = require('./getusermedia'); + +Object.defineProperty(exports, 'shimGetUserMedia', { + enumerable: true, + get: function get() { + return _getusermedia.shimGetUserMedia; + } +}); + +var _getdisplaymedia = require('./getdisplaymedia'); + +Object.defineProperty(exports, 'shimGetDisplayMedia', { + enumerable: true, + get: function get() { + return _getdisplaymedia.shimGetDisplayMedia; + } +}); +exports.shimOnTrack = shimOnTrack; +exports.shimPeerConnection = shimPeerConnection; +exports.shimSenderGetStats = shimSenderGetStats; +exports.shimReceiverGetStats = shimReceiverGetStats; +exports.shimRemoveStream = shimRemoveStream; +exports.shimRTCDataChannel = shimRTCDataChannel; +exports.shimAddTransceiver = shimAddTransceiver; +exports.shimGetParameters = shimGetParameters; +exports.shimCreateOffer = shimCreateOffer; +exports.shimCreateAnswer = shimCreateAnswer; + +var _utils = require('../utils'); + +var utils = _interopRequireWildcard(_utils); + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } + +function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } } + +function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + +function shimOnTrack(window) { + if ((typeof window === 'undefined' ? 'undefined' : _typeof(window)) === 'object' && window.RTCTrackEvent && 'receiver' in window.RTCTrackEvent.prototype && !('transceiver' in window.RTCTrackEvent.prototype)) { + Object.defineProperty(window.RTCTrackEvent.prototype, 'transceiver', { + get: function get() { + return { receiver: this.receiver }; + } + }); + } +} + +function shimPeerConnection(window, browserDetails) { + if ((typeof window === 'undefined' ? 'undefined' : _typeof(window)) !== 'object' || !(window.RTCPeerConnection || window.mozRTCPeerConnection)) { + return; // probably media.peerconnection.enabled=false in about:config + } + if (!window.RTCPeerConnection && window.mozRTCPeerConnection) { + // very basic support for old versions. + window.RTCPeerConnection = window.mozRTCPeerConnection; + } + + if (browserDetails.version < 53) { + // shim away need for obsolete RTCIceCandidate/RTCSessionDescription. + ['setLocalDescription', 'setRemoteDescription', 'addIceCandidate'].forEach(function (method) { + var nativeMethod = window.RTCPeerConnection.prototype[method]; + var methodObj = _defineProperty({}, method, function () { + arguments[0] = new (method === 'addIceCandidate' ? window.RTCIceCandidate : window.RTCSessionDescription)(arguments[0]); + return nativeMethod.apply(this, arguments); + }); + window.RTCPeerConnection.prototype[method] = methodObj[method]; + }); + } + + var modernStatsTypes = { + inboundrtp: 'inbound-rtp', + outboundrtp: 'outbound-rtp', + candidatepair: 'candidate-pair', + localcandidate: 'local-candidate', + remotecandidate: 'remote-candidate' + }; + + var nativeGetStats = window.RTCPeerConnection.prototype.getStats; + window.RTCPeerConnection.prototype.getStats = function getStats() { + var _arguments = Array.prototype.slice.call(arguments), + selector = _arguments[0], + onSucc = _arguments[1], + onErr = _arguments[2]; + + return nativeGetStats.apply(this, [selector || null]).then(function (stats) { + if (browserDetails.version < 53 && !onSucc) { + // Shim only promise getStats with spec-hyphens in type names + // Leave callback version alone; misc old uses of forEach before Map + try { + stats.forEach(function (stat) { + stat.type = modernStatsTypes[stat.type] || stat.type; + }); + } catch (e) { + if (e.name !== 'TypeError') { + throw e; + } + // Avoid TypeError: "type" is read-only, in old versions. 34-43ish + stats.forEach(function (stat, i) { + stats.set(i, Object.assign({}, stat, { + type: modernStatsTypes[stat.type] || stat.type + })); + }); + } + } + return stats; + }).then(onSucc, onErr); + }; +} + +function shimSenderGetStats(window) { + if (!((typeof window === 'undefined' ? 'undefined' : _typeof(window)) === 'object' && window.RTCPeerConnection && window.RTCRtpSender)) { + return; + } + if (window.RTCRtpSender && 'getStats' in window.RTCRtpSender.prototype) { + return; + } + var origGetSenders = window.RTCPeerConnection.prototype.getSenders; + if (origGetSenders) { + window.RTCPeerConnection.prototype.getSenders = function getSenders() { + var _this = this; + + var senders = origGetSenders.apply(this, []); + senders.forEach(function (sender) { + return sender._pc = _this; + }); + return senders; + }; + } + + var origAddTrack = window.RTCPeerConnection.prototype.addTrack; + if (origAddTrack) { + window.RTCPeerConnection.prototype.addTrack = function addTrack() { + var sender = origAddTrack.apply(this, arguments); + sender._pc = this; + return sender; + }; + } + window.RTCRtpSender.prototype.getStats = function getStats() { + return this.track ? this._pc.getStats(this.track) : Promise.resolve(new Map()); + }; +} + +function shimReceiverGetStats(window) { + if (!((typeof window === 'undefined' ? 'undefined' : _typeof(window)) === 'object' && window.RTCPeerConnection && window.RTCRtpSender)) { + return; + } + if (window.RTCRtpSender && 'getStats' in window.RTCRtpReceiver.prototype) { + return; + } + var origGetReceivers = window.RTCPeerConnection.prototype.getReceivers; + if (origGetReceivers) { + window.RTCPeerConnection.prototype.getReceivers = function getReceivers() { + var _this2 = this; + + var receivers = origGetReceivers.apply(this, []); + receivers.forEach(function (receiver) { + return receiver._pc = _this2; + }); + return receivers; + }; + } + utils.wrapPeerConnectionEvent(window, 'track', function (e) { + e.receiver._pc = e.srcElement; + return e; + }); + window.RTCRtpReceiver.prototype.getStats = function getStats() { + return this._pc.getStats(this.track); + }; +} + +function shimRemoveStream(window) { + if (!window.RTCPeerConnection || 'removeStream' in window.RTCPeerConnection.prototype) { + return; + } + window.RTCPeerConnection.prototype.removeStream = function removeStream(stream) { + var _this3 = this; + + utils.deprecated('removeStream', 'removeTrack'); + this.getSenders().forEach(function (sender) { + if (sender.track && stream.getTracks().includes(sender.track)) { + _this3.removeTrack(sender); + } + }); + }; +} + +function shimRTCDataChannel(window) { + // rename DataChannel to RTCDataChannel (native fix in FF60): + // https://bugzilla.mozilla.org/show_bug.cgi?id=1173851 + if (window.DataChannel && !window.RTCDataChannel) { + window.RTCDataChannel = window.DataChannel; + } +} + +function shimAddTransceiver(window) { + // https://github.com/webrtcHacks/adapter/issues/998#issuecomment-516921647 + // Firefox ignores the init sendEncodings options passed to addTransceiver + // https://bugzilla.mozilla.org/show_bug.cgi?id=1396918 + if (!((typeof window === 'undefined' ? 'undefined' : _typeof(window)) === 'object' && window.RTCPeerConnection)) { + return; + } + var origAddTransceiver = window.RTCPeerConnection.prototype.addTransceiver; + if (origAddTransceiver) { + window.RTCPeerConnection.prototype.addTransceiver = function addTransceiver() { + this.setParametersPromises = []; + // WebIDL input coercion and validation + var sendEncodings = arguments[1] && arguments[1].sendEncodings; + if (sendEncodings === undefined) { + sendEncodings = []; + } + sendEncodings = [].concat(_toConsumableArray(sendEncodings)); + var shouldPerformCheck = sendEncodings.length > 0; + if (shouldPerformCheck) { + // If sendEncodings params are provided, validate grammar + sendEncodings.forEach(function (encodingParam) { + if ('rid' in encodingParam) { + var ridRegex = /^[a-z0-9]{0,16}$/i; + if (!ridRegex.test(encodingParam.rid)) { + throw new TypeError('Invalid RID value provided.'); + } + } + if ('scaleResolutionDownBy' in encodingParam) { + if (!(parseFloat(encodingParam.scaleResolutionDownBy) >= 1.0)) { + throw new RangeError('scale_resolution_down_by must be >= 1.0'); + } + } + if ('maxFramerate' in encodingParam) { + if (!(parseFloat(encodingParam.maxFramerate) >= 0)) { + throw new RangeError('max_framerate must be >= 0.0'); + } + } + }); + } + var transceiver = origAddTransceiver.apply(this, arguments); + if (shouldPerformCheck) { + // Check if the init options were applied. If not we do this in an + // asynchronous way and save the promise reference in a global object. + // This is an ugly hack, but at the same time is way more robust than + // checking the sender parameters before and after the createOffer + // Also note that after the createoffer we are not 100% sure that + // the params were asynchronously applied so we might miss the + // opportunity to recreate offer. + var sender = transceiver.sender; + + var params = sender.getParameters(); + if (!('encodings' in params) || + // Avoid being fooled by patched getParameters() below. + params.encodings.length === 1 && Object.keys(params.encodings[0]).length === 0) { + params.encodings = sendEncodings; + sender.sendEncodings = sendEncodings; + this.setParametersPromises.push(sender.setParameters(params).then(function () { + delete sender.sendEncodings; + }).catch(function () { + delete sender.sendEncodings; + })); + } + } + return transceiver; + }; + } +} + +function shimGetParameters(window) { + if (!((typeof window === 'undefined' ? 'undefined' : _typeof(window)) === 'object' && window.RTCRtpSender)) { + return; + } + var origGetParameters = window.RTCRtpSender.prototype.getParameters; + if (origGetParameters) { + window.RTCRtpSender.prototype.getParameters = function getParameters() { + var params = origGetParameters.apply(this, arguments); + if (!('encodings' in params)) { + params.encodings = [].concat(this.sendEncodings || [{}]); + } + return params; + }; + } +} + +function shimCreateOffer(window) { + // https://github.com/webrtcHacks/adapter/issues/998#issuecomment-516921647 + // Firefox ignores the init sendEncodings options passed to addTransceiver + // https://bugzilla.mozilla.org/show_bug.cgi?id=1396918 + if (!((typeof window === 'undefined' ? 'undefined' : _typeof(window)) === 'object' && window.RTCPeerConnection)) { + return; + } + var origCreateOffer = window.RTCPeerConnection.prototype.createOffer; + window.RTCPeerConnection.prototype.createOffer = function createOffer() { + var _this4 = this, + _arguments2 = arguments; + + if (this.setParametersPromises && this.setParametersPromises.length) { + return Promise.all(this.setParametersPromises).then(function () { + return origCreateOffer.apply(_this4, _arguments2); + }).finally(function () { + _this4.setParametersPromises = []; + }); + } + return origCreateOffer.apply(this, arguments); + }; +} + +function shimCreateAnswer(window) { + // https://github.com/webrtcHacks/adapter/issues/998#issuecomment-516921647 + // Firefox ignores the init sendEncodings options passed to addTransceiver + // https://bugzilla.mozilla.org/show_bug.cgi?id=1396918 + if (!((typeof window === 'undefined' ? 'undefined' : _typeof(window)) === 'object' && window.RTCPeerConnection)) { + return; + } + var origCreateAnswer = window.RTCPeerConnection.prototype.createAnswer; + window.RTCPeerConnection.prototype.createAnswer = function createAnswer() { + var _this5 = this, + _arguments3 = arguments; + + if (this.setParametersPromises && this.setParametersPromises.length) { + return Promise.all(this.setParametersPromises).then(function () { + return origCreateAnswer.apply(_this5, _arguments3); + }).finally(function () { + _this5.setParametersPromises = []; + }); + } + return origCreateAnswer.apply(this, arguments); + }; +} + +},{"../utils":11,"./getdisplaymedia":8,"./getusermedia":9}],8:[function(require,module,exports){ +/* + * Copyright (c) 2018 The adapter.js project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. + */ +/* eslint-env node */ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.shimGetDisplayMedia = shimGetDisplayMedia; +function shimGetDisplayMedia(window, preferredMediaSource) { + if (window.navigator.mediaDevices && 'getDisplayMedia' in window.navigator.mediaDevices) { + return; + } + if (!window.navigator.mediaDevices) { + return; + } + window.navigator.mediaDevices.getDisplayMedia = function getDisplayMedia(constraints) { + if (!(constraints && constraints.video)) { + var err = new DOMException('getDisplayMedia without video ' + 'constraints is undefined'); + err.name = 'NotFoundError'; + // from https://heycam.github.io/webidl/#idl-DOMException-error-names + err.code = 8; + return Promise.reject(err); + } + if (constraints.video === true) { + constraints.video = { mediaSource: preferredMediaSource }; + } else { + constraints.video.mediaSource = preferredMediaSource; + } + return window.navigator.mediaDevices.getUserMedia(constraints); + }; +} + +},{}],9:[function(require,module,exports){ +/* + * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. + */ +/* eslint-env node */ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); + +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + +exports.shimGetUserMedia = shimGetUserMedia; + +var _utils = require('../utils'); + +var utils = _interopRequireWildcard(_utils); + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } + +function shimGetUserMedia(window, browserDetails) { + var navigator = window && window.navigator; + var MediaStreamTrack = window && window.MediaStreamTrack; + + navigator.getUserMedia = function (constraints, onSuccess, onError) { + // Replace Firefox 44+'s deprecation warning with unprefixed version. + utils.deprecated('navigator.getUserMedia', 'navigator.mediaDevices.getUserMedia'); + navigator.mediaDevices.getUserMedia(constraints).then(onSuccess, onError); + }; + + if (!(browserDetails.version > 55 && 'autoGainControl' in navigator.mediaDevices.getSupportedConstraints())) { + var remap = function remap(obj, a, b) { + if (a in obj && !(b in obj)) { + obj[b] = obj[a]; + delete obj[a]; + } + }; + + var nativeGetUserMedia = navigator.mediaDevices.getUserMedia.bind(navigator.mediaDevices); + navigator.mediaDevices.getUserMedia = function (c) { + if ((typeof c === 'undefined' ? 'undefined' : _typeof(c)) === 'object' && _typeof(c.audio) === 'object') { + c = JSON.parse(JSON.stringify(c)); + remap(c.audio, 'autoGainControl', 'mozAutoGainControl'); + remap(c.audio, 'noiseSuppression', 'mozNoiseSuppression'); + } + return nativeGetUserMedia(c); + }; + + if (MediaStreamTrack && MediaStreamTrack.prototype.getSettings) { + var nativeGetSettings = MediaStreamTrack.prototype.getSettings; + MediaStreamTrack.prototype.getSettings = function () { + var obj = nativeGetSettings.apply(this, arguments); + remap(obj, 'mozAutoGainControl', 'autoGainControl'); + remap(obj, 'mozNoiseSuppression', 'noiseSuppression'); + return obj; + }; + } + + if (MediaStreamTrack && MediaStreamTrack.prototype.applyConstraints) { + var nativeApplyConstraints = MediaStreamTrack.prototype.applyConstraints; + MediaStreamTrack.prototype.applyConstraints = function (c) { + if (this.kind === 'audio' && (typeof c === 'undefined' ? 'undefined' : _typeof(c)) === 'object') { + c = JSON.parse(JSON.stringify(c)); + remap(c, 'autoGainControl', 'mozAutoGainControl'); + remap(c, 'noiseSuppression', 'mozNoiseSuppression'); + } + return nativeApplyConstraints.apply(this, [c]); + }; + } + } +} + +},{"../utils":11}],10:[function(require,module,exports){ +/* + * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. + */ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); + +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + +exports.shimLocalStreamsAPI = shimLocalStreamsAPI; +exports.shimRemoteStreamsAPI = shimRemoteStreamsAPI; +exports.shimCallbacksAPI = shimCallbacksAPI; +exports.shimGetUserMedia = shimGetUserMedia; +exports.shimConstraints = shimConstraints; +exports.shimRTCIceServerUrls = shimRTCIceServerUrls; +exports.shimTrackEventTransceiver = shimTrackEventTransceiver; +exports.shimCreateOfferLegacy = shimCreateOfferLegacy; +exports.shimAudioContext = shimAudioContext; + +var _utils = require('../utils'); + +var utils = _interopRequireWildcard(_utils); + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } + +function shimLocalStreamsAPI(window) { + if ((typeof window === 'undefined' ? 'undefined' : _typeof(window)) !== 'object' || !window.RTCPeerConnection) { + return; + } + if (!('getLocalStreams' in window.RTCPeerConnection.prototype)) { + window.RTCPeerConnection.prototype.getLocalStreams = function getLocalStreams() { + if (!this._localStreams) { + this._localStreams = []; + } + return this._localStreams; + }; + } + if (!('addStream' in window.RTCPeerConnection.prototype)) { + var _addTrack = window.RTCPeerConnection.prototype.addTrack; + window.RTCPeerConnection.prototype.addStream = function addStream(stream) { + var _this = this; + + if (!this._localStreams) { + this._localStreams = []; + } + if (!this._localStreams.includes(stream)) { + this._localStreams.push(stream); + } + // Try to emulate Chrome's behaviour of adding in audio-video order. + // Safari orders by track id. + stream.getAudioTracks().forEach(function (track) { + return _addTrack.call(_this, track, stream); + }); + stream.getVideoTracks().forEach(function (track) { + return _addTrack.call(_this, track, stream); + }); + }; + + window.RTCPeerConnection.prototype.addTrack = function addTrack(track) { + var _this2 = this; + + for (var _len = arguments.length, streams = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { + streams[_key - 1] = arguments[_key]; + } + + if (streams) { + streams.forEach(function (stream) { + if (!_this2._localStreams) { + _this2._localStreams = [stream]; + } else if (!_this2._localStreams.includes(stream)) { + _this2._localStreams.push(stream); + } + }); + } + return _addTrack.apply(this, arguments); + }; + } + if (!('removeStream' in window.RTCPeerConnection.prototype)) { + window.RTCPeerConnection.prototype.removeStream = function removeStream(stream) { + var _this3 = this; + + if (!this._localStreams) { + this._localStreams = []; + } + var index = this._localStreams.indexOf(stream); + if (index === -1) { + return; + } + this._localStreams.splice(index, 1); + var tracks = stream.getTracks(); + this.getSenders().forEach(function (sender) { + if (tracks.includes(sender.track)) { + _this3.removeTrack(sender); + } + }); + }; + } +} + +function shimRemoteStreamsAPI(window) { + if ((typeof window === 'undefined' ? 'undefined' : _typeof(window)) !== 'object' || !window.RTCPeerConnection) { + return; + } + if (!('getRemoteStreams' in window.RTCPeerConnection.prototype)) { + window.RTCPeerConnection.prototype.getRemoteStreams = function getRemoteStreams() { + return this._remoteStreams ? this._remoteStreams : []; + }; + } + if (!('onaddstream' in window.RTCPeerConnection.prototype)) { + Object.defineProperty(window.RTCPeerConnection.prototype, 'onaddstream', { + get: function get() { + return this._onaddstream; + }, + set: function set(f) { + var _this4 = this; + + if (this._onaddstream) { + this.removeEventListener('addstream', this._onaddstream); + this.removeEventListener('track', this._onaddstreampoly); + } + this.addEventListener('addstream', this._onaddstream = f); + this.addEventListener('track', this._onaddstreampoly = function (e) { + e.streams.forEach(function (stream) { + if (!_this4._remoteStreams) { + _this4._remoteStreams = []; + } + if (_this4._remoteStreams.includes(stream)) { + return; + } + _this4._remoteStreams.push(stream); + var event = new Event('addstream'); + event.stream = stream; + _this4.dispatchEvent(event); + }); + }); + } + }); + var origSetRemoteDescription = window.RTCPeerConnection.prototype.setRemoteDescription; + window.RTCPeerConnection.prototype.setRemoteDescription = function setRemoteDescription() { + var pc = this; + if (!this._onaddstreampoly) { + this.addEventListener('track', this._onaddstreampoly = function (e) { + e.streams.forEach(function (stream) { + if (!pc._remoteStreams) { + pc._remoteStreams = []; + } + if (pc._remoteStreams.indexOf(stream) >= 0) { + return; + } + pc._remoteStreams.push(stream); + var event = new Event('addstream'); + event.stream = stream; + pc.dispatchEvent(event); + }); + }); + } + return origSetRemoteDescription.apply(pc, arguments); + }; + } +} + +function shimCallbacksAPI(window) { + if ((typeof window === 'undefined' ? 'undefined' : _typeof(window)) !== 'object' || !window.RTCPeerConnection) { + return; + } + var prototype = window.RTCPeerConnection.prototype; + var origCreateOffer = prototype.createOffer; + var origCreateAnswer = prototype.createAnswer; + var setLocalDescription = prototype.setLocalDescription; + var setRemoteDescription = prototype.setRemoteDescription; + var addIceCandidate = prototype.addIceCandidate; + + prototype.createOffer = function createOffer(successCallback, failureCallback) { + var options = arguments.length >= 2 ? arguments[2] : arguments[0]; + var promise = origCreateOffer.apply(this, [options]); + if (!failureCallback) { + return promise; + } + promise.then(successCallback, failureCallback); + return Promise.resolve(); + }; + + prototype.createAnswer = function createAnswer(successCallback, failureCallback) { + var options = arguments.length >= 2 ? arguments[2] : arguments[0]; + var promise = origCreateAnswer.apply(this, [options]); + if (!failureCallback) { + return promise; + } + promise.then(successCallback, failureCallback); + return Promise.resolve(); + }; + + var withCallback = function withCallback(description, successCallback, failureCallback) { + var promise = setLocalDescription.apply(this, [description]); + if (!failureCallback) { + return promise; + } + promise.then(successCallback, failureCallback); + return Promise.resolve(); + }; + prototype.setLocalDescription = withCallback; + + withCallback = function withCallback(description, successCallback, failureCallback) { + var promise = setRemoteDescription.apply(this, [description]); + if (!failureCallback) { + return promise; + } + promise.then(successCallback, failureCallback); + return Promise.resolve(); + }; + prototype.setRemoteDescription = withCallback; + + withCallback = function withCallback(candidate, successCallback, failureCallback) { + var promise = addIceCandidate.apply(this, [candidate]); + if (!failureCallback) { + return promise; + } + promise.then(successCallback, failureCallback); + return Promise.resolve(); + }; + prototype.addIceCandidate = withCallback; +} + +function shimGetUserMedia(window) { + var navigator = window && window.navigator; + + if (navigator.mediaDevices && navigator.mediaDevices.getUserMedia) { + // shim not needed in Safari 12.1 + var mediaDevices = navigator.mediaDevices; + var _getUserMedia = mediaDevices.getUserMedia.bind(mediaDevices); + navigator.mediaDevices.getUserMedia = function (constraints) { + return _getUserMedia(shimConstraints(constraints)); + }; + } + + if (!navigator.getUserMedia && navigator.mediaDevices && navigator.mediaDevices.getUserMedia) { + navigator.getUserMedia = function getUserMedia(constraints, cb, errcb) { + navigator.mediaDevices.getUserMedia(constraints).then(cb, errcb); + }.bind(navigator); + } +} + +function shimConstraints(constraints) { + if (constraints && constraints.video !== undefined) { + return Object.assign({}, constraints, { video: utils.compactObject(constraints.video) }); + } + + return constraints; +} + +function shimRTCIceServerUrls(window) { + if (!window.RTCPeerConnection) { + return; + } + // migrate from non-spec RTCIceServer.url to RTCIceServer.urls + var OrigPeerConnection = window.RTCPeerConnection; + window.RTCPeerConnection = function RTCPeerConnection(pcConfig, pcConstraints) { + if (pcConfig && pcConfig.iceServers) { + var newIceServers = []; + for (var i = 0; i < pcConfig.iceServers.length; i++) { + var server = pcConfig.iceServers[i]; + if (!server.hasOwnProperty('urls') && server.hasOwnProperty('url')) { + utils.deprecated('RTCIceServer.url', 'RTCIceServer.urls'); + server = JSON.parse(JSON.stringify(server)); + server.urls = server.url; + delete server.url; + newIceServers.push(server); + } else { + newIceServers.push(pcConfig.iceServers[i]); + } + } + pcConfig.iceServers = newIceServers; + } + return new OrigPeerConnection(pcConfig, pcConstraints); + }; + window.RTCPeerConnection.prototype = OrigPeerConnection.prototype; + // wrap static methods. Currently just generateCertificate. + if ('generateCertificate' in OrigPeerConnection) { + Object.defineProperty(window.RTCPeerConnection, 'generateCertificate', { + get: function get() { + return OrigPeerConnection.generateCertificate; + } + }); + } +} + +function shimTrackEventTransceiver(window) { + // Add event.transceiver member over deprecated event.receiver + if ((typeof window === 'undefined' ? 'undefined' : _typeof(window)) === 'object' && window.RTCTrackEvent && 'receiver' in window.RTCTrackEvent.prototype && !('transceiver' in window.RTCTrackEvent.prototype)) { + Object.defineProperty(window.RTCTrackEvent.prototype, 'transceiver', { + get: function get() { + return { receiver: this.receiver }; + } + }); + } +} + +function shimCreateOfferLegacy(window) { + var origCreateOffer = window.RTCPeerConnection.prototype.createOffer; + window.RTCPeerConnection.prototype.createOffer = function createOffer(offerOptions) { + if (offerOptions) { + if (typeof offerOptions.offerToReceiveAudio !== 'undefined') { + // support bit values + offerOptions.offerToReceiveAudio = !!offerOptions.offerToReceiveAudio; + } + var audioTransceiver = this.getTransceivers().find(function (transceiver) { + return transceiver.receiver.track.kind === 'audio'; + }); + if (offerOptions.offerToReceiveAudio === false && audioTransceiver) { + if (audioTransceiver.direction === 'sendrecv') { + if (audioTransceiver.setDirection) { + audioTransceiver.setDirection('sendonly'); + } else { + audioTransceiver.direction = 'sendonly'; + } + } else if (audioTransceiver.direction === 'recvonly') { + if (audioTransceiver.setDirection) { + audioTransceiver.setDirection('inactive'); + } else { + audioTransceiver.direction = 'inactive'; + } + } + } else if (offerOptions.offerToReceiveAudio === true && !audioTransceiver) { + this.addTransceiver('audio', { direction: 'recvonly' }); + } + + if (typeof offerOptions.offerToReceiveVideo !== 'undefined') { + // support bit values + offerOptions.offerToReceiveVideo = !!offerOptions.offerToReceiveVideo; + } + var videoTransceiver = this.getTransceivers().find(function (transceiver) { + return transceiver.receiver.track.kind === 'video'; + }); + if (offerOptions.offerToReceiveVideo === false && videoTransceiver) { + if (videoTransceiver.direction === 'sendrecv') { + if (videoTransceiver.setDirection) { + videoTransceiver.setDirection('sendonly'); + } else { + videoTransceiver.direction = 'sendonly'; + } + } else if (videoTransceiver.direction === 'recvonly') { + if (videoTransceiver.setDirection) { + videoTransceiver.setDirection('inactive'); + } else { + videoTransceiver.direction = 'inactive'; + } + } + } else if (offerOptions.offerToReceiveVideo === true && !videoTransceiver) { + this.addTransceiver('video', { direction: 'recvonly' }); + } + } + return origCreateOffer.apply(this, arguments); + }; +} + +function shimAudioContext(window) { + if ((typeof window === 'undefined' ? 'undefined' : _typeof(window)) !== 'object' || window.AudioContext) { + return; + } + window.AudioContext = window.webkitAudioContext; +} + +},{"../utils":11}],11:[function(require,module,exports){ +/* + * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. + */ +/* eslint-env node */ +'use strict'; + +Object.defineProperty(exports, "__esModule", { + value: true +}); + +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + +exports.extractVersion = extractVersion; +exports.wrapPeerConnectionEvent = wrapPeerConnectionEvent; +exports.disableLog = disableLog; +exports.disableWarnings = disableWarnings; +exports.log = log; +exports.deprecated = deprecated; +exports.detectBrowser = detectBrowser; +exports.compactObject = compactObject; +exports.walkStats = walkStats; +exports.filterStats = filterStats; + +function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + +var logDisabled_ = true; +var deprecationWarnings_ = true; + +/** + * Extract browser version out of the provided user agent string. + * + * @param {!string} uastring userAgent string. + * @param {!string} expr Regular expression used as match criteria. + * @param {!number} pos position in the version string to be returned. + * @return {!number} browser version. + */ +function extractVersion(uastring, expr, pos) { + var match = uastring.match(expr); + return match && match.length >= pos && parseInt(match[pos], 10); +} + +// Wraps the peerconnection event eventNameToWrap in a function +// which returns the modified event object (or false to prevent +// the event). +function wrapPeerConnectionEvent(window, eventNameToWrap, wrapper) { + if (!window.RTCPeerConnection) { + return; + } + var proto = window.RTCPeerConnection.prototype; + var nativeAddEventListener = proto.addEventListener; + proto.addEventListener = function (nativeEventName, cb) { + if (nativeEventName !== eventNameToWrap) { + return nativeAddEventListener.apply(this, arguments); + } + var wrappedCallback = function wrappedCallback(e) { + var modifiedEvent = wrapper(e); + if (modifiedEvent) { + if (cb.handleEvent) { + cb.handleEvent(modifiedEvent); + } else { + cb(modifiedEvent); + } + } + }; + this._eventMap = this._eventMap || {}; + if (!this._eventMap[eventNameToWrap]) { + this._eventMap[eventNameToWrap] = new Map(); + } + this._eventMap[eventNameToWrap].set(cb, wrappedCallback); + return nativeAddEventListener.apply(this, [nativeEventName, wrappedCallback]); + }; + + var nativeRemoveEventListener = proto.removeEventListener; + proto.removeEventListener = function (nativeEventName, cb) { + if (nativeEventName !== eventNameToWrap || !this._eventMap || !this._eventMap[eventNameToWrap]) { + return nativeRemoveEventListener.apply(this, arguments); + } + if (!this._eventMap[eventNameToWrap].has(cb)) { + return nativeRemoveEventListener.apply(this, arguments); + } + var unwrappedCb = this._eventMap[eventNameToWrap].get(cb); + this._eventMap[eventNameToWrap].delete(cb); + if (this._eventMap[eventNameToWrap].size === 0) { + delete this._eventMap[eventNameToWrap]; + } + if (Object.keys(this._eventMap).length === 0) { + delete this._eventMap; + } + return nativeRemoveEventListener.apply(this, [nativeEventName, unwrappedCb]); + }; + + Object.defineProperty(proto, 'on' + eventNameToWrap, { + get: function get() { + return this['_on' + eventNameToWrap]; + }, + set: function set(cb) { + if (this['_on' + eventNameToWrap]) { + this.removeEventListener(eventNameToWrap, this['_on' + eventNameToWrap]); + delete this['_on' + eventNameToWrap]; + } + if (cb) { + this.addEventListener(eventNameToWrap, this['_on' + eventNameToWrap] = cb); + } + }, + + enumerable: true, + configurable: true + }); +} + +function disableLog(bool) { + if (typeof bool !== 'boolean') { + return new Error('Argument type: ' + (typeof bool === 'undefined' ? 'undefined' : _typeof(bool)) + '. Please use a boolean.'); + } + logDisabled_ = bool; + return bool ? 'adapter.js logging disabled' : 'adapter.js logging enabled'; +} + +/** + * Disable or enable deprecation warnings + * @param {!boolean} bool set to true to disable warnings. + */ +function disableWarnings(bool) { + if (typeof bool !== 'boolean') { + return new Error('Argument type: ' + (typeof bool === 'undefined' ? 'undefined' : _typeof(bool)) + '. Please use a boolean.'); + } + deprecationWarnings_ = !bool; + return 'adapter.js deprecation warnings ' + (bool ? 'disabled' : 'enabled'); +} + +function log() { + if ((typeof window === 'undefined' ? 'undefined' : _typeof(window)) === 'object') { + if (logDisabled_) { + return; + } + if (typeof console !== 'undefined' && typeof console.log === 'function') { + console.log.apply(console, arguments); + } + } +} + +/** + * Shows a deprecation warning suggesting the modern and spec-compatible API. + */ +function deprecated(oldMethod, newMethod) { + if (!deprecationWarnings_) { + return; + } + console.warn(oldMethod + ' is deprecated, please use ' + newMethod + ' instead.'); +} + +/** + * Browser detector. + * + * @return {object} result containing browser and version + * properties. + */ +function detectBrowser(window) { + // Returned result object. + var result = { browser: null, version: null }; + + // Fail early if it's not a browser + if (typeof window === 'undefined' || !window.navigator) { + result.browser = 'Not a browser.'; + return result; + } + + var navigator = window.navigator; + + + if (navigator.mozGetUserMedia) { + // Firefox. + result.browser = 'firefox'; + result.version = extractVersion(navigator.userAgent, /Firefox\/(\d+)\./, 1); + } else if (navigator.webkitGetUserMedia || window.isSecureContext === false && window.webkitRTCPeerConnection) { + // Chrome, Chromium, Webview, Opera. + // Version matches Chrome/WebRTC version. + // Chrome 74 removed webkitGetUserMedia on http as well so we need the + // more complicated fallback to webkitRTCPeerConnection. + result.browser = 'chrome'; + result.version = extractVersion(navigator.userAgent, /Chrom(e|ium)\/(\d+)\./, 2); + } else if (window.RTCPeerConnection && navigator.userAgent.match(/AppleWebKit\/(\d+)\./)) { + // Safari. + result.browser = 'safari'; + result.version = extractVersion(navigator.userAgent, /AppleWebKit\/(\d+)\./, 1); + result.supportsUnifiedPlan = window.RTCRtpTransceiver && 'currentDirection' in window.RTCRtpTransceiver.prototype; + } else { + // Default fallthrough: not supported. + result.browser = 'Not a supported browser.'; + return result; + } + + return result; +} + +/** + * Checks if something is an object. + * + * @param {*} val The something you want to check. + * @return true if val is an object, false otherwise. + */ +function isObject(val) { + return Object.prototype.toString.call(val) === '[object Object]'; +} + +/** + * Remove all empty objects and undefined values + * from a nested object -- an enhanced and vanilla version + * of Lodash's `compact`. + */ +function compactObject(data) { + if (!isObject(data)) { + return data; + } + + return Object.keys(data).reduce(function (accumulator, key) { + var isObj = isObject(data[key]); + var value = isObj ? compactObject(data[key]) : data[key]; + var isEmptyObject = isObj && !Object.keys(value).length; + if (value === undefined || isEmptyObject) { + return accumulator; + } + return Object.assign(accumulator, _defineProperty({}, key, value)); + }, {}); +} + +/* iterates the stats graph recursively. */ +function walkStats(stats, base, resultSet) { + if (!base || resultSet.has(base.id)) { + return; + } + resultSet.set(base.id, base); + Object.keys(base).forEach(function (name) { + if (name.endsWith('Id')) { + walkStats(stats, stats.get(base[name]), resultSet); + } else if (name.endsWith('Ids')) { + base[name].forEach(function (id) { + walkStats(stats, stats.get(id), resultSet); + }); + } + }); +} + +/* filter getStats for a sender/receiver track. */ +function filterStats(result, track, outbound) { + var streamStatsType = outbound ? 'outbound-rtp' : 'inbound-rtp'; + var filteredResult = new Map(); + if (track === null) { + return filteredResult; + } + var trackStats = []; + result.forEach(function (value) { + if (value.type === 'track' && value.trackIdentifier === track.id) { + trackStats.push(value); + } + }); + trackStats.forEach(function (trackStat) { + result.forEach(function (stats) { + if (stats.type === streamStatsType && stats.trackId === trackStat.id) { + walkStats(result, stats, filteredResult); + } + }); + }); + return filteredResult; +} + +},{}],12:[function(require,module,exports){ +/* eslint-env node */ +'use strict'; + +// SDP helpers. + +var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + +var SDPUtils = {}; + +// Generate an alphanumeric identifier for cname or mids. +// TODO: use UUIDs instead? https://gist.github.com/jed/982883 +SDPUtils.generateIdentifier = function () { + return Math.random().toString(36).substr(2, 10); +}; + +// The RTCP CNAME used by all peerconnections from the same JS. +SDPUtils.localCName = SDPUtils.generateIdentifier(); + +// Splits SDP into lines, dealing with both CRLF and LF. +SDPUtils.splitLines = function (blob) { + return blob.trim().split('\n').map(function (line) { + return line.trim(); + }); +}; +// Splits SDP into sessionpart and mediasections. Ensures CRLF. +SDPUtils.splitSections = function (blob) { + var parts = blob.split('\nm='); + return parts.map(function (part, index) { + return (index > 0 ? 'm=' + part : part).trim() + '\r\n'; + }); +}; + +// Returns the session description. +SDPUtils.getDescription = function (blob) { + var sections = SDPUtils.splitSections(blob); + return sections && sections[0]; +}; + +// Returns the individual media sections. +SDPUtils.getMediaSections = function (blob) { + var sections = SDPUtils.splitSections(blob); + sections.shift(); + return sections; +}; + +// Returns lines that start with a certain prefix. +SDPUtils.matchPrefix = function (blob, prefix) { + return SDPUtils.splitLines(blob).filter(function (line) { + return line.indexOf(prefix) === 0; + }); +}; + +// Parses an ICE candidate line. Sample input: +// candidate:702786350 2 udp 41819902 8.8.8.8 60769 typ relay raddr 8.8.8.8 +// rport 55996" +// Input can be prefixed with a=. +SDPUtils.parseCandidate = function (line) { + var parts = void 0; + // Parse both variants. + if (line.indexOf('a=candidate:') === 0) { + parts = line.substring(12).split(' '); + } else { + parts = line.substring(10).split(' '); + } + + var candidate = { + foundation: parts[0], + component: { 1: 'rtp', 2: 'rtcp' }[parts[1]] || parts[1], + protocol: parts[2].toLowerCase(), + priority: parseInt(parts[3], 10), + ip: parts[4], + address: parts[4], // address is an alias for ip. + port: parseInt(parts[5], 10), + // skip parts[6] == 'typ' + type: parts[7] + }; + + for (var i = 8; i < parts.length; i += 2) { + switch (parts[i]) { + case 'raddr': + candidate.relatedAddress = parts[i + 1]; + break; + case 'rport': + candidate.relatedPort = parseInt(parts[i + 1], 10); + break; + case 'tcptype': + candidate.tcpType = parts[i + 1]; + break; + case 'ufrag': + candidate.ufrag = parts[i + 1]; // for backward compatibility. + candidate.usernameFragment = parts[i + 1]; + break; + default: + // extension handling, in particular ufrag. Don't overwrite. + if (candidate[parts[i]] === undefined) { + candidate[parts[i]] = parts[i + 1]; + } + break; + } + } + return candidate; +}; + +// Translates a candidate object into SDP candidate attribute. +// This does not include the a= prefix! +SDPUtils.writeCandidate = function (candidate) { + var sdp = []; + sdp.push(candidate.foundation); + + var component = candidate.component; + if (component === 'rtp') { + sdp.push(1); + } else if (component === 'rtcp') { + sdp.push(2); + } else { + sdp.push(component); + } + sdp.push(candidate.protocol.toUpperCase()); + sdp.push(candidate.priority); + sdp.push(candidate.address || candidate.ip); + sdp.push(candidate.port); + + var type = candidate.type; + sdp.push('typ'); + sdp.push(type); + if (type !== 'host' && candidate.relatedAddress && candidate.relatedPort) { + sdp.push('raddr'); + sdp.push(candidate.relatedAddress); + sdp.push('rport'); + sdp.push(candidate.relatedPort); + } + if (candidate.tcpType && candidate.protocol.toLowerCase() === 'tcp') { + sdp.push('tcptype'); + sdp.push(candidate.tcpType); + } + if (candidate.usernameFragment || candidate.ufrag) { + sdp.push('ufrag'); + sdp.push(candidate.usernameFragment || candidate.ufrag); + } + return 'candidate:' + sdp.join(' '); +}; + +// Parses an ice-options line, returns an array of option tags. +// Sample input: +// a=ice-options:foo bar +SDPUtils.parseIceOptions = function (line) { + return line.substr(14).split(' '); +}; + +// Parses a rtpmap line, returns RTCRtpCoddecParameters. Sample input: +// a=rtpmap:111 opus/48000/2 +SDPUtils.parseRtpMap = function (line) { + var parts = line.substr(9).split(' '); + var parsed = { + payloadType: parseInt(parts.shift(), 10) // was: id + }; + + parts = parts[0].split('/'); + + parsed.name = parts[0]; + parsed.clockRate = parseInt(parts[1], 10); // was: clockrate + parsed.channels = parts.length === 3 ? parseInt(parts[2], 10) : 1; + // legacy alias, got renamed back to channels in ORTC. + parsed.numChannels = parsed.channels; + return parsed; +}; + +// Generates a rtpmap line from RTCRtpCodecCapability or +// RTCRtpCodecParameters. +SDPUtils.writeRtpMap = function (codec) { + var pt = codec.payloadType; + if (codec.preferredPayloadType !== undefined) { + pt = codec.preferredPayloadType; + } + var channels = codec.channels || codec.numChannels || 1; + return 'a=rtpmap:' + pt + ' ' + codec.name + '/' + codec.clockRate + (channels !== 1 ? '/' + channels : '') + '\r\n'; +}; + +// Parses a extmap line (headerextension from RFC 5285). Sample input: +// a=extmap:2 urn:ietf:params:rtp-hdrext:toffset +// a=extmap:2/sendonly urn:ietf:params:rtp-hdrext:toffset +SDPUtils.parseExtmap = function (line) { + var parts = line.substr(9).split(' '); + return { + id: parseInt(parts[0], 10), + direction: parts[0].indexOf('/') > 0 ? parts[0].split('/')[1] : 'sendrecv', + uri: parts[1] + }; +}; + +// Generates an extmap line from RTCRtpHeaderExtensionParameters or +// RTCRtpHeaderExtension. +SDPUtils.writeExtmap = function (headerExtension) { + return 'a=extmap:' + (headerExtension.id || headerExtension.preferredId) + (headerExtension.direction && headerExtension.direction !== 'sendrecv' ? '/' + headerExtension.direction : '') + ' ' + headerExtension.uri + '\r\n'; +}; + +// Parses a fmtp line, returns dictionary. Sample input: +// a=fmtp:96 vbr=on;cng=on +// Also deals with vbr=on; cng=on +SDPUtils.parseFmtp = function (line) { + var parsed = {}; + var kv = void 0; + var parts = line.substr(line.indexOf(' ') + 1).split(';'); + for (var j = 0; j < parts.length; j++) { + kv = parts[j].trim().split('='); + parsed[kv[0].trim()] = kv[1]; + } + return parsed; +}; + +// Generates a fmtp line from RTCRtpCodecCapability or RTCRtpCodecParameters. +SDPUtils.writeFmtp = function (codec) { + var line = ''; + var pt = codec.payloadType; + if (codec.preferredPayloadType !== undefined) { + pt = codec.preferredPayloadType; + } + if (codec.parameters && Object.keys(codec.parameters).length) { + var params = []; + Object.keys(codec.parameters).forEach(function (param) { + if (codec.parameters[param] !== undefined) { + params.push(param + '=' + codec.parameters[param]); + } else { + params.push(param); + } + }); + line += 'a=fmtp:' + pt + ' ' + params.join(';') + '\r\n'; + } + return line; +}; + +// Parses a rtcp-fb line, returns RTCPRtcpFeedback object. Sample input: +// a=rtcp-fb:98 nack rpsi +SDPUtils.parseRtcpFb = function (line) { + var parts = line.substr(line.indexOf(' ') + 1).split(' '); + return { + type: parts.shift(), + parameter: parts.join(' ') + }; +}; + +// Generate a=rtcp-fb lines from RTCRtpCodecCapability or RTCRtpCodecParameters. +SDPUtils.writeRtcpFb = function (codec) { + var lines = ''; + var pt = codec.payloadType; + if (codec.preferredPayloadType !== undefined) { + pt = codec.preferredPayloadType; + } + if (codec.rtcpFeedback && codec.rtcpFeedback.length) { + // FIXME: special handling for trr-int? + codec.rtcpFeedback.forEach(function (fb) { + lines += 'a=rtcp-fb:' + pt + ' ' + fb.type + (fb.parameter && fb.parameter.length ? ' ' + fb.parameter : '') + '\r\n'; + }); + } + return lines; +}; + +// Parses a RFC 5576 ssrc media attribute. Sample input: +// a=ssrc:3735928559 cname:something +SDPUtils.parseSsrcMedia = function (line) { + var sp = line.indexOf(' '); + var parts = { + ssrc: parseInt(line.substr(7, sp - 7), 10) + }; + var colon = line.indexOf(':', sp); + if (colon > -1) { + parts.attribute = line.substr(sp + 1, colon - sp - 1); + parts.value = line.substr(colon + 1); + } else { + parts.attribute = line.substr(sp + 1); + } + return parts; +}; + +// Parse a ssrc-group line (see RFC 5576). Sample input: +// a=ssrc-group:semantics 12 34 +SDPUtils.parseSsrcGroup = function (line) { + var parts = line.substr(13).split(' '); + return { + semantics: parts.shift(), + ssrcs: parts.map(function (ssrc) { + return parseInt(ssrc, 10); + }) + }; +}; + +// Extracts the MID (RFC 5888) from a media section. +// Returns the MID or undefined if no mid line was found. +SDPUtils.getMid = function (mediaSection) { + var mid = SDPUtils.matchPrefix(mediaSection, 'a=mid:')[0]; + if (mid) { + return mid.substr(6); + } +}; + +// Parses a fingerprint line for DTLS-SRTP. +SDPUtils.parseFingerprint = function (line) { + var parts = line.substr(14).split(' '); + return { + algorithm: parts[0].toLowerCase(), // algorithm is case-sensitive in Edge. + value: parts[1].toUpperCase() // the definition is upper-case in RFC 4572. + }; +}; + +// Extracts DTLS parameters from SDP media section or sessionpart. +// FIXME: for consistency with other functions this should only +// get the fingerprint line as input. See also getIceParameters. +SDPUtils.getDtlsParameters = function (mediaSection, sessionpart) { + var lines = SDPUtils.matchPrefix(mediaSection + sessionpart, 'a=fingerprint:'); + // Note: a=setup line is ignored since we use the 'auto' role in Edge. + return { + role: 'auto', + fingerprints: lines.map(SDPUtils.parseFingerprint) + }; +}; + +// Serializes DTLS parameters to SDP. +SDPUtils.writeDtlsParameters = function (params, setupType) { + var sdp = 'a=setup:' + setupType + '\r\n'; + params.fingerprints.forEach(function (fp) { + sdp += 'a=fingerprint:' + fp.algorithm + ' ' + fp.value + '\r\n'; + }); + return sdp; +}; + +// Parses a=crypto lines into +// https://rawgit.com/aboba/edgertc/master/msortc-rs4.html#dictionary-rtcsrtpsdesparameters-members +SDPUtils.parseCryptoLine = function (line) { + var parts = line.substr(9).split(' '); + return { + tag: parseInt(parts[0], 10), + cryptoSuite: parts[1], + keyParams: parts[2], + sessionParams: parts.slice(3) + }; +}; + +SDPUtils.writeCryptoLine = function (parameters) { + return 'a=crypto:' + parameters.tag + ' ' + parameters.cryptoSuite + ' ' + (_typeof(parameters.keyParams) === 'object' ? SDPUtils.writeCryptoKeyParams(parameters.keyParams) : parameters.keyParams) + (parameters.sessionParams ? ' ' + parameters.sessionParams.join(' ') : '') + '\r\n'; +}; + +// Parses the crypto key parameters into +// https://rawgit.com/aboba/edgertc/master/msortc-rs4.html#rtcsrtpkeyparam* +SDPUtils.parseCryptoKeyParams = function (keyParams) { + if (keyParams.indexOf('inline:') !== 0) { + return null; + } + var parts = keyParams.substr(7).split('|'); + return { + keyMethod: 'inline', + keySalt: parts[0], + lifeTime: parts[1], + mkiValue: parts[2] ? parts[2].split(':')[0] : undefined, + mkiLength: parts[2] ? parts[2].split(':')[1] : undefined + }; +}; + +SDPUtils.writeCryptoKeyParams = function (keyParams) { + return keyParams.keyMethod + ':' + keyParams.keySalt + (keyParams.lifeTime ? '|' + keyParams.lifeTime : '') + (keyParams.mkiValue && keyParams.mkiLength ? '|' + keyParams.mkiValue + ':' + keyParams.mkiLength : ''); +}; + +// Extracts all SDES parameters. +SDPUtils.getCryptoParameters = function (mediaSection, sessionpart) { + var lines = SDPUtils.matchPrefix(mediaSection + sessionpart, 'a=crypto:'); + return lines.map(SDPUtils.parseCryptoLine); +}; + +// Parses ICE information from SDP media section or sessionpart. +// FIXME: for consistency with other functions this should only +// get the ice-ufrag and ice-pwd lines as input. +SDPUtils.getIceParameters = function (mediaSection, sessionpart) { + var ufrag = SDPUtils.matchPrefix(mediaSection + sessionpart, 'a=ice-ufrag:')[0]; + var pwd = SDPUtils.matchPrefix(mediaSection + sessionpart, 'a=ice-pwd:')[0]; + if (!(ufrag && pwd)) { + return null; + } + return { + usernameFragment: ufrag.substr(12), + password: pwd.substr(10) + }; +}; + +// Serializes ICE parameters to SDP. +SDPUtils.writeIceParameters = function (params) { + var sdp = 'a=ice-ufrag:' + params.usernameFragment + '\r\n' + 'a=ice-pwd:' + params.password + '\r\n'; + if (params.iceLite) { + sdp += 'a=ice-lite\r\n'; + } + return sdp; +}; + +// Parses the SDP media section and returns RTCRtpParameters. +SDPUtils.parseRtpParameters = function (mediaSection) { + var description = { + codecs: [], + headerExtensions: [], + fecMechanisms: [], + rtcp: [] + }; + var lines = SDPUtils.splitLines(mediaSection); + var mline = lines[0].split(' '); + for (var i = 3; i < mline.length; i++) { + // find all codecs from mline[3..] + var pt = mline[i]; + var rtpmapline = SDPUtils.matchPrefix(mediaSection, 'a=rtpmap:' + pt + ' ')[0]; + if (rtpmapline) { + var codec = SDPUtils.parseRtpMap(rtpmapline); + var fmtps = SDPUtils.matchPrefix(mediaSection, 'a=fmtp:' + pt + ' '); + // Only the first a=fmtp: is considered. + codec.parameters = fmtps.length ? SDPUtils.parseFmtp(fmtps[0]) : {}; + codec.rtcpFeedback = SDPUtils.matchPrefix(mediaSection, 'a=rtcp-fb:' + pt + ' ').map(SDPUtils.parseRtcpFb); + description.codecs.push(codec); + // parse FEC mechanisms from rtpmap lines. + switch (codec.name.toUpperCase()) { + case 'RED': + case 'ULPFEC': + description.fecMechanisms.push(codec.name.toUpperCase()); + break; + default: + // only RED and ULPFEC are recognized as FEC mechanisms. + break; + } + } + } + SDPUtils.matchPrefix(mediaSection, 'a=extmap:').forEach(function (line) { + description.headerExtensions.push(SDPUtils.parseExtmap(line)); + }); + // FIXME: parse rtcp. + return description; +}; + +// Generates parts of the SDP media section describing the capabilities / +// parameters. +SDPUtils.writeRtpDescription = function (kind, caps) { + var sdp = ''; + + // Build the mline. + sdp += 'm=' + kind + ' '; + sdp += caps.codecs.length > 0 ? '9' : '0'; // reject if no codecs. + sdp += ' UDP/TLS/RTP/SAVPF '; + sdp += caps.codecs.map(function (codec) { + if (codec.preferredPayloadType !== undefined) { + return codec.preferredPayloadType; + } + return codec.payloadType; + }).join(' ') + '\r\n'; + + sdp += 'c=IN IP4 0.0.0.0\r\n'; + sdp += 'a=rtcp:9 IN IP4 0.0.0.0\r\n'; + + // Add a=rtpmap lines for each codec. Also fmtp and rtcp-fb. + caps.codecs.forEach(function (codec) { + sdp += SDPUtils.writeRtpMap(codec); + sdp += SDPUtils.writeFmtp(codec); + sdp += SDPUtils.writeRtcpFb(codec); + }); + var maxptime = 0; + caps.codecs.forEach(function (codec) { + if (codec.maxptime > maxptime) { + maxptime = codec.maxptime; + } + }); + if (maxptime > 0) { + sdp += 'a=maxptime:' + maxptime + '\r\n'; + } + + if (caps.headerExtensions) { + caps.headerExtensions.forEach(function (extension) { + sdp += SDPUtils.writeExtmap(extension); + }); + } + // FIXME: write fecMechanisms. + return sdp; +}; + +// Parses the SDP media section and returns an array of +// RTCRtpEncodingParameters. +SDPUtils.parseRtpEncodingParameters = function (mediaSection) { + var encodingParameters = []; + var description = SDPUtils.parseRtpParameters(mediaSection); + var hasRed = description.fecMechanisms.indexOf('RED') !== -1; + var hasUlpfec = description.fecMechanisms.indexOf('ULPFEC') !== -1; + + // filter a=ssrc:... cname:, ignore PlanB-msid + var ssrcs = SDPUtils.matchPrefix(mediaSection, 'a=ssrc:').map(function (line) { + return SDPUtils.parseSsrcMedia(line); + }).filter(function (parts) { + return parts.attribute === 'cname'; + }); + var primarySsrc = ssrcs.length > 0 && ssrcs[0].ssrc; + var secondarySsrc = void 0; + + var flows = SDPUtils.matchPrefix(mediaSection, 'a=ssrc-group:FID').map(function (line) { + var parts = line.substr(17).split(' '); + return parts.map(function (part) { + return parseInt(part, 10); + }); + }); + if (flows.length > 0 && flows[0].length > 1 && flows[0][0] === primarySsrc) { + secondarySsrc = flows[0][1]; + } + + description.codecs.forEach(function (codec) { + if (codec.name.toUpperCase() === 'RTX' && codec.parameters.apt) { + var encParam = { + ssrc: primarySsrc, + codecPayloadType: parseInt(codec.parameters.apt, 10) + }; + if (primarySsrc && secondarySsrc) { + encParam.rtx = { ssrc: secondarySsrc }; + } + encodingParameters.push(encParam); + if (hasRed) { + encParam = JSON.parse(JSON.stringify(encParam)); + encParam.fec = { + ssrc: primarySsrc, + mechanism: hasUlpfec ? 'red+ulpfec' : 'red' + }; + encodingParameters.push(encParam); + } + } + }); + if (encodingParameters.length === 0 && primarySsrc) { + encodingParameters.push({ + ssrc: primarySsrc + }); + } + + // we support both b=AS and b=TIAS but interpret AS as TIAS. + var bandwidth = SDPUtils.matchPrefix(mediaSection, 'b='); + if (bandwidth.length) { + if (bandwidth[0].indexOf('b=TIAS:') === 0) { + bandwidth = parseInt(bandwidth[0].substr(7), 10); + } else if (bandwidth[0].indexOf('b=AS:') === 0) { + // use formula from JSEP to convert b=AS to TIAS value. + bandwidth = parseInt(bandwidth[0].substr(5), 10) * 1000 * 0.95 - 50 * 40 * 8; + } else { + bandwidth = undefined; + } + encodingParameters.forEach(function (params) { + params.maxBitrate = bandwidth; + }); + } + return encodingParameters; +}; + +// parses http://draft.ortc.org/#rtcrtcpparameters* +SDPUtils.parseRtcpParameters = function (mediaSection) { + var rtcpParameters = {}; + + // Gets the first SSRC. Note that with RTX there might be multiple + // SSRCs. + var remoteSsrc = SDPUtils.matchPrefix(mediaSection, 'a=ssrc:').map(function (line) { + return SDPUtils.parseSsrcMedia(line); + }).filter(function (obj) { + return obj.attribute === 'cname'; + })[0]; + if (remoteSsrc) { + rtcpParameters.cname = remoteSsrc.value; + rtcpParameters.ssrc = remoteSsrc.ssrc; + } + + // Edge uses the compound attribute instead of reducedSize + // compound is !reducedSize + var rsize = SDPUtils.matchPrefix(mediaSection, 'a=rtcp-rsize'); + rtcpParameters.reducedSize = rsize.length > 0; + rtcpParameters.compound = rsize.length === 0; + + // parses the rtcp-mux attrіbute. + // Note that Edge does not support unmuxed RTCP. + var mux = SDPUtils.matchPrefix(mediaSection, 'a=rtcp-mux'); + rtcpParameters.mux = mux.length > 0; + + return rtcpParameters; +}; + +SDPUtils.writeRtcpParameters = function (rtcpParameters) { + var sdp = ''; + if (rtcpParameters.reducedSize) { + sdp += 'a=rtcp-rsize\r\n'; + } + if (rtcpParameters.mux) { + sdp += 'a=rtcp-mux\r\n'; + } + if (rtcpParameters.ssrc !== undefined && rtcpParameters.cname) { + sdp += 'a=ssrc:' + rtcpParameters.ssrc + ' cname:' + rtcpParameters.cname + '\r\n'; + } + return sdp; +}; + +// parses either a=msid: or a=ssrc:... msid lines and returns +// the id of the MediaStream and MediaStreamTrack. +SDPUtils.parseMsid = function (mediaSection) { + var parts = void 0; + var spec = SDPUtils.matchPrefix(mediaSection, 'a=msid:'); + if (spec.length === 1) { + parts = spec[0].substr(7).split(' '); + return { stream: parts[0], track: parts[1] }; + } + var planB = SDPUtils.matchPrefix(mediaSection, 'a=ssrc:').map(function (line) { + return SDPUtils.parseSsrcMedia(line); + }).filter(function (msidParts) { + return msidParts.attribute === 'msid'; + }); + if (planB.length > 0) { + parts = planB[0].value.split(' '); + return { stream: parts[0], track: parts[1] }; + } +}; + +// SCTP +// parses draft-ietf-mmusic-sctp-sdp-26 first and falls back +// to draft-ietf-mmusic-sctp-sdp-05 +SDPUtils.parseSctpDescription = function (mediaSection) { + var mline = SDPUtils.parseMLine(mediaSection); + var maxSizeLine = SDPUtils.matchPrefix(mediaSection, 'a=max-message-size:'); + var maxMessageSize = void 0; + if (maxSizeLine.length > 0) { + maxMessageSize = parseInt(maxSizeLine[0].substr(19), 10); + } + if (isNaN(maxMessageSize)) { + maxMessageSize = 65536; + } + var sctpPort = SDPUtils.matchPrefix(mediaSection, 'a=sctp-port:'); + if (sctpPort.length > 0) { + return { + port: parseInt(sctpPort[0].substr(12), 10), + protocol: mline.fmt, + maxMessageSize: maxMessageSize + }; + } + var sctpMapLines = SDPUtils.matchPrefix(mediaSection, 'a=sctpmap:'); + if (sctpMapLines.length > 0) { + var parts = sctpMapLines[0].substr(10).split(' '); + return { + port: parseInt(parts[0], 10), + protocol: parts[1], + maxMessageSize: maxMessageSize + }; + } +}; + +// SCTP +// outputs the draft-ietf-mmusic-sctp-sdp-26 version that all browsers +// support by now receiving in this format, unless we originally parsed +// as the draft-ietf-mmusic-sctp-sdp-05 format (indicated by the m-line +// protocol of DTLS/SCTP -- without UDP/ or TCP/) +SDPUtils.writeSctpDescription = function (media, sctp) { + var output = []; + if (media.protocol !== 'DTLS/SCTP') { + output = ['m=' + media.kind + ' 9 ' + media.protocol + ' ' + sctp.protocol + '\r\n', 'c=IN IP4 0.0.0.0\r\n', 'a=sctp-port:' + sctp.port + '\r\n']; + } else { + output = ['m=' + media.kind + ' 9 ' + media.protocol + ' ' + sctp.port + '\r\n', 'c=IN IP4 0.0.0.0\r\n', 'a=sctpmap:' + sctp.port + ' ' + sctp.protocol + ' 65535\r\n']; + } + if (sctp.maxMessageSize !== undefined) { + output.push('a=max-message-size:' + sctp.maxMessageSize + '\r\n'); + } + return output.join(''); +}; + +// Generate a session ID for SDP. +// https://tools.ietf.org/html/draft-ietf-rtcweb-jsep-20#section-5.2.1 +// recommends using a cryptographically random +ve 64-bit value +// but right now this should be acceptable and within the right range +SDPUtils.generateSessionId = function () { + return Math.random().toString().substr(2, 21); +}; + +// Write boiler plate for start of SDP +// sessId argument is optional - if not supplied it will +// be generated randomly +// sessVersion is optional and defaults to 2 +// sessUser is optional and defaults to 'thisisadapterortc' +SDPUtils.writeSessionBoilerplate = function (sessId, sessVer, sessUser) { + var sessionId = void 0; + var version = sessVer !== undefined ? sessVer : 2; + if (sessId) { + sessionId = sessId; + } else { + sessionId = SDPUtils.generateSessionId(); + } + var user = sessUser || 'thisisadapterortc'; + // FIXME: sess-id should be an NTP timestamp. + return 'v=0\r\n' + 'o=' + user + ' ' + sessionId + ' ' + version + ' IN IP4 127.0.0.1\r\n' + 's=-\r\n' + 't=0 0\r\n'; +}; + +// Gets the direction from the mediaSection or the sessionpart. +SDPUtils.getDirection = function (mediaSection, sessionpart) { + // Look for sendrecv, sendonly, recvonly, inactive, default to sendrecv. + var lines = SDPUtils.splitLines(mediaSection); + for (var i = 0; i < lines.length; i++) { + switch (lines[i]) { + case 'a=sendrecv': + case 'a=sendonly': + case 'a=recvonly': + case 'a=inactive': + return lines[i].substr(2); + default: + // FIXME: What should happen here? + } + } + if (sessionpart) { + return SDPUtils.getDirection(sessionpart); + } + return 'sendrecv'; +}; + +SDPUtils.getKind = function (mediaSection) { + var lines = SDPUtils.splitLines(mediaSection); + var mline = lines[0].split(' '); + return mline[0].substr(2); +}; + +SDPUtils.isRejected = function (mediaSection) { + return mediaSection.split(' ', 2)[1] === '0'; +}; + +SDPUtils.parseMLine = function (mediaSection) { + var lines = SDPUtils.splitLines(mediaSection); + var parts = lines[0].substr(2).split(' '); + return { + kind: parts[0], + port: parseInt(parts[1], 10), + protocol: parts[2], + fmt: parts.slice(3).join(' ') + }; +}; + +SDPUtils.parseOLine = function (mediaSection) { + var line = SDPUtils.matchPrefix(mediaSection, 'o=')[0]; + var parts = line.substr(2).split(' '); + return { + username: parts[0], + sessionId: parts[1], + sessionVersion: parseInt(parts[2], 10), + netType: parts[3], + addressType: parts[4], + address: parts[5] + }; +}; + +// a very naive interpretation of a valid SDP. +SDPUtils.isValidSDP = function (blob) { + if (typeof blob !== 'string' || blob.length === 0) { + return false; + } + var lines = SDPUtils.splitLines(blob); + for (var i = 0; i < lines.length; i++) { + if (lines[i].length < 2 || lines[i].charAt(1) !== '=') { + return false; + } + // TODO: check the modifier a bit more. + } + return true; +}; + +// Expose public methods. +if ((typeof module === 'undefined' ? 'undefined' : _typeof(module)) === 'object') { + module.exports = SDPUtils; +} +},{}]},{},[1])(1) +}); diff --git a/thirdparty/adapter.min.js b/thirdparty/adapter.min.js deleted file mode 100644 index 2ec3bda..0000000 --- a/thirdparty/adapter.min.js +++ /dev/null @@ -1,11 +0,0 @@ -/* - * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. - * - * Use of this source code is governed by a BSD-style license - * that can be found in the LICENSE file in the root of the source - * tree. - * - * FROM: https://cdnjs.cloudflare.com/ajax/libs/webrtc-adapter/7.4.0/adapter.js - */ - -!function(e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).adapter=e()}(function(){return function o(a,s,c){function d(t,e){if(!s[t]){if(!a[t]){var r="function"==typeof require&&require;if(!e&&r)return r(t,!0);if(p)return p(t,!0);var n=new Error("Cannot find module '"+t+"'");throw n.code="MODULE_NOT_FOUND",n}var i=s[t]={exports:{}};a[t][0].call(i.exports,function(e){return d(a[t][1][e]||e)},i,i.exports,o,a,s,c)}return s[t].exports}for(var p="function"==typeof require&&require,e=0;en.sctp.maxMessageSize)throw new TypeError("Message too large (can send a maximum of "+n.sctp.maxMessageSize+" bytes)");return i.apply(r,arguments)}}var r=e.RTCPeerConnection.prototype.createDataChannel;e.RTCPeerConnection.prototype.createDataChannel=function(){var e=r.apply(this,arguments);return t(e,this),e},a.wrapPeerConnectionEvent(e,"datachannel",function(e){return t(e.channel,e.target),e})},r.shimConnectionState=function(e){if(!e.RTCPeerConnection||"connectionState"in e.RTCPeerConnection.prototype)return;var r=e.RTCPeerConnection.prototype;Object.defineProperty(r,"connectionState",{get:function(){return{completed:"connected",checking:"connecting"}[this.iceConnectionState]||this.iceConnectionState},enumerable:!0,configurable:!0}),Object.defineProperty(r,"onconnectionstatechange",{get:function(){return this._onconnectionstatechange||null},set:function(e){this._onconnectionstatechange&&(this.removeEventListener("connectionstatechange",this._onconnectionstatechange),delete this._onconnectionstatechange),e&&this.addEventListener("connectionstatechange",this._onconnectionstatechange=e)},enumerable:!0,configurable:!0}),["setLocalDescription","setRemoteDescription"].forEach(function(e){var t=r[e];r[e]=function(){return this._connectionstatechangepoly||(this._connectionstatechangepoly=function(e){var t,r=e.target;return r._lastConnectionState!==r.connectionState&&(r._lastConnectionState=r.connectionState,t=new Event("connectionstatechange",e),r.dispatchEvent(t)),e},this.addEventListener("iceconnectionstatechange",this._connectionstatechangepoly)),t.apply(this,arguments)}})},r.removeAllowExtmapMixed=function(e){if(!e.RTCPeerConnection)return;var t=a.detectBrowser(e);if("chrome"===t.browser&&71<=t.version)return;var r=e.RTCPeerConnection.prototype.setRemoteDescription;e.RTCPeerConnection.prototype.setRemoteDescription=function(e){return e&&e.sdp&&-1!==e.sdp.indexOf("\na=extmap-allow-mixed")&&(e.sdp=e.sdp.split("\n").filter(function(e){return"a=extmap-allow-mixed"!==e.trim()}).join("\n")),r.apply(this,arguments)}};var n,i=e("sdp"),p=(n=i)&&n.__esModule?n:{default:n},a=function(e){{if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}}(e("./utils"))},{"./utils":11,sdp:13}],7:[function(e,t,r){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.shimGetDisplayMedia=r.shimGetUserMedia=void 0;var c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n=e("./getusermedia");Object.defineProperty(r,"shimGetUserMedia",{enumerable:!0,get:function(){return n.shimGetUserMedia}});var i=e("./getdisplaymedia");Object.defineProperty(r,"shimGetDisplayMedia",{enumerable:!0,get:function(){return i.shimGetDisplayMedia}}),r.shimOnTrack=function(e){"object"===(void 0===e?"undefined":c(e))&&e.RTCTrackEvent&&"receiver"in e.RTCTrackEvent.prototype&&!("transceiver"in e.RTCTrackEvent.prototype)&&Object.defineProperty(e.RTCTrackEvent.prototype,"transceiver",{get:function(){return{receiver:this.receiver}}})},r.shimPeerConnection=function(n){var i=s.detectBrowser(n);if("object"!==(void 0===n?"undefined":c(n))||!n.RTCPeerConnection&&!n.mozRTCPeerConnection)return;!n.RTCPeerConnection&&n.mozRTCPeerConnection&&(n.RTCPeerConnection=n.mozRTCPeerConnection);i.version<53&&["setLocalDescription","setRemoteDescription","addIceCandidate"].forEach(function(e){var t=n.RTCPeerConnection.prototype[e],r=function(e,t,r){t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r;return e}({},e,function(){return arguments[0]=new("addIceCandidate"===e?n.RTCIceCandidate:n.RTCSessionDescription)(arguments[0]),t.apply(this,arguments)});n.RTCPeerConnection.prototype[e]=r[e]});{var r;i.version<68&&(r=n.RTCPeerConnection.prototype.addIceCandidate,n.RTCPeerConnection.prototype.addIceCandidate=function(e,t){return e?e&&""===e.candidate?Promise.resolve():r.apply(this,arguments):(t&&t.apply(null),Promise.resolve())})}var o={inboundrtp:"inbound-rtp",outboundrtp:"outbound-rtp",candidatepair:"candidate-pair",localcandidate:"local-candidate",remotecandidate:"remote-candidate"},a=n.RTCPeerConnection.prototype.getStats;n.RTCPeerConnection.prototype.getStats=function(){var e=Array.prototype.slice.call(arguments),t=e[0],n=e[1],r=e[2];return a.apply(this,[t||null]).then(function(r){if(i.version<53&&!n)try{r.forEach(function(e){e.type=o[e.type]||e.type})}catch(e){if("TypeError"!==e.name)throw e;r.forEach(function(e,t){r.set(t,Object.assign({},e,{type:o[e.type]||e.type}))})}return r}).then(n,r)}},r.shimSenderGetStats=function(e){if("object"!==(void 0===e?"undefined":c(e))||!e.RTCPeerConnection||!e.RTCRtpSender)return;if(e.RTCRtpSender&&"getStats"in e.RTCRtpSender.prototype)return;var r=e.RTCPeerConnection.prototype.getSenders;r&&(e.RTCPeerConnection.prototype.getSenders=function(){var t=this,e=r.apply(this,[]);return e.forEach(function(e){return e._pc=t}),e});var t=e.RTCPeerConnection.prototype.addTrack;t&&(e.RTCPeerConnection.prototype.addTrack=function(){var e=t.apply(this,arguments);return e._pc=this,e});e.RTCRtpSender.prototype.getStats=function(){return this.track?this._pc.getStats(this.track):Promise.resolve(new Map)}},r.shimReceiverGetStats=function(e){if("object"!==(void 0===e?"undefined":c(e))||!e.RTCPeerConnection||!e.RTCRtpSender)return;if(e.RTCRtpSender&&"getStats"in e.RTCRtpReceiver.prototype)return;var r=e.RTCPeerConnection.prototype.getReceivers;r&&(e.RTCPeerConnection.prototype.getReceivers=function(){var t=this,e=r.apply(this,[]);return e.forEach(function(e){return e._pc=t}),e});s.wrapPeerConnectionEvent(e,"track",function(e){return e.receiver._pc=e.srcElement,e}),e.RTCRtpReceiver.prototype.getStats=function(){return this._pc.getStats(this.track)}},r.shimRemoveStream=function(e){if(!e.RTCPeerConnection||"removeStream"in e.RTCPeerConnection.prototype)return;e.RTCPeerConnection.prototype.removeStream=function(t){var r=this;s.deprecated("removeStream","removeTrack"),this.getSenders().forEach(function(e){e.track&&t.getTracks().includes(e.track)&&r.removeTrack(e)})}},r.shimRTCDataChannel=function(e){e.DataChannel&&!e.RTCDataChannel&&(e.RTCDataChannel=e.DataChannel)},r.shimAddTransceiver=function(e){if("object"!==(void 0===e?"undefined":c(e))||!e.RTCPeerConnection)return;var s=e.RTCPeerConnection.prototype.addTransceiver;s&&(e.RTCPeerConnection.prototype.addTransceiver=function(e,t){this.setParametersPromises=[];var r=t,n=r&&"sendEncodings"in r;n&&r.sendEncodings.forEach(function(e){if("rid"in e){if(!/^[a-z0-9]{0,16}$/i.test(e.rid))throw new TypeError("Invalid RID value provided.")}if("scaleResolutionDownBy"in e&&!(1<=parseFloat(e.scaleResolutionDownBy)))throw new RangeError("scale_resolution_down_by must be >= 1.0");if("maxFramerate"in e&&!(0<=parseFloat(e.maxFramerate)))throw new RangeError("max_framerate must be >= 0.0")});var i,o,a=s.apply(this,arguments);return n&&("encodings"in(o=(i=a.sender).getParameters())||(o.encodings=r.sendEncodings,this.setParametersPromises.push(i.setParameters(o).catch(function(){})))),a})},r.shimCreateOffer=function(e){if("object"!==(void 0===e?"undefined":c(e))||!e.RTCPeerConnection)return;var r=e.RTCPeerConnection.prototype.createOffer;e.RTCPeerConnection.prototype.createOffer=function(){var e=this,t=arguments;return this.setParametersPromises&&this.setParametersPromises.length?Promise.all(this.setParametersPromises).then(function(){return r.apply(e,t)}).finally(function(){e.setParametersPromises=[]}):r.apply(this,arguments)}},r.shimCreateAnswer=function(e){if("object"!==(void 0===e?"undefined":c(e))||!e.RTCPeerConnection)return;var r=e.RTCPeerConnection.prototype.createAnswer;e.RTCPeerConnection.prototype.createAnswer=function(){var e=this,t=arguments;return this.setParametersPromises&&this.setParametersPromises.length?Promise.all(this.setParametersPromises).then(function(){return r.apply(e,t)}).finally(function(){e.setParametersPromises=[]}):r.apply(this,arguments)}};var s=function(e){{if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}}(e("../utils"))},{"../utils":11,"./getdisplaymedia":8,"./getusermedia":9}],8:[function(e,t,r){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.shimGetDisplayMedia=function(r,n){if(r.navigator.mediaDevices&&"getDisplayMedia"in r.navigator.mediaDevices)return;if(!r.navigator.mediaDevices)return;r.navigator.mediaDevices.getDisplayMedia=function(e){if(e&&e.video)return!0===e.video?e.video={mediaSource:n}:e.video.mediaSource=n,r.navigator.mediaDevices.getUserMedia(e);var t=new DOMException("getDisplayMedia without video constraints is undefined");return t.name="NotFoundError",t.code=8,Promise.reject(t)}}},{}],9:[function(e,t,r){"use strict";Object.defineProperty(r,"__esModule",{value:!0});var c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};r.shimGetUserMedia=function(e){var t=d.detectBrowser(e),n=e&&e.navigator,r=e&&e.MediaStreamTrack;{var i,o,a,s;n.getUserMedia=function(e,t,r){d.deprecated("navigator.getUserMedia","navigator.mediaDevices.getUserMedia"),n.mediaDevices.getUserMedia(e).then(t,r)},55=r&&parseInt(n[r],10)}function c(e){return"[object Object]"===Object.prototype.toString.call(e)}function d(t,r,n){r&&!n.has(r.id)&&(n.set(r.id,r),Object.keys(r).forEach(function(e){e.endsWith("Id")?d(t,t.get(r[e]),n):e.endsWith("Ids")&&r[e].forEach(function(e){d(t,t.get(e),n)})}))}},{}],12:[function(e,t,r){},{}],13:[function(e,t,r){"use strict";var p={generateIdentifier:function(){return Math.random().toString(36).substr(2,10)}};p.localCName=p.generateIdentifier(),p.splitLines=function(e){return e.trim().split("\n").map(function(e){return e.trim()})},p.splitSections=function(e){return e.split("\nm=").map(function(e,t){return(0n&&(n=e.maxptime)}),0
\t
  • You can host a group chat with friends using a room. Share the blue link to invite guests who will join the chat automatically.
  • \t
  • A group room can handle around 4 to 30 guests, depending on numerous factors, including CPU and available bandwidth of all guests in the room.
  • \t
  • Solo-views of each video are offered under videos as they load. These can be used within an OBS Browser Source.
  • \t
  • You can use the auto-mixing Group Scene, the green link, to auto arrange multiple videos for you in OBS.
  • \t
  • You can use this control room to record isolated video or audio streams, but it is an experimental feature still.
  • \t
  • Videos in the Director's room will be of low quality on purpose; to save bandwidth/CPU
  • \t
  • Guest's in the room will see each other's videos at a very limited quality to conserve bandwidth/CPU.
  • \t
  • OBS will see a guest's video in high-quality; the default video bitrate is 2500kbps.
  • \t
    \tAs guests join, their videos will appear below. You can bring their video streams into OBS as solo-scenes or you can add them to the Group Scene.\t
    The Group Scene auto-mixes videos that have been added to the group scene. Please note that the Auto-Mixer requires guests be manually added to it for them to appear in it; they are not added automatically.

    Apple mobile devices, such as iPhones and iPads, do not fully support Video Group Chat. This is a hardware constraint.

    \tFor advanced options and parameters, see the Wiki.", "more-than-four-can-join": "Tyto čtyři sloty pro hosty slouží pouze k předvedení. K místnosti se mohou skutečně připojit více než čtyři hosté.", - "welcome-to-obs-ninja-chat": "\n\tVítejte na VDO.Ninja! můžete ihned poslat zprávy ostatním členům této místnosti\n", + "welcome-to-vdo-ninja-chat": "\n\tVítejte na VDO.Ninja! můžete ihned poslat zprávy ostatním členům této místnosti\n", "names-and-labels-coming-soon": "\n\tJména členů bude jedna z budoucích funkcí VDO.ninja.\n", "send-chat": "Poslat", "available-languages": "Dostupné jazyky:", diff --git a/translations/de.json b/translations/de.json index e08df2a..e2322f7 100644 --- a/translations/de.json +++ b/translations/de.json @@ -288,7 +288,7 @@ "push-to-talk-enable": "🔊 Audio und Video mit Gästen teilen (Push-to-Talk Mode)", "welcome-to-control-room": "Welcome. This is the control-room for the group-chat. There are different things you can use this room for:

  • You can host a group chat with friends using a room. Share the blue link to invite guests who will join the chat automatically.
  • A group room can handle around 4 to 30 guests, depending on numerous factors, including CPU and available bandwidth of all guests in the room.
  • Solo-views of each video are offered under videos as they load. These can be used within an OBS Browser Source.
  • You can use the auto-mixing Group Scene, the green link, to auto arrange multiple videos for you in OBS.
  • You can use this control room to record isolated video or audio streams, but it is an experimental feature still.
  • Videos in the Director's room will be of low quality on purpose; to save bandwidth/CPU
  • Guest's in the room will see each other's videos at a very limited quality to conserve bandwidth/CPU.
  • OBS will see a guest's video in high-quality; the default video bitrate is 2500kbps.

  • As guests join, their videos will appear below. You can bring their video streams into OBS as solo-scenes or you can add them to the Group Scene.
    The Group Scene auto-mixes videos that have been added to the group scene. Please note that the Auto-Mixer requires guests be manually added to it for them to appear in it; they are not added automatically.

    Apple mobile devices, such as iPhones and iPads, do not fully support Video Group Chat. This is a hardware constraint.

    For advanced options and parameters, see the Wiki.", "more-than-four-can-join": "These four guest slots are just for demonstration. More than four guests can actually join a room.", - "welcome-to-obs-ninja-chat": "\nWillkommen zu VDO.Ninja! Schicken Sie anderen Gästen eine Message.\n", + "welcome-to-vdo-ninja-chat": "\nWillkommen zu VDO.Ninja! Schicken Sie anderen Gästen eine Message.\n", "names-and-labels-coming-soon": "\nNames identifying connected peers will be a feature in an upcoming release.\n", "send-chat": "Abschicken", "available-languages": "Verfügbare Sprachen:", diff --git a/translations/en.json b/translations/en.json index dcaed23..12918e2 100644 --- a/translations/en.json +++ b/translations/en.json @@ -361,7 +361,7 @@ "toggle-control-video": "Toggle control bar", "picture-in-picture": "Picture-in-picture", "chrome-cast": "Cast..", - "welcome-to-obs-ninja-chat": "\nWelcome to VDO.Ninja! You can send text messages directly to connected peers from here.\n", + "welcome-to-vdo-ninja-chat": "\nWelcome to VDO.Ninja! You can send text messages directly to connected peers from here.\n", "send-chat": "Send", "apply-new-guest-settings": "Apply settings", "cancel": "Cancel", diff --git a/translations/es.json b/translations/es.json index 6823509..051d72e 100644 --- a/translations/es.json +++ b/translations/es.json @@ -384,7 +384,7 @@ "application-audio-capture": "Para capturar el audio especifico de una aplicación, vea aquí", "animate-mixing": "Animar", "prefix-screenshare": "Prefijo de ID de pantalla compartida ", - "welcome-to-obs-ninja-chat": "\n\t¡Bienvenido a VDO.Ninja! Desde aquí puede enviar mensajes de texto para conectar mejor a sus amigos.\n", + "welcome-to-vdo-ninja-chat": "\n\t¡Bienvenido a VDO.Ninja! Desde aquí puede enviar mensajes de texto para conectar mejor a sus amigos.\n", "privacy-disabled": "Advertencia de Privacidad: El Director podra acceder a la Cámara y al Microfono si continua", "face-mesh": "Mapeado de la cara (Carga lento)", "anonymous-mask": "Mascara de Anonymous", diff --git a/translations/eu.json b/translations/eu.json index 68921a2..1eaeb75 100644 --- a/translations/eu.json +++ b/translations/eu.json @@ -410,7 +410,7 @@ "click-start-to-join": "Click Start to Join", "waiting-for-mic-to-load": "Waiting for mic to load", "waiting-for-camera-to-load": "Waiting for Camera to load", - "welcome-to-obs-ninja-chat": "\n\tWelcome! You can send text messages directly to connected peers from here.\n", + "welcome-to-vdo-ninja-chat": "\n\tWelcome! You can send text messages directly to connected peers from here.\n", "please-select-option-to-join": "Please select an option to join.", "show-controls-video": "Show control bar", "hide-controls-video": "Hide control bar", diff --git a/translations/fr.json b/translations/fr.json index 6073d8d..4627b3c 100644 --- a/translations/fr.json +++ b/translations/fr.json @@ -288,7 +288,7 @@ "push-to-talk-enable": "🔊 Permettre à l'administrateur d'utiliser le push-to-talk", "welcome-to-control-room": "Welcome. This is the control-room for the group-chat. There are different things you can use this room for:

    \t
  • You can host a group chat with friends using a room. Share the blue link to invite guests who will join the chat automatically.
  • \t
  • A group room can handle around 4 to 30 guests, depending on numerous factors, including CPU and available bandwidth of all guests in the room.
  • \t
  • Solo-views of each video are offered under videos as they load. These can be used within an OBS Browser Source.
  • \t
  • You can use the auto-mixing Group Scene, the green link, to auto arrange multiple videos for you in OBS.
  • \t
  • You can use this control room to record isolated video or audio streams, but it is an experimental feature still.
  • \t
  • Videos in the Director's room will be of low quality on purpose; to save bandwidth/CPU
  • \t
  • Guest's in the room will see each other's videos at a very limited quality to conserve bandwidth/CPU.
  • \t
  • OBS will see a guest's video in high-quality; the default video bitrate is 2500kbps.
  • \t
    \tAs guests join, their videos will appear below. You can bring their video streams into OBS as solo-scenes or you can add them to the Group Scene.\t
    The Group Scene auto-mixes videos that have been added to the group scene. Please note that the Auto-Mixer requires guests be manually added to it for them to appear in it; they are not added automatically.

    Apple mobile devices, such as iPhones and iPads, do not fully support Video Group Chat. This is a hardware constraint.

    \tFor advanced options and parameters, see the Wiki.", "more-than-four-can-join": "These four guest slots are just for demonstration. More than four guests can actually join a room.", - "welcome-to-obs-ninja-chat": "\n\tWelcome to VDO.Ninja! You can send text messages directly to connected peers from here.\n", + "welcome-to-vdo-ninja-chat": "\n\tWelcome to VDO.Ninja! You can send text messages directly to connected peers from here.\n", "names-and-labels-coming-soon": "\n\tNames identifying connected peers will be a feature in an upcoming release.\n", "send-chat": "Send", "available-languages": "Options de langues disponibles :", diff --git a/translations/it.json b/translations/it.json index 8b73e7c..7553a5f 100644 --- a/translations/it.json +++ b/translations/it.json @@ -288,7 +288,7 @@ "push-to-talk-enable": "🔊 Abilita Director's Push-to-Talk Mode", "welcome-to-control-room": "Benvenuto. Questa è la sala di controllo per la chat di gruppo. Ci sono diverse cose per cui puoi usare questa stanza:

    \t
  • Puoi ospitare una chat di gruppo con gli amici utilizzando una stanza. Condividi il link blu per invitare gli ospiti che si uniranno automaticamente alla chat.
  • \t
  • Una sala per gruppi può ospitare da 4 a 30 persone, a seconda di numerosi fattori, tra cui CPU e larghezza di banda disponibile di tutti gli ospiti nella stanza.
  • \t
  • Solo-views of each video are offered under videos as they load. These can be used within an OBS Browser Source.
  • \t
  • You can use the auto-mixing Group Scene, the green link, to auto arrange multiple videos for you in OBS.
  • \t
  • You can use this control room to record isolated video or audio streams, but it is an experimental feature still.
  • \t
  • Videos in the Director's room will be of low quality on purpose; to save bandwidth/CPU
  • \t
  • Guest's in the room will see each other's videos at a very limited quality to conserve bandwidth/CPU.
  • \t
  • OBS will see a guest's video in high-quality; the default video bitrate is 2500kbps.
  • \t
    \tAs guests join, their videos will appear below. You can bring their video streams into OBS as solo-scenes or you can add them to the Group Scene.\t
    The Group Scene auto-mixes videos that have been added to the group scene. Please note that the Auto-Mixer requires guests be manually added to it for them to appear in it; they are not added automatically.

    Apple mobile devices, such as iPhones and iPads, do not fully support Video Group Chat. This is a hardware constraint.

    \tFor advanced options and parameters, see the Wiki.", "more-than-four-can-join": "These four guest slots are just for demonstration. More than four guests can actually join a room.", - "welcome-to-obs-ninja-chat": "\n\tBenvenuto in VDO.Ninja! Da qui puoi inviare messaggi di testo direttamente ai peer connessi.\n", + "welcome-to-vdo-ninja-chat": "\n\tBenvenuto in VDO.Ninja! Da qui puoi inviare messaggi di testo direttamente ai peer connessi.\n", "names-and-labels-coming-soon": "\n\tI nomi che identificano i peer connessi saranno una funzionalità in una prossima versione..\n", "send-chat": "Invia", "available-languages": "Lingue Disponibili:", diff --git a/translations/ja.json b/translations/ja.json index a9413fa..f981aef 100644 --- a/translations/ja.json +++ b/translations/ja.json @@ -288,7 +288,7 @@ "push-to-talk-enable": "🔊 Enable Director's Push-to-Talk Mode", "welcome-to-control-room": "Welcome. This is the control-room for the group-chat. There are different things you can use this room for:

    \t
  • You can host a group chat with friends using a room. Share the blue link to invite guests who will join the chat automatically.
  • \t
  • A group room can handle around 4 to 30 guests, depending on numerous factors, including CPU and available bandwidth of all guests in the room.
  • \t
  • Solo-views of each video are offered under videos as they load. These can be used within an OBS Browser Source.
  • \t
  • You can use the auto-mixing Group Scene, the green link, to auto arrange multiple videos for you in OBS.
  • \t
  • You can use this control room to record isolated video or audio streams, but it is an experimental feature still.
  • \t
  • Videos in the Director's room will be of low quality on purpose; to save bandwidth/CPU
  • \t
  • Guest's in the room will see each other's videos at a very limited quality to conserve bandwidth/CPU.
  • \t
  • OBS will see a guest's video in high-quality; the default video bitrate is 2500kbps.
  • \t
    \tAs guests join, their videos will appear below. You can bring their video streams into OBS as solo-scenes or you can add them to the Group Scene.\t
    The Group Scene auto-mixes videos that have been added to the group scene. Please note that the Auto-Mixer requires guests be manually added to it for them to appear in it; they are not added automatically.

    Apple mobile devices, such as iPhones and iPads, do not fully support Video Group Chat. This is a hardware constraint.

    \tFor advanced options and parameters, see the Wiki.", "more-than-four-can-join": "These four guest slots are just for demonstration. More than four guests can actually join a room.", - "welcome-to-obs-ninja-chat": "\n\tWelcome to VDO.Ninja! You can send text messages directly to connected peers from here.\n", + "welcome-to-vdo-ninja-chat": "\n\tWelcome to VDO.Ninja! You can send text messages directly to connected peers from here.\n", "names-and-labels-coming-soon": "\n\tNames identifying connected peers will be a feature in an upcoming release.\n", "send-chat": "Send", "available-languages": "Available Languages:", diff --git a/translations/nl.json b/translations/nl.json index 7831384..30b3b5c 100644 --- a/translations/nl.json +++ b/translations/nl.json @@ -288,7 +288,7 @@ "push-to-talk-enable": "🔊 Enable Director's Push-to-Talk Mode Zet ", "welcome-to-control-room": "Welcome. This is the control-room for the group-chat. There are different things you can use this room for:

    \t
  • You can host a group chat with friends using a room. Share the blue link to invite guests who will join the chat automatically.
  • \t
  • A group room can handle around 4 to 30 guests, depending on numerous factors, including CPU and available bandwidth of all guests in the room.
  • \t
  • Solo-views of each video are offered under videos as they load. These can be used within an OBS Browser Source.
  • \t
  • You can use the auto-mixing Group Scene, the green link, to auto arrange multiple videos for you in OBS.
  • \t
  • You can use this control room to record isolated video or audio streams, but it is an experimental feature still.
  • \t
  • Videos in the Director's room will be of low quality on purpose; to save bandwidth/CPU
  • \t
  • Guest's in the room will see each other's videos at a very limited quality to conserve bandwidth/CPU.
  • \t
  • OBS will see a guest's video in high-quality; the default video bitrate is 2500kbps.
  • \t
    \tAs guests join, their videos will appear below. You can bring their video streams into OBS as solo-scenes or you can add them to the Group Scene.\t
    The Group Scene auto-mixes videos that have been added to the group scene. Please note that the Auto-Mixer requires guests be manually added to it for them to appear in it; they are not added automatically.

    Apple mobile devices, such as iPhones and iPads, do not fully support Video Group Chat. This is a hardware constraint.

    \tFor advanced options and parameters, see the Wiki.", "more-than-four-can-join": "Er staan momenteel vier gasten plekken gevuld voor de demonstratie. Het is mogelijk om meer gasten te hebben in een kamer.", - "welcome-to-obs-ninja-chat": "\n\tWelcome to VDO.Ninja! You can send text messages directly to connected peers from here.\n", + "welcome-to-vdo-ninja-chat": "\n\tWelcome to VDO.Ninja! You can send text messages directly to connected peers from here.\n", "names-and-labels-coming-soon": "\n\tNames identifying connected peers will be a feature in an upcoming release.\n", "send-chat": "Verstuur", "available-languages": "Beschikbare talen:", diff --git a/translations/pig.json b/translations/pig.json index de94ab7..cd9d77f 100644 --- a/translations/pig.json +++ b/translations/pig.json @@ -288,7 +288,7 @@ "push-to-talk-enable": " Enable Director's Push-to-Talk Mode", "welcome-to-control-room": "\n\tErehay ouyay ancay epray-enerategay\n", "more-than-four-can-join": "Erehay ouyay ancay epray-enerategay.", - "welcome-to-obs-ninja-chat": "\n\tErehay ouyay ancay epray-enerategay.\n", + "welcome-to-vdo-ninja-chat": "\n\tErehay ouyay ancay epray-enerategay.\n", "names-and-labels-coming-soon": "\n\tErehay ouyay ancay epray-enerategay.\n", "send-chat": "Erehay ouyay ancay epray-enerategay", "available-languages": "AErehay ouyay ancay epray-enerategay:", diff --git a/translations/pt-br.json b/translations/pt-br.json index 482771f..a5b0c30 100644 --- a/translations/pt-br.json +++ b/translations/pt-br.json @@ -218,7 +218,7 @@ "waiting-for-camera-to-load": "Aguardando a câmera carregar", "waiting-for-mic-to-load": "Aguardando o microfone carregar", "welcome-to-control-room": "\nBem-vindo. Esta é a sala de controle do diretor para o bate-papo em grupo.

    \nVocê pode hospedar um bate-papo em grupo com amigos usando uma sala. Compartilhe o link azul para convidar as pessoas que participarão do bate-papo automaticamente.\n

    \nUma sala de grupo pode lidar normalmente com cerca de 6 a 20 convidados, dependendo de vários fatores, incluindo CPU e largura de banda disponível de todos os convidados na sala\n", - "welcome-to-obs-ninja-chat": "\nBem-vindo! Você pode enviar mensagens de texto diretamente para as pessoas conectadas a partir daqui.\n", + "welcome-to-vdo-ninja-chat": "\nBem-vindo! Você pode enviar mensagens de texto diretamente para as pessoas conectadas a partir daqui.\n", "you-are-in-the-control-center": "Centro de controle para sala:", "you-are-using-headphones-earphones": "Você está usando headphones/fones de ouvido", "your-connection-is-hardwired-instead-of-wifi": "Sua conexão é cabeada em vez de Wi-Fi", diff --git a/translations/pt.json b/translations/pt.json index e5e355b..4144505 100644 --- a/translations/pt.json +++ b/translations/pt.json @@ -288,7 +288,7 @@ "push-to-talk-enable": "🔊 Ativar Push-to-talk do realizador", "welcome-to-control-room": "Bem-vindo. Esta é a sala de controlo para o chat de grupo. Há diferentes coisas que pode fazer aqui:

    \t
  • Pode hospedar um chat de grupo com amigos. Partilhe o link azul para os convidados se juntarem ao chat de forma automática.
  • \t
  • Uma sala de grupo pode hospedar entre 4 a 30 4 to 30 convidados, dependendo de inúmeros factores, incluindo CPU e largura de banda de todos os convidados na sala.
  • \t
  • Visualizações individuais de cada vídeo serão mostradas quando carregam. Estas podem ser usadas em Fontes do tipo Browser no OBS.
  • \t
  • Pode usar a cena de grupo automática, o link verde, para dispôr automaticamente os vídeos por si no OBS.
  • \t
  • Pode usar esta sala de controlo para gravar streams isolados de vídeo ou áudio, mas isto é ainda experimental.
  • \t
  • Vídeos na sala de controle são de baixa qualidade propositadamente; para poupar largura de banda/CPU
  • \t
  • Convidados na sala irão ver-se numa qualidade muito reduzida para conservar largura de banda/CPU.
  • \t
  • OBS tem acesso ao vídeo do convidado em alta qualidade; o bitrate de vídeo por omissão é 2500kbps.
  • \t
    \tÀ medida que os convidados entram, os seus vídeos são mostrados abaixo. Pode levar os seus sinais para o OBS como cenas individuais ou pode adicioná-los à cena de grupo.\t
    A Cena de grupo auto-mistura vídeos que lhe forem adicionados. Note que a auto-mistura requer que os convidados sejam manualmente adicionados; não são adicionados automaticamente.

    Dispositivos móveis Apple, como iPhones e iPads, não suportam totalmente o Chat de Grupo. Este é um constrangimento de hardware.

    \tPara opções avançadas e parâmetros, veja o Wiki.", "more-than-four-can-join": "Estes quatro convidados são apenas ilustrativos. Podem juntar-se mais de quatro convidados numa sala.", - "welcome-to-obs-ninja-chat": "\n\tBem vindo ao VDO.Ninja! Pode enviar mensagens diretas a quem estiver aqui ligado a partir daqui.\n", + "welcome-to-vdo-ninja-chat": "\n\tBem vindo ao VDO.Ninja! Pode enviar mensagens diretas a quem estiver aqui ligado a partir daqui.\n", "names-and-labels-coming-soon": "\n\tNomes a identificar as ligações será uma funcionalidade futura.\n", "send-chat": "Enviar", "available-languages": "Línguas disponíveis:", diff --git a/translations/ru.json b/translations/ru.json index f9bfd19..9bc3e4d 100644 --- a/translations/ru.json +++ b/translations/ru.json @@ -415,7 +415,7 @@ "animate-mixing": "Анимированный переход", "prefix-screenshare": "Prefix screenshare IDs", "more-than-four-can-join": "Этот шаблон на 4 гостей только для демонстрации. Гостей может быть больше.", - "welcome-to-obs-ninja-chat": "Пожалуйста, сделайте все возможное, чтобы немедленно остановить эту кровавую войну! Иначе завтра может не быть", + "welcome-to-vdo-ninja-chat": "Пожалуйста, сделайте все возможное, чтобы немедленно остановить эту кровавую войну! Иначе завтра может не быть", "privacy-disabled": "Ведущий сможет удаленно управлять вашим микрофоном и камерой.", "face-mesh": "Face mesh (slow load)", "anonymous-mask": "Маска анонимуса", diff --git a/translations/tr.json b/translations/tr.json index cfa45cd..fafd4b8 100644 --- a/translations/tr.json +++ b/translations/tr.json @@ -309,7 +309,7 @@ "push-to-talk-enable": "🔊 Yönetmen bas-konuş'u etkinleştir", "welcome-to-control-room": "Hoş geldiniz. Bu grup konuşması için kontrol odasıdır. Bu odayı farklı amaçlar için kullanabilirsiniz:

    \t
  • Arkadaşlarınız ile grup konunşması yapmak için bir oda kullanabilirsiniz. Otomatik olarak gruba dahil etmek için misafirleriniz ile mavi bağlantıyı paylaşın.
  • \t
  • Bir grup odası 4 - 30 sayıda misafir ağırlayabilir. Ancak bu bir çok etkene göre değişebilir, yeterli CPU ve internet bant genişliği gibi.
  • \t
  • Her videonun tekil görüntüsü bağlantıları misafirler bağlandıkça videolarının altında yer alacak. Bunları OBS tarayıcı kaynağı olarak kullanabilirsiniz.
  • \t
  • Otomatik-karıştırma grup sahnesi (yeşil bağlantı) bir çok videoyu OBS'de otomatik ayarlamak için kullanabilirsiniz.
  • \t
  • Bu odayı kullanarak her bir video için ayrı ayrı video ve ses kaynaklarını kaydedebilirsiniz, ancak bu özellik halen deneysel aşamadadır.
  • \t
  • Yönetmen odasında yer alan videolar kasten düşük kalitede tutulmuştur; CPU ve internetbant genişliğinden tasarruf için
  • \t
  • Odada yer alan misafirler, CPU ve internetten tasarruf etmek amacıyla bir birlerinin videolarını düşük kalitede görecek.
  • \t
  • OBS misafirlerin videolarını çok yüksek kalitede alacak, varsayılan kalite 2500kbps'dir.
  • \t
    \tMisafirler eklendikçe videoları aşağıda belirecek. OBS'ye videolarını tekil sahneler olarak ekleyebilir, ya da grup sahnelerine ekleyebilirsiniz.\t
    Grup sahnesi, eklenmiş videoları otomatik olarak karıştırır. Otomatik karıştırmanın çalışması için misafirlerin el ile bu sahneye eklenmesi gerektiğini unutmayın; otomatik olarak sahnelere eklenmeyeceklerdir.

    iPhone iPad gibi Apple mobil cihazlar, tam olarak video grup görüşmeyi desteklemiyor. Bu bir donanım sınırlamasıdır.

    \tGekişmiş özellik ve parametreler için Wiki'ye göz atın.", "more-than-four-can-join": "These four guest slots are just for demonstration. More than four guests can actually join a room.", - "welcome-to-obs-ninja-chat": "\n\tVDO.Ninja'ya hoş geldin! Bağlı olan kişilere buradan yazılı mesajlar gönderebilirsin.\n", + "welcome-to-vdo-ninja-chat": "\n\tVDO.Ninja'ya hoş geldin! Bağlı olan kişilere buradan yazılı mesajlar gönderebilirsin.\n", "names-and-labels-coming-soon": "\n\tBağlanan kişileri tanımlayan isimler ileriki bir geliştirmede yer alacak.\n", "send-chat": "Gönder", "available-languages": "Diller:", diff --git a/translations/uk.json b/translations/uk.json index f0ddc4c..29c114c 100644 --- a/translations/uk.json +++ b/translations/uk.json @@ -319,7 +319,7 @@ "advanced-camera-settings": " Відео налаштування", "open-in-new-tab": "Відкрити у новій закладинці", "copy-to-clipboard": "Скопіювати у буфер", - "welcome-to-obs-ninja-chat": "\n\tWelcome to VDO.Ninja! You can send text messages directly to connected peers from here.\n", + "welcome-to-vdo-ninja-chat": "\n\tWelcome to VDO.Ninja! You can send text messages directly to connected peers from here.\n", "names-and-labels-coming-soon": "\n\tNames identifying connected peers will be a feature in an upcoming release.\n", "send-chat": "Надіслати", "available-languages": "Доступні мови:", diff --git a/webrtc.js b/webrtc.js index d74d017..d1e3e19 100644 --- a/webrtc.js +++ b/webrtc.js @@ -6,4 +6,4 @@ * No warranty, explicit or implicit, provided. * */ -var _0x12766c=_0x2c19;(function(_0x156552,_0x153dce){var _0x35c2ff=_0x2c19,_0x2cb400=_0x156552();while(!![]){try{var _0x67158f=parseInt(_0x35c2ff(0x89a))/0x1+-parseInt(_0x35c2ff(0x56f))/0x2*(-parseInt(_0x35c2ff(0x8a0))/0x3)+parseInt(_0x35c2ff(0x727))/0x4+-parseInt(_0x35c2ff(0x4ce))/0x5*(parseInt(_0x35c2ff(0x145))/0x6)+parseInt(_0x35c2ff(0x679))/0x7*(parseInt(_0x35c2ff(0x905))/0x8)+-parseInt(_0x35c2ff(0x63e))/0x9*(parseInt(_0x35c2ff(0x518))/0xa)+-parseInt(_0x35c2ff(0x507))/0xb;if(_0x67158f===_0x153dce)break;else _0x2cb400['push'](_0x2cb400['shift']());}catch(_0x96f7eb){_0x2cb400['push'](_0x2cb400['shift']());}}}(_0x28f3,0xea573));function log(_0x657e2c){var _0x452fb1=_0x2c19;if(debugSocket){if(debugSocket[_0x452fb1(0x298)]===debugSocket[_0x452fb1(0x525)])for(var _0x355150=0x0;_0x355150_0x186d6b['json']())[_0x31aad1(0x1f1)](function(_0x167d13){var _0x5a4873=_0x31aad1;_0x167d13[_0x5a4873(0x5c2)][_0x5a4873(0x21a)](_0x572bc6=>{var _0xab83c5=_0x5a4873;try{if(session[_0xab83c5(0x305)]&&_0x572bc6[_0xab83c5(0x7e1)]){}else _0x2b338d[_0xab83c5(0x6d6)](_0x572bc6);}catch(_0x4939df){errorlog(_0x4939df);}});if(isIFrame&&_0x167d13['options']&&session[_0x5a4873(0x364)]&&!session['view'])pokeIframeAPI(_0x5a4873(0x136),_0x167d13[_0x5a4873(0x61c)]);else!session['speedtest']&&setStorage('turnlist',_0x167d13[_0x5a4873(0x5c2)],0x1);})[_0x31aad1(0x49b)](function(_0x30fa68){var _0x2c1763=_0x31aad1;warnlog(_0x30fa68),_0x2b338d=[{'username':_0x2c1763(0x8f8),'credential':_0x2c1763(0x4b9),'urls':['turns:www.turn.obs.ninja:443'],'tz':0x12c,'udp':![],'locale':'cae1'},{'username':_0x2c1763(0x8f8),'credential':_0x2c1763(0x4b9),'urls':[_0x2c1763(0x2f9)],'tz':0x12c,'udp':!![],'locale':_0x2c1763(0x67e)},{'username':_0x2c1763(0x8a9),'credential':_0x2c1763(0x934),'urls':['turn:turn-usw2.vdo.ninja:3478'],'tz':0x1e0,'udp':!![],'locale':'usw2'},{'username':'vdoninja','credential':_0x2c1763(0x4f5),'urls':[_0x2c1763(0x120)],'tz':-0x46,'udp':!![],'locale':_0x2c1763(0x47c)},{'username':'obsninja','credential':_0x2c1763(0x712),'urls':[_0x2c1763(0x1e3)],'tz':-0x3c,'udp':!![],'locale':'fr1'},{'username':_0x2c1763(0x8f8),'credential':'setupYourOwnPlease','urls':['turns:turn.obs.ninja:443'],'tz':-0x3c,'udp':![],'locale':'de1'},{'username':_0x2c1763(0x8f8),'credential':'setupYourOwnPlease','urls':[_0x2c1763(0x929)],'tz':-0x3c,'udp':!![],'locale':'de1'},{'username':_0x2c1763(0x8a9),'credential':'IchBinSteveDerNinja','urls':[_0x2c1763(0x583)],'tz':-0x3c,'udp':!![],'locale':_0x2c1763(0x36e)},{'username':_0x2c1763(0x8a9),'credential':_0x2c1763(0x74b),'urls':[_0x2c1763(0x6c9)],'tz':-0x3c,'udp':![],'locale':_0x2c1763(0x36e)},{'username':'vdoninja','credential':_0x2c1763(0x49e),'urls':[_0x2c1763(0x78d)],'tz':0x12c,'udp':!![],'locale':'use1'}],_0x2b338d=processTURNs(_0x2b338d);}),!session[_0x31aad1(0x75e)]&&(session[_0x31aad1(0x75e)]=[]),session[_0x31aad1(0x669)]={'iceServers':session[_0x31aad1(0x75e)],'sdpSemantics':'unified-plan'},session[_0x31aad1(0x5ec)]&&(session[_0x31aad1(0x669)][_0x31aad1(0x503)]=_0x31aad1(0x677)),!_0x2b338d&&(_0x2b338d=[]),session[_0x31aad1(0x669)][_0x31aad1(0x245)]=session[_0x31aad1(0x669)][_0x31aad1(0x245)][_0x31aad1(0x6ff)](_0x2b338d),log(_0x31aad1(0x2b4)),!![];}var TURNPromise=null;async function chooseBestTURN(){var _0x10b2ea=_0x12766c;if(session[_0x10b2ea(0x669)])return;return!TURNPromise?TURNPromise=getTURNList():warnlog(_0x10b2ea(0x8c2)),await TURNPromise;}var WebRTC={};WebRTC[_0x12766c(0x596)]=(function(){var _0x173334=_0x12766c,_0x539db3={};function _0x20abf0(){var _0x4c41df=_0x2c19,_0x178dbc,_0x14e0fc,_0x439917=new Promise((_0x1104e5,_0x11bf36)=>{_0x178dbc=_0x1104e5,_0x14e0fc=_0x11bf36;});return _0x439917[_0x4c41df(0x19c)]=_0x178dbc,_0x439917[_0x4c41df(0x88d)]=_0x14e0fc,_0x439917;}_0x539db3['generateStreamID']=function(_0x5aab9e=0x7){var _0x2305f8=_0x2c19,_0x5a47b6='',_0x3a97d7=_0x2305f8(0x2f0);for(var _0x191ca6=0x0;_0x191ca6<_0x5aab9e;_0x191ca6++){_0x5a47b6+=_0x3a97d7['charAt'](Math[_0x2305f8(0x579)](Math[_0x2305f8(0x11f)]()*_0x3a97d7[_0x2305f8(0x425)]));}try{_0x5a47b6=_0x5a47b6[_0x2305f8(0x74d)]('AD','vDAv'),_0x5a47b6=_0x5a47b6[_0x2305f8(0x74d)]('Ad',_0x2305f8(0x478)),_0x5a47b6=_0x5a47b6[_0x2305f8(0x74d)]('ad',_0x2305f8(0x446)),_0x5a47b6=_0x5a47b6[_0x2305f8(0x74d)]('aD',_0x2305f8(0x1bd));}catch(_0x3b81c0){errorlog(_0x3b81c0);}return log(_0x5a47b6),_0x5a47b6;},_0x539db3[_0x173334(0x53b)]=function(_0x32d2de=0x7){var _0xf4581=_0x173334,_0x64adad='',_0xee2088=['the','of','to','and','a','in','is','it',_0xf4581(0x66c),'that','he',_0xf4581(0x289),_0xf4581(0x11e),'on',_0xf4581(0x755),_0xf4581(0x465),'as','I',_0xf4581(0x862),'they','be','at',_0xf4581(0x368),'have',_0xf4581(0x600),'from','or','had','by','word',_0xf4581(0x18c),'what','some','we','can',_0xf4581(0x309),_0xf4581(0x5d2),_0xf4581(0x194),_0xf4581(0x69c),_0xf4581(0x285),_0xf4581(0x877),'up','use',_0xf4581(0xe8),_0xf4581(0x768),_0xf4581(0x747),'an',_0xf4581(0x5a9),_0xf4581(0x5b3),_0xf4581(0x672),'do',_0xf4581(0x1f7),_0xf4581(0x5b2),'if','will',_0xf4581(0x415),_0xf4581(0x8c9),_0xf4581(0x865),_0xf4581(0x1f1),_0xf4581(0x8e4),_0xf4581(0x436),_0xf4581(0x660),'like','so',_0xf4581(0x34f),'her',_0xf4581(0x387),_0xf4581(0x51e),_0xf4581(0x102),_0xf4581(0x36a),_0xf4581(0x8ba),'two',_0xf4581(0x5c8),'look','more','day','could','go',_0xf4581(0x620),'did',_0xf4581(0x703),_0xf4581(0x428),'no',_0xf4581(0x900),'people','my',_0xf4581(0x486),'know',_0xf4581(0x2e5),_0xf4581(0x1f5),'call',_0xf4581(0x729),_0xf4581(0x2e0),_0xf4581(0x92e),'down',_0xf4581(0x6fa),_0xf4581(0x249),_0xf4581(0x5a8),_0xf4581(0x935),_0xf4581(0x18d),'new',_0xf4581(0x55b),_0xf4581(0x14d),_0xf4581(0x4c4),_0xf4581(0x939),'place','made',_0xf4581(0x456),_0xf4581(0x1e2),_0xf4581(0x27d),_0xf4581(0x24f),_0xf4581(0x216),_0xf4581(0x35f),'round',_0xf4581(0x5ff),'year',_0xf4581(0x83f),_0xf4581(0x3b6),'every',_0xf4581(0x3a2),'me','give',_0xf4581(0x3e1),_0xf4581(0x303),_0xf4581(0x911),_0xf4581(0x8c4),'through',_0xf4581(0x325),_0xf4581(0x171),_0xf4581(0x802),_0xf4581(0x2c2),'think','say',_0xf4581(0x3c2),_0xf4581(0x7a1),'line',_0xf4581(0x546),_0xf4581(0x619),_0xf4581(0x7c3),_0xf4581(0x397),_0xf4581(0x144),_0xf4581(0x3b5),_0xf4581(0x137),_0xf4581(0x674),_0xf4581(0x262),_0xf4581(0xf2),_0xf4581(0x1d9),_0xf4581(0x259),'tell',_0xf4581(0x1c8),_0xf4581(0x7b2),_0xf4581(0x8cf),_0xf4581(0x5dd),_0xf4581(0x78f),_0xf4581(0x12d),_0xf4581(0x1ed),'play',_0xf4581(0x92a),'end',_0xf4581(0x542),_0xf4581(0x361),_0xf4581(0x758),_0xf4581(0x8cb),'port',_0xf4581(0x132),'spell',_0xf4581(0x897),'even','land','here',_0xf4581(0x84e),'big','high',_0xf4581(0x3bf),_0xf4581(0x6b5),_0xf4581(0xe7),_0xf4581(0x601),_0xf4581(0x907),_0xf4581(0x121),'change',_0xf4581(0x86a),_0xf4581(0x8ed),_0xf4581(0x7d2),'off',_0xf4581(0x16c),_0xf4581(0x367),'picture',_0xf4581(0x7f1),'us',_0xf4581(0xf7),_0xf4581(0x1c6),_0xf4581(0x38c),'mother',_0xf4581(0x817),_0xf4581(0x182),_0xf4581(0x827),_0xf4581(0x7f6),_0xf4581(0x41c),_0xf4581(0x33e),'head',_0xf4581(0x76a),'own','page','should',_0xf4581(0x277),'found',_0xf4581(0x62b),_0xf4581(0x108),_0xf4581(0x658),_0xf4581(0x4de),_0xf4581(0x5ba),'learn',_0xf4581(0x773),_0xf4581(0x6ce),_0xf4581(0x81a),'sun','four',_0xf4581(0x5be),_0xf4581(0xf5),'keep',_0xf4581(0x348),_0xf4581(0x355),_0xf4581(0x143),_0xf4581(0x40a),_0xf4581(0x255),'city',_0xf4581(0x107),_0xf4581(0x6f1),'farm','hard',_0xf4581(0x213),'might',_0xf4581(0x193),_0xf4581(0x5e1),_0xf4581(0x707),_0xf4581(0x912),_0xf4581(0x330),_0xf4581(0x8e0),_0xf4581(0x5aa),_0xf4581(0x7dd),_0xf4581(0x2a5),_0xf4581(0x7c5),'press',_0xf4581(0x7c0),_0xf4581(0x7fb),'real',_0xf4581(0x312),'few',_0xf4581(0x4dd),'open','seem',_0xf4581(0x62a),_0xf4581(0x394),_0xf4581(0x336),_0xf4581(0x68e),_0xf4581(0x314),'got',_0xf4581(0x21b),_0xf4581(0x177),_0xf4581(0x149),'paper',_0xf4581(0x445),_0xf4581(0x8b6),_0xf4581(0x2b1),'those',_0xf4581(0x283),'mark','often',_0xf4581(0x295),_0xf4581(0x6a4),'mile','river',_0xf4581(0x594),_0xf4581(0x6b3),_0xf4581(0x380),_0xf4581(0x52c),'book',_0xf4581(0x414),_0xf4581(0x1ab),'science','eat','room',_0xf4581(0x584),'began','idea','fish','mountain',_0xf4581(0x69b),'once',_0xf4581(0x509),_0xf4581(0x566),_0xf4581(0xfb),_0xf4581(0x161),_0xf4581(0x49c),'watch','color',_0xf4581(0x6d1),_0xf4581(0x72a),_0xf4581(0x5ce),_0xf4581(0x7e6),'plain',_0xf4581(0x80c),_0xf4581(0xe4),'young',_0xf4581(0x434),_0xf4581(0x31a),'ever',_0xf4581(0x154),_0xf4581(0x4c8),_0xf4581(0x867),_0xf4581(0x477),_0xf4581(0x20b),_0xf4581(0x396),_0xf4581(0x331),_0xf4581(0x917),_0xf4581(0x3e6),_0xf4581(0x17c),_0xf4581(0x7f5),_0xf4581(0x65b),_0xf4581(0x838),'song',_0xf4581(0x6b6),_0xf4581(0x1dc),_0xf4581(0x5bd),_0xf4581(0x67a),'short',_0xf4581(0x3ab),_0xf4581(0x6db),_0xf4581(0x30b),_0xf4581(0x5bc),'happen',_0xf4581(0x79b),'ship',_0xf4581(0x4c9),_0xf4581(0x288),'rock',_0xf4581(0x670),_0xf4581(0x537),_0xf4581(0x25d),_0xf4581(0x6a1),'piece',_0xf4581(0x140),_0xf4581(0x65f),_0xf4581(0x34c),_0xf4581(0x63f),_0xf4581(0x837),'whole',_0xf4581(0x1ff),'space',_0xf4581(0x413),'best',_0xf4581(0x73b),_0xf4581(0x48b),_0xf4581(0x34d),_0xf4581(0x4af),_0xf4581(0x2db),_0xf4581(0x885),_0xf4581(0x15a),'step',_0xf4581(0x740),'hold',_0xf4581(0x3f2),_0xf4581(0x7a8),'interest',_0xf4581(0x176),_0xf4581(0x1ee),_0xf4581(0x7a6),'sing','listen','six',_0xf4581(0x807),_0xf4581(0x536),'less',_0xf4581(0x690),'ten',_0xf4581(0x433),'several',_0xf4581(0x803),'toward','war',_0xf4581(0x6d9),_0xf4581(0x7a5),_0xf4581(0x82d),_0xf4581(0x4e5),_0xf4581(0x4e4),_0xf4581(0x6e4),'person',_0xf4581(0x8b9),_0xf4581(0x1d3),_0xf4581(0x661),'road',_0xf4581(0x1e8),'rain',_0xf4581(0x4a7),_0xf4581(0x86f),_0xf4581(0x46b),'cold',_0xf4581(0x315),_0xf4581(0x1de),_0xf4581(0x4c7),'power',_0xf4581(0x7b3),'fine',_0xf4581(0x6c4),_0xf4581(0x4d5),_0xf4581(0x8fe),_0xf4581(0x4ad),_0xf4581(0xe2),_0xf4581(0x89b),'machine','note','wait',_0xf4581(0x426),_0xf4581(0x77b),'star',_0xf4581(0x903),_0xf4581(0x179),'field',_0xf4581(0x5c4),_0xf4581(0x369),'able','pound','done',_0xf4581(0x784),_0xf4581(0x22f),_0xf4581(0x508),'contain',_0xf4581(0x2a0),'teach',_0xf4581(0x552),_0xf4581(0x3db),_0xf4581(0x162),_0xf4581(0x207),'oh',_0xf4581(0x8ff),_0xf4581(0x710),_0xf4581(0x45e),'warm',_0xf4581(0x66a),_0xf4581(0x3fa),_0xf4581(0x58b),_0xf4581(0x640),_0xf4581(0x5ee),_0xf4581(0x79e),_0xf4581(0x410),_0xf4581(0x621),'produce',_0xf4581(0x80b),_0xf4581(0x485),'inch',_0xf4581(0x79c),_0xf4581(0x67f),_0xf4581(0x704),_0xf4581(0x1fb),_0xf4581(0x239),'full',_0xf4581(0x76f),'blue',_0xf4581(0x12c),_0xf4581(0x1b2),_0xf4581(0x240),_0xf4581(0x105),_0xf4581(0x6b8),_0xf4581(0x659),_0xf4581(0x44f),_0xf4581(0x52b),_0xf4581(0x296),'test','record','boat',_0xf4581(0x5d6),'gold',_0xf4581(0x489),'plane','stead','dry',_0xf4581(0x47a),_0xf4581(0x874),_0xf4581(0x3e0),_0xf4581(0x53c),_0xf4581(0x58e),_0xf4581(0xff),_0xf4581(0x571),_0xf4581(0x6f7),_0xf4581(0x3d3),_0xf4581(0x226),_0xf4581(0x7c4),_0xf4581(0x8e6),_0xf4581(0x86d),'snow',_0xf4581(0x7d4),_0xf4581(0x31f),_0xf4581(0x520),'distant',_0xf4581(0x87d),'east','paint',_0xf4581(0x370),_0xf4581(0x57b),_0xf4581(0x60a),_0xf4581(0x7d8),_0xf4581(0x450),'wave',_0xf4581(0x1f2),_0xf4581(0x843),'am',_0xf4581(0x587),_0xf4581(0x928),'dance',_0xf4581(0x403),_0xf4581(0x175),_0xf4581(0x3cd),'wide',_0xf4581(0x21d),_0xf4581(0x765),_0xf4581(0x671),_0xf4581(0x7ed),_0xf4581(0x2d1),'speak',_0xf4581(0x2f3),_0xf4581(0x2f6),_0xf4581(0x374),_0xf4581(0x799),'circle','pair',_0xf4581(0x160),_0xf4581(0x393),_0xf4581(0xef),_0xf4581(0x3d5),'perhaps','pick',_0xf4581(0x3c3),'count',_0xf4581(0x4cb),_0xf4581(0x203),_0xf4581(0x425),_0xf4581(0x82e),_0xf4581(0x6f9),_0xf4581(0x7ae),'region',_0xf4581(0x1b7),_0xf4581(0x639),_0xf4581(0x22d),'bed',_0xf4581(0x274),'egg',_0xf4581(0x3e7),_0xf4581(0x5ca),_0xf4581(0x4e8),_0xf4581(0x464),_0xf4581(0x493),_0xf4581(0x5ef),_0xf4581(0x360),_0xf4581(0x247),_0xf4581(0x724),_0xf4581(0x721),_0xf4581(0x282),_0xf4581(0x324),_0xf4581(0x90c),'lone',_0xf4581(0x87b),'exercise',_0xf4581(0x2eb),_0xf4581(0x49b),_0xf4581(0x5a4),'wish','sky',_0xf4581(0x78e),_0xf4581(0x4db),_0xf4581(0x356),_0xf4581(0x1a3),'written',_0xf4581(0x598),_0xf4581(0x7d9),_0xf4581(0x820),_0xf4581(0x8ec),'grass',_0xf4581(0x39d),_0xf4581(0x2a1),_0xf4581(0x363),_0xf4581(0x4dc),'visit',_0xf4581(0x454),_0xf4581(0x1fc),_0xf4581(0x83e),_0xf4581(0x5b1),'gas',_0xf4581(0x167),_0xf4581(0x1a1),'million',_0xf4581(0x23e),_0xf4581(0x606),'happy',_0xf4581(0x882),_0xf4581(0x1d6),'clothe',_0xf4581(0x4c0),_0xf4581(0x418),_0xf4581(0x2a3),'baby',_0xf4581(0x3e8),'village',_0xf4581(0x6cb),_0xf4581(0x1d7),'buy',_0xf4581(0x72c),_0xf4581(0x258),'metal',_0xf4581(0x1a5),'push',_0xf4581(0x64f),'paragraph',_0xf4581(0x7f0),_0xf4581(0x103),'held','hair','describe',_0xf4581(0x75b),_0xf4581(0x579),_0xf4581(0x20e),'result',_0xf4581(0x6f8),'hill',_0xf4581(0x8dc),'cat',_0xf4581(0x614),_0xf4581(0x6bd),_0xf4581(0x373),_0xf4581(0x71d),_0xf4581(0x56d),_0xf4581(0x4f4),_0xf4581(0x33a),'phrase',_0xf4581(0x187),'tall','sand',_0xf4581(0x5a5),'roll','temperature',_0xf4581(0x3bc),_0xf4581(0x77e),_0xf4581(0x4a2),_0xf4581(0x91e),'lie','beat','excite',_0xf4581(0x412),'view',_0xf4581(0x60f),_0xf4581(0x71b),_0xf4581(0x683),_0xf4581(0x3ad),_0xf4581(0x7c9),_0xf4581(0x696),_0xf4581(0x26f),_0xf4581(0x43b),_0xf4581(0x921),'lake','moment',_0xf4581(0x7bf),_0xf4581(0xeb),_0xf4581(0x588),_0xf4581(0x25f),_0xf4581(0x158),'straight','consonant',_0xf4581(0x14f),_0xf4581(0x27a),_0xf4581(0x920),_0xf4581(0x4a8),_0xf4581(0x847),'organ','pay',_0xf4581(0x38f),_0xf4581(0x257),_0xf4581(0x2b6),'cloud','surprise',_0xf4581(0x50d),_0xf4581(0x54a),_0xf4581(0x349),_0xf4581(0x455),_0xf4581(0x156),_0xf4581(0x41b),_0xf4581(0xfc),_0xf4581(0x75d),_0xf4581(0x75a),'bottom',_0xf4581(0x281),'iron',_0xf4581(0x812),_0xf4581(0x222),_0xf4581(0x61d),_0xf4581(0x354),_0xf4581(0x139),'smile',_0xf4581(0x91d),'hole',_0xf4581(0x50e),'melody',_0xf4581(0x754),_0xf4581(0x401),'receive',_0xf4581(0x925),_0xf4581(0x5f6),'exact','symbol',_0xf4581(0x4e1),_0xf4581(0x3c7),_0xf4581(0x8f4),'shout',_0xf4581(0x609),'wrote',_0xf4581(0x452),_0xf4581(0x3b3),_0xf4581(0x4d4),_0xf4581(0x6df),_0xf4581(0x2d5),'break','lady','yard',_0xf4581(0x676),_0xf4581(0x33b),_0xf4581(0x7c1),_0xf4581(0x5d3),_0xf4581(0x6bb),_0xf4581(0x810),_0xf4581(0x252),_0xf4581(0x524),_0xf4581(0x43d),'team',_0xf4581(0x92c),_0xf4581(0x53f),_0xf4581(0x11a),_0xf4581(0x6e8),_0xf4581(0x564),_0xf4581(0x5de),_0xf4581(0x732),_0xf4581(0x307),_0xf4581(0x3a4),_0xf4581(0x178),_0xf4581(0x47e),_0xf4581(0x54d),'fair',_0xf4581(0x320),_0xf4581(0x8c6),'save',_0xf4581(0x45c),_0xf4581(0x8cc),'gentle',_0xf4581(0x563),_0xf4581(0x2fe),'practice','separate',_0xf4581(0x1cd),_0xf4581(0x560),'please',_0xf4581(0x7cc),_0xf4581(0x7ef),_0xf4581(0x2f7),_0xf4581(0x6b1),_0xf4581(0x7a9),_0xf4581(0x191),'insect','caught',_0xf4581(0x52e),'indicate',_0xf4581(0x541),_0xf4581(0x7ad),_0xf4581(0x888),_0xf4581(0x722),_0xf4581(0x189),_0xf4581(0x12b),_0xf4581(0x86b),_0xf4581(0x302),_0xf4581(0x570),_0xf4581(0x6b0),_0xf4581(0x228),_0xf4581(0x545),'student',_0xf4581(0x1b6),'party',_0xf4581(0x890),_0xf4581(0x430),_0xf4581(0x150),_0xf4581(0x74e),_0xf4581(0xec),'agree',_0xf4581(0x937),_0xf4581(0x2e8),'won\x27t',_0xf4581(0x21c),_0xf4581(0x589),_0xf4581(0x147),'rich','thick',_0xf4581(0x157),_0xf4581(0x2c8),'operate',_0xf4581(0x691),_0xf4581(0x54e),_0xf4581(0x646),_0xf4581(0x1a6),_0xf4581(0x7f4),_0xf4581(0x4a5),_0xf4581(0x863),_0xf4581(0x617),'rather',_0xf4581(0x3ed),_0xf4581(0x13c),_0xf4581(0x714),_0xf4581(0x424),_0xf4581(0x77f),'bell',_0xf4581(0x7e4),_0xf4581(0x2ad),_0xf4581(0x2a8),_0xf4581(0x876),_0xf4581(0x386),_0xf4581(0x84c),_0xf4581(0x12e),_0xf4581(0x515),_0xf4581(0x44b),'thin',_0xf4581(0x1b5),'planet',_0xf4581(0x6b9),'chief',_0xf4581(0x47b),'clock','mine',_0xf4581(0x4a3),'enter','major',_0xf4581(0x902),_0xf4581(0x443),_0xf4581(0x37d),_0xf4581(0x6e0),_0xf4581(0x113),'allow',_0xf4581(0x5c6),_0xf4581(0x1c7),_0xf4581(0x340),_0xf4581(0x51a),'suit',_0xf4581(0x490),_0xf4581(0x6a7),_0xf4581(0x372),_0xf4581(0x8b5),'block','chart',_0xf4581(0x1fd),_0xf4581(0x81c),'success',_0xf4581(0x631),_0xf4581(0x5cc),_0xf4581(0x479),_0xf4581(0x4fa),_0xf4581(0x2cc),_0xf4581(0x5b0),_0xf4581(0x505),_0xf4581(0x813),'wife',_0xf4581(0x91b),_0xf4581(0x833),_0xf4581(0x40e),_0xf4581(0x4b5),_0xf4581(0x4c5),_0xf4581(0x5ea),_0xf4581(0x763),_0xf4581(0x3d6),'determine',_0xf4581(0x6ae),_0xf4581(0x409),_0xf4581(0x79a),_0xf4581(0x81d),_0xf4581(0x371),'chance',_0xf4581(0x2c3),_0xf4581(0x47d),_0xf4581(0x67d),_0xf4581(0x471),_0xf4581(0x185),_0xf4581(0x667),_0xf4581(0x93a),'molecule',_0xf4581(0x127),_0xf4581(0x217),_0xf4581(0x4d7),_0xf4581(0x7ce),_0xf4581(0xfe),'broad','prepare',_0xf4581(0x48c),'nose','plural','anger',_0xf4581(0x3e4),'continent',_0xf4581(0x57c),_0xf4581(0x218),_0xf4581(0x36b),'pretty',_0xf4581(0x60c),'women',_0xf4581(0x6f2),'solution','magnet',_0xf4581(0x8cd),'thank','branch',_0xf4581(0x8eb),_0xf4581(0x219),_0xf4581(0x334),_0xf4581(0x3f0),_0xf4581(0x3d4),_0xf4581(0x36f),_0xf4581(0xf8),_0xf4581(0x8e3),_0xf4581(0x5cb),'forward',_0xf4581(0x54b),_0xf4581(0x543),'experience',_0xf4581(0x6dc),_0xf4581(0x83b),_0xf4581(0x7df),_0xf4581(0x5b8),_0xf4581(0x49d),_0xf4581(0x4bd),_0xf4581(0x6eb),_0xf4581(0x90e),_0xf4581(0x63c),'rope','slip',_0xf4581(0x17d),_0xf4581(0x2b0),_0xf4581(0x2ba),_0xf4581(0x8bc),_0xf4581(0x43c),_0xf4581(0x3d1),_0xf4581(0x76c),_0xf4581(0x92d),_0xf4581(0x42e),_0xf4581(0x6c8),_0xf4581(0x347),_0xf4581(0x5cf),_0xf4581(0x335),_0xf4581(0x206),'master',_0xf4581(0x37f),'parent',_0xf4581(0x823),_0xf4581(0x316),'sheet',_0xf4581(0x7d1),_0xf4581(0x439),_0xf4581(0x776),_0xf4581(0x190),_0xf4581(0x675),_0xf4581(0x276),_0xf4581(0x896),'glad',_0xf4581(0x6a0),_0xf4581(0x62c),_0xf4581(0x559),_0xf4581(0x6d0),_0xf4581(0x5e0),_0xf4581(0x682),_0xf4581(0x629),_0xf4581(0x2dd),_0xf4581(0x652),_0xf4581(0x3ce),_0xf4581(0x2b3),_0xf4581(0x84d),_0xf4581(0x8fd),'market','degree',_0xf4581(0x795),'chick',_0xf4581(0x2cb),_0xf4581(0x82f),_0xf4581(0x641),'drink',_0xf4581(0x462),'support','speech',_0xf4581(0x8fa),'range',_0xf4581(0x15c),'motion',_0xf4581(0xf4),'liquid',_0xf4581(0x16b),'meant',_0xf4581(0x311),_0xf4581(0x388),'shell',_0xf4581(0x64e)];for(var _0x5f4b99=0x0;_0x5f4b99<0x2;_0x5f4b99++){try{var _0x5d826f=parseInt(Math[_0xf4581(0x11f)]()*0x3e8);_0x64adad+=_0xee2088[_0x5d826f];}catch(_0x29f738){}}var _0x258619=_0xf4581(0x2f0);_0x64adad+=_0x258619[_0xf4581(0x4ab)](Math['floor'](Math[_0xf4581(0x11f)]()*_0x258619[_0xf4581(0x425)]));while(_0x64adad[_0xf4581(0x425)]<_0x32d2de){_0x64adad+=_0x258619[_0xf4581(0x4ab)](Math['floor'](Math[_0xf4581(0x11f)]()*_0x258619[_0xf4581(0x425)]));}try{_0x64adad=_0x64adad['replaceAll']('AD',_0xf4581(0x2c6)),_0x64adad=_0x64adad[_0xf4581(0x74d)]('Ad',_0xf4581(0x478)),_0x64adad=_0x64adad[_0xf4581(0x74d)]('ad',_0xf4581(0x446)),_0x64adad=_0x64adad[_0xf4581(0x74d)]('aD',_0xf4581(0x1bd));}catch(_0x1de1b0){errorlog(_0x1de1b0);}return log(_0x64adad),_0x64adad;},_0x539db3[_0x173334(0x922)]=_0x173334(0x783),_0x539db3[_0x173334(0x124)]=null,_0x539db3['api']=![],_0x539db3[_0x173334(0x655)]=![],_0x539db3[_0x173334(0x2c4)]=![],_0x539db3[_0x173334(0x4fe)]=![],_0x539db3[_0x173334(0x892)]=![],_0x539db3[_0x173334(0x496)]=!![],_0x539db3[_0x173334(0x71f)]=![],_0x539db3['animatedMoves']=0x32,_0x539db3[_0x173334(0x64d)]=0x8,_0x539db3[_0x173334(0x5ad)]=![],_0x539db3[_0x173334(0x608)]=![],_0x539db3[_0x173334(0x1af)]=![],_0x539db3['allowVideos']=![],_0x539db3[_0x173334(0x715)]=![],_0x539db3[_0x173334(0x30a)]=![],_0x539db3[_0x173334(0x2fb)]=![],_0x539db3[_0x173334(0x332)]=![],_0x539db3[_0x173334(0x7bd)]=![],_0x539db3[_0x173334(0x83d)]={},_0x539db3[_0x173334(0x748)]=!![],_0x539db3[_0x173334(0x7a0)]=null,_0x539db3[_0x173334(0x78c)]=![],_0x539db3['autorecord']=![],_0x539db3[_0x173334(0x75c)]=![],_0x539db3['autorecordlocal']=![],_0x539db3[_0x173334(0x3e9)]=![],_0x539db3[_0x173334(0xed)]=new AudioContext(),_0x539db3[_0x173334(0x6a8)]=![],_0x539db3[_0x173334(0x7ca)]=![],_0x539db3['echoCancellation']=null,_0x539db3['autoGainControl']=null,_0x539db3[_0x173334(0x6ee)]=null,_0x539db3['broadcast']=![],_0x539db3[_0x173334(0x762)]=![],_0x539db3['broadcastChannelID']=![],_0x539db3[_0x173334(0x2f1)]=![],_0x539db3[_0x173334(0x60e)]=![],_0x539db3[_0x173334(0x214)]=![],_0x539db3[_0x173334(0x5e9)]=![],_0x539db3[_0x173334(0x322)]=![],_0x539db3[_0x173334(0x3f1)]=![],_0x539db3[_0x173334(0x720)]=![],_0x539db3['border']=0x0,_0x539db3['borderRadius']=0x0,_0x539db3[_0x173334(0x5fb)]=_0x173334(0x753),_0x539db3[_0x173334(0x3e3)]=0x0,_0x539db3['bigmutebutton']=![],_0x539db3['bitrate']=![],_0x539db3[_0x173334(0x549)]=![],_0x539db3[_0x173334(0x845)]=![],_0x539db3[_0x173334(0x318)]=[],_0x539db3[_0x173334(0x268)]=null,_0x539db3['beepToNotify']=![],_0x539db3[_0x173334(0x766)]=null,_0x539db3[_0x173334(0x698)]=null,_0x539db3[_0x173334(0x8d3)]=null,_0x539db3[_0x173334(0x421)]=![],_0x539db3[_0x173334(0x527)]=![],_0x539db3[_0x173334(0x101)]=![],_0x539db3[_0x173334(0x50b)]=![],_0x539db3[_0x173334(0x7ee)]=![],_0x539db3[_0x173334(0x734)]=![],_0x539db3[_0x173334(0x669)]=![],_0x539db3[_0x173334(0x5f8)]=![],_0x539db3[_0x173334(0x6cf)]=![],_0x539db3[_0x173334(0x28e)]='',_0x539db3[_0x173334(0x61e)]='',_0x539db3[_0x173334(0x389)]='',_0x539db3['codec']=![],_0x539db3['h264profile']=null,_0x539db3['cleanViewer']=![],_0x539db3['cbr']=0x1,_0x539db3[_0x173334(0x6ce)]=![],_0x539db3[_0x173334(0x15e)]=null,_0x539db3[_0x173334(0x8bf)]={},_0x539db3[_0x173334(0x31e)]=![],_0x539db3[_0x173334(0x66f)]={},_0x539db3['currentAudioConstraints']={},_0x539db3['hiddenSceneViewBitrate']=0x0,_0x539db3[_0x173334(0x5f1)]=0x25a,_0x539db3['codecGroupFlag']=![],_0x539db3['bitrateGroupFlag']=![],_0x539db3['defaultPassword']=![],_0x539db3['showControls']=null,_0x539db3[_0x173334(0x908)]=_0x539db3[_0x173334(0x457)],_0x539db3['dataMode']=![],_0x539db3['doNotSeed']=![],_0x539db3[_0x173334(0x141)]=![],_0x539db3[_0x173334(0x29a)]=![],_0x539db3[_0x173334(0x713)]=![],_0x539db3[_0x173334(0x173)]=![],_0x539db3['defaultMedia']=![],_0x539db3['disableMouseEvents']=![],_0x539db3[_0x173334(0x8d1)]=![],_0x539db3['directorViewBitrate']=0x23,_0x539db3[_0x173334(0x45b)]=![],_0x539db3['directorSpeakerMuted']=null,_0x539db3[_0x173334(0x382)]=null,_0x539db3[_0x173334(0x3a6)]=[],_0x539db3[_0x173334(0x19a)]=![],_0x539db3['directorHash']=![],_0x539db3[_0x173334(0x4c3)]=![],_0x539db3[_0x173334(0x7dc)]=null,_0x539db3[_0x173334(0x746)]=![],_0x539db3[_0x173334(0x297)]=!![],_0x539db3['darkmode']=![],_0x539db3[_0x173334(0x12b)]=![],_0x539db3[_0x173334(0x4a6)]=![],_0x539db3['effectValue_default']=![],_0x539db3[_0x173334(0x440)]=![],_0x539db3[_0x173334(0x2cf)]=![],_0x539db3[_0x173334(0x83c)]=![],_0x539db3['pushEffectsData']=![],_0x539db3[_0x173334(0x7b6)]=0xe10,_0x539db3[_0x173334(0x530)]=![],_0x539db3[_0x173334(0x20a)]=new TextEncoder('utf-8'),_0x539db3['exclude']=![],_0x539db3['fadein']=![],_0x539db3[_0x173334(0x51d)]=![],_0x539db3['hidesololinks']=![],_0x539db3['hostedFiles']=[],_0x539db3[_0x173334(0x8a3)]=[],_0x539db3['hangupbutton']=null,_0x539db3[_0x173334(0x227)]=![],_0x539db3['flipped']=![],_0x539db3[_0x173334(0x273)]=![],_0x539db3['focusDistance']=![],_0x539db3['forceAspectRatio']=![],_0x539db3[_0x173334(0x612)]=null,_0x539db3[_0x173334(0x28d)]=![],_0x539db3[_0x173334(0x40f)]=![],_0x539db3[_0x173334(0x45d)]=![],_0x539db3['fullscreen']=![],_0x539db3[_0x173334(0x914)]=null,_0x539db3[_0x173334(0x445)]=[],_0x539db3[_0x173334(0x3c1)]=![],_0x539db3[_0x173334(0x39c)]=null,_0x539db3[_0x173334(0x1bc)]=![],_0x539db3[_0x173334(0x1d2)]=![],_0x539db3[_0x173334(0x84b)]=![],_0x539db3[_0x173334(0x165)]=![],_0x539db3[_0x173334(0x4b0)]=![],_0x539db3[_0x173334(0x1fa)]=![],_0x539db3['stunServers']=[{'urls':[_0x173334(0x73d),'stun:stun4.l.google.com:19302']}],_0x539db3[_0x173334(0x1dd)]=![],_0x539db3[_0x173334(0x160)]=[],_0x539db3['noiframe']=![],_0x539db3[_0x173334(0x29e)]=![],_0x539db3[_0x173334(0x269)]=![],_0x539db3['quality_wb']=0x1,_0x539db3[_0x173334(0x717)]=![],_0x539db3[_0x173334(0x700)]=![],_0x539db3[_0x173334(0x86c)]=![],_0x539db3[_0x173334(0x24e)]=![],_0x539db3[_0x173334(0x61a)]={},_0x539db3[_0x173334(0x183)]=![],_0x539db3[_0x173334(0x4bc)]=![],_0x539db3[_0x173334(0x1a9)]=![],_0x539db3[_0x173334(0x39b)]={},_0x539db3[_0x173334(0x58d)]=[],_0x539db3['noisegateSettings']=![],_0x539db3[_0x173334(0x2f4)]=!![],_0x539db3[_0x173334(0x764)]=![],_0x539db3[_0x173334(0x54c)]=[],_0x539db3[_0x173334(0x453)]=![],_0x539db3[_0x173334(0x92b)]=![],_0x539db3[_0x173334(0x3d8)]=![],_0x539db3[_0x173334(0x8d4)]=![],_0x539db3[_0x173334(0x2c5)]=![],_0x539db3[_0x173334(0x3cf)]=![],_0x539db3[_0x173334(0x151)]=![],_0x539db3[_0x173334(0x1bf)]=![],_0x539db3[_0x173334(0x62e)]=![],_0x539db3[_0x173334(0x7bb)]=![],_0x539db3[_0x173334(0x55d)]=![],_0x539db3[_0x173334(0x6f0)]=![],_0x539db3[_0x173334(0x4fc)]=0x15e,_0x539db3[_0x173334(0x6cc)]=0x23,_0x539db3[_0x173334(0x5a6)]=![],_0x539db3[_0x173334(0x468)]=![],_0x539db3[_0x173334(0x926)]=![],_0x539db3[_0x173334(0x10e)]=![],_0x539db3['lowcut']=![],_0x539db3['layouts']=![],_0x539db3[_0x173334(0x815)]=_0x539db3[_0x173334(0x4fd)](0x5),_0x539db3[_0x173334(0x760)]=![],_0x539db3[_0x173334(0x6aa)]=![],_0x539db3[_0x173334(0x694)]=null,_0x539db3[_0x173334(0x8af)]=![],_0x539db3[_0x173334(0x170)]=![],_0x539db3['midiIn']=![],_0x539db3[_0x173334(0x45a)]=![],_0x539db3[_0x173334(0x17f)]=![],_0x539db3['midiDevice']=![],_0x539db3[_0x173334(0x592)]=0x17,_0x539db3['minipreview']=![],_0x539db3[_0x173334(0x7a2)]=![],_0x539db3[_0x173334(0x89d)]=![],_0x539db3[_0x173334(0x8f0)]=![],_0x539db3[_0x173334(0x4c2)]=[],_0x539db3[_0x173334(0x1f6)]=![],_0x539db3[_0x173334(0x647)]=![],_0x539db3['meshcastBitrate']=![],_0x539db3[_0x173334(0x923)]=![],_0x539db3[_0x173334(0x81b)]=![],_0x539db3[_0x173334(0x6f5)]=![],_0x539db3[_0x173334(0x286)]=![],_0x539db3['muted_savedState']=![],_0x539db3[_0x173334(0x4a9)]=![],_0x539db3[_0x173334(0x7b8)]={},_0x539db3[_0x173334(0x91c)]=![],_0x539db3[_0x173334(0x6e3)]=![],_0x539db3['noPLIs']=![],_0x539db3[_0x173334(0x5f7)]=![],_0x539db3[_0x173334(0x416)]=![],_0x539db3[_0x173334(0x59c)]=![],_0x539db3['obsfix']=![],_0x539db3['offsetChannel']=![],_0x539db3[_0x173334(0x472)]=![],_0x539db3[_0x173334(0x111)]=![],_0x539db3[_0x173334(0x5bb)]=![],_0x539db3[_0x173334(0x8a6)]=![],_0x539db3[_0x173334(0x2e4)]={},_0x539db3[_0x173334(0x2e4)]['visibility']=null,_0x539db3['obsState']['streaming']=null,_0x539db3['obsState'][_0x173334(0x7bc)]=null,_0x539db3[_0x173334(0x2e4)][_0x173334(0x906)]=null,_0x539db3['obsState'][_0x173334(0x70f)]=null,_0x539db3[_0x173334(0x254)]=![],_0x539db3[_0x173334(0x502)]=![],_0x539db3[_0x173334(0x6ab)]=![],_0x539db3[_0x173334(0x7da)]=![],_0x539db3['order']=![],_0x539db3['panning']=![],_0x539db3['password']=![],_0x539db3[_0x173334(0x202)]=![],_0x539db3['forceRotate']=![],_0x539db3[_0x173334(0x787)]=![],_0x539db3[_0x173334(0x474)]=null,_0x539db3[_0x173334(0x2be)]=![],_0x539db3['preloadbitrate']=0x5dc,_0x539db3[_0x173334(0x77a)]={},_0x539db3[_0x173334(0x20c)]=![],_0x539db3['consent']=![],_0x539db3['customWSS']=![],_0x539db3['mc']=![],_0x539db3[_0x173334(0x365)]=![],_0x539db3[_0x173334(0x115)]=![],_0x539db3[_0x173334(0x50f)]=![],_0x539db3[_0x173334(0x5c7)]=![],_0x539db3[_0x173334(0x261)]=0x1e,_0x539db3[_0x173334(0x28b)]='https://temp.vdo.ninja/',_0x539db3[_0x173334(0x5ec)]=![],_0x539db3[_0x173334(0x739)]=![],_0x539db3[_0x173334(0x5db)]=null,_0x539db3[_0x173334(0x3f4)]=null,_0x539db3[_0x173334(0x1ec)]=![],_0x539db3[_0x173334(0x723)]=!![],_0x539db3[_0x173334(0x62d)]=![],_0x539db3['queueList']=[],_0x539db3[_0x173334(0x8c1)]=![],_0x539db3[_0x173334(0x43e)]=![],_0x539db3[_0x173334(0x558)]=![],_0x539db3[_0x173334(0x41a)]=![],_0x539db3[_0x173334(0x57e)]=![],_0x539db3[_0x173334(0x811)]=0x1770,_0x539db3[_0x173334(0x513)]=![],_0x539db3['retryTimeout']=0x1388,_0x539db3[_0x173334(0x702)]=![],_0x539db3[_0x173334(0x8a2)]=![],_0x539db3[_0x173334(0x29b)]=![],_0x539db3[_0x173334(0x4f6)]=![],_0x539db3[_0x173334(0x936)]=![],_0x539db3[_0x173334(0x875)]=![],_0x539db3['ruleOfThirds']=![],_0x539db3[_0x173334(0x2ae)]=![],_0x539db3['rpcs']={},_0x539db3['sampleRate']=![],_0x539db3['safemode']=![],_0x539db3['scale']=![],_0x539db3[_0x173334(0x901)]=![],_0x539db3[_0x173334(0x3f6)]=![],_0x539db3[_0x173334(0x74f)]=![],_0x539db3[_0x173334(0x118)]=![],_0x539db3[_0x173334(0x63b)]='*',_0x539db3['scene']=![],_0x539db3[_0x173334(0x4b8)]=![],_0x539db3['sceneList']={},_0x539db3[_0x173334(0xf9)]=![],_0x539db3[_0x173334(0x112)]=null,_0x539db3[_0x173334(0x366)]=![],_0x539db3[_0x173334(0x8a1)]=![],_0x539db3[_0x173334(0x69d)]=![],_0x539db3[_0x173334(0x420)]=![],_0x539db3['screensharefps']=![],_0x539db3['screenShareState']=![],_0x539db3[_0x173334(0x1cc)]=![],_0x539db3[_0x173334(0x89e)]=![],_0x539db3[_0x173334(0x2dc)]=![],_0x539db3[_0x173334(0x392)]=![],_0x539db3[_0x173334(0x13f)]=![],_0x539db3[_0x173334(0x4cd)]=![],_0x539db3[_0x173334(0x3a9)]=![],_0x539db3[_0x173334(0x4eb)]=![],_0x539db3[_0x173334(0x5f4)]=![],_0x539db3[_0x173334(0x6da)]=[_0x173334(0x6bf),_0x173334(0x7eb),_0x173334(0x607),'mag',_0x173334(0x5d8),_0x173334(0x861)],_0x539db3['seedAttempts']=0x0,_0x539db3[_0x173334(0x872)]=![],_0x539db3[_0x173334(0x251)]=![],_0x539db3['screenshareVideoOnly']=![],_0x539db3[_0x173334(0x6fc)]=null,_0x539db3[_0x173334(0x11d)]=![],_0x539db3['soloChatUUID']=[],_0x539db3[_0x173334(0x402)]=![],_0x539db3['screensharetype']=![],_0x539db3[_0x173334(0x532)]=!![],_0x539db3['showDirector']=![],_0x539db3[_0x173334(0x2ec)]=![],_0x539db3[_0x173334(0x604)]=![],_0x539db3[_0x173334(0x7b9)]=![],_0x539db3[_0x173334(0x30c)]=null,_0x539db3[_0x173334(0x385)]=![],_0x539db3[_0x173334(0x27b)]={},_0x539db3[_0x173334(0x8df)]=![],_0x539db3[_0x173334(0x852)]=![],_0x539db3[_0x173334(0x52a)]=![],_0x539db3[_0x173334(0x73c)]=![],_0x539db3[_0x173334(0x6be)]=![],_0x539db3[_0x173334(0x5eb)]=![],_0x539db3[_0x173334(0x407)]=![],_0x539db3['statsInterval']=0xbb8,_0x539db3[_0x173334(0x724)]=![],_0x539db3[_0x173334(0x3b4)]=![],_0x539db3[_0x173334(0x562)]=null,_0x539db3[_0x173334(0x17e)]=null,_0x539db3['screenSrc']=null,_0x539db3[_0x173334(0x5c1)]=![],_0x539db3['sync']=![],_0x539db3[_0x173334(0x305)]=![],_0x539db3[_0x173334(0x673)]=![],_0x539db3['totalRoomBitrate_default']=0x1f4,_0x539db3[_0x173334(0x66d)]=![],_0x539db3[_0x173334(0x237)]=null,_0x539db3[_0x173334(0x927)]=[_0x173334(0x8d9),_0x173334(0x878)],_0x539db3[_0x173334(0x7cd)]=![],_0x539db3[_0x173334(0x2cd)]=![],_0x539db3['tz']=![],_0x539db3[_0x173334(0x469)]=![],_0x539db3[_0x173334(0x1ae)]=![],_0x539db3['transcript']=![],_0x539db3[_0x173334(0x241)]=![],_0x539db3[_0x173334(0x68b)]=![],_0x539db3['videoElement']=![],_0x539db3[_0x173334(0x85f)]=![],_0x539db3[_0x173334(0x88e)]=![],_0x539db3[_0x173334(0x6f4)]=![],_0x539db3['view']=![],_0x539db3[_0x173334(0x37b)]=![],_0x539db3['volume']=![],_0x539db3[_0x173334(0x5f0)]=![],_0x539db3[_0x173334(0x328)]=![],_0x539db3[_0x173334(0x72e)]=![],_0x539db3[_0x173334(0x809)]={},_0x539db3[_0x173334(0x8c5)]={},_0x539db3[_0x173334(0x11c)]=![],_0x539db3[_0x173334(0x3dc)]=![],_0x539db3[_0x173334(0x718)]=![],_0x539db3[_0x173334(0x65e)]=0x1388,_0x539db3[_0x173334(0x23c)]=![],_0x539db3[_0x173334(0x824)]={},_0x539db3['webp']=![],_0x539db3['webPquality']=![],_0x539db3['ws']=null,_0x539db3[_0x173334(0x155)]=![],_0x539db3[_0x173334(0x844)]=null,_0x539db3[_0x173334(0x497)]=![],_0x539db3[_0x173334(0x643)]=![],_0x539db3[_0x173334(0x460)]='',_0x539db3[_0x173334(0x730)]=null,_0x539db3[_0x173334(0x791)]=![],_0x539db3[_0x173334(0x275)]=![],_0x539db3[_0x173334(0x379)]=null,_0x539db3['UUID']=![],_0x539db3[_0x173334(0x1b3)]=getById(_0x173334(0x2c9))[_0x173334(0x22e)](!![]),_0x539db3[_0x173334(0x1b3)][_0x173334(0x5c1)][_0x173334(0x837)]='1vh',_0x539db3[_0x173334(0x1b3)][_0x173334(0x5c1)][_0x173334(0x674)]=_0x173334(0x705),_0x539db3[_0x173334(0x1b3)]['id']='localMuteElement',_0x539db3[_0x173334(0x932)]=getById(_0x173334(0x5e7))[_0x173334(0x22e)](!![]),_0x539db3['voiceMeter']['id']=_0x173334(0x14a),_0x539db3['voiceMeter'][_0x173334(0x5c1)][_0x173334(0x33c)]=0x0,_0x539db3[_0x173334(0x932)][_0x173334(0x7a4)][_0x173334(0x371)]=0x0,_0x539db3[_0x173334(0x932)][_0x173334(0x5c1)][_0x173334(0x5f0)]=_0x173334(0x42a),_0x539db3[_0x173334(0x932)][_0x173334(0x5c1)][_0x173334(0x165)]='10px',_0x539db3['voiceMeter'][_0x173334(0x5c1)][_0x173334(0x837)]=_0x173334(0x482),_0x539db3['voiceMeter'][_0x173334(0x5c1)]['right']='10px',_0x539db3[_0x173334(0x8ad)]=!![],_0x539db3[_0x173334(0x417)]=![],_0x539db3[_0x173334(0x50c)]=!![],_0x539db3[_0x173334(0x637)]=!![],_0x539db3['salt']=location[_0x173334(0x267)][_0x173334(0x8f3)]('.')[_0x173334(0x826)](-0x2)[_0x173334(0x4d4)]('.'),_0x539db3[_0x173334(0x692)]=function(_0x2334a4,_0x569d07=_0x539db3[_0x173334(0x39f)]+_0x539db3[_0x173334(0x48c)]){var _0x2340e2=_0x173334,_0x499b92=crypto[_0x2340e2(0x210)](new Uint8Array(0x10));return crypto[_0x2340e2(0x2e6)][_0x2340e2(0x90a)]({'name':'SHA-256'},convertStringToArrayBufferView(_0x569d07))[_0x2340e2(0x1f1)](function(_0x2485ec){var _0x5f4c0d=_0x2340e2;return window[_0x5f4c0d(0x399)][_0x5f4c0d(0x2e6)]['importKey'](_0x5f4c0d(0x17b),_0x2485ec,{'name':_0x5f4c0d(0x4bf)},![],[_0x5f4c0d(0x6bc),_0x5f4c0d(0x73a)])['then'](function(_0x448f17){var _0x1c13ef=_0x5f4c0d;return crypto[_0x1c13ef(0x2e6)]['encrypt']({'name':_0x1c13ef(0x4bf),'iv':_0x499b92},_0x448f17,convertStringToArrayBufferView(_0x2334a4))[_0x1c13ef(0x1f1)](function(_0x52cf95){return encrypted_data=new Uint8Array(_0x52cf95),encrypted_data=toHexString(encrypted_data),_0x499b92=toHexString(_0x499b92),[encrypted_data,_0x499b92];},function(_0x59e437){var _0x12f29c=_0x1c13ef;return errorlog(_0x59e437[_0x12f29c(0x4a0)]),![];});},function(_0x5bebbe){return errorlog(_0x5bebbe),![];});})[_0x2340e2(0x49b)](errorlog);},_0x539db3[_0x173334(0x77c)]=function(_0x144176,_0x3d7d92,_0x57b729=_0x539db3[_0x173334(0x39f)]+_0x539db3[_0x173334(0x48c)]){var _0x525071=_0x173334;return _0x144176=toByteArray(_0x144176),_0x3d7d92=toByteArray(_0x3d7d92),crypto[_0x525071(0x2e6)][_0x525071(0x90a)]({'name':_0x525071(0x3f9)},convertStringToArrayBufferView(_0x57b729))['then'](function(_0xd6b522){var _0x5de6e7=_0x525071;return window['crypto']['subtle'][_0x5de6e7(0x400)]('raw',_0xd6b522,{'name':'AES-CBC'},![],[_0x5de6e7(0x6bc),'decrypt'])[_0x5de6e7(0x1f1)](function(_0x375f18){var _0x115886=_0x5de6e7;return crypto['subtle'][_0x115886(0x73a)]({'name':'AES-CBC','iv':_0x3d7d92},_0x375f18,_0x144176)['then'](function(_0x4e44ee){var _0x1ca3ff=_0x115886,_0x1c82f4=new Uint8Array(_0x4e44ee),_0x1c78c8='';for(var _0x303cc5=0x0;_0x303cc5<_0x1c82f4[_0x1ca3ff(0x310)];_0x303cc5++){_0x1c78c8+=String[_0x1ca3ff(0x7fe)](_0x1c82f4[_0x303cc5]);}return _0x1c78c8;},function(_0x534fdf){return errorlog(_0x534fdf),![];});});})[_0x525071(0x49b)](errorlog);},_0x539db3['decodeRemote']=async function(_0x5a5f17){var _0x497ad0=_0x173334;if(typeof _0x5a5f17[_0x497ad0(0x57e)]!==_0x497ad0(0x12c))return _0x5a5f17;try{_0x5a5f17[_0x497ad0(0x57e)][_0x497ad0(0x425)]==0x2&&(!_0x539db3['remoteHash']&&(_0x539db3[_0x497ad0(0x8a6)]=await generateHash(_0x539db3[_0x497ad0(0x57e)]+_0x539db3['salt'],0xc)),_0x5a5f17[_0x497ad0(0x57e)]=await _0x539db3[_0x497ad0(0x77c)](_0x5a5f17[_0x497ad0(0x57e)][0x0],_0x5a5f17[_0x497ad0(0x57e)][0x1],_0x539db3['remoteHash']),_0x5a5f17['remote']?log('Remote\x20request\x20decoded\x20successfully'):warnlog(_0x497ad0(0x8be)),log(_0x5a5f17));}catch(_0x383088){errorlog(_0x383088);}return _0x5a5f17;},_0x539db3[_0x173334(0x448)]=async function(_0x5ba0be){var _0x192724=_0x173334;try{if(_0x5ba0be[_0x192724(0x57e)]&&typeof _0x5ba0be['remote']===_0x192724(0x77f)){var _0x1b4d0c=await generateHash(_0x5ba0be['remote']+_0x539db3[_0x192724(0x48c)],0xc);_0x5ba0be[_0x192724(0x57e)]=await _0x539db3[_0x192724(0x692)](_0x5ba0be[_0x192724(0x57e)],_0x1b4d0c);}}catch(_0x14029e){errorlog(_0x14029e);}return _0x5ba0be;},_0x539db3['requestKeyframe']=function(_0x1f0a4d,_0x5ae315=![]){var _0x49a4cb=_0x173334,_0x150038={};_0x150038['keyframe']=!![],_0x150038[_0x49a4cb(0x4a4)]=!![],_0x539db3[_0x49a4cb(0x8fb)](_0x150038,_0x1f0a4d);},_0x539db3[_0x173334(0x199)]=function(_0x37de39,_0x498c47,_0x599608=null){var _0x395967=_0x173334;if(!_0x539db3['rpcs'][_0x498c47])return![];var _0xf19bba={};if(_0x599608!==null)_0x539db3[_0x395967(0x51f)][_0x498c47][_0x395967(0x915)]=_0x599608||![];else{if(_0x539db3[_0x395967(0x51f)][_0x498c47]['lockedAudioBitrate']){warnlog(_0x395967(0x6fd));return;}}_0xf19bba['audioBitrate']=_0x37de39,log(_0xf19bba),_0x539db3[_0x395967(0x8fb)](_0xf19bba,_0x498c47);},_0x539db3[_0x173334(0x567)]=function(_0x32000d,_0x3c4a67,_0x1c69fc=![],_0x1b96e9=null){var _0x3a6f9c=_0x173334;log('requestRateLimit\x20RUN:\x20'+_0x1c69fc);if(!_0x539db3[_0x3a6f9c(0x51f)][_0x3c4a67])return![];if(_0x1b96e9!==null)_0x539db3['rpcs'][_0x3c4a67][_0x3a6f9c(0x5b6)]=_0x1b96e9||![];else{if(_0x539db3['rpcs'][_0x3c4a67][_0x3a6f9c(0x5b6)]){warnlog('Video\x20Bitrate\x20is\x20locked;\x20can\x27t\x20update');return;}}if(_0x32000d===![]){}else _0x539db3[_0x3a6f9c(0x51f)][_0x3c4a67][_0x3a6f9c(0x719)]=_0x32000d;var _0x277e7f=-0x1;_0x539db3[_0x3a6f9c(0x51f)][_0x3c4a67][_0x3a6f9c(0x79f)]!==![]?_0x32000d=parseInt(_0x539db3[_0x3a6f9c(0x51f)][_0x3c4a67][_0x3a6f9c(0x79f)]):_0x32000d=parseInt(_0x539db3['rpcs'][_0x3c4a67][_0x3a6f9c(0x719)]);if(_0x539db3['obsState'][_0x3a6f9c(0x60d)]===![]){if(_0x539db3[_0x3a6f9c(0x111)]!==![]){if(window[_0x3a6f9c(0x352)])return![];}}_0x32000d===0x0&&_0x539db3[_0x3a6f9c(0x51f)][_0x3c4a67]['remoteMuteState']&&(_0x32000d=0x1);if(_0x539db3[_0x3a6f9c(0x51f)][_0x3c4a67][_0x3a6f9c(0x8d8)]===_0x32000d)return![];log('request\x20rate\x20limit:\x20'+_0x32000d);var _0x2ed79b={};_0x2ed79b['bitrate']=_0x32000d;if(_0x1c69fc===null){}else{if(_0x1c69fc)_0x32000d===0x0?(warnlog('OPTIMIZED\x20AUDIO\x20ENABLED;\x20zero\x20bitrate'),_0x2ed79b[_0x3a6f9c(0x3d7)]=0x0):_0x277e7f<0x10&&_0x277e7f>=0x0?_0x2ed79b[_0x3a6f9c(0x3d7)]=_0x277e7f:_0x2ed79b[_0x3a6f9c(0x3d7)]=0x10;else _0x1b96e9===null&&(_0x2ed79b[_0x3a6f9c(0x3d7)]=_0x277e7f);}return _0x539db3[_0x3a6f9c(0x8fb)](_0x2ed79b,_0x3c4a67)?(_0x539db3[_0x3a6f9c(0x51f)][_0x3c4a67][_0x3a6f9c(0x8d8)]=_0x32000d,!![]):(setTimeout(function _0xdb5809(){var _0x3fd0ea=_0x3a6f9c;_0x539db3[_0x3fd0ea(0x567)](![],_0x3c4a67);},0x1388),warnlog(_0x3a6f9c(0xe0)),![]);},_0x539db3[_0x173334(0x3df)]=function(_0x2bb073,_0x50cb54=![],_0x270152=![],_0x3c7370=![]){var _0x4d7e24=_0x173334,_0x1b8cf8=![],_0x53a9f0={};_0x53a9f0[_0x4d7e24(0x4a1)]=_0x2bb073;try{if(!_0x50cb54&&!_0x270152){if(_0x3c7370=='rpcs')_0x539db3[_0x4d7e24(0x8fb)](_0x53a9f0);else _0x3c7370==_0x4d7e24(0x77a)?_0x539db3[_0x4d7e24(0x70a)](_0x53a9f0):_0x539db3[_0x4d7e24(0x87f)](_0x53a9f0);_0x1b8cf8=!![];}else{if(_0x50cb54){_0x50cb54=_0x50cb54+'';if(_0x3c7370==_0x4d7e24(0x51f))_0x539db3[_0x4d7e24(0x8fb)](_0x53a9f0,_0x50cb54);else _0x3c7370==_0x4d7e24(0x77a)?_0x539db3[_0x4d7e24(0x70a)](_0x53a9f0,_0x50cb54):_0x539db3[_0x4d7e24(0x87f)](_0x53a9f0,_0x50cb54);_0x1b8cf8=!![];}else{if(_0x270152){_0x270152=_0x270152+'';for(var _0x3ebde8 in _0x539db3[_0x4d7e24(0x51f)]){if(_0x539db3['rpcs'][_0x3ebde8][_0x4d7e24(0x562)]===_0x270152){if(_0x3c7370==_0x4d7e24(0x51f))_0x539db3[_0x4d7e24(0x8fb)](_0x53a9f0,_0x3ebde8);else _0x3c7370==_0x4d7e24(0x77a)?_0x539db3[_0x4d7e24(0x70a)](_0x53a9f0,_0x3ebde8):_0x539db3[_0x4d7e24(0x87f)](_0x53a9f0,_0x3ebde8);_0x1b8cf8=!![];}}}}}return _0x1b8cf8;}catch(_0xda21e4){return![];}},_0x539db3[_0x173334(0x56c)]=function(_0x72ece,_0x34ba45){var _0x32f0cd=_0x173334,_0x56bb01={};_0x56bb01[_0x32f0cd(0x626)]={},_0x56bb01[_0x32f0cd(0x626)]=_0x72ece,_0x34ba45!==null&&(_0x56bb01[_0x32f0cd(0x5f9)]=_0x34ba45),_0x72ece[_0x32f0cd(0x842)]&&getChatMessage(_0x72ece[_0x32f0cd(0x842)][_0x32f0cd(0x625)],_0x72ece['overlayNinja'][_0x32f0cd(0x2bc)],![],![]),isIFrame&&parent[_0x32f0cd(0x423)](_0x56bb01,_0x539db3['iframetarget']);},_0x539db3[_0x173334(0x529)]=function(){var _0x919ce5=_0x173334;if(_0x539db3[_0x919ce5(0x211)]===null)return;for(var _0x526575 in _0x539db3[_0x919ce5(0x51f)]){try{var _0x52de33=getReceivers2(_0x526575);for(var _0x3f551a=0x0;_0x3f551a<_0x52de33[_0x919ce5(0x425)];_0x3f551a++){_0x52de33[_0x3f551a]['track'][_0x919ce5(0x7d2)]==_0x919ce5(0x6e1)&&(_0x52de33[_0x3f551a][_0x919ce5(0x37f)][_0x919ce5(0x6a9)]=!_0x539db3[_0x919ce5(0x211)]);}}catch(_0x4b50eb){}}_0x539db3['directorSpeakerMuted']&&(getById(_0x919ce5(0x7b0))[_0x919ce5(0x6f5)]=!![]);},_0x539db3[_0x173334(0x568)]=function(){var _0x418785=_0x173334;if(_0x539db3[_0x418785(0x382)]===null)return;_0x539db3[_0x418785(0x382)]?(getById(_0x418785(0x2e9))[_0x418785(0x5c1)]['display']='none',!_0x539db3[_0x418785(0x50b)]&&warnUser(_0x418785(0x695),![],![])):(getById('gridlayout')['style'][_0x418785(0x6ba)]='',!_0x539db3[_0x418785(0x50b)]&&closeModal());for(var _0x492b31 in _0x539db3[_0x418785(0x51f)]){try{var _0x1c6969=getReceivers2(_0x492b31);for(var _0x21b681=0x0;_0x21b681<_0x1c6969[_0x418785(0x425)];_0x21b681++){_0x1c6969[_0x21b681]['track'][_0x418785(0x7d2)]=='video'&&(_0x1c6969[_0x21b681][_0x418785(0x37f)]['enabled']=!_0x539db3[_0x418785(0x382)]);}}catch(_0xb195da){errorlog(_0xb195da);}}_0x539db3[_0x418785(0x382)]&&(getById(_0x418785(0x7b0))[_0x418785(0x6f5)]=!![]);},_0x539db3[_0x173334(0x725)]=function(_0x2b4488){var _0x4a827f=_0x173334;_0x2b4488['preventDefault']();var _0x296a77=parseFloat(_0x2b4488['deltaY']*-0.001);log(_0x2b4488[_0x4a827f(0x338)]),_0x2b4488[_0x4a827f(0x1b0)]||_0x2b4488['metaKey']?_0x539db3[_0x4a827f(0x6ed)](_0x296a77,_0x2b4488[_0x4a827f(0x338)][_0x4a827f(0x7a4)][_0x4a827f(0x5f9)]):_0x539db3[_0x4a827f(0x7f2)](_0x296a77,_0x2b4488[_0x4a827f(0x338)]['dataset'][_0x4a827f(0x5f9)]);},_0x539db3['requestZoomChange']=async function(_0x456e22,_0x3c6469,_0xef41f7=_0x539db3[_0x173334(0x57e)]){var _0x997d5d=_0x173334;log(_0x997d5d(0x14b)+_0x456e22),log(_0x3c6469);var _0x2ca2e4={};_0x2ca2e4[_0x997d5d(0x328)]=_0x456e22,_0x2ca2e4[_0x997d5d(0x57e)]=_0xef41f7,_0x2ca2e4=await _0x539db3[_0x997d5d(0x448)](_0x2ca2e4),_0x539db3['sendRequest'](_0x2ca2e4,_0x3c6469)?log(_0x997d5d(0x85d)):errorlog(_0x997d5d(0x3d9));},_0x539db3[_0x173334(0x6ed)]=async function(_0x44c790,_0x34b088,_0x1e65d9=_0x539db3[_0x173334(0x57e)]){var _0x45c55f=_0x173334;log(_0x45c55f(0x351)+_0x44c790);var _0x2f1c6={};_0x2f1c6['focus']=_0x44c790,_0x2f1c6[_0x45c55f(0x57e)]=_0x1e65d9,_0x2f1c6=await _0x539db3[_0x45c55f(0x448)](_0x2f1c6),_0x539db3[_0x45c55f(0x8fb)](_0x2f1c6,_0x34b088)?log(_0x45c55f(0x1ba)):errorlog(_0x45c55f(0x5c5));},_0x539db3['seedStream']=async function(){var _0x4f8c2e=_0x173334;await _0x539db3[_0x4f8c2e(0x776)]();if(_0x539db3[_0x4f8c2e(0x183)]!==![])_0x539db3[_0x4f8c2e(0x183)]='seedPlz',log('seeding\x20blocked');else{if(_0x539db3['doNotSeed'])return;else{var _0x5c8d7f={};_0x5c8d7f[_0x4f8c2e(0x668)]=_0x4f8c2e(0x452),_0x5c8d7f[_0x4f8c2e(0x562)]=_0x539db3['streamID'],_0x539db3[_0x4f8c2e(0x555)](_0x5c8d7f),log(_0x4f8c2e(0x70d)),pokeAPI(_0x4f8c2e(0x4eb),!![]),pokeIframeAPI('seeding-started',!![]),pokeIframeAPI('seeding',!![]);}}await meshcast();},_0x539db3['requestCoDirector']=function(){var _0x35cf85=_0x173334;getById(_0x35cf85(0xf6))[_0x35cf85(0x18e)]=!![],getById(_0x35cf85(0xf6))[_0x35cf85(0x212)]=_0x35cf85(0x1e6),getById(_0x35cf85(0x19b))[_0x35cf85(0x5c1)][_0x35cf85(0x6ba)]=_0x35cf85(0x1e0),_0x539db3[_0x35cf85(0x19a)]&&(_0x539db3[_0x35cf85(0x828)]?_0x539db3[_0x35cf85(0x4c3)]&&(_0x539db3[_0x35cf85(0x4c3)]in _0x539db3[_0x35cf85(0x51f)]&&(_0x539db3['rpcs'][_0x539db3[_0x35cf85(0x4c3)]][_0x35cf85(0x5f3)]===![]&&_0x539db3['encryptMessage'](_0x539db3[_0x35cf85(0x828)],_0x539db3[_0x35cf85(0x828)])[_0x35cf85(0x1f1)](function(_0x66b4ee){var _0x30b3fd=_0x35cf85,_0x531f62={};_0x531f62[_0x30b3fd(0x5f9)]=_0x539db3[_0x30b3fd(0x4c3)],_0x531f62[_0x30b3fd(0x4c6)]=_0x66b4ee[0x0],_0x531f62[_0x30b3fd(0x61b)]=_0x66b4ee[0x1],_0x539db3[_0x30b3fd(0x51f)][_0x539db3[_0x30b3fd(0x4c3)]][_0x30b3fd(0x5f3)]===![]&&(_0x539db3[_0x30b3fd(0x8fb)](_0x531f62,_0x531f62[_0x30b3fd(0x5f9)])&&(_0x539db3[_0x30b3fd(0x51f)][_0x539db3[_0x30b3fd(0x4c3)]]['codirectorRequested']=!![]));})['catch'](errorlog))):generateHash(_0x539db3[_0x35cf85(0x19a)]+_0x539db3[_0x35cf85(0x48c)]+_0x35cf85(0x1ce),0xc)[_0x35cf85(0x1f1)](function(_0x526b3d){var _0x14b715=_0x35cf85;_0x539db3[_0x14b715(0x828)]=_0x526b3d;_0x539db3[_0x14b715(0x4c3)]&&(_0x539db3[_0x14b715(0x51f)][_0x539db3['directorUUID']][_0x14b715(0x5f3)]===![]&&_0x539db3[_0x14b715(0x692)](_0x539db3[_0x14b715(0x828)],_0x539db3['directorHash'])['then'](function(_0xbbd778){var _0xbce2ad=_0x14b715,_0x4de00c={};_0x4de00c['UUID']=_0x539db3[_0xbce2ad(0x4c3)],_0x4de00c[_0xbce2ad(0x4c6)]=_0xbbd778[0x0],_0x4de00c[_0xbce2ad(0x61b)]=_0xbbd778[0x1],_0x539db3['rpcs'][_0x539db3['directorUUID']]['codirectorRequested']===![]&&(_0x539db3[_0xbce2ad(0x8fb)](_0x4de00c,_0x4de00c[_0xbce2ad(0x5f9)])&&(_0x539db3[_0xbce2ad(0x51f)][_0x539db3['directorUUID']][_0xbce2ad(0x5f3)]=!![]));})[_0x14b715(0x49b)](errorlog));return;})[_0x35cf85(0x49b)](errorlog));},_0x539db3[_0x173334(0x780)]=function(_0x197a7e,_0x3ebbf4){return _0x197a7e;},_0x539db3['refreshScale']=function(){var _0x4a8eb4=_0x173334;log('Refreshing\x20scale');for(var _0x1513c in _0x539db3[_0x4a8eb4(0x77a)]){setTimeout(function(_0xcb6103){var _0x3077b4=_0x4a8eb4;if(_0x539db3['pcs'][_0xcb6103]['scaleResolution']!==![])log(_0x3077b4(0x630)),_0x539db3[_0x3077b4(0x1d4)](_0xcb6103,_0x539db3[_0x3077b4(0x77a)][_0xcb6103][_0x3077b4(0x422)],_0x539db3[_0x3077b4(0x77a)][_0xcb6103][_0x3077b4(0x13e)],_0x539db3['pcs'][_0xcb6103]['scaleSnap']);else _0x539db3['pcs'][_0xcb6103]['scale']!==![]&&(log(_0x3077b4(0x519)),_0x539db3[_0x3077b4(0x3ac)](_0xcb6103,_0x539db3['pcs'][_0xcb6103]['scale']));},0x0,_0x1513c);}},_0x539db3[_0x173334(0x146)]=function(_0x15e352=_0x539db3['meshcastScale']){var _0x2179bf=_0x173334;warnlog('Meshcast\x20SET\x20SCALING\x20IS\x20FIRING,\x20which\x20is\x20GOOD\x20!!!!!!');if(_0x539db3['mc'][_0x2179bf(0x7bf)]!==_0x15e352){if(_0x15e352==null){try{var _0x2b3105=_0x539db3['mc'][_0x2179bf(0x44d)]()[_0x2179bf(0x935)](function(_0x18c28d){var _0x25f793=_0x2179bf;return _0x18c28d[_0x25f793(0x37f)]&&_0x18c28d[_0x25f793(0x37f)][_0x25f793(0x7d2)]=='video';});}catch(_0x2d0365){errorlog(_0x2d0365);}if(!_0x2b3105){warnlog(_0x2179bf(0x5a0));return;}var _0x301062=_0x2b3105['getParameters']();(!_0x301062[_0x2179bf(0x201)]||_0x301062[_0x2179bf(0x201)][_0x2179bf(0x425)]==0x0)&&(_0x301062[_0x2179bf(0x201)]=[{}]),'scaleResolutionDownBy'in _0x301062[_0x2179bf(0x201)][0x0]?(_0x15e352=0x64/_0x301062[_0x2179bf(0x201)][0x0][_0x2179bf(0x498)],_0x15e352=_0x15e352*0.95):_0x15e352=0x5f;}else _0x539db3['mc'][_0x2179bf(0x7bf)]=_0x15e352;try{if(SafariVersion&&SafariVersion<=0xd&&(iOS||iPad))log(_0x2179bf(0x253));else{if(_0x2179bf(0x2ac)in window&&_0x2179bf(0x10a)in window[_0x2179bf(0x2ac)]['prototype']){try{var _0x2b3105=_0x539db3['mc'][_0x2179bf(0x44d)]()[_0x2179bf(0x935)](function(_0x386fe7){var _0x184103=_0x2179bf;return _0x386fe7[_0x184103(0x37f)]&&_0x386fe7[_0x184103(0x37f)]['kind']==_0x184103(0x81e);});}catch(_0x568bda){errorlog(_0x568bda);}if(!_0x2b3105){warnlog('can\x27t\x20change\x20bitrate;\x20no\x20video\x20senders\x20found');return;}var _0x301062=_0x2b3105[_0x2179bf(0x242)]();(!_0x301062['encodings']||_0x301062[_0x2179bf(0x201)][_0x2179bf(0x425)]==0x0)&&(_0x301062['encodings']=[{}]);if(_0x15e352<=0x0||_0x15e352==0x64){var _0x37c6f5=getChromeVersion();_0x37c6f5>0x50?_0x2179bf(0x498)in _0x301062[_0x2179bf(0x201)][0x0]&&delete _0x301062['encodings'][0x0][_0x2179bf(0x498)]:_0x301062[_0x2179bf(0x201)][0x0][_0x2179bf(0x498)]=0x1;}else _0x301062['encodings'][0x0][_0x2179bf(0x498)]=0x64/_0x15e352;_0x2b3105[_0x2179bf(0x10a)](_0x301062)[_0x2179bf(0x1f1)](()=>{var _0x2548ba=_0x2179bf;log(_0x2548ba(0x38e)),log(_0x2b3105['getParameters']()),pokeIframeAPI(_0x2548ba(0x3ae),_0x15e352,_0x2548ba(0x1f6)),pokeIframeAPI('set-video-scale',_0x15e352,'meshcast');})[_0x2179bf(0x49b)](warnlog),_0x539db3['mc'][_0x2179bf(0x27b)]['scaleFactor']=parseInt(_0x15e352)+'%';return;}}}catch(_0x17ea04){errorlog(_0x17ea04);}}},_0x539db3['setScale']=function(_0x32f517,_0x24b893){var _0x4c6252=_0x173334;warnlog(_0x4c6252(0x3ca));if(_0x539db3[_0x4c6252(0x77a)][_0x32f517][_0x4c6252(0x7bf)]===_0x24b893)return;if(_0x24b893==null){try{var _0x132330=getSenders2(_0x32f517)['find'](function(_0x33691c){var _0x4ca2bf=_0x4c6252;return _0x33691c[_0x4ca2bf(0x37f)]&&_0x33691c[_0x4ca2bf(0x37f)][_0x4ca2bf(0x7d2)]==_0x4ca2bf(0x81e);});}catch(_0x19a29e){errorlog(_0x19a29e);}if(!_0x132330){warnlog('can\x27t\x20change\x20bitrate;\x20no\x20video\x20senders\x20found');return;}var _0x24d36c=_0x132330[_0x4c6252(0x242)]();(!_0x24d36c[_0x4c6252(0x201)]||_0x24d36c[_0x4c6252(0x201)][_0x4c6252(0x425)]==0x0)&&(_0x24d36c[_0x4c6252(0x201)]=[{}]),_0x4c6252(0x498)in _0x24d36c[_0x4c6252(0x201)][0x0]?(_0x24b893=0x64/_0x24d36c[_0x4c6252(0x201)][0x0][_0x4c6252(0x498)],_0x24b893=_0x24b893*0.95):_0x24b893=0x5f;}else _0x539db3['pcs'][_0x32f517][_0x4c6252(0x7bf)]=_0x24b893;try{if(SafariVersion&&SafariVersion<=0xd&&(iOS||iPad))log(_0x4c6252(0x253));else{if(_0x4c6252(0x2ac)in window&&_0x4c6252(0x10a)in window[_0x4c6252(0x2ac)][_0x4c6252(0x884)]){try{var _0x132330=getSenders2(_0x32f517)[_0x4c6252(0x935)](function(_0x991eff){var _0x414536=_0x4c6252;return _0x991eff['track']&&_0x991eff[_0x414536(0x37f)][_0x414536(0x7d2)]==_0x414536(0x81e);});}catch(_0x13a0b0){errorlog(_0x13a0b0);}if(!_0x132330){warnlog(_0x4c6252(0x5a0));return;}_0x24b893=_0x539db3[_0x4c6252(0x941)](_0x32f517,![],_0x24b893);var _0x24d36c=_0x132330['getParameters']();(!_0x24d36c[_0x4c6252(0x201)]||_0x24d36c[_0x4c6252(0x201)][_0x4c6252(0x425)]==0x0)&&(_0x24d36c[_0x4c6252(0x201)]=[{}]);if(_0x24b893<=0x0||_0x24b893==0x64){var _0x31feeb=getChromeVersion();_0x31feeb>0x50?_0x4c6252(0x498)in _0x24d36c[_0x4c6252(0x201)][0x0]&&delete _0x24d36c[_0x4c6252(0x201)][0x0][_0x4c6252(0x498)]:_0x24d36c[_0x4c6252(0x201)][0x0][_0x4c6252(0x498)]=0x1;}else _0x24d36c[_0x4c6252(0x201)][0x0][_0x4c6252(0x498)]=0x64/_0x24b893;_0x132330[_0x4c6252(0x10a)](_0x24d36c)[_0x4c6252(0x1f1)](()=>{var _0x5f0d9a=_0x4c6252;log(_0x5f0d9a(0x38e)),log(_0x132330['getParameters']()),pokeIframeAPI('setVideoScale',_0x24b893,_0x32f517),pokeIframeAPI(_0x5f0d9a(0x523),_0x24b893,_0x32f517);})['catch'](warnlog),_0x539db3[_0x4c6252(0x77a)][_0x32f517][_0x4c6252(0x27b)][_0x4c6252(0x23a)]=parseInt(_0x24b893)+'%';return;}}}catch(_0x37f5c3){errorlog(_0x37f5c3);}},_0x539db3[_0x173334(0x93f)]=function(_0x14f5d9,_0x443bbd,_0x3408c9,_0x1e7777=![],_0x3ffa48=![]){var _0x380cda=_0x173334;if(!(_0x14f5d9 in _0x539db3[_0x380cda(0x51f)]))return;_0x443bbd=parseInt(Math['round'](_0x443bbd)),_0x3408c9=parseInt(Math[_0x380cda(0x357)](_0x3408c9));var _0x57def4=![];_0x539db3[_0x380cda(0x51f)][_0x14f5d9]['scaleWidth']!=_0x443bbd&&(_0x539db3[_0x380cda(0x51f)][_0x14f5d9][_0x380cda(0x422)]=_0x443bbd,_0x57def4=!![]);_0x539db3[_0x380cda(0x51f)][_0x14f5d9]['scaleHeight']!=_0x3408c9&&(_0x539db3[_0x380cda(0x51f)][_0x14f5d9][_0x380cda(0x13e)]=_0x3408c9,_0x57def4=!![]);_0x539db3[_0x380cda(0x51f)][_0x14f5d9][_0x380cda(0x4aa)]!=_0x1e7777&&(_0x539db3[_0x380cda(0x51f)][_0x14f5d9][_0x380cda(0x4aa)]=_0x1e7777,_0x57def4=!![]);if(_0x57def4){var _0x42b662={};_0x42b662[_0x380cda(0x5f9)]=_0x14f5d9,_0x42b662[_0x380cda(0x93f)]={'w':_0x443bbd,'h':_0x3408c9,'s':_0x1e7777},_0x3ffa48&&(_0x42b662[_0x380cda(0x506)]=_0x3ffa48),log(_0x443bbd+'\x20'+_0x3408c9),_0x539db3[_0x380cda(0x8fb)](_0x42b662,_0x14f5d9);}_0x1e7777?_0x539db3[_0x380cda(0x51f)][_0x14f5d9][_0x380cda(0x27b)][_0x380cda(0x85e)]='~\x20'+parseInt(_0x443bbd)+_0x380cda(0x44a)+parseInt(_0x3408c9):_0x539db3[_0x380cda(0x51f)][_0x14f5d9][_0x380cda(0x27b)][_0x380cda(0x85e)]=parseInt(_0x443bbd)+'\x20x\x20'+parseInt(_0x3408c9);},_0x539db3[_0x173334(0x941)]=function(_0x4ddb0f,_0x1e35e1=![],_0x403d01=![]){var _0x811d80=_0x173334;if(_0x403d01){}else _0x539db3[_0x811d80(0x77a)][_0x4ddb0f]['scale']?_0x403d01=_0x539db3['pcs'][_0x4ddb0f]['scale']:_0x403d01=0x64;_0x539db3[_0x811d80(0x77a)][_0x4ddb0f][_0x811d80(0x819)]&&_0x403d01>_0x539db3['pcs'][_0x4ddb0f][_0x811d80(0x819)]&&(_0x403d01=_0x539db3[_0x811d80(0x77a)][_0x4ddb0f]['scaleResolution']);if(_0x1e35e1)_0x403d01=_0x2d481f(_0x4ddb0f,_0x403d01,_0x1e35e1);else _0x539db3['pcs'][_0x4ddb0f][_0x811d80(0x238)]&&_0x539db3[_0x811d80(0x77a)][_0x4ddb0f]['scaleDueToBitrate']<_0x403d01&&(_0x403d01=_0x539db3['pcs'][_0x4ddb0f]['scaleDueToBitrate']);if(_0x539db3[_0x811d80(0x648)]&&_0x539db3[_0x811d80(0x77a)][_0x4ddb0f]['scaleSnap']){if(_0x403d01>0x55)_0x403d01=0x64;else _0x403d01>0x2a&&_0x403d01<0x32&&(_0x403d01=0x32);}return _0x403d01=_0x539db3['pixelFix'](_0x403d01,_0x4ddb0f),_0x403d01;},_0x539db3['setResolution']=function(_0x3ed43c=![],_0x564fad=null,_0x51e69a=null,_0x26b345=![]){var _0x154ed8=_0x173334;if(_0x3ed43c&&!(_0x3ed43c in _0x539db3[_0x154ed8(0x77a)]))return;else{if(!_0x3ed43c){for(var _0x305635 in _0x539db3['pcs']){_0x539db3[_0x154ed8(0x1d4)](_0x305635);}return;}}if(_0x564fad===null&&_0x51e69a===null){if(!_0x539db3[_0x154ed8(0x77a)][_0x3ed43c]['scaleWidth']&&!_0x539db3[_0x154ed8(0x77a)][_0x3ed43c][_0x154ed8(0x13e)])return;else _0x564fad=_0x539db3[_0x154ed8(0x77a)][_0x3ed43c][_0x154ed8(0x422)]||0x64,_0x51e69a=_0x539db3[_0x154ed8(0x77a)][_0x3ed43c][_0x154ed8(0x13e)]||0x64;}else _0x539db3[_0x154ed8(0x77a)][_0x3ed43c][_0x154ed8(0x422)]=_0x564fad,_0x539db3['pcs'][_0x3ed43c][_0x154ed8(0x13e)]=_0x51e69a,_0x539db3[_0x154ed8(0x77a)][_0x3ed43c][_0x154ed8(0x4aa)]=_0x26b345;if(SafariVersion&&SafariVersion<=0xd&&(iOS||iPad))return;if(_0x154ed8(0x2ac)in window&&_0x154ed8(0x10a)in window[_0x154ed8(0x2ac)][_0x154ed8(0x884)]){var _0x1a4000=getSenders2(_0x3ed43c)['find'](function(_0xa5bb39){var _0x33aeb5=_0x154ed8;return _0xa5bb39[_0x33aeb5(0x37f)]&&_0xa5bb39[_0x33aeb5(0x37f)]['kind']==_0x33aeb5(0x81e);});if(!_0x1a4000){warnlog('can\x27t\x20change\x20bitrate;\x20no\x20video\x20sender\x20found');return;}var _0x4d43f3=_0x1a4000['getParameters']();(!_0x4d43f3[_0x154ed8(0x201)]||_0x4d43f3[_0x154ed8(0x201)]['length']==0x0)&&(_0x4d43f3[_0x154ed8(0x201)]=[{}]);if(_0x154ed8(0x280)in _0x539db3[_0x154ed8(0x77a)][_0x3ed43c]){var _0x50ce0b=_0x539db3[_0x154ed8(0x6be)]['getVideoTracks']();if(_0x50ce0b['length'])var _0x513a0d=_0x50ce0b[0x0][_0x154ed8(0x708)](),_0x21efb0=_0x513a0d['height'],_0x59b17f=_0x513a0d[_0x154ed8(0x5f0)];else return;}else{if(_0x539db3[_0x154ed8(0x792)]&&_0x539db3[_0x154ed8(0x792)][_0x154ed8(0x2b5)]){var _0x50ce0b=_0x539db3[_0x154ed8(0x792)][_0x154ed8(0x2b5)][_0x154ed8(0x82a)]();if(_0x50ce0b[_0x154ed8(0x425)])var _0x513a0d=_0x50ce0b[0x0][_0x154ed8(0x708)](),_0x21efb0=_0x513a0d['height'],_0x59b17f=_0x513a0d['width'];else return;}else return;}var _0x19eaf0=0x64*_0x564fad/_0x59b17f,_0x21ace3=0x64*_0x51e69a/_0x21efb0;log(_0x19eaf0+_0x154ed8(0x44a)+_0x21ace3);var _0x1b4799=0x64;_0x19eaf0>_0x21ace3?_0x1b4799=_0x21ace3:_0x1b4799=_0x19eaf0;_0x1b4799>0x64&&(_0x1b4799=0x64);log(_0x154ed8(0x271)+_0x1b4799),_0x539db3[_0x154ed8(0x77a)][_0x3ed43c][_0x154ed8(0x819)]=_0x1b4799;var _0x4c7599=_0x539db3['calculateScale'](_0x3ed43c);if(_0x4c7599<=0x0||_0x4c7599==0x64){var _0x80aa17=getChromeVersion();if(_0x80aa17>0x50)_0x154ed8(0x498)in _0x4d43f3[_0x154ed8(0x201)][0x0]&&delete _0x4d43f3[_0x154ed8(0x201)][0x0]['scaleResolutionDownBy'];else{if(_0x4d43f3[_0x154ed8(0x201)][0x0]['scaleResolutionDownBy']&&_0x4d43f3[_0x154ed8(0x201)][0x0]['scaleResolutionDownBy']==0x1){_0x539db3['pcs'][_0x3ed43c][_0x154ed8(0x27b)][_0x154ed8(0x23a)]=parseInt(_0x4c7599)+'%';return;}else _0x4d43f3[_0x154ed8(0x201)][0x0]['scaleResolutionDownBy']=0x1;}}else{if(_0x154ed8(0x498)in _0x4d43f3[_0x154ed8(0x201)][0x0]&&_0x4d43f3['encodings'][0x0][_0x154ed8(0x498)]==0x64/_0x4c7599){_0x539db3[_0x154ed8(0x77a)][_0x3ed43c][_0x154ed8(0x27b)][_0x154ed8(0x23a)]=parseInt(_0x4c7599)+'%';return;}else _0x4d43f3[_0x154ed8(0x201)][0x0][_0x154ed8(0x498)]=0x64/_0x4c7599;}_0x1a4000[_0x154ed8(0x10a)](_0x4d43f3)['then'](()=>{var _0x2fc47b=_0x154ed8;log(_0x2fc47b(0x38e)),log(_0x4d43f3),pokeIframeAPI(_0x2fc47b(0x3ae),_0x4c7599,_0x3ed43c),pokeIframeAPI(_0x2fc47b(0x523),_0x4c7599,_0x3ed43c);})['catch'](warnlog),_0x539db3[_0x154ed8(0x77a)][_0x3ed43c]['stats'][_0x154ed8(0x23a)]=parseInt(_0x4c7599)+'%';return;}},_0x539db3[_0x173334(0x7cf)]=function(_0x32a3ff=null,_0x507ce4=null){var _0x52e329=_0x173334;_0x507ce4&&_0x507ce4[_0x52e329(0x1da)]();_0x5d0526&&(_0x5d0526['needKeyFrame']=!![],log('FORCING\x20A\x20CHUNKED\x20KEY\x20FRAME:\x20'+_0x32a3ff));if(iOS||iPad)return log(_0x52e329(0x253)),![];else{if(_0x52e329(0x2ac)in window&&'setParameters'in window[_0x52e329(0x2ac)][_0x52e329(0x884)]){log(_0x52e329(0x22c)+_0x32a3ff);if(_0x32a3ff==null){for(_0x32a3ff in _0x539db3[_0x52e329(0x77a)]){_0x539db3['forcePLI'](_0x32a3ff);}return![];}if(!(_0x32a3ff in _0x539db3[_0x52e329(0x77a)]))return![];_0x539db3[_0x52e329(0x77a)][_0x32a3ff][_0x52e329(0x1a9)]&&(_0x539db3[_0x52e329(0x77a)][_0x32a3ff][_0x52e329(0x84a)]&&(clearTimeout(_0x539db3[_0x52e329(0x77a)][_0x32a3ff][_0x52e329(0x84a)]),_0x539db3[_0x52e329(0x77a)][_0x32a3ff]['keyframeTimeout']=null),_0x539db3['pcs'][_0x32a3ff][_0x52e329(0x84a)]=setTimeout(function(){var _0x2f2d0e=_0x52e329;_0x539db3[_0x2f2d0e(0x7cf)](_0x32a3ff);},parseInt(_0x539db3['pcs'][_0x32a3ff][_0x52e329(0x1a9)])));try{var _0x28d070=getSenders2(_0x32a3ff)[_0x52e329(0x935)](function(_0x1d8c05){var _0x5ebfad=_0x52e329;return _0x1d8c05[_0x5ebfad(0x37f)]&&_0x1d8c05[_0x5ebfad(0x37f)][_0x5ebfad(0x7d2)]==_0x5ebfad(0x81e);});if(!_0x28d070)return warnlog(_0x52e329(0x664)),![];var _0x2139c3=_0x28d070[_0x52e329(0x242)]();(!_0x2139c3['encodings']||_0x2139c3[_0x52e329(0x201)][_0x52e329(0x425)]==0x0)&&(_0x2139c3['encodings']=[{}]);var _0x78362f=![];return _0x2139c3[_0x52e329(0x201)][0x0]['scaleResolutionDownBy']=0xa,_0x28d070['setParameters'](_0x2139c3)[_0x52e329(0x1f1)](()=>{var _0x49ed76=_0x52e329,_0x146313=_0x539db3[_0x49ed76(0x941)](_0x32a3ff),_0x1096d5=_0x28d070[_0x49ed76(0x242)]();if(_0x146313<=0x0||_0x146313==0x64){var _0x4d2962=getChromeVersion();_0x4d2962>0x50?_0x49ed76(0x498)in _0x1096d5['encodings'][0x0]&&delete _0x1096d5['encodings'][0x0][_0x49ed76(0x498)]:_0x1096d5['encodings'][0x0]['scaleResolutionDownBy']=0x1;}else _0x1096d5[_0x49ed76(0x201)][0x0][_0x49ed76(0x498)]=0x64/_0x146313;_0x28d070['setParameters'](_0x1096d5)['then'](()=>{var _0x54b376=_0x49ed76;log(_0x54b376(0x6c0));})[_0x49ed76(0x49b)](warnlog);})[_0x52e329(0x49b)](warnlog),!![];}catch(_0x357f22){errorlog(_0x357f22);}}}return![];},_0x539db3[_0x173334(0x26e)]=function(_0x2b6c9e){var _0x30055f=_0x173334;log('enhacing\x20audio\x20encoder');var _0x2b5b43=getSenders2(_0x2b6c9e)[_0x30055f(0x935)](function(_0x145f3d){var _0xc88adb=_0x30055f;return _0x145f3d['track']&&_0x145f3d[_0xc88adb(0x37f)][_0xc88adb(0x7d2)]==_0xc88adb(0x6e1);});if(!_0x2b5b43)return log(_0x30055f(0x67c)),![];var _0x56319e=_0x2b5b43[_0x30055f(0x242)]();(!_0x56319e[_0x30055f(0x201)]||_0x56319e[_0x30055f(0x201)][_0x30055f(0x425)]==0x0)&&(_0x56319e[_0x30055f(0x201)]=[{}]);try{_0x56319e['encodings'][0x0][_0x30055f(0x19f)]='high',_0x56319e[_0x30055f(0x201)][0x0]['priority']=_0x30055f(0x451),_0x56319e['encodings'][0x0]['adaptivePtime']=!![],_0x2b5b43[_0x30055f(0x10a)](_0x56319e)['then'](()=>{var _0x1752aa=_0x30055f;log(_0x1752aa(0x25a)),pokeIframeAPI(_0x1752aa(0x29f),!![],_0x2b6c9e);});}catch(_0x3be098){errorlog(_0x3be098);}},_0x539db3[_0x173334(0x470)]=function(_0x2e13f3,_0x2b28d4=_0x173334(0x65d)){var _0x5af58a=_0x173334,_0x21328=getSenders2(_0x2e13f3)[_0x5af58a(0x935)](function(_0x23eb3d){var _0x295d77=_0x5af58a;return _0x23eb3d[_0x295d77(0x37f)]&&_0x23eb3d['track'][_0x295d77(0x7d2)]==_0x295d77(0x81e);});if(!_0x21328)return log('no\x20video\x20track\x20to\x20control'),![];var _0x38f245=_0x21328['getParameters']();(!_0x38f245[_0x5af58a(0x201)]||_0x38f245['encodings'][_0x5af58a(0x425)]==0x0)&&(_0x38f245['encodings']=[{}]);try{_0x2b28d4===!![]?(_0x38f245[_0x5af58a(0x201)][0x0][_0x5af58a(0x470)]='maintain-framerate',log(_0x5af58a(0x2aa))):(_0x38f245['encodings'][0x0]['degradationPreference']=_0x2b28d4,log('done\x20setting\x20degrad\x20to\x20'+_0x2b28d4)),_0x21328[_0x5af58a(0x10a)](_0x38f245)[_0x5af58a(0x1f1)](()=>{var _0x4455e7=_0x5af58a;log(_0x4455e7(0x894));});}catch(_0x22fc03){errorlog(_0x22fc03);}},_0x539db3[_0x173334(0x63d)]=function(_0x2cb6a6,_0x1a3373,_0x45ed74=![]){var _0x5e17b1=_0x173334;log(_0x5e17b1(0x85b)+_0x2cb6a6+_0x5e17b1(0x7fd)+_0x45ed74);if(_0x539db3[_0x5e17b1(0x3d8)]===![])return;_0x1a3373[_0x5e17b1(0x3d8)]=parseInt(_0x539db3['maxBandwidth']/0x64*_0x2cb6a6),_0x45ed74?_0x539db3['limitMeshcastBitrate'](null):_0x539db3[_0x5e17b1(0x64a)](_0x1a3373[_0x5e17b1(0x5f9)],null);},_0x539db3['limitAudioEncoder']=function(_0x34fd75,_0x14157e=0x7d00,_0x4d4b29=0x3e8){var _0x2c7cd8=_0x173334;log(_0x2c7cd8(0x825));var _0x258eef=getSenders2(_0x34fd75)[_0x2c7cd8(0x935)](function(_0x290947){var _0x29e5aa=_0x2c7cd8;return _0x290947[_0x29e5aa(0x37f)]&&_0x290947[_0x29e5aa(0x37f)][_0x29e5aa(0x7d2)]==_0x29e5aa(0x6e1);});if(!_0x258eef)return log(_0x2c7cd8(0x67c)),![];var _0x3426f5=_0x258eef['getParameters']();(!_0x3426f5['encodings']||_0x3426f5[_0x2c7cd8(0x201)][_0x2c7cd8(0x425)]==0x0)&&(_0x3426f5['encodings']=[{}]),_0x3426f5[_0x2c7cd8(0x201)][0x0][_0x2c7cd8(0x232)]=_0x14157e,_0x258eef['setParameters'](_0x3426f5)[_0x2c7cd8(0x1f1)](()=>{pokeIframeAPI('setAudioBitrate',_0x14157e,_0x34fd75),_0x4d4b29>0x0&&setTimeout(function(){var _0x3b576a=_0x2c19;try{if(_0x34fd75 in _0x539db3[_0x3b576a(0x77a)])var _0x5eae18=getSenders2(_0x34fd75)['find'](function(_0x51bb81){var _0x1b5a49=_0x3b576a;return _0x51bb81[_0x1b5a49(0x37f)]&&_0x51bb81['track'][_0x1b5a49(0x7d2)]==_0x1b5a49(0x6e1);});else return![];if(!_0x5eae18)return log(_0x3b576a(0x67c)),![];var _0x2046de=_0x5eae18[_0x3b576a(0x242)]();delete _0x2046de[_0x3b576a(0x201)][0x0][_0x3b576a(0x232)],_0x5eae18['setParameters'](_0x2046de)[_0x3b576a(0x1f1)](()=>{var _0xc98510=_0x3b576a;log(_0xc98510(0x25a));});}catch(_0x17863e){errorlog(_0x17863e);}},_0x4d4b29,_0x34fd75);});},_0x539db3[_0x173334(0x880)]=function(_0xa61dd2,_0x11c2b7,_0x4b5417){var _0x4dcf23=_0x173334;pokeIframeAPI(_0x4dcf23(0x8bd),_0xa61dd2,_0x4b5417);if(_0x539db3['password'])return generateHash(_0xa61dd2+_0x539db3['password']+_0x539db3[_0x4dcf23(0x48c)],0x10)['then'](function(_0x15a5a2){var _0x2fcd80=_0x4dcf23,_0x3ca130={};_0x11c2b7[_0x2fcd80(0x6d7)]&&(_0x11c2b7[_0x2fcd80(0x29b)]=_0x15a5a2);if(_0x539db3[_0x2fcd80(0x29a)]&&_0x539db3['directorUUID'])_0x3ca130[_0x2fcd80(0x5c9)]=_0x4b5417,_0x3ca130[_0x2fcd80(0x4f6)]=_0x15a5a2,_0x3ca130['transferSettings']=_0x11c2b7,_0x539db3[_0x2fcd80(0x8fb)](_0x3ca130,_0x539db3[_0x2fcd80(0x4c3)]),log(_0x3ca130);else{if(_0x11c2b7['updateurl']){_0x3ca130[_0x2fcd80(0x668)]=_0x2fcd80(0x5c9),_0x3ca130[_0x2fcd80(0x6f6)]=_0x11c2b7,log(_0x3ca130);if(_0x539db3[_0x2fcd80(0x8fb)](_0x3ca130,_0x4b5417)){var _0x3ca130={};_0x3ca130[_0x2fcd80(0x668)]='migrate',_0x3ca130['roomid']=_0x15a5a2,_0x3ca130[_0x2fcd80(0x632)]=_0x4b5417,_0x539db3[_0x2fcd80(0x555)](_0x3ca130);}log(_0x3ca130);}else{if(_0x2fcd80(0x610)in _0x11c2b7){_0x3ca130[_0x2fcd80(0x668)]='migrate',_0x3ca130[_0x2fcd80(0x6f6)]=_0x11c2b7,delete _0x3ca130[_0x2fcd80(0x6f6)]['roomid'],delete _0x3ca130[_0x2fcd80(0x6f6)][_0x2fcd80(0x29b)],log(_0x3ca130);if(_0x539db3['sendRequest'](_0x3ca130,_0x4b5417)){var _0x3ca130={};_0x3ca130[_0x2fcd80(0x668)]=_0x2fcd80(0x5c9),_0x3ca130[_0x2fcd80(0x4f6)]=_0x15a5a2,_0x3ca130[_0x2fcd80(0x632)]=_0x4b5417,_0x539db3[_0x2fcd80(0x555)](_0x3ca130);}log(_0x3ca130);}else _0x3ca130[_0x2fcd80(0x668)]='migrate',_0x3ca130[_0x2fcd80(0x4f6)]=_0x15a5a2,_0x3ca130['target']=_0x4b5417,_0x539db3[_0x2fcd80(0x555)](_0x3ca130);}}})['catch'](errorlog);else{_0x11c2b7[_0x4dcf23(0x6d7)]&&(_0x11c2b7[_0x4dcf23(0x29b)]=_0xa61dd2);var _0xbf376b={};if(_0x539db3[_0x4dcf23(0x29a)]&&_0x539db3['directorUUID'])_0xbf376b[_0x4dcf23(0x5c9)]=_0x4b5417,_0xbf376b['roomid']=_0xa61dd2,_0xbf376b['transferSettings']=_0x11c2b7,_0x539db3[_0x4dcf23(0x8fb)](_0xbf376b,_0x539db3[_0x4dcf23(0x4c3)]),log(_0xbf376b);else{if(_0x11c2b7['updateurl']){_0xbf376b[_0x4dcf23(0x668)]=_0x4dcf23(0x5c9),_0xbf376b[_0x4dcf23(0x6f6)]=_0x11c2b7;if(_0x539db3[_0x4dcf23(0x8fb)](_0xbf376b,_0x4b5417)){log(_0xbf376b);var _0xbf376b={};_0xbf376b['request']=_0x4dcf23(0x5c9),_0xbf376b[_0x4dcf23(0x4f6)]=_0xa61dd2,_0xbf376b['target']=_0x4b5417,_0x539db3[_0x4dcf23(0x555)](_0xbf376b);}}else{if(_0x4dcf23(0x610)in _0x11c2b7){_0xbf376b[_0x4dcf23(0x668)]='migrate',_0xbf376b[_0x4dcf23(0x6f6)]=_0x11c2b7,delete _0xbf376b[_0x4dcf23(0x6f6)]['roomid'],delete _0xbf376b[_0x4dcf23(0x6f6)][_0x4dcf23(0x29b)];if(_0x539db3[_0x4dcf23(0x8fb)](_0xbf376b,_0x4b5417)){warnlog(_0xbf376b);var _0xbf376b={};_0xbf376b[_0x4dcf23(0x668)]=_0x4dcf23(0x5c9),_0xbf376b[_0x4dcf23(0x4f6)]=rid,_0xbf376b[_0x4dcf23(0x632)]=_0x4b5417,_0x539db3[_0x4dcf23(0x555)](_0xbf376b);}}else _0xbf376b[_0x4dcf23(0x668)]=_0x4dcf23(0x5c9),_0xbf376b[_0x4dcf23(0x4f6)]=_0xa61dd2,_0xbf376b[_0x4dcf23(0x632)]=_0x4b5417,_0x539db3[_0x4dcf23(0x555)](_0xbf376b);}}}},_0x539db3['limitAudioBitrate']=function(_0x3f4e1f,_0x5e32a2){var _0x4f4a7e=_0x173334;_0x5e32a2=parseInt(_0x5e32a2);try{var _0x19a431=getSenders2(_0x3f4e1f)['find'](function(_0x53d5b6){var _0x19bfce=_0x2c19;return _0x53d5b6['track']&&_0x53d5b6[_0x19bfce(0x37f)][_0x19bfce(0x7d2)]=='audio';});if(!_0x19a431){warnlog(_0x4f4a7e(0x6c6));return;}var _0x5aac74=_0x19a431['getParameters']();(!_0x5aac74[_0x4f4a7e(0x201)]||_0x5aac74[_0x4f4a7e(0x201)][_0x4f4a7e(0x425)]==0x0)&&(_0x5aac74[_0x4f4a7e(0x201)]=[{}]);if(_0x5e32a2<0x0){_0x5aac74[_0x4f4a7e(0x201)][0x0]['active']==![]&&(_0x5aac74[_0x4f4a7e(0x201)][0x0][_0x4f4a7e(0x18b)]=!![]);if(SafariVersion&&SafariVersion<=0xd&&(iOS||iPad)){_0x5e32a2=0x20;if(_0x539db3[_0x4f4a7e(0x77a)][_0x3f4e1f]['setAudioBitrate']!==![])_0x5e32a2=_0x539db3[_0x4f4a7e(0x77a)][_0x3f4e1f][_0x4f4a7e(0x5da)];else _0x539db3['audiobitrate']&&(_0x5e32a2=_0x539db3[_0x4f4a7e(0x71f)]);_0x5aac74[_0x4f4a7e(0x201)][0x0][_0x4f4a7e(0x232)]=_0x5e32a2*0x400;}else _0x539db3['pcs'][_0x3f4e1f][_0x4f4a7e(0x5da)]!==![]?(_0x5e32a2=_0x539db3[_0x4f4a7e(0x77a)][_0x3f4e1f][_0x4f4a7e(0x5da)],_0x5aac74[_0x4f4a7e(0x201)][0x0][_0x4f4a7e(0x232)]=_0x5e32a2*0x400):delete _0x5aac74[_0x4f4a7e(0x201)][0x0]['maxBitrate'];}else _0x5e32a2===0x0?_0x5aac74[_0x4f4a7e(0x201)][0x0][_0x4f4a7e(0x18b)]=![]:(_0x5aac74[_0x4f4a7e(0x201)][0x0][_0x4f4a7e(0x18b)]==![]&&(_0x5aac74[_0x4f4a7e(0x201)][0x0][_0x4f4a7e(0x18b)]=!![]),_0x5aac74[_0x4f4a7e(0x201)][0x0][_0x4f4a7e(0x232)]=_0x5e32a2*0x400);_0x19a431[_0x4f4a7e(0x10a)](_0x5aac74)['then'](()=>{var _0x2ef8b7=_0x4f4a7e;pokeIframeAPI(_0x2ef8b7(0x5da),_0x5e32a2,_0x3f4e1f),log(_0x2ef8b7(0x3ea));})['catch'](warnlog);}catch(_0x175cf7){errorlog(_0x175cf7),log(_0x3f4e1f),log(_0x539db3[_0x4f4a7e(0x77a)][_0x3f4e1f]);}},_0x539db3[_0x173334(0x693)]=function(_0x46ce1d){var _0x48fc98=_0x173334;if(_0x539db3['iframeSrc']&&_0x539db3[_0x48fc98(0x77a)][_0x46ce1d][_0x48fc98(0x4f3)]===!![])_0x539db3[_0x48fc98(0x64a)](_0x46ce1d,0x0),_0x539db3[_0x48fc98(0x77a)][_0x46ce1d][_0x48fc98(0x72d)]===0x0&&(_0x539db3[_0x48fc98(0x77a)][_0x46ce1d][_0x48fc98(0x52f)]===![]?_0x539db3[_0x48fc98(0x68f)](_0x46ce1d,0x0):_0x539db3[_0x48fc98(0x68f)](_0x46ce1d,-0x1));else{if(_0x539db3[_0x48fc98(0x77a)][_0x46ce1d]&&_0x539db3[_0x48fc98(0x77a)][_0x46ce1d][_0x48fc98(0x72d)]!==![]){if(_0x539db3[_0x48fc98(0x77a)][_0x46ce1d]['obsVisibility']===![]){var _0x4fb449=_0x539db3[_0x48fc98(0x77a)][_0x46ce1d]['optimizedBitrate'];_0x539db3[_0x48fc98(0x77a)][_0x46ce1d][_0x48fc98(0x85c)]&&_0x539db3['pcs'][_0x46ce1d][_0x48fc98(0x85c)]>0x0&&(_0x539db3['pcs'][_0x46ce1d][_0x48fc98(0x85c)]<_0x539db3['pcs'][_0x46ce1d][_0x48fc98(0x72d)]&&(_0x4fb449=_0x539db3[_0x48fc98(0x77a)][_0x46ce1d][_0x48fc98(0x85c)])),_0x539db3['limitBitrate'](_0x46ce1d,_0x4fb449),_0x539db3['pcs'][_0x46ce1d]['optimizedBitrate']===0x0&&_0x539db3[_0x48fc98(0x68f)](_0x46ce1d,0x0);}else _0x539db3['pcs'][_0x46ce1d][_0x48fc98(0x72d)]===0x0&&(_0x539db3['limitAudioBitrate'](_0x46ce1d,-0x1),_0x539db3['limitTotalBitrateGuests'](),_0x539db3[_0x48fc98(0x1bf)]&&_0x539db3[_0x48fc98(0x64a)](_0x46ce1d,null));}else _0x539db3[_0x48fc98(0x1ef)](),_0x539db3['maxvideobitrate']&&_0x539db3['limitBitrate'](_0x46ce1d,null);}},_0x539db3[_0x173334(0x1ef)]=function(_0x1400fc=0x0,_0x1999b5=![]){var _0x498a13=_0x173334;if(!_0x539db3[_0x498a13(0x926)])return _0x1400fc;if(!_0x539db3[_0x498a13(0x4f6)]||_0x539db3[_0x498a13(0x4a4)]!==![])return _0x1400fc;if((iOS||iPad)&&SafariVersion&&SafariVersion<=0xd)return _0x1400fc;var _0x52e053=_0x1400fc;if(_0x1999b5===![])_0x52e053=0x0;else _0x52e053<0x0&&(_0x52e053=_0x539db3['pcs'][_0x1999b5][_0x498a13(0x68a)]||_0x539db3[_0x498a13(0x502)]||_0x539db3['pcs'][_0x479a5f]['maxBandwidth']||0x9c4);var _0x239d33=0x0;for(var _0x479a5f in _0x539db3[_0x498a13(0x77a)]){if(_0x1999b5===_0x479a5f)continue;if(!_0x539db3[_0x498a13(0x77a)][_0x479a5f][_0x498a13(0x2bf)])continue;try{var _0x235549=getSenders2(_0x479a5f)['find'](function(_0x25da05){var _0x538d99=_0x498a13;return _0x25da05[_0x538d99(0x37f)]&&_0x25da05[_0x538d99(0x37f)][_0x538d99(0x7d2)]==_0x538d99(0x81e);});if(!_0x235549)continue;var _0x1be84c=_0x235549['getParameters']();if(!_0x1be84c[_0x498a13(0x201)]||_0x1be84c[_0x498a13(0x201)][_0x498a13(0x425)]==0x0){_0x539db3[_0x498a13(0x77a)][_0x479a5f]['setBitrate']<0x0?_0x52e053+=_0x539db3['outboundVideoBitrate']||_0x539db3['pcs'][_0x479a5f][_0x498a13(0x3d8)]||0x9c4:_0x52e053+=_0x539db3[_0x498a13(0x77a)][_0x479a5f][_0x498a13(0x68a)]||_0x539db3['outboundVideoBitrate']||_0x539db3[_0x498a13(0x77a)][_0x479a5f][_0x498a13(0x3d8)]||0x9c4;warnlog(_0x52e053),_0x239d33+=0x1;continue;}if(_0x1be84c['encodings'][0x0][_0x498a13(0x18b)]==![])continue;if(_0x1be84c['encodings'][0x0][_0x498a13(0x232)])_0x498a13(0x1df)in _0x539db3[_0x498a13(0x77a)][_0x479a5f]?_0x52e053+=parseInt(_0x539db3[_0x498a13(0x77a)][_0x479a5f][_0x498a13(0x1df)]):_0x52e053+=parseInt(_0x1be84c[_0x498a13(0x201)][0x0][_0x498a13(0x232)])/0x400;else _0x539db3['pcs'][_0x479a5f]['setBitrate']<0x0?_0x52e053+=_0x539db3[_0x498a13(0x502)]||_0x539db3[_0x498a13(0x77a)][_0x479a5f][_0x498a13(0x3d8)]||0x9c4:(_0x52e053+=_0x539db3[_0x498a13(0x77a)][_0x479a5f][_0x498a13(0x68a)]||_0x539db3[_0x498a13(0x502)]||_0x539db3[_0x498a13(0x77a)][_0x479a5f][_0x498a13(0x3d8)]||0x9c4,warnlog(_0x52e053));_0x239d33+=0x1;}catch(_0x58acd9){errorlog(_0x58acd9);}}if(!_0x52e053)return _0x52e053;warnlog(_0x498a13(0x308)+_0x52e053);var _0x4efd07=parseFloat(_0x52e053/_0x539db3[_0x498a13(0x926)]);_0x4efd07<0x1&&(_0x4efd07=0x1);for(var _0x479a5f in _0x539db3[_0x498a13(0x77a)]){if(_0x1999b5===_0x479a5f)continue;if(!_0x539db3['pcs'][_0x479a5f][_0x498a13(0x2bf)])continue;try{var _0x235549=getSenders2(_0x479a5f)['find'](function(_0x6728f8){var _0x1caeef=_0x498a13;return _0x6728f8[_0x1caeef(0x37f)]&&_0x6728f8[_0x1caeef(0x37f)][_0x1caeef(0x7d2)]=='video';});if(!_0x235549)continue;var _0x1be84c=_0x235549['getParameters']();if(!_0x1be84c[_0x498a13(0x201)]||_0x1be84c['encodings'][_0x498a13(0x425)]==0x0){if(_0x539db3['pcs'][_0x479a5f][_0x498a13(0x68a)]<0x0)var _0x1a5d35=_0x539db3[_0x498a13(0x502)]||_0x539db3[_0x498a13(0x77a)][_0x479a5f]['maxBandwidth']||0x9c4;else var _0x1a5d35=_0x539db3['pcs'][_0x479a5f]['setBitrate']||_0x539db3[_0x498a13(0x502)]||_0x539db3[_0x498a13(0x77a)][_0x479a5f]['maxBandwidth']||0x9c4;var _0x596774=parseInt(_0x1a5d35/_0x4efd07);_0x539db3[_0x498a13(0x64a)](_0x479a5f,_0x596774,!![]);continue;}if(_0x1be84c['encodings'][0x0][_0x498a13(0x18b)]==![])continue;if(_0x1be84c[_0x498a13(0x201)][0x0][_0x498a13(0x232)]){if(_0x498a13(0x1df)in _0x539db3[_0x498a13(0x77a)][_0x479a5f])var _0x1a5d35=parseInt(_0x539db3['pcs'][_0x479a5f][_0x498a13(0x1df)]);else var _0x1a5d35=parseInt(parseInt(_0x1be84c[_0x498a13(0x201)][0x0][_0x498a13(0x232)])/0x400);var _0x596774=parseInt(_0x1a5d35/_0x4efd07);_0x539db3[_0x498a13(0x64a)](_0x479a5f,_0x596774,!![]);}else{if(_0x539db3[_0x498a13(0x77a)][_0x479a5f][_0x498a13(0x68a)]<0x0)var _0x1a5d35=_0x539db3[_0x498a13(0x502)]||_0x539db3[_0x498a13(0x77a)][_0x479a5f][_0x498a13(0x3d8)]||0x9c4;else var _0x1a5d35=_0x539db3[_0x498a13(0x77a)][_0x479a5f]['setBitrate']||_0x539db3['outboundVideoBitrate']||_0x539db3[_0x498a13(0x77a)][_0x479a5f][_0x498a13(0x3d8)]||0x9c4;var _0x596774=parseInt(_0x1a5d35/_0x4efd07);_0x539db3[_0x498a13(0x64a)](_0x479a5f,_0x596774,!![]);}}catch(_0x1a4ac9){errorlog(_0x1a4ac9);}}return parseInt(_0x1400fc/_0x4efd07);},_0x539db3['limitTotalBitrateAll']=function(_0x291ec2=0x0,_0x117316=![]){var _0x1b47e6=_0x173334;if(!_0x539db3['limitTotalBitrate'])return _0x291ec2;if((iOS||iPad)&&SafariVersion&&SafariVersion<=0xd)return _0x291ec2;var _0x3d0d23=_0x291ec2;if(_0x117316===![])_0x3d0d23=0x0;else _0x3d0d23<0x0&&(_0x3d0d23=_0x539db3[_0x1b47e6(0x77a)][_0x117316][_0x1b47e6(0x68a)]||_0x539db3['outboundVideoBitrate']||_0x539db3[_0x1b47e6(0x77a)][_0x1ee642]['maxBandwidth']||0x9c4);var _0x49fc57=0x0;for(var _0x1ee642 in _0x539db3[_0x1b47e6(0x77a)]){if(_0x117316===_0x1ee642)continue;try{var _0x21d2ef=getSenders2(_0x1ee642)[_0x1b47e6(0x935)](function(_0x4c1406){var _0x3634df=_0x1b47e6;return _0x4c1406[_0x3634df(0x37f)]&&_0x4c1406[_0x3634df(0x37f)]['kind']==_0x3634df(0x81e);});if(!_0x21d2ef)continue;var _0x4d9973=_0x21d2ef['getParameters']();if(!_0x4d9973[_0x1b47e6(0x201)]||_0x4d9973['encodings'][_0x1b47e6(0x425)]==0x0){_0x539db3[_0x1b47e6(0x77a)][_0x1ee642]['setBitrate']<0x0?_0x3d0d23+=_0x539db3['outboundVideoBitrate']||_0x539db3[_0x1b47e6(0x77a)][_0x1ee642][_0x1b47e6(0x3d8)]||0x9c4:_0x3d0d23+=_0x539db3[_0x1b47e6(0x77a)][_0x1ee642][_0x1b47e6(0x68a)]||_0x539db3[_0x1b47e6(0x502)]||_0x539db3[_0x1b47e6(0x77a)][_0x1ee642]['maxBandwidth']||0x9c4;warnlog(_0x3d0d23),_0x49fc57+=0x1;continue;}if(_0x4d9973[_0x1b47e6(0x201)][0x0][_0x1b47e6(0x18b)]==![])continue;if(_0x4d9973['encodings'][0x0][_0x1b47e6(0x232)])_0x1b47e6(0x1df)in _0x539db3[_0x1b47e6(0x77a)][_0x1ee642]?_0x3d0d23+=parseInt(_0x539db3['pcs'][_0x1ee642][_0x1b47e6(0x1df)]):_0x3d0d23+=parseInt(_0x4d9973['encodings'][0x0][_0x1b47e6(0x232)])/0x400;else _0x539db3[_0x1b47e6(0x77a)][_0x1ee642][_0x1b47e6(0x68a)]<0x0?_0x3d0d23+=_0x539db3[_0x1b47e6(0x502)]||_0x539db3[_0x1b47e6(0x77a)][_0x1ee642][_0x1b47e6(0x3d8)]||0x9c4:(_0x3d0d23+=_0x539db3[_0x1b47e6(0x77a)][_0x1ee642][_0x1b47e6(0x68a)]||_0x539db3[_0x1b47e6(0x502)]||_0x539db3[_0x1b47e6(0x77a)][_0x1ee642][_0x1b47e6(0x3d8)]||0x9c4,warnlog(_0x3d0d23));_0x49fc57+=0x1;}catch(_0x223f3f){errorlog(_0x223f3f);}}if(!_0x3d0d23)return _0x3d0d23;warnlog('totalBitrate:\x20'+_0x3d0d23);var _0x319b2e=parseFloat(_0x3d0d23/_0x539db3[_0x1b47e6(0x926)]);_0x319b2e<0x1&&(_0x319b2e=0x1);for(var _0x1ee642 in _0x539db3[_0x1b47e6(0x77a)]){if(_0x117316===_0x1ee642)continue;try{var _0x21d2ef=getSenders2(_0x1ee642)['find'](function(_0x221914){var _0x4f5ce4=_0x1b47e6;return _0x221914[_0x4f5ce4(0x37f)]&&_0x221914['track'][_0x4f5ce4(0x7d2)]==_0x4f5ce4(0x81e);});if(!_0x21d2ef)continue;var _0x4d9973=_0x21d2ef[_0x1b47e6(0x242)]();if(!_0x4d9973[_0x1b47e6(0x201)]||_0x4d9973[_0x1b47e6(0x201)][_0x1b47e6(0x425)]==0x0){if(_0x539db3['pcs'][_0x1ee642]['setBitrate']<0x0)var _0x2a1fb7=_0x539db3[_0x1b47e6(0x502)]||_0x539db3[_0x1b47e6(0x77a)][_0x1ee642][_0x1b47e6(0x3d8)]||0x9c4;else var _0x2a1fb7=_0x539db3[_0x1b47e6(0x77a)][_0x1ee642][_0x1b47e6(0x68a)]||_0x539db3[_0x1b47e6(0x502)]||_0x539db3[_0x1b47e6(0x77a)][_0x1ee642][_0x1b47e6(0x3d8)]||0x9c4;var _0x1e32f8=parseInt(_0x2a1fb7/_0x319b2e);_0x539db3['limitBitrate'](_0x1ee642,_0x1e32f8,!![]);continue;}if(_0x4d9973[_0x1b47e6(0x201)][0x0]['active']==![])continue;if(_0x4d9973[_0x1b47e6(0x201)][0x0][_0x1b47e6(0x232)]){if(_0x1b47e6(0x1df)in _0x539db3[_0x1b47e6(0x77a)][_0x1ee642])var _0x2a1fb7=parseInt(_0x539db3['pcs'][_0x1ee642][_0x1b47e6(0x1df)]);else var _0x2a1fb7=parseInt(parseInt(_0x4d9973[_0x1b47e6(0x201)][0x0][_0x1b47e6(0x232)])/0x400);var _0x1e32f8=parseInt(_0x2a1fb7/_0x319b2e);_0x539db3[_0x1b47e6(0x64a)](_0x1ee642,_0x1e32f8,!![]);}else{if(_0x539db3[_0x1b47e6(0x77a)][_0x1ee642][_0x1b47e6(0x68a)]<0x0)var _0x2a1fb7=_0x539db3[_0x1b47e6(0x502)]||_0x539db3['pcs'][_0x1ee642]['maxBandwidth']||0x9c4;else var _0x2a1fb7=_0x539db3[_0x1b47e6(0x77a)][_0x1ee642][_0x1b47e6(0x68a)]||_0x539db3['outboundVideoBitrate']||_0x539db3[_0x1b47e6(0x77a)][_0x1ee642][_0x1b47e6(0x3d8)]||0x9c4;var _0x1e32f8=parseInt(_0x2a1fb7/_0x319b2e);_0x539db3[_0x1b47e6(0x64a)](_0x1ee642,_0x1e32f8,!![]);}}catch(_0x486f4d){errorlog(_0x486f4d);}}return parseInt(_0x291ec2/_0x319b2e);},_0x539db3[_0x173334(0x42c)]=function(_0x217e7f,_0x3d23ac=![]){var _0x217d73=_0x173334,_0x26b521={};_0x26b521[_0x217d73(0x427)]={},_0x26b521['directorSettings'][_0x217d73(0x8c0)]=[_0x217e7f],_0x539db3[_0x217d73(0x87f)](_0x26b521,_0x3d23ac);},_0x539db3['limitMeshcastBitrate']=function(_0x279e8d=null){var _0x37e38e=_0x173334;if(!_0x539db3['mc'])return;_0x539db3['mc'][_0x37e38e(0x35d)]&&(clearInterval(_0x539db3['mc']['bitrateTimeout']),_0x539db3['mc']['bitrateTimeout']=null);if(_0x279e8d===null){if(_0x539db3['mc'][_0x37e38e(0x85c)]===![])return;_0x279e8d=_0x539db3['mc'][_0x37e38e(0x85c)];}_0x279e8d=parseInt(_0x279e8d);if(_0x539db3['mc']['setBitrate']&&_0x279e8d>_0x539db3['mc'][_0x37e38e(0x68a)])_0x279e8d=_0x539db3['mc'][_0x37e38e(0x68a)];else _0x539db3['mc'][_0x37e38e(0x68a)]===![]&&(_0x279e8d<0x0&&(_0x539db3[_0x37e38e(0x502)]?_0x279e8d=_0x539db3[_0x37e38e(0x502)]:_0x279e8d=0x9c4));_0x539db3['maxvideobitrate']&&(_0x279e8d>_0x539db3[_0x37e38e(0x1bf)]&&(_0x279e8d=_0x539db3[_0x37e38e(0x1bf)]));_0x539db3['mc'][_0x37e38e(0x85c)]=_0x279e8d;_0x539db3['mc'][_0x37e38e(0x72d)]!==![]&&(_0x539db3['mc'][_0x37e38e(0x52f)]===![]&&(_0x279e8d>_0x539db3['mc'][_0x37e38e(0x72d)]&&(_0x539db3['mc']['savedBitrate']=_0x279e8d,_0x279e8d=parseInt(_0x539db3['mc'][_0x37e38e(0x72d)])||0x0)));if(_0x539db3['mc'][_0x37e38e(0x3d8)]!==null){if(_0x539db3['mc']['maxBandwidth']<_0x279e8d)_0x279e8d=_0x539db3['mc'][_0x37e38e(0x3d8)],_0x539db3['mc'][_0x37e38e(0x27b)]['max_bandwidth_capped_kbps']=_0x279e8d,warnlog(_0x37e38e(0x526)+_0x279e8d+_0x37e38e(0x467));else _0x539db3['mc'][_0x37e38e(0x27b)]&&(_0x539db3['mc']['stats'][_0x37e38e(0x27f)]=![]);}else'max_bandwidth_capped_kbps'in _0x539db3['mc'][_0x37e38e(0x27b)]&&(_0x539db3['mc'][_0x37e38e(0x27b)]['max_bandwidth_capped_kbps']=![]);if(_0x279e8d===0x0){var _0x3ae5dc=Date['now']()-_0x539db3['mc'][_0x37e38e(0x488)];_0x3ae5dc<_0x539db3[_0x37e38e(0x811)]&&(_0x279e8d=_0x539db3[_0x37e38e(0x383)],log(_0x37e38e(0x699)+(Date[_0x37e38e(0x5a8)]()-_0x539db3['mc'][_0x37e38e(0x488)])),_0x539db3['mc']['bitrateTimeout']=setTimeout(function(){var _0x58b68b=_0x37e38e;try{warnlog(_0x58b68b(0x7d0)+(Date['now']()-_0x539db3['mc']['startTime'])),_0x539db3['limitMeshcastBitrate'](null);}catch(_0x10f505){};},_0x539db3[_0x37e38e(0x811)]-_0x3ae5dc+0x5));}try{if((iOS||iPad)&&SafariVersion&&SafariVersion<=0xd){log('iOS\x20devices\x20do\x20not\x20support\x20dynamic\x20bitrates\x20correctly;\x20skipping');var _0x334199=_0x539db3['mc'][_0x37e38e(0x44d)]()['find'](function(_0x1e69e3){var _0x19f653=_0x37e38e;return _0x1e69e3[_0x19f653(0x37f)]&&_0x1e69e3[_0x19f653(0x37f)][_0x19f653(0x7d2)]==_0x19f653(0x81e);});if(!_0x334199){warnlog(_0x37e38e(0x664));return;}var _0x2335f9=_0x334199[_0x37e38e(0x242)]();(!_0x2335f9[_0x37e38e(0x201)]||_0x2335f9[_0x37e38e(0x201)][_0x37e38e(0x425)]==0x0)&&(_0x2335f9[_0x37e38e(0x201)]=[{}]);if(_0x279e8d<0x0)_0x2335f9[_0x37e38e(0x201)][0x0][_0x37e38e(0x18b)]==![]&&(_0x2335f9['encodings'][0x0][_0x37e38e(0x18b)]=!![]),_0x279e8d=0x9c4,_0x539db3[_0x37e38e(0x419)]&&(_0x279e8d=_0x539db3['bitrate']),_0x539db3[_0x37e38e(0x1bf)]&&(_0x279e8d>_0x539db3[_0x37e38e(0x1bf)]&&(_0x279e8d=_0x539db3[_0x37e38e(0x1bf)])),_0x2335f9[_0x37e38e(0x201)][0x0]['maxBitrate']=_0x279e8d*0x400;else _0x279e8d===0x0?_0x2335f9['encodings'][0x0][_0x37e38e(0x18b)]=![]:(_0x2335f9[_0x37e38e(0x201)][0x0][_0x37e38e(0x18b)]==![]&&(_0x2335f9[_0x37e38e(0x201)][0x0]['active']=!![]),_0x2335f9['encodings'][0x0]['maxBitrate']=_0x279e8d*0x400);_0x334199[_0x37e38e(0x10a)](_0x2335f9)[_0x37e38e(0x1f1)](()=>{var _0x52276e=_0x37e38e;pokeIframeAPI(_0x52276e(0x1c5),_0x279e8d),log(_0x52276e(0x585)+_0x279e8d);})['catch'](warnlog);return;}else{if(_0x37e38e(0x2ac)in window&&'setParameters'in window[_0x37e38e(0x2ac)][_0x37e38e(0x884)]){var _0x334199=_0x539db3['mc'][_0x37e38e(0x44d)]()[_0x37e38e(0x935)](function(_0x30f077){var _0x2d5b87=_0x37e38e;return _0x30f077[_0x2d5b87(0x37f)]&&_0x30f077[_0x2d5b87(0x37f)][_0x2d5b87(0x7d2)]=='video';});if(!_0x334199){warnlog(_0x37e38e(0x664));return;}var _0x2335f9=_0x334199['getParameters']();(!_0x2335f9[_0x37e38e(0x201)]||_0x2335f9[_0x37e38e(0x201)][_0x37e38e(0x425)]==0x0)&&(_0x2335f9['encodings']=[{}]);if(_0x279e8d<0x0)_0x2335f9['encodings'][0x0][_0x37e38e(0x18b)]==![]&&(_0x2335f9[_0x37e38e(0x201)][0x0][_0x37e38e(0x18b)]=!![]),delete _0x2335f9['encodings'][0x0][_0x37e38e(0x232)];else _0x279e8d===0x0?(_0x2335f9[_0x37e38e(0x201)][0x0][_0x37e38e(0x18b)]=![],Firefox&&(_0x2335f9[_0x37e38e(0x201)][0x0][_0x37e38e(0x232)]=0x1)):(_0x2335f9['encodings'][0x0][_0x37e38e(0x18b)]==![]&&(_0x2335f9[_0x37e38e(0x201)][0x0][_0x37e38e(0x18b)]=!![]),_0x2335f9[_0x37e38e(0x201)][0x0]['maxBitrate']=_0x279e8d*0x400);iPad||iOS||Firefox?_0x539db3['mc']['bitrateTimeoutFirefox']?(clearInterval(_0x539db3['mc']['bitrateTimeoutFirefox']),_0x539db3['mc'][_0x37e38e(0x59f)]=setTimeout(function(){var _0x5345bf=_0x37e38e;log('bitrate\x20timeout;\x20ios/firefox\x20specific:\x20'+_0x279e8d),_0x539db3['mc'][_0x5345bf(0x59f)]=![],_0x539db3[_0x5345bf(0x24b)](null);},0x1f4)):(_0x539db3['mc'][_0x37e38e(0x59f)]=setTimeout(function(){_0x539db3['mc']['bitrateTimeoutFirefox']=![];},0x1f4),_0x334199[_0x37e38e(0x10a)](_0x2335f9)[_0x37e38e(0x1f1)](()=>{var _0x56e64c=_0x37e38e;log(_0x56e64c(0x345)+_0x279e8d),log(_0x2335f9),pokeIframeAPI(_0x56e64c(0x1c5),_0x279e8d);})[_0x37e38e(0x49b)](warnlog)):_0x334199[_0x37e38e(0x10a)](_0x2335f9)[_0x37e38e(0x1f1)](()=>{var _0x2dc5e0=_0x37e38e;log('bandwidth\x20set\x20i!\x20'+_0x279e8d),pokeIframeAPI(_0x2dc5e0(0x1c5),_0x279e8d);})['catch'](warnlog);return;}else warnlog(_0x37e38e(0x898));}}catch(_0x4bf665){errorlog(_0x4bf665);}},_0x539db3[_0x173334(0x1a2)]=function(_0x2b6412,_0x2d1fc9){var _0x67514a=_0x173334;_0x2d1fc9===![]?(_0x539db3[_0x67514a(0x77a)][_0x2b6412]['setBitrate']=![],_0x539db3[_0x67514a(0x64a)](_0x2b6412,-0x1)):(_0x2d1fc9=parseInt(_0x2d1fc9)||-0x1,_0x2d1fc9>=0x0&&(_0x539db3['pcs'][_0x2b6412][_0x67514a(0x68a)]=_0x2d1fc9,_0x539db3[_0x67514a(0x64a)](_0x2b6412,_0x2d1fc9)));},_0x539db3['targetAudioBitrate']=function(_0x2d469e,_0x54f895){var _0x1e6cc9=_0x173334;_0x54f895===![]?(_0x539db3[_0x1e6cc9(0x77a)][_0x2d469e][_0x1e6cc9(0x5da)]=![],_0x539db3[_0x1e6cc9(0x68f)](_0x2d469e,-0x1)):(_0x54f895=parseInt(_0x54f895)||-0x1,_0x54f895>=0x0&&(_0x539db3[_0x1e6cc9(0x77a)][_0x2d469e]['setAudioBitrate']=_0x54f895,_0x539db3[_0x1e6cc9(0x68f)](_0x2d469e,_0x54f895)));},_0x539db3[_0x173334(0x64a)]=function(_0x46a09d,_0x3592bc=null,_0x1ff39a=![]){var _0xb8eb28=_0x173334;if(!(_0x46a09d in _0x539db3[_0xb8eb28(0x77a)]))return;_0x539db3[_0xb8eb28(0x77a)][_0x46a09d]['bitrateTimeout']&&(clearInterval(_0x539db3[_0xb8eb28(0x77a)][_0x46a09d][_0xb8eb28(0x35d)]),_0x539db3['pcs'][_0x46a09d][_0xb8eb28(0x35d)]=null);var _0x110f37=!![];if(_0x3592bc===null){if(_0x539db3[_0xb8eb28(0x77a)][_0x46a09d][_0xb8eb28(0x85c)]===![]){if(_0x539db3[_0xb8eb28(0x77a)][_0x46a09d][_0xb8eb28(0x3d8)]===null)return;else _0x3592bc=_0x539db3['pcs'][_0x46a09d][_0xb8eb28(0x3d8)],_0x110f37=![];}else _0x3592bc=_0x539db3['pcs'][_0x46a09d][_0xb8eb28(0x85c)];}_0x3592bc=parseInt(_0x3592bc);if(_0x539db3[_0xb8eb28(0x77a)][_0x46a09d][_0xb8eb28(0x68a)]&&_0x3592bc>_0x539db3[_0xb8eb28(0x77a)][_0x46a09d][_0xb8eb28(0x68a)])_0x3592bc=_0x539db3['pcs'][_0x46a09d][_0xb8eb28(0x68a)];else _0x3592bc<0x0&&(_0x3592bc=_0x539db3['pcs'][_0x46a09d][_0xb8eb28(0x68a)]||_0x539db3['outboundVideoBitrate']||0x9c4);_0x539db3[_0xb8eb28(0x1bf)]&&(_0x3592bc>_0x539db3['maxvideobitrate']&&(_0x3592bc=_0x539db3[_0xb8eb28(0x1bf)]));_0x110f37&&!_0x1ff39a&&(_0x539db3[_0xb8eb28(0x77a)][_0x46a09d][_0xb8eb28(0x85c)]=_0x3592bc);_0x539db3[_0xb8eb28(0x77a)][_0x46a09d][_0xb8eb28(0x72d)]!==![]&&(_0x539db3[_0xb8eb28(0x77a)][_0x46a09d][_0xb8eb28(0x52f)]===![]&&(_0x3592bc>_0x539db3[_0xb8eb28(0x77a)][_0x46a09d][_0xb8eb28(0x72d)]&&(_0x110f37&&(_0x539db3[_0xb8eb28(0x77a)][_0x46a09d][_0xb8eb28(0x85c)]=_0x3592bc),_0x3592bc=parseInt(_0x539db3[_0xb8eb28(0x77a)][_0x46a09d][_0xb8eb28(0x72d)])||0x0)));if(_0x539db3['pcs'][_0x46a09d]['maxBandwidth']!==null){if(_0x539db3['pcs'][_0x46a09d][_0xb8eb28(0x3d8)]<_0x3592bc)_0x3592bc=_0x539db3[_0xb8eb28(0x77a)][_0x46a09d]['maxBandwidth'],_0x539db3[_0xb8eb28(0x77a)][_0x46a09d][_0xb8eb28(0x27b)][_0xb8eb28(0x27f)]=_0x3592bc,warnlog(_0xb8eb28(0x526)+_0x3592bc+_0xb8eb28(0x467));else _0x539db3['pcs'][_0x46a09d][_0xb8eb28(0x3d8)]===_0x3592bc&&!_0x110f37?(_0x539db3['pcs'][_0x46a09d][_0xb8eb28(0x27b)][_0xb8eb28(0x27f)]=_0x3592bc,warnlog(_0xb8eb28(0x2e7)+_0x3592bc+_0xb8eb28(0x467))):(warnlog('Max\x20bandwidth\x20NOT\x20being\x20capped:\x20'+_0x3592bc+_0xb8eb28(0x467)),_0x539db3[_0xb8eb28(0x77a)][_0x46a09d]['stats']['max_bandwidth_capped_kbps']=![]);}else _0xb8eb28(0x27f)in _0x539db3[_0xb8eb28(0x77a)][_0x46a09d]['stats']&&(_0x539db3['pcs'][_0x46a09d][_0xb8eb28(0x27b)][_0xb8eb28(0x27f)]=![]);_0x1ff39a===![]&&(_0x539db3[_0xb8eb28(0x926)]&&(_0x539db3[_0xb8eb28(0x77a)][_0x46a09d][_0xb8eb28(0x1df)]=_0x3592bc,_0x3592bc=_0x539db3[_0xb8eb28(0x1ef)](_0x3592bc,_0x46a09d)));if(_0x3592bc===0x0){var _0x2b881a=Date[_0xb8eb28(0x5a8)]()-_0x539db3['pcs'][_0x46a09d]['startTime'];_0x2b881a<_0x539db3['rampUpTime']&&(_0x3592bc=_0x539db3[_0xb8eb28(0x383)],log(_0xb8eb28(0x699)+(Date['now']()-_0x539db3['pcs'][_0x46a09d][_0xb8eb28(0x488)])),_0x539db3['pcs'][_0x46a09d][_0xb8eb28(0x35d)]=setTimeout(function(_0x10f23b){var _0x3a7e61=_0xb8eb28;try{warnlog(_0x3a7e61(0x7d0)+(Date[_0x3a7e61(0x5a8)]()-_0x539db3['pcs'][_0x10f23b][_0x3a7e61(0x488)])),_0x539db3[_0x3a7e61(0x64a)](_0x10f23b,null);}catch(_0x581290){};},_0x539db3[_0xb8eb28(0x811)]-_0x2b881a+0x5,_0x46a09d));}try{if((iOS||iPad)&&SafariVersion&&SafariVersion<=0xd){log(_0xb8eb28(0x253));if(_0x539db3[_0xb8eb28(0x77a)][_0x46a09d][_0xb8eb28(0x2bf)]==!![]&&_0x539db3[_0xb8eb28(0x77a)][_0x46a09d][_0xb8eb28(0x40f)]==![])return;var _0x5222ee=getSenders2(_0x46a09d)['find'](function(_0x31b2ca){var _0x4832f9=_0xb8eb28;return _0x31b2ca['track']&&_0x31b2ca['track']['kind']==_0x4832f9(0x81e);});if(!_0x5222ee){warnlog('can\x27t\x20change\x20bitrate;\x20no\x20video\x20sender\x20found');return;}var _0x41f90e=_0x5222ee[_0xb8eb28(0x242)]();(!_0x41f90e[_0xb8eb28(0x201)]||_0x41f90e[_0xb8eb28(0x201)][_0xb8eb28(0x425)]==0x0)&&(_0x41f90e[_0xb8eb28(0x201)]=[{}]);_0x3592bc===0x0?_0x41f90e[_0xb8eb28(0x201)][0x0]['active']=![]:(_0x41f90e[_0xb8eb28(0x201)][0x0][_0xb8eb28(0x18b)]==![]&&(_0x41f90e['encodings'][0x0][_0xb8eb28(0x18b)]=!![]),_0x41f90e['encodings'][0x0][_0xb8eb28(0x232)]=_0x3592bc*0x400);_0x5222ee[_0xb8eb28(0x10a)](_0x41f90e)['then'](()=>{var _0x23e806=_0xb8eb28;pokeIframeAPI(_0x23e806(0x5ac),_0x3592bc,_0x46a09d),log(_0x23e806(0x759)+_0x3592bc);})[_0xb8eb28(0x49b)](warnlog);return;}else{if(_0xb8eb28(0x2ac)in window&&_0xb8eb28(0x10a)in window[_0xb8eb28(0x2ac)][_0xb8eb28(0x884)]){var _0x5222ee=getSenders2(_0x46a09d)[_0xb8eb28(0x935)](function(_0x19cca3){var _0x3fc108=_0xb8eb28;return _0x19cca3[_0x3fc108(0x37f)]&&_0x19cca3[_0x3fc108(0x37f)][_0x3fc108(0x7d2)]=='video';});if(!_0x5222ee){warnlog('can\x27t\x20change\x20bitrate;\x20no\x20video\x20sender\x20found');return;}var _0x41f90e=_0x5222ee[_0xb8eb28(0x242)]();(!_0x41f90e[_0xb8eb28(0x201)]||_0x41f90e['encodings']['length']==0x0)&&(_0x41f90e[_0xb8eb28(0x201)]=[{}]);_0x3592bc===0x0?(_0x41f90e[_0xb8eb28(0x201)][0x0][_0xb8eb28(0x18b)]=![],Firefox&&(_0x41f90e['encodings'][0x0][_0xb8eb28(0x232)]=0x1,_0x41f90e[_0xb8eb28(0x201)][0x0][_0xb8eb28(0x498)]=0x3e8)):(_0x41f90e['encodings'][0x0][_0xb8eb28(0x18b)]==![]&&(_0x41f90e['encodings'][0x0]['active']=!![]),_0x41f90e[_0xb8eb28(0x201)][0x0][_0xb8eb28(0x232)]=_0x3592bc*0x400);if(_0x3592bc!==0x0){var _0x233697=_0x539db3[_0xb8eb28(0x941)](_0x46a09d,_0x3592bc);if(_0x233697<=0x0||_0x233697==0x64){var _0x1776c9=getChromeVersion();_0x1776c9>0x50?_0xb8eb28(0x498)in _0x41f90e[_0xb8eb28(0x201)][0x0]?delete _0x41f90e[_0xb8eb28(0x201)][0x0][_0xb8eb28(0x498)]:_0x41f90e[_0xb8eb28(0x201)][0x0][_0xb8eb28(0x498)]=0x1:_0x41f90e[_0xb8eb28(0x201)][0x0][_0xb8eb28(0x498)]=0x1;}else _0x41f90e[_0xb8eb28(0x201)][0x0]['scaleResolutionDownBy']=0x64/_0x233697;iPad||iOS||Firefox?_0x539db3[_0xb8eb28(0x77a)][_0x46a09d][_0xb8eb28(0x59f)]?(clearInterval(_0x539db3[_0xb8eb28(0x77a)][_0x46a09d][_0xb8eb28(0x59f)]),_0x539db3[_0xb8eb28(0x77a)][_0x46a09d][_0xb8eb28(0x59f)]=setTimeout(function(_0x11b3b9,_0x15603b){var _0x43aaf3=_0xb8eb28;log(_0x43aaf3(0x7f8)+_0x3592bc),_0x539db3['pcs'][_0x11b3b9][_0x43aaf3(0x59f)]=![],_0x539db3[_0x43aaf3(0x64a)](_0x11b3b9,null,_0x15603b);},0x1f4,_0x46a09d,_0x1ff39a)):(_0x539db3[_0xb8eb28(0x77a)][_0x46a09d][_0xb8eb28(0x59f)]=setTimeout(function(_0x33b312){var _0x432acb=_0xb8eb28;_0x539db3[_0x432acb(0x77a)][_0x33b312][_0x432acb(0x59f)]=![];},0x1f4,_0x46a09d),_0x5222ee[_0xb8eb28(0x10a)](_0x41f90e)[_0xb8eb28(0x1f1)](()=>{var _0x50e001=_0xb8eb28;log('bandwidth\x20set\x20b!\x20'+_0x3592bc),log(_0x41f90e),_0x539db3[_0x50e001(0x77a)][_0x46a09d][_0x50e001(0x27b)]['scaleFactor']=parseInt(_0x233697)+'%',pokeIframeAPI(_0x50e001(0x5ac),_0x3592bc,_0x46a09d),pokeIframeAPI('setVideoScale',_0x233697,_0x46a09d);})[_0xb8eb28(0x49b)](warnlog)):_0x5222ee[_0xb8eb28(0x10a)](_0x41f90e)[_0xb8eb28(0x1f1)](()=>{var _0x39a5ab=_0xb8eb28;log(_0x39a5ab(0x192)+_0x3592bc),_0x539db3[_0x39a5ab(0x77a)][_0x46a09d][_0x39a5ab(0x27b)]['scaleFactor']=parseInt(_0x233697)+'%',pokeIframeAPI(_0x39a5ab(0x5ac),_0x3592bc,_0x46a09d),pokeIframeAPI('setVideoScale',_0x233697,_0x46a09d);})[_0xb8eb28(0x49b)](warnlog);}else iPad||iOS||Firefox?_0x539db3[_0xb8eb28(0x77a)][_0x46a09d][_0xb8eb28(0x59f)]?(clearInterval(_0x539db3['pcs'][_0x46a09d][_0xb8eb28(0x59f)]),_0x539db3[_0xb8eb28(0x77a)][_0x46a09d][_0xb8eb28(0x59f)]=setTimeout(function(_0x31f4f9,_0x45253a){var _0x3310cb=_0xb8eb28;log(_0x3310cb(0x7f8)+_0x3592bc),_0x539db3['pcs'][_0x31f4f9][_0x3310cb(0x59f)]=![],_0x539db3[_0x3310cb(0x64a)](_0x31f4f9,null,_0x45253a);},0x1f4,_0x46a09d,_0x1ff39a)):(_0x539db3['pcs'][_0x46a09d][_0xb8eb28(0x59f)]=setTimeout(function(_0x5c3717){var _0xde2381=_0xb8eb28;_0x539db3[_0xde2381(0x77a)][_0x5c3717][_0xde2381(0x59f)]=![];},0x1f4,_0x46a09d),_0x5222ee['setParameters'](_0x41f90e)[_0xb8eb28(0x1f1)](()=>{var _0x45b727=_0xb8eb28;log('bandwidth\x20set\x20d!\x20'+_0x3592bc),log(_0x41f90e),pokeIframeAPI(_0x45b727(0x5ac),_0x3592bc,_0x46a09d);})[_0xb8eb28(0x49b)](warnlog)):_0x5222ee[_0xb8eb28(0x10a)](_0x41f90e)['then'](()=>{var _0xd21fa9=_0xb8eb28;log(_0xd21fa9(0x2f2)+_0x3592bc),pokeIframeAPI(_0xd21fa9(0x5ac),_0x3592bc,_0x46a09d);})[_0xb8eb28(0x49b)](warnlog);}else warnlog('BROWER\x20DID\x20NOT\x20SUPPORT\x20LIMIT\x20BITRATE');}}catch(_0x2f43c8){errorlog(_0x2f43c8);}};function _0x2d481f(_0x5a31c6,_0x559b6d,_0x1295bf){var _0x426121=_0x173334;if(_0x539db3[_0x426121(0x3f6)])return _0x559b6d;warnlog(_0x426121(0x48a)+_0x559b6d+_0x426121(0x166)+_0x1295bf);if(_0x1295bf<0x0)_0x539db3[_0x426121(0x77a)][_0x5a31c6]['scaleDueToBitrate']=0x64;else{if(_0x1295bf>=0x259)_0x539db3[_0x426121(0x77a)][_0x5a31c6]['scaleDueToBitrate']=0x64;else{if(_0x426121(0x280)in _0x539db3[_0x426121(0x77a)][_0x5a31c6])_0x539db3['pcs'][_0x5a31c6][_0x426121(0x238)]=0x64;else{if(_0x539db3[_0x426121(0x648)])_0x539db3[_0x426121(0x77a)][_0x5a31c6][_0x426121(0x238)]=0x64;else{var _0x4aa88c=getNativeOutputResolution();if(_0x4aa88c)try{_0x4aa88c=_0x4aa88c[_0x426121(0x5f0)]*_0x4aa88c[_0x426121(0x165)],_0x4aa88c=Math[_0x426121(0x797)](_0x4aa88c,0.5);}catch(_0x4d32fa){_0x4aa88c=![];}warnlog(_0x426121(0x805)+_0x4aa88c);if(_0x1295bf>=0x15e){if(_0x4aa88c&&_0x4aa88c<=0x1e0)_0x539db3[_0x426121(0x77a)][_0x5a31c6][_0x426121(0x238)]=0x64;else{if(_0x539db3[_0x426121(0x2c5)]){if(_0x4aa88c&&_0x4aa88c>=0x5a0)_0x539db3[_0x426121(0x77a)][_0x5a31c6][_0x426121(0x238)]=0x64/0x3;else _0x539db3[_0x426121(0x29e)]?_0x4aa88c&&_0x4aa88c>=0x3c0?_0x539db3[_0x426121(0x77a)][_0x5a31c6][_0x426121(0x238)]=0x64/0x2:_0x539db3[_0x426121(0x77a)][_0x5a31c6]['scaleDueToBitrate']=0x64:_0x539db3[_0x426121(0x77a)][_0x5a31c6][_0x426121(0x238)]=0x64/0x2;}else{if(_0x4aa88c&&_0x4aa88c>=0x5a0)_0x539db3[_0x426121(0x77a)][_0x5a31c6]['scaleDueToBitrate']=0x64/2.5;else _0x4aa88c&&_0x4aa88c>=0x3c0?_0x539db3[_0x426121(0x77a)][_0x5a31c6][_0x426121(0x238)]=0x64/0x2:_0x539db3[_0x426121(0x77a)][_0x5a31c6][_0x426121(0x238)]=0x64;}}}else{if(_0x1295bf>=0xc9){if(_0x4aa88c&&_0x4aa88c<0x1e0)_0x539db3[_0x426121(0x77a)][_0x5a31c6][_0x426121(0x238)]=0x64;else{if(_0x539db3[_0x426121(0x2c5)]){if(_0x4aa88c&&_0x4aa88c>=0x5a0)_0x539db3[_0x426121(0x77a)][_0x5a31c6][_0x426121(0x238)]=0x64/0x4;else _0x539db3['flagship']?_0x539db3[_0x426121(0x77a)][_0x5a31c6][_0x426121(0x238)]=0x64/0x2:_0x539db3[_0x426121(0x77a)][_0x5a31c6][_0x426121(0x238)]=0x64/2.5;}else _0x4aa88c&&_0x4aa88c>=0x5a0?_0x539db3['pcs'][_0x5a31c6][_0x426121(0x238)]=0x64/0x3:_0x539db3[_0x426121(0x77a)][_0x5a31c6]['scaleDueToBitrate']=0x64/0x2;}}else{if(_0x4aa88c&&_0x4aa88c<=0xf0)_0x539db3[_0x426121(0x77a)][_0x5a31c6][_0x426121(0x238)]=0x64;else{if(_0x1295bf>=0x51){if(_0x539db3['mobile']){if(_0x4aa88c&&_0x4aa88c>=0x5a0)_0x539db3[_0x426121(0x77a)][_0x5a31c6]['scaleDueToBitrate']=0x64/0x6;else _0x539db3[_0x426121(0x29e)]?_0x539db3[_0x426121(0x77a)][_0x5a31c6][_0x426121(0x238)]=0x64/0x3:_0x539db3[_0x426121(0x77a)][_0x5a31c6]['scaleDueToBitrate']=0x64/0x4;}else _0x4aa88c&&_0x4aa88c>=0x5a0?_0x539db3['pcs'][_0x5a31c6][_0x426121(0x238)]=0x64/0x4:_0x539db3[_0x426121(0x77a)][_0x5a31c6]['scaleDueToBitrate']=0x64/0x3;}else{if(_0x539db3[_0x426121(0x2c5)]){if(_0x4aa88c&&_0x4aa88c>=0x3c0)_0x539db3[_0x426121(0x77a)][_0x5a31c6][_0x426121(0x238)]=0x64/0x6;else _0x539db3[_0x426121(0x29e)]?_0x539db3[_0x426121(0x77a)][_0x5a31c6][_0x426121(0x238)]=0x64/0x4:_0x539db3['pcs'][_0x5a31c6][_0x426121(0x238)]=0x64/0x5;}else _0x4aa88c&&_0x4aa88c>=0x5a0?_0x539db3[_0x426121(0x77a)][_0x5a31c6][_0x426121(0x238)]=0x64/0x5:_0x539db3[_0x426121(0x77a)][_0x5a31c6][_0x426121(0x238)]=0x64/0x4;}}}}}}}}return _0x539db3[_0x426121(0x77a)][_0x5a31c6]['scaleDueToBitrate']<_0x559b6d&&(_0x559b6d=_0x539db3[_0x426121(0x77a)][_0x5a31c6]['scaleDueToBitrate']),_0x559b6d;}function _0x43d6be(_0x118e7f,_0x456246=0x2710){var _0x4a22a9=_0x173334;_0x456246=parseInt(_0x456246);if(_0x539db3[_0x4a22a9(0x71f)])_0x456246+=_0x539db3['audiobitrate'];else{if(_0x539db3[_0x4a22a9(0x29a)]&&_0x539db3[_0x4a22a9(0x3b4)]==0x5)_0x456246+=0x20;else _0x539db3['stereo']&&_0x539db3[_0x4a22a9(0x3b4)]!=0x3?_0x456246+=0x100:_0x456246+=0x20;}return log(_0x4a22a9(0x186)+_0x456246),_0x456246<0x1&&(_0x456246=0x1),_0x118e7f=CodecsHandler[_0x4a22a9(0x742)](_0x118e7f,{'min':parseInt(_0x456246/0xa)||0x1,'max':_0x456246},_0x539db3[_0x4a22a9(0x2af)]),_0x118e7f;}_0x539db3[_0x173334(0x4bb)]=function(_0x48f88f,_0x2bdcba){var _0x1ab6e3=_0x173334;log(_0x48f88f),_0x539db3[_0x1ab6e3(0x7b8)]==={}&&log(_0x1ab6e3(0x654)),window[_0x1ab6e3(0x399)][_0x1ab6e3(0x2e6)]['sign']({'name':_0x1ab6e3(0x3a3)},_0x539db3[_0x1ab6e3(0x7b8)][_0x1ab6e3(0x580)],_0x539db3['enc'][_0x1ab6e3(0x72b)](_0x48f88f))[_0x1ab6e3(0x1f1)](function(_0x161f19){var _0x33a3b4=_0x1ab6e3;_0x161f19=new Uint8Array(_0x161f19),_0x161f19=_0x161f19[_0x33a3b4(0x3b0)]((_0x20ce40,_0x4e2806)=>_0x20ce40+_0x4e2806[_0x33a3b4(0x229)](0x10)[_0x33a3b4(0x7f3)](0x2,'0'),''),_0x2bdcba(_0x48f88f,_0x161f19),log(JSON['stringify'](_0x161f19));})['catch'](errorlog);},_0x539db3[_0x173334(0x6d3)]=function(_0x53bbf0,_0x29315e){var _0x2d4ff8=_0x173334;_0x53bbf0[_0x2d4ff8(0xfd)]=new Uint8Array(_0x53bbf0[_0x2d4ff8(0xfd)][_0x2d4ff8(0x8eb)](/.{1,2}/g)[_0x2d4ff8(0x1e8)](_0x59a2a9=>parseInt(_0x59a2a9,0x10)));if(_0x539db3['keys'][_0x29315e][_0x2d4ff8(0x5e4)])return window['crypto']['subtle'][_0x2d4ff8(0x4ea)]({'name':_0x2d4ff8(0x3a3)},_0x539db3[_0x2d4ff8(0x39b)][_0x29315e]['publicKey'],_0x53bbf0[_0x2d4ff8(0xfd)],_0x539db3['enc'][_0x2d4ff8(0x72b)](_0x53bbf0[_0x2d4ff8(0x4b6)]))[_0x2d4ff8(0x1f1)](function(_0x40f162){return _0x40f162;})[_0x2d4ff8(0x49b)](function(_0x13e799){return errorlog(_0x13e799),![];});},_0x539db3[_0x173334(0x353)]=function(_0x55eb15){var _0x224d7a=_0x173334;if(_0x539db3[_0x224d7a(0x39f)])return _0x539db3[_0x224d7a(0x84b)]!==![]?(_0x55eb15=_0x55eb15[_0x224d7a(0x826)](0x0,-0x1*_0x539db3[_0x224d7a(0x84b)][_0x224d7a(0x425)]),_0x55eb15):generateHash(_0x539db3[_0x224d7a(0x39f)]+_0x539db3['salt'],0x6)[_0x224d7a(0x1f1)](function(_0x1ef25c){var _0x5788cd=_0x224d7a;return _0x539db3[_0x5788cd(0x84b)]=_0x1ef25c,_0x55eb15=_0x55eb15['slice'](0x0,-0x1*_0x539db3[_0x5788cd(0x84b)]['length']),_0x55eb15;})['catch'](errorlog);return _0x55eb15;},_0x539db3[_0x173334(0x7ea)]=function(){var _0x1bf8f1=_0x173334;if(_0x539db3['customWSS'])return;clearTimeout(_0x539db3[_0x1bf8f1(0x5db)]);if(!_0x539db3['ws']||_0x539db3['ws'][_0x1bf8f1(0x298)]!==0x1)return;_0x539db3[_0x1bf8f1(0x5db)]=setTimeout(function(){var _0x1b8b69=_0x1bf8f1;log('Pinging');var _0x3fc7ad={};_0x3fc7ad[_0x1b8b69(0x668)]=_0x1b8b69(0x7ea),_0x539db3[_0x1b8b69(0x555)](_0x3fc7ad);},0xbb8);},_0x539db3[_0x173334(0x7f9)]=async function(_0x148b26){var _0x431828=_0x173334;await _0x539db3[_0x431828(0x776)]();if(_0x148b26[_0x431828(0x425)]>0x0){if(_0x148b26===_0x539db3[_0x431828(0x562)]){warnlog(_0x431828(0x6ca));return;}var _0x3f1fda={};_0x3f1fda['request']=_0x431828(0x81f),_0x3f1fda[_0x431828(0x562)]=_0x148b26,_0x539db3[_0x431828(0x555)](_0x3f1fda),_0x539db3[_0x431828(0x824)][_0x148b26]=!![],pokeIframeAPI(_0x431828(0x48d),_0x148b26);}else log('stream\x20ID\x20is\x200\x20length');},_0x539db3[_0x173334(0x789)]=async function _0x3e9093(_0x31b829){var _0x5eec46=_0x173334;await _0x539db3[_0x5eec46(0x776)]();var _0x306aca={};return _0x306aca[_0x5eec46(0x668)]='joinroom',_0x539db3['director']&&!_0x539db3[_0x5eec46(0x713)]&&(_0x306aca[_0x5eec46(0x3e4)]=!![]),_0x539db3[_0x5eec46(0x106)]&&(_0x306aca[_0x5eec46(0x562)]=_0x539db3['streamID']),_0x539db3[_0x5eec46(0x183)]===![]&&(_0x539db3['joiningRoom']=!![]),_0x539db3[_0x5eec46(0x39f)]?_0x539db3['hash']?generateHash(_0x31b829+_0x539db3[_0x5eec46(0x39f)]+_0x539db3[_0x5eec46(0x48c)],0x10)[_0x5eec46(0x1f1)](function(_0x2f6692){var _0x423954=_0x5eec46;return _0x539db3[_0x423954(0x106)]&&(_0x539db3[_0x423954(0x29b)]=_0x2f6692),_0x306aca[_0x423954(0x4f6)]=_0x2f6692,_0x539db3[_0x423954(0x555)](_0x306aca),_0x539db3[_0x423954(0x3d2)]=_0x20abf0(),log(_0x423954(0x138)),pokeIframeAPI(_0x423954(0x3ee),_0x31b829),_0x539db3[_0x423954(0x3d2)];})['catch'](errorlog):generateHash(_0x539db3['password']+_0x539db3[_0x5eec46(0x48c)],0x6)['then'](function(_0x498faa){var _0x9b2322=_0x5eec46;return _0x539db3[_0x9b2322(0x84b)]=_0x498faa,log('hash\x20is\x20'+_0x498faa),log(_0x9b2322(0x290)),_0x539db3[_0x9b2322(0x789)](_0x31b829);})[_0x5eec46(0x49b)](errorlog):(_0x539db3[_0x5eec46(0x106)]&&(_0x539db3[_0x5eec46(0x29b)]=_0x31b829),_0x306aca[_0x5eec46(0x4f6)]=_0x31b829,_0x539db3[_0x5eec46(0x555)](_0x306aca),_0x539db3['listPromise']=_0x20abf0(),log(_0x5eec46(0x771)),pokeIframeAPI(_0x5eec46(0x3ee),_0x31b829),_0x539db3[_0x5eec46(0x3d2)]);},_0x539db3[_0x173334(0x555)]=function(_0x187a1c,_0x4e6efc=![]){var _0x23fbd5=_0x173334;_0x4e6efc&&(_0x187a1c[_0x23fbd5(0x5f9)]=_0x4e6efc);if(_0x539db3['customWSS']){_0x539db3[_0x23fbd5(0x5f9)]?_0x187a1c['from']=_0x539db3['UUID']:(_0x539db3[_0x23fbd5(0x5f9)]=_0x539db3[_0x23fbd5(0x4fd)](0x14),_0x187a1c[_0x23fbd5(0x51b)]=_0x539db3['UUID']);if(_0x187a1c[_0x23fbd5(0x5f9)]&&_0x187a1c[_0x23fbd5(0x51b)]===_0x187a1c[_0x23fbd5(0x5f9)])return;_0x539db3[_0x23fbd5(0x29a)]&&(_0x187a1c[_0x23fbd5(0x29a)]=!![]),!(_0x23fbd5(0x4f6)in _0x187a1c)&&(_0x539db3[_0x23fbd5(0x29b)]&&(_0x187a1c[_0x23fbd5(0x4f6)]=_0x539db3[_0x23fbd5(0x29b)]));}clearTimeout(_0x539db3[_0x23fbd5(0x5db)]);try{if(_0x539db3['password']){if(_0x187a1c['streamID']){if(_0x539db3[_0x23fbd5(0x84b)]!==![]){if(_0x539db3['ws']===null||(typeof _0x539db3['ws']!=='object'||_0x539db3['ws'][_0x23fbd5(0x298)]!==0x1))log(_0x187a1c,'could\x20not\x20be\x20sent;\x20queuing\x20it'),_0x539db3['msg'][_0x23fbd5(0x6d6)](_0x187a1c);else{_0x187a1c[_0x23fbd5(0x562)]=_0x187a1c[_0x23fbd5(0x562)][_0x23fbd5(0x7b5)](0x0,0x2c)+_0x539db3['hash'][_0x23fbd5(0x7b5)](0x0,0x6);var _0xc9a769=JSON[_0x23fbd5(0x924)](_0x187a1c);if(_0xc9a769[_0x23fbd5(0x425)]>0x3a98){errorlog('msg\x20size\x20error'),errorlog(_0x187a1c),errorlog(_0xc9a769['length']);return;}_0x539db3['ws'][_0x23fbd5(0x37d)](_0xc9a769);}}else return generateHash(_0x539db3[_0x23fbd5(0x39f)]+_0x539db3[_0x23fbd5(0x48c)],0x6)['then'](function(_0x18a752){var _0x238086=_0x23fbd5;_0x539db3[_0x238086(0x84b)]=_0x18a752;if(typeof _0x539db3['ws']!==_0x238086(0x12c)||_0x539db3['ws'][_0x238086(0x298)]!==0x1)log(_0x187a1c,_0x238086(0x743)),_0x539db3[_0x238086(0x4c2)][_0x238086(0x6d6)](_0x187a1c);else{_0x187a1c['streamID']=_0x187a1c[_0x238086(0x562)][_0x238086(0x7b5)](0x0,0x2c)+_0x539db3[_0x238086(0x84b)][_0x238086(0x7b5)](0x0,0x6);var _0x4eccd1=JSON[_0x238086(0x924)](_0x187a1c);if(_0x4eccd1[_0x238086(0x425)]>0x3a98){errorlog(_0x238086(0x395));return;}_0x539db3['ws'][_0x238086(0x37d)](_0x4eccd1);}})[_0x23fbd5(0x49b)](errorlog);}else{if(_0x539db3['ws']===null||(typeof _0x539db3['ws']!==_0x23fbd5(0x12c)||_0x539db3['ws'][_0x23fbd5(0x298)]!==0x1))log(_0x187a1c,'could\x20not\x20be\x20sent;\x20queuing\x20it'),_0x539db3[_0x23fbd5(0x4c2)][_0x23fbd5(0x6d6)](_0x187a1c);else{var _0xc9a769=JSON[_0x23fbd5(0x924)](_0x187a1c);if(_0xc9a769[_0x23fbd5(0x425)]>0x3a98){errorlog(_0x23fbd5(0x395));return;}_0x539db3['ws'][_0x23fbd5(0x37d)](_0xc9a769);}}}else{if(typeof _0x539db3['ws']!==_0x23fbd5(0x12c)||_0x539db3['ws'][_0x23fbd5(0x298)]!==0x1)warnlog(_0x23fbd5(0x5af)),_0x539db3[_0x23fbd5(0x4c2)][_0x23fbd5(0x6d6)](_0x187a1c);else{var _0xc9a769=JSON['stringify'](_0x187a1c);if(_0xc9a769[_0x23fbd5(0x425)]>0x3a98){errorlog('msg\x20size\x20error');return;}_0x539db3['ws'][_0x23fbd5(0x37d)](_0xc9a769);}}}catch(_0x25bfdf){errorlog(_0x25bfdf);}},_0x539db3[_0x173334(0x87f)]=function(_0x474942,_0x140e9a=![]){var _0x50da7c=_0x173334,_0x403349=[],_0x4aba3f=JSON['stringify'](_0x474942);for(var _0x11e755 in _0x539db3[_0x50da7c(0x77a)]){if(_0x140e9a&&_0x140e9a!==_0x11e755)continue;try{_0x539db3['pcs'][_0x11e755]['sendChannel'][_0x50da7c(0x37d)](_0x4aba3f),_0x403349[_0x50da7c(0x6d6)](_0x11e755);}catch(_0xb1ac9){warnlog(_0x50da7c(0x4f0));}if(_0x140e9a&&_0x140e9a===_0x11e755)return _0x403349[_0x50da7c(0x425)];}for(var _0x11e755 in _0x539db3[_0x50da7c(0x51f)]){if(_0x140e9a&&_0x140e9a!==_0x11e755)continue;if(_0x403349[_0x50da7c(0x4ee)](_0x11e755))continue;try{if(_0x50da7c(0x280)in _0x539db3[_0x50da7c(0x51f)][_0x11e755]){var _0xc30bd3=JSON[_0x50da7c(0x70e)](_0x474942);_0xc30bd3[_0x50da7c(0x808)]=!![],_0xc30bd3=JSON[_0x50da7c(0x924)](_0xc30bd3),_0x539db3[_0x50da7c(0x51f)][_0x539db3[_0x50da7c(0x51f)][_0x11e755][_0x50da7c(0x280)]][_0x50da7c(0x781)]['send'](_0xc30bd3);}else _0x539db3[_0x50da7c(0x51f)][_0x11e755][_0x50da7c(0x781)]['send'](_0x4aba3f);_0x403349[_0x50da7c(0x6d6)](_0x11e755);}catch(_0x205003){warnlog(_0x50da7c(0x1ea));}}return _0x403349[_0x50da7c(0x425)];},_0x539db3[_0x173334(0x539)]=function(_0x2049ab,_0x22e0b0=![]){var _0x378b3c=_0x173334,_0x4ac5ae=![];if('UUID'in _0x2049ab)_0x4ac5ae=_0x539db3[_0x378b3c(0x70a)](_0x2049ab,_0x2049ab[_0x378b3c(0x5f9)]),_0x4ac5ae?(log(_0x2049ab),log(_0x378b3c(0x36d))):(log(_0x378b3c(0x47f)),_0x539db3[_0x378b3c(0x555)](_0x2049ab));else _0x22e0b0?(_0x4ac5ae=_0x539db3[_0x378b3c(0x70a)](_0x2049ab),_0x4ac5ae?(log(_0x2049ab),log(_0x378b3c(0x491))):(log('sending\x20message\x20via\x20WSS\x20as\x20WebRTC\x20failed\x20to\x20send\x20message;\x20RTC\x20peers\x20only'),_0x539db3[_0x378b3c(0x555)](_0x2049ab))):(_0x539db3[_0x378b3c(0x555)](_0x2049ab),warnlog(_0x378b3c(0x184)),warnlog(_0x2049ab));},_0x539db3[_0x173334(0x2e1)]=function(_0x17ab78,_0x17a77c=![]){var _0x40fb1a=_0x173334,_0x42db71=![];if(_0x40fb1a(0x5f9)in _0x17ab78)_0x42db71=_0x539db3[_0x40fb1a(0x8fb)](_0x17ab78,_0x17ab78[_0x40fb1a(0x5f9)]),_0x42db71?log('successfully\x20sent\x20message\x20vis\x20WebRTC\x20instead\x20of\x20WSS'):(log(_0x40fb1a(0x47f)),_0x539db3[_0x40fb1a(0x555)](_0x17ab78));else _0x17a77c?(_0x42db71=_0x539db3[_0x40fb1a(0x8fb)](_0x17ab78),_0x42db71?log(_0x40fb1a(0x491)):(log(_0x40fb1a(0x1eb)),_0x539db3[_0x40fb1a(0x555)](_0x17ab78))):(_0x539db3['sendMsg'](_0x17ab78),warnlog(_0x40fb1a(0x79d)),warnlog(_0x17ab78));},_0x539db3[_0x173334(0x51c)]=function(_0x4a74d2){var _0x2a2200=_0x173334;log(_0x4a74d2);if(_0x2a2200(0x89f)in _0x4a74d2){if('target'in _0x4a74d2){if(_0x2a2200(0x4a4)in _0x4a74d2){if(_0x539db3[_0x2a2200(0x4a4)]!==![]){var _0x141a96=![],_0x20e773=0x0;for(var _0x3789f6 in _0x539db3[_0x2a2200(0x51f)]){_0x20e773+=0x1;if(_0x539db3[_0x2a2200(0x51f)][_0x3789f6]['streamID']===_0x4a74d2[_0x2a2200(0x632)]){if('value'in _0x4a74d2){if(_0x4a74d2['action']==_0x2a2200(0xe3))_0x4a74d2[_0x2a2200(0x4a2)]==0x1?(log(_0x2a2200(0x93d)),_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x7cb)]=!![],applyMuteState(_0x3789f6)):(log('Unmute\x20video'),_0x539db3[_0x2a2200(0x51f)][_0x3789f6]['mutedState']=![],applyMuteState(_0x3789f6)),_0x539db3[_0x2a2200(0x2b9)](_0x3789f6);else{if(_0x4a74d2[_0x2a2200(0x89f)]=='display'){if(_0x539db3['view'])return;;if(_0x539db3['scene']===_0x4a74d2['scene']){if(_0x539db3['sceneType']==0x2){if(_0x4a74d2[_0x2a2200(0x4a2)]==0x0){_0x539db3['rpcs'][_0x3789f6]['mutedStateScene']=!![],applyMuteState(_0x3789f6);_0x539db3['rpcs'][_0x3789f6][_0x2a2200(0x792)]&&(_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x792)][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]&&_0x539db3[_0x2a2200(0x51f)][_0x3789f6]['videoElement']['style'][_0x2a2200(0x6ba)]!==_0x2a2200(0x1e0)&&(_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x792)][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]=_0x2a2200(0x1e0),_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x792)][_0x2a2200(0x3de)]=![],_0x141a96=!![]));_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x1fa)]&&_0x539db3['rpcs'][_0x3789f6][_0x2a2200(0x1fa)][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]&&_0x539db3[_0x2a2200(0x51f)][_0x3789f6]['iframeEle'][_0x2a2200(0x5c1)]['display']!==_0x2a2200(0x1e0)&&(_0x539db3['rpcs'][_0x3789f6][_0x2a2200(0x1fa)]['style'][_0x2a2200(0x6ba)]=_0x2a2200(0x1e0),_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x1fa)][_0x2a2200(0x3de)]=![],_0x141a96=!![]);var _0x4816cb=0x0,_0x58fe6d=![];for(var _0x4e9826 in _0x539db3[_0x2a2200(0x51f)]){_0x4e9826!==_0x3789f6&&(_0x539db3['rpcs'][_0x4e9826][_0x2a2200(0x792)]&&_0x539db3[_0x2a2200(0x51f)][_0x4e9826][_0x2a2200(0x792)][_0x2a2200(0x3de)]&&(_0x539db3[_0x2a2200(0x51f)][_0x4e9826][_0x2a2200(0x792)]['sceneType2']>_0x4816cb&&(_0x4816cb=_0x539db3[_0x2a2200(0x51f)][_0x4e9826][_0x2a2200(0x792)]['sceneType2'],_0x58fe6d=_0x4e9826)),_0x539db3['rpcs'][_0x4e9826][_0x2a2200(0x1fa)]&&_0x539db3[_0x2a2200(0x51f)][_0x4e9826][_0x2a2200(0x1fa)][_0x2a2200(0x3de)]&&(_0x539db3[_0x2a2200(0x51f)][_0x4e9826]['iframeEle'][_0x2a2200(0x3de)]>_0x4816cb&&(_0x4816cb=_0x539db3[_0x2a2200(0x51f)][_0x4e9826][_0x2a2200(0x1fa)][_0x2a2200(0x3de)],_0x58fe6d=_0x4e9826)));}_0x58fe6d&&(_0x539db3['rpcs'][_0x58fe6d][_0x2a2200(0x475)]=![],applyMuteState(_0x58fe6d),_0x539db3[_0x2a2200(0x51f)][_0x58fe6d][_0x2a2200(0x792)]&&(_0x539db3[_0x2a2200(0x51f)][_0x58fe6d][_0x2a2200(0x792)][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]&&_0x539db3[_0x2a2200(0x51f)][_0x58fe6d]['videoElement']['style'][_0x2a2200(0x6ba)]!==_0x2a2200(0x756)&&(_0x539db3[_0x2a2200(0x51f)][_0x58fe6d][_0x2a2200(0x792)][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]=_0x2a2200(0x756),_0x539db3[_0x2a2200(0x51f)][_0x58fe6d]['videoElement'][_0x2a2200(0x3de)]=Date[_0x2a2200(0x5a8)](),_0x141a96=!![]),_0x539db3['rpcs'][_0x58fe6d]['videoElement'][_0x2a2200(0x7a7)]&&clearInterval(_0x539db3[_0x2a2200(0x51f)][_0x58fe6d][_0x2a2200(0x792)][_0x2a2200(0x7a7)]),_0x539db3[_0x2a2200(0x51f)][_0x58fe6d][_0x2a2200(0x792)][_0x2a2200(0x204)]=![],_0x539db3[_0x2a2200(0x51f)][_0x58fe6d]['videoElement'][_0x2a2200(0x7a7)]=setTimeout(showControlBar[_0x2a2200(0x7ab)](null,_0x539db3['rpcs'][_0x58fe6d][_0x2a2200(0x792)]),0xbb8)),_0x539db3[_0x2a2200(0x51f)][_0x58fe6d][_0x2a2200(0x1fa)]&&_0x539db3[_0x2a2200(0x51f)][_0x58fe6d][_0x2a2200(0x1fa)]['style'][_0x2a2200(0x6ba)]&&_0x539db3[_0x2a2200(0x51f)][_0x58fe6d]['iframeEle']['style'][_0x2a2200(0x6ba)]!==_0x2a2200(0x756)&&(_0x539db3[_0x2a2200(0x51f)][_0x58fe6d][_0x2a2200(0x1fa)][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]=_0x2a2200(0x756),_0x539db3['rpcs'][_0x58fe6d][_0x2a2200(0x1fa)][_0x2a2200(0x3de)]=Date['now'](),_0x141a96=!![]));}else{for(var _0x4e9826 in _0x539db3[_0x2a2200(0x51f)]){_0x4e9826!==_0x3789f6&&(_0x539db3[_0x2a2200(0x51f)][_0x4e9826]['mutedStateScene']=!![],applyMuteState(_0x4e9826),_0x539db3[_0x2a2200(0x51f)][_0x4e9826]['videoElement']&&(_0x539db3[_0x2a2200(0x51f)][_0x4e9826][_0x2a2200(0x792)][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]&&_0x539db3[_0x2a2200(0x51f)][_0x4e9826][_0x2a2200(0x792)][_0x2a2200(0x5c1)]['display']!==_0x2a2200(0x1e0)&&(_0x539db3[_0x2a2200(0x51f)][_0x4e9826][_0x2a2200(0x792)][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]=_0x2a2200(0x1e0),_0x141a96=!![])),_0x539db3[_0x2a2200(0x51f)][_0x4e9826][_0x2a2200(0x1fa)]&&_0x539db3[_0x2a2200(0x51f)][_0x4e9826]['iframeEle'][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]&&_0x539db3['rpcs'][_0x4e9826]['iframeEle'][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]!==_0x2a2200(0x1e0)&&(_0x539db3[_0x2a2200(0x51f)][_0x4e9826][_0x2a2200(0x1fa)][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]=_0x2a2200(0x1e0),_0x141a96=!![]));}_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x475)]=![],applyMuteState(_0x3789f6),_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x792)]&&(_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x792)]['style'][_0x2a2200(0x6ba)]&&_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x792)][_0x2a2200(0x5c1)]['display']!==_0x2a2200(0x756)&&(_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x792)][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]='block',_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x792)]['sceneType2']=Date[_0x2a2200(0x5a8)](),_0x141a96=!![]),_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x792)][_0x2a2200(0x7a7)]&&clearInterval(_0x539db3[_0x2a2200(0x51f)][_0x3789f6]['videoElement'][_0x2a2200(0x7a7)]),_0x539db3[_0x2a2200(0x51f)][_0x3789f6]['videoElement'][_0x2a2200(0x204)]=![],_0x539db3['rpcs'][_0x3789f6][_0x2a2200(0x792)][_0x2a2200(0x7a7)]=setTimeout(showControlBar[_0x2a2200(0x7ab)](null,_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x792)]),0xbb8)),_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x1fa)]&&_0x539db3[_0x2a2200(0x51f)][_0x3789f6]['iframeEle'][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]&&_0x539db3[_0x2a2200(0x51f)][_0x3789f6]['iframeEle']['style'][_0x2a2200(0x6ba)]!=='block'&&(_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x1fa)]['style'][_0x2a2200(0x6ba)]='block',_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x1fa)][_0x2a2200(0x3de)]=Date[_0x2a2200(0x5a8)](),_0x141a96=!![]);}}else{if(_0x539db3[_0x2a2200(0x8df)]==0x1){if(_0x4a74d2[_0x2a2200(0x4a2)]==0x0)_0x539db3[_0x2a2200(0x51f)][_0x3789f6]['videoElement']&&(_0x539db3['rpcs'][_0x3789f6][_0x2a2200(0x792)][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]&&_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x792)]['style'][_0x2a2200(0x6ba)]!==_0x2a2200(0x1e0)&&(_0x539db3[_0x2a2200(0x51f)][_0x3789f6]['videoElement'][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]=_0x2a2200(0x1e0),_0x141a96=!![])),_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x1fa)]&&_0x539db3[_0x2a2200(0x51f)][_0x3789f6]['iframeEle'][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]&&_0x539db3[_0x2a2200(0x51f)][_0x3789f6]['iframeEle'][_0x2a2200(0x5c1)]['display']!==_0x2a2200(0x1e0)&&(_0x539db3[_0x2a2200(0x51f)][_0x3789f6]['iframeEle'][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]=_0x2a2200(0x1e0),_0x141a96=!![]);else{for(var _0x4e9826 in _0x539db3['rpcs']){_0x4e9826!==_0x3789f6&&(_0x539db3['rpcs'][_0x4e9826][_0x2a2200(0x792)]&&(_0x539db3[_0x2a2200(0x51f)][_0x4e9826]['videoElement'][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]&&_0x539db3[_0x2a2200(0x51f)][_0x4e9826][_0x2a2200(0x792)]['style']['display']!=='none'&&(_0x539db3[_0x2a2200(0x51f)][_0x4e9826][_0x2a2200(0x792)][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]=_0x2a2200(0x1e0),_0x141a96=!![])),_0x539db3['rpcs'][_0x4e9826][_0x2a2200(0x1fa)]&&_0x539db3[_0x2a2200(0x51f)][_0x4e9826][_0x2a2200(0x1fa)][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]&&_0x539db3['rpcs'][_0x4e9826][_0x2a2200(0x1fa)]['style']['display']!==_0x2a2200(0x1e0)&&(_0x539db3[_0x2a2200(0x51f)][_0x4e9826]['iframeEle'][_0x2a2200(0x5c1)]['display']='none',_0x141a96=!![]));}_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x792)]&&(_0x539db3[_0x2a2200(0x51f)][_0x3789f6]['videoElement'][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]&&_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x792)][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]!==_0x2a2200(0x756)&&(_0x539db3['rpcs'][_0x3789f6]['videoElement'][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]=_0x2a2200(0x756),_0x141a96=!![]),_0x539db3[_0x2a2200(0x51f)][_0x3789f6]['videoElement']['controlTimer']&&clearInterval(_0x539db3['rpcs'][_0x3789f6][_0x2a2200(0x792)][_0x2a2200(0x7a7)]),_0x539db3['rpcs'][_0x3789f6][_0x2a2200(0x792)][_0x2a2200(0x204)]=![],_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x792)][_0x2a2200(0x7a7)]=setTimeout(showControlBar[_0x2a2200(0x7ab)](null,_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x792)]),0xbb8)),_0x539db3[_0x2a2200(0x51f)][_0x3789f6]['iframeEle']&&_0x539db3['rpcs'][_0x3789f6]['iframeEle'][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]&&_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x1fa)]['style'][_0x2a2200(0x6ba)]!==_0x2a2200(0x756)&&(_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x1fa)][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]='block',_0x141a96=!![]);}}else _0x4a74d2[_0x2a2200(0x4a2)]==0x0?(_0x539db3['rpcs'][_0x3789f6][_0x2a2200(0x475)]=!![],applyMuteState(_0x3789f6),_0x539db3['rpcs'][_0x3789f6]['videoElement']&&(_0x539db3[_0x2a2200(0x51f)][_0x3789f6]['videoElement'][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]&&_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x792)]['style']['display']!==_0x2a2200(0x1e0)&&(_0x539db3[_0x2a2200(0x51f)][_0x3789f6]['videoElement']['style'][_0x2a2200(0x6ba)]=_0x2a2200(0x1e0),_0x141a96=!![])),_0x539db3['rpcs'][_0x3789f6]['iframeEle']&&_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x1fa)][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]&&_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x1fa)][_0x2a2200(0x5c1)]['display']!==_0x2a2200(0x1e0)&&(_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x1fa)][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]=_0x2a2200(0x1e0),_0x141a96=!![])):(_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x475)]=![],applyMuteState(_0x3789f6),_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x792)]&&(_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x792)][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]&&_0x539db3[_0x2a2200(0x51f)][_0x3789f6]['videoElement'][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]!==_0x2a2200(0x756)&&(_0x539db3['rpcs'][_0x3789f6]['videoElement'][_0x2a2200(0x5c1)][_0x2a2200(0x6ba)]=_0x2a2200(0x756),_0x141a96=!![]),_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x792)][_0x2a2200(0x7a7)]&&clearInterval(_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x792)][_0x2a2200(0x7a7)]),_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x792)][_0x2a2200(0x204)]=![],_0x539db3[_0x2a2200(0x51f)][_0x3789f6]['videoElement'][_0x2a2200(0x7a7)]=setTimeout(showControlBar[_0x2a2200(0x7ab)](null,_0x539db3[_0x2a2200(0x51f)][_0x3789f6]['videoElement']),0xbb8)),_0x539db3[_0x2a2200(0x51f)][_0x3789f6]['iframeEle']&&_0x539db3['rpcs'][_0x3789f6][_0x2a2200(0x1fa)]['style'][_0x2a2200(0x6ba)]&&_0x539db3[_0x2a2200(0x51f)][_0x3789f6][_0x2a2200(0x1fa)]['style'][_0x2a2200(0x6ba)]!==_0x2a2200(0x756)&&(_0x539db3[_0x2a2200(0x51f)][_0x3789f6]['iframeEle'][_0x2a2200(0x5c1)]['display']=_0x2a2200(0x756),_0x141a96=!![]));}}_0x539db3[_0x2a2200(0x2b9)](_0x3789f6);}else _0x4a74d2[_0x2a2200(0x89f)]==_0x2a2200(0x3be)&&(log(parseInt(_0x4a74d2[_0x2a2200(0x4a2)])/0x64),_0x539db3[_0x2a2200(0x51f)][_0x3789f6]['videoElement']&&(_0x539db3['rpcs'][_0x3789f6]['videoElement'][_0x2a2200(0x3be)]=parseInt(_0x4a74d2[_0x2a2200(0x4a2)])/0x64,log(_0x2a2200(0x2d2))));}}}}_0x141a96&&updateMixer();}}else{if(_0x4a74d2[_0x2a2200(0x89f)]==_0x2a2200(0x5c9)){}else{if(_0x4a74d2['action']=='hangup'){}}}}else _0x4a74d2[_0x2a2200(0x89f)]==='layout'&&(warnlog(_0x2a2200(0x881)),log(_0x4a74d2),_0x539db3[_0x2a2200(0x10e)]=_0x4a74d2[_0x2a2200(0x4a2)],pokeIframeAPI(_0x2a2200(0x737),_0x539db3[_0x2a2200(0x10e)]),updateMixer());}},_0x539db3[_0x173334(0x581)]=function(){var _0x3dac37=_0x173334;_0x539db3['directorUUID']in _0x539db3[_0x3dac37(0x77a)]&&(_0x539db3['pcs'][_0x539db3[_0x3dac37(0x4c3)]]['stats'][_0x3dac37(0x61a)]&&(_0x539db3['pcs'][_0x539db3[_0x3dac37(0x4c3)]][_0x3dac37(0x27b)][_0x3dac37(0x61a)][_0x3dac37(0x29a)]=!![])),_0x539db3[_0x3dac37(0x4c3)]in _0x539db3[_0x3dac37(0x51f)]&&(_0x539db3[_0x3dac37(0x51f)][_0x539db3[_0x3dac37(0x4c3)]][_0x3dac37(0x27b)][_0x3dac37(0x61a)]&&(_0x539db3['rpcs'][_0x539db3[_0x3dac37(0x4c3)]]['stats']['info'][_0x3dac37(0x29a)]=!![]),_0x539db3['director']&&(getById('container_'+_0x539db3[_0x3dac37(0x4c3)])[_0x3dac37(0x750)][_0x3dac37(0x897)](_0x3dac37(0x521)),_0x539db3['rpcs'][_0x539db3['directorUUID']][_0x3dac37(0x4bc)]===![]&&(getById(_0x3dac37(0x8d0)+_0x539db3[_0x3dac37(0x4c3)])['innerText']=miscTranslations['main-director']))),_0x539db3[_0x3dac37(0x4c6)](),updateUserList();},_0x539db3[_0x173334(0x776)]=async function _0x1e481b(_0x5781dc=![]){var _0x633517=_0x173334;if(_0x539db3[_0x633517(0x1ae)]===!![]){log(_0x633517(0x1d8));return;}if(_0x539db3['ws']!==null){log('already\x20connected');return;}_0x539db3[_0x633517(0x155)]==![]&&(_0x539db3['proxy']!==![]?_0x539db3['wss']=_0x633517(0x2de):_0x539db3[_0x633517(0x155)]='wss://wss.vdo.ninja:443');if(!RTCPeerConnection){console[_0x633517(0x7e8)](miscTranslations[_0x633517(0x8b4)]);!_0x539db3['cleanOutput']&&warnUser(miscTranslations[_0x633517(0x8b4)],![],![]);return;}_0x539db3['ws']===null&&(_0x539db3['ws']=![],await chooseBestTURN());if(_0x539db3[_0x633517(0x106)]===![]){_0x539db3[_0x633517(0x844)]=_0x539db3[_0x633517(0x4fd)](0xc);for(var _0x147578 in _0x539db3[_0x633517(0x51f)]){warnlog(_0x633517(0x492)),_0x539db3[_0x633517(0x51f)][_0x147578][_0x633517(0x495)]===_0x633517(0x133)&&(_0x539db3[_0x633517(0x3a8)](_0x147578),warnlog(_0x633517(0x76d)));}}_0x539db3['bypass']?(_0x539db3['ws']={},_0x539db3['ws'][_0x633517(0x298)]=0x1,_0x539db3['ws'][_0x633517(0x37d)]=function(_0x4e1c6c){var _0x4c6339=_0x633517;parent[_0x4c6339(0x423)]({'bypass':_0x4e1c6c},_0x539db3[_0x4c6339(0x63b)]);},setTimeout(function(){var _0x1446c3=_0x633517;_0x539db3['ws'][_0x1446c3(0x918)]();},0xa)):_0x539db3['ws']=new WebSocket(_0x539db3['wss']),_0x5781dc==![]&&(_0x539db3['timeout']=setTimeout(function(){var _0x1d69ee=_0x633517;pokeIframeAPI(_0x1d69ee(0x836),_0x1d69ee(0x18f)),errorlog('Websockets\x20timed\x20out;\x2030\x20seconds'),!_0x539db3[_0x1d69ee(0x50b)]&&(!_0x539db3['studioSoftware']&&setTimeout(function(){warnUser(miscTranslations['site-not-responsive'],![],![]);},0x1));},0x7530)),_0x539db3['ws'][_0x633517(0x918)]=function _0x52ce49(){var _0x56e87a=_0x633517;clearTimeout(_0x539db3[_0x56e87a(0x5db)]),clearInterval(_0x539db3[_0x56e87a(0x18f)]),log(_0x56e87a(0x28c)),checkConnection();if(_0x539db3[_0x56e87a(0x241)]){errorlog(_0x56e87a(0x90f));for(_0x572df4 in _0x539db3[_0x56e87a(0x51f)]){try{_0x539db3[_0x56e87a(0x51f)][_0x572df4][_0x56e87a(0x7c0)]();}catch(_0x229374){}}for(_0x572df4 in _0x539db3[_0x56e87a(0x77a)]){try{_0x539db3['pcs'][_0x572df4][_0x56e87a(0x7c0)]();}catch(_0x3a5bde){}}_0x539db3[_0x56e87a(0x241)]=![],_0x539db3[_0x56e87a(0x2f1)]=![];}if(_0x539db3[_0x56e87a(0x4c2)]!==[])try{var _0x26ae32=_0x539db3[_0x56e87a(0x4c2)][_0x56e87a(0x826)](-0x1e);_0x539db3[_0x56e87a(0x4c2)]=[];for(var _0x479d30 in _0x26ae32){log(_0x56e87a(0x5df)),_0x539db3[_0x56e87a(0x555)](_0x26ae32[_0x479d30]);}}catch(_0x470d1b){errorlog(_0x470d1b);}if(_0x5781dc==!![]){pokeIframeAPI('hssConnection',_0x56e87a(0x7e7));_0x539db3[_0x56e87a(0x4eb)]&&_0x539db3[_0x56e87a(0x35e)]();if(_0x539db3[_0x56e87a(0x4f6)]!==![]){if(_0x539db3['roomid']===''&&(!_0x539db3[_0x56e87a(0x757)]||_0x539db3[_0x56e87a(0x757)]==='')){}else log(_0x56e87a(0x2d3)),log(_0x56e87a(0x2b8)),joinRoom(_0x539db3[_0x56e87a(0x4f6)]);if(_0x539db3['include']['length']){var _0x3a8336=Object['keys'](_0x539db3['waitingWatchList']);for(var _0x572df4 in _0x3a8336){_0x539db3[_0x56e87a(0x160)][_0x56e87a(0x4ee)](_0x3a8336[_0x572df4])&&(log(_0x56e87a(0x197)+_0x3a8336[_0x572df4]),_0x539db3[_0x56e87a(0x7f9)](_0x3a8336[_0x572df4]));}}}else{var _0x3a8336=Object[_0x56e87a(0x39b)](_0x539db3[_0x56e87a(0x824)]);for(var _0x572df4 in _0x3a8336){log(_0x56e87a(0x197)+_0x3a8336[_0x572df4]),_0x539db3[_0x56e87a(0x7f9)](_0x3a8336[_0x572df4]);}}}else pokeIframeAPI(_0x56e87a(0x836),_0x56e87a(0x7f7));},_0x539db3['requestStream']=function(_0x328669){var _0x181913=_0x633517;for(var _0x3ebf5b in _0x539db3[_0x181913(0x51f)]){if(_0x539db3[_0x181913(0x51f)][_0x3ebf5b][_0x181913(0x562)]===_0x328669)return log(_0x181913(0x23d)),![];}if(_0x539db3['waitingWatchList'][_0x328669])return log(_0x181913(0x510)),![];return _0x539db3['watchStream'](_0x328669),log('requesting\x20stream'),!![];},_0x539db3['ws']['onmessage']=async function(_0x18603f){var _0x91a21e=_0x633517;clearTimeout(_0x539db3[_0x91a21e(0x5db)]);try{var _0x4089a3=JSON[_0x91a21e(0x70e)](_0x18603f[_0x91a21e(0x4b6)]);}catch(_0x3133aa){try{var _0x4089a3=JSON['parse'](_0x18603f[_0x91a21e(0x4b6)][_0x91a21e(0x229)]());}catch(_0x54617e){errorlog(_0x54617e);return;}}_0x91a21e(0x562)in _0x4089a3&&(_0x4089a3['streamID']=_0x539db3[_0x91a21e(0x353)](_0x4089a3[_0x91a21e(0x562)]));if(_0x91a21e(0x57e)in _0x4089a3){_0x4089a3=await _0x539db3[_0x91a21e(0x80a)](_0x4089a3);if(!_0x4089a3)return;}if(_0x539db3[_0x91a21e(0x106)]){if('from'in _0x4089a3&&_0x539db3[_0x91a21e(0x5f9)]&&_0x4089a3[_0x91a21e(0x51b)]===_0x539db3[_0x91a21e(0x5f9)])return;else log(_0x4089a3);if('UUID'in _0x4089a3){if(_0x539db3[_0x91a21e(0x5f9)]){if(_0x4089a3[_0x91a21e(0x5f9)]!==_0x539db3[_0x91a21e(0x5f9)])return;}else return;delete _0x4089a3[_0x91a21e(0x5f9)];}if(_0x91a21e(0x4f6)in _0x4089a3){if(!_0x539db3[_0x91a21e(0x29b)])return;if('request'in _0x4089a3){if(_0x4089a3[_0x91a21e(0x668)]===_0x91a21e(0x5c9)){if(_0x91a21e(0x4f6)in _0x4089a3){if(_0x91a21e(0x632)in _0x4089a3){if(_0x4089a3[_0x91a21e(0x632)]==_0x539db3['UUID']){_0x4089a3[_0x91a21e(0x668)]=_0x91a21e(0x241),_0x539db3['roomenc']=_0x4089a3['roomid'];var _0x51268f={};_0x51268f[_0x91a21e(0x668)]=_0x91a21e(0x26c),_0x51268f['roomid']=_0x539db3['roomenc'],_0x51268f[_0x91a21e(0x562)]=_0x539db3['streamID'],_0x539db3['sendMsg'](_0x51268f);}else return;}else return;}else return;}else{if(_0x4089a3[_0x91a21e(0x4f6)]!==_0x539db3[_0x91a21e(0x29b)])return;}}else{if(_0x4089a3[_0x91a21e(0x4f6)]!==_0x539db3[_0x91a21e(0x29b)])return;}delete _0x4089a3[_0x91a21e(0x4f6)];}_0x91a21e(0x29a)in _0x4089a3&&(_0x4089a3[_0x91a21e(0x51b)]&&(_0x539db3[_0x91a21e(0x4c3)]=_0x4089a3[_0x91a21e(0x51b)],_0x539db3[_0x91a21e(0x3a6)]=[],_0x539db3[_0x91a21e(0x3a6)]['push'](_0x539db3[_0x91a21e(0x4c3)]),_0x539db3[_0x91a21e(0x581)]()),delete _0x4089a3['director']);'from'in _0x4089a3&&(_0x4089a3[_0x91a21e(0x5f9)]=_0x4089a3['from'],delete _0x4089a3[_0x91a21e(0x51b)]);if(_0x91a21e(0x668)in _0x4089a3){if(_0x4089a3[_0x91a21e(0x668)]==='play'){if(_0x91a21e(0x562)in _0x4089a3){if(_0x4089a3[_0x91a21e(0x562)]===_0x539db3[_0x91a21e(0x562)])_0x4089a3[_0x91a21e(0x668)]=_0x91a21e(0x8f6);else return;}}else{if(_0x4089a3[_0x91a21e(0x668)]===_0x91a21e(0x452)){if(_0x539db3[_0x91a21e(0x37b)]){if(_0x539db3[_0x91a21e(0x37b)]['includes'](_0x4089a3['streamID'])){play(_0x4089a3[_0x91a21e(0x562)]);return;}else return;}}else{if(_0x4089a3['request']===_0x91a21e(0x26c)){if(_0x91a21e(0x562)in _0x4089a3){if(_0x539db3[_0x91a21e(0x37b)]){if(_0x539db3[_0x91a21e(0x37b)][_0x91a21e(0x4ee)](_0x4089a3[_0x91a21e(0x562)]))play(_0x4089a3[_0x91a21e(0x562)]);else{}}else play(_0x4089a3['streamID']);}_0x4089a3[_0x91a21e(0x668)]=_0x91a21e(0x8f6);}}}}else{if(_0x91a21e(0x562)in _0x4089a3){if(_0x539db3['view_set']){if(_0x539db3['view_set'][_0x91a21e(0x4ee)](_0x4089a3[_0x91a21e(0x562)])){}else return;}else{if(_0x539db3['view']){if(_0x539db3['view']!==_0x4089a3['streamID'])return;else{}}}}}}if(_0x4089a3[_0x91a21e(0x668)]){if(_0x4089a3['request']==_0x91a21e(0x8f6)){if(_0x539db3[_0x91a21e(0x62d)]){if(_0x539db3[_0x91a21e(0x3a6)][_0x91a21e(0x854)](_0x4089a3['UUID'])>=0x0)_0x539db3[_0x91a21e(0x8f6)](_0x4089a3[_0x91a21e(0x5f9)]);else _0x539db3[_0x91a21e(0x29a)]&&(_0x4089a3[_0x91a21e(0x5f9)]in _0x539db3[_0x91a21e(0x51f)]&&_0x539db3[_0x91a21e(0x8f6)](_0x4089a3[_0x91a21e(0x5f9)]));}else _0x539db3[_0x91a21e(0x8f6)](_0x4089a3[_0x91a21e(0x5f9)]);}else{if(_0x4089a3[_0x91a21e(0x668)]==_0x91a21e(0x627))log(_0x4089a3),_0x91a21e(0x29a)in _0x4089a3?(_0x539db3[_0x91a21e(0x4c3)]=_0x4089a3[_0x91a21e(0x29a)],_0x539db3[_0x91a21e(0x3a6)]=[],_0x539db3[_0x91a21e(0x3a6)][_0x91a21e(0x6d6)](_0x539db3['directorUUID']),_0x539db3[_0x91a21e(0x581)]()):(_0x539db3[_0x91a21e(0x4c3)]=![],_0x539db3[_0x91a21e(0x3a6)]=[]),'claim'in _0x4089a3&&(_0x4089a3['claim']==![]?(!_0x539db3[_0x91a21e(0x50b)]&&(getById(_0x91a21e(0x4f2))[_0x91a21e(0x5fc)]=miscTranslations[_0x91a21e(0x761)],_0x539db3[_0x91a21e(0x19a)]?_0x539db3['directorState']===null&&warnUser(miscTranslations['room-is-claimed-codirector'],![],![]):setTimeout(function(){warnUser(miscTranslations['room-is-claimed'],![],![]);},0x1)),_0x539db3[_0x91a21e(0x7dc)]=![],pokeAPI(_0x91a21e(0x29a),![]),pokeIframeAPI(_0x91a21e(0x29a),![])):(_0x539db3['directorState']=!![],pokeAPI(_0x91a21e(0x29a),!![]),pokeIframeAPI(_0x91a21e(0x29a),!![]))),_0x539db3[_0x91a21e(0x3d2)][_0x91a21e(0x19c)](_0x4089a3[_0x91a21e(0x4c8)]);else{if(_0x4089a3[_0x91a21e(0x668)]=='transferred'){_0x539db3['queueList']=[],_0x539db3[_0x91a21e(0x241)]=!![],_0x539db3[_0x91a21e(0x2f1)]=![],log('You\x27ve\x20been\x20transferred'),pokeIframeAPI(_0x91a21e(0x241));!_0x539db3[_0x91a21e(0x29a)]&&(_0x539db3[_0x91a21e(0x62d)]=![]);log(_0x4089a3[_0x91a21e(0x4c8)]);_0x91a21e(0x29a)in _0x4089a3?(_0x539db3[_0x91a21e(0x4c3)]=_0x4089a3[_0x91a21e(0x29a)],_0x539db3[_0x91a21e(0x3a6)]=[],_0x539db3[_0x91a21e(0x3a6)][_0x91a21e(0x6d6)](_0x539db3['directorUUID']),_0x539db3[_0x91a21e(0x581)]()):(_0x539db3[_0x91a21e(0x4c3)]=![],_0x539db3[_0x91a21e(0x3a6)]=[]);for(_0x56cf80 in _0x539db3['rpcs']){try{!_0x539db3['include']['includes'](_0x539db3[_0x91a21e(0x51f)][_0x56cf80]['streamID'])&&_0x539db3[_0x91a21e(0x3a8)](_0x56cf80);}catch(_0x2ea248){}}for(_0x56cf80 in _0x539db3[_0x91a21e(0x77a)]){try{log(_0x91a21e(0x6c2)),_0x539db3[_0x91a21e(0x1ac)](_0x56cf80);}catch(_0x4ba099){}}youveBeenTransferred(),_0x539db3[_0x91a21e(0x673)]=_0x539db3['totalRoomBitrate_default'],updateMixer(),log('Members\x20in\x20Room'),log(_0x4089a3[_0x91a21e(0x4c8)]);for(var _0x56cf80 in _0x4089a3[_0x91a21e(0x4c8)]){if(_0x91a21e(0x5f9)in _0x4089a3[_0x91a21e(0x4c8)][_0x56cf80]){if('streamID'in _0x4089a3['list'][_0x56cf80]){if(_0x4089a3[_0x91a21e(0x4c8)][_0x56cf80][_0x91a21e(0x5f9)]in _0x539db3['rpcs'])log(_0x91a21e(0x208));else{var _0x47a87b=_0x539db3[_0x91a21e(0x353)](_0x4089a3[_0x91a21e(0x4c8)][_0x56cf80][_0x91a21e(0x562)]);log('STREAM\x20ID\x20desalted\x202:'+_0x47a87b);if(_0x539db3[_0x91a21e(0x62d)]){if(_0x539db3[_0x91a21e(0x3a6)][_0x91a21e(0x854)](_0x4089a3[_0x91a21e(0x4c8)][_0x56cf80][_0x91a21e(0x5f9)])>=0x0)play(_0x47a87b,_0x4089a3[_0x91a21e(0x4c8)][_0x56cf80][_0x91a21e(0x5f9)]);else{if(_0x539db3[_0x91a21e(0x37b)]&&_0x539db3['view_set']['includes'](_0x47a87b))play(_0x47a87b,_0x4089a3[_0x91a21e(0x4c8)][_0x56cf80]['UUID']);else _0x539db3['queueList'][_0x91a21e(0x425)]<0x1388&&(!(_0x47a87b in _0x539db3[_0x91a21e(0x809)])&&!_0x539db3[_0x91a21e(0x605)][_0x91a21e(0x4ee)](_0x47a87b)&&_0x539db3[_0x91a21e(0x605)][_0x91a21e(0x6d6)](_0x47a87b));}}else play(_0x47a87b,_0x4089a3[_0x91a21e(0x4c8)][_0x56cf80][_0x91a21e(0x5f9)]);}}}}updateQueue();}else{if(_0x4089a3[_0x91a21e(0x668)]==_0x91a21e(0x2d8))log(_0x4089a3),_0x91a21e(0x29a)in _0x4089a3?(_0x539db3['directorUUID']=_0x4089a3['director'],_0x539db3['directorList']=[],_0x539db3['directorList'][_0x91a21e(0x6d6)](_0x539db3[_0x91a21e(0x4c3)]),_0x539db3[_0x91a21e(0x581)]()):(_0x539db3['directorUUID']=![],_0x539db3['directorList']=[],errorlog(_0x91a21e(0x3af))),updateUserList();else{if(_0x4089a3['request']=='sendroom'){log(_0x91a21e(0x5fa)),log(_0x4089a3);try{_0x91a21e(0x29a)in _0x4089a3&&(_0x4089a3[_0x91a21e(0x29a)]==!![]&&_0x539db3[_0x91a21e(0x51c)](_0x4089a3));}catch(_0x577b0e){errorlog(_0x577b0e);}}else{if(_0x4089a3[_0x91a21e(0x668)]=='someonejoined'){_0x4089a3[_0x91a21e(0x29a)]&&(_0x539db3[_0x91a21e(0x4c3)]=_0x4089a3[_0x91a21e(0x5f9)],_0x539db3[_0x91a21e(0x3a6)]=[],_0x539db3['directorList']['push'](_0x539db3['directorUUID']),_0x539db3[_0x91a21e(0x581)]());if('streamID'in _0x4089a3){log(_0x91a21e(0x2c0));if(_0x539db3['queue']){if(_0x539db3[_0x91a21e(0x3a6)]['indexOf'](_0x4089a3[_0x91a21e(0x5f9)])>=0x0)play(_0x47a87b,_0x4089a3[_0x91a21e(0x5f9)]);else{if(_0x539db3[_0x91a21e(0x37b)]&&_0x539db3[_0x91a21e(0x37b)]['includes'](_0x47a87b))play(_0x47a87b,_0x4089a3['UUID']);else _0x539db3[_0x91a21e(0x605)][_0x91a21e(0x425)]<0x1388&&(!(_0x4089a3[_0x91a21e(0x562)]in _0x539db3[_0x91a21e(0x809)])&&!_0x539db3[_0x91a21e(0x605)]['includes'](_0x4089a3['streamID'])&&(_0x539db3['queueList'][_0x91a21e(0x6d6)](_0x4089a3[_0x91a21e(0x562)]),updateQueue(!![])));}}else play(_0x4089a3[_0x91a21e(0x562)]);}else log('Someone\x20Joined\x20the\x20Room');}else{if(_0x4089a3[_0x91a21e(0x668)]==_0x91a21e(0x461)){log('Someone\x20published\x20a\x20video\x20to\x20the\x20Room'),log(_0x4089a3);if(_0x539db3[_0x91a21e(0x62d)]){if(_0x539db3['directorList'][_0x91a21e(0x854)](_0x4089a3[_0x91a21e(0x5f9)])>=0x0)play(_0x47a87b,_0x4089a3[_0x91a21e(0x5f9)]);else{if(_0x539db3[_0x91a21e(0x37b)]&&_0x539db3['view_set'][_0x91a21e(0x4ee)](_0x47a87b))play(_0x47a87b,_0x4089a3[_0x91a21e(0x5f9)]);else _0x539db3['queueList'][_0x91a21e(0x425)]<0x1388&&(!(_0x4089a3[_0x91a21e(0x562)]in _0x539db3[_0x91a21e(0x809)])&&!_0x539db3['queueList'][_0x91a21e(0x4ee)](_0x4089a3['streamID'])&&(_0x539db3[_0x91a21e(0x605)][_0x91a21e(0x6d6)](_0x4089a3[_0x91a21e(0x562)]),updateQueue(!![])));}}else play(_0x4089a3[_0x91a21e(0x562)]);}else{if(_0x4089a3[_0x91a21e(0x668)]==_0x91a21e(0x5b5)){errorlog(_0x4089a3),pokeIframeAPI(_0x91a21e(0x5b5),_0x4089a3[_0x91a21e(0x4a0)]);if(_0x539db3['scene']===![]){if('message'in _0x4089a3){if(_0x4089a3[_0x91a21e(0x4a0)]===_0x91a21e(0x3b9))_0x539db3[_0x91a21e(0x680)]<0x2?(_0x539db3[_0x91a21e(0x680)]=parseInt(_0x539db3['seedAttempts'])+0x1,setTimeout(function(){var _0x53cf09=_0x91a21e;_0x539db3[_0x53cf09(0x35e)]();},0x1388)):(hangup(),!_0x539db3['cleanOutput']&&setTimeout(function(){warnUser(miscTranslations['streamid-already-published'],![],![]);},0x1));else _0x4089a3[_0x91a21e(0x4a0)]===_0x91a21e(0x1db)?(!_0x539db3['cleanOutput']&&(getById(_0x91a21e(0x4f2))[_0x91a21e(0x5fc)]=miscTranslations[_0x91a21e(0x761)],_0x539db3[_0x91a21e(0x19a)]?_0x539db3[_0x91a21e(0x7dc)]===null&&warnUser(miscTranslations['room-is-claimed-codirector'],![],![]):setTimeout(function(){var _0xe8d6c7=_0x91a21e;warnUser(miscTranslations[_0xe8d6c7(0x2ed)],![],![]);},0x1)),_0x539db3['directorState']=![],pokeAPI('director',![]),pokeIframeAPI('director',![])):!_0x539db3[_0x91a21e(0x50b)]&&setTimeout(function(){var _0x520af1=_0x91a21e;warnUser(_0x4089a3[_0x520af1(0x4a0)]);},0x1);}}}else _0x4089a3['request']==_0x91a21e(0x5e6)?_0x91a21e(0x4a0)in _0x4089a3&&warnlog(_0x4089a3[_0x91a21e(0x4a0)]):log(_0x4089a3);}}}}}}}}else{if(_0x4089a3[_0x91a21e(0x122)])_0x91a21e(0x562)in _0x4089a3&&(_0x4089a3[_0x91a21e(0x562)]in _0x539db3['watchTimeoutList']&&(clearTimeout(_0x539db3[_0x91a21e(0x809)][_0x4089a3[_0x91a21e(0x562)]]),delete _0x539db3[_0x91a21e(0x809)][_0x4089a3[_0x91a21e(0x562)]])),_0x539db3[_0x91a21e(0x772)](_0x4089a3);else{if(_0x4089a3['candidate'])log(_0x91a21e(0x134)),_0x539db3[_0x91a21e(0x8f2)](_0x4089a3);else{if(_0x4089a3[_0x91a21e(0x651)])log(_0x91a21e(0x8ca)),_0x539db3[_0x91a21e(0x40b)](_0x4089a3);else _0x4089a3[_0x91a21e(0x668)]==_0x91a21e(0x405)?(warnlog(_0x91a21e(0x198)),_0x4089a3[_0x91a21e(0x5f9)]in _0x539db3[_0x91a21e(0x77a)]&&(warnlog(_0x91a21e(0x6a1)),log(_0x91a21e(0x6c2)),_0x539db3[_0x91a21e(0x1ac)](_0x4089a3[_0x91a21e(0x5f9)])),_0x4089a3['UUID']in _0x539db3[_0x91a21e(0x51f)]&&(warnlog(_0x91a21e(0x6a1)),_0x539db3[_0x91a21e(0x3a8)](_0x4089a3[_0x91a21e(0x5f9)]))):log('what\x20is\x20this?');}}}},_0x539db3['ws'][_0x633517(0x7fa)]=async function(_0x210062){var _0x120e6e=_0x633517;clearTimeout(_0x539db3[_0x120e6e(0x5db)]),pokeIframeAPI(_0x120e6e(0x836),_0x120e6e(0x749));try{'code'in _0x210062&&(_0x210062[_0x120e6e(0x50a)]==0x1f7&&(_0x5781dc==![]&&(clearInterval(_0x539db3[_0x120e6e(0x18f)]),!_0x539db3[_0x120e6e(0x50b)]&&warnUser(_0x120e6e(0x80e),0x7530,![]))));}catch(_0x9be73c){errorlog(_0x9be73c);}warnlog(_0x120e6e(0x80d));if(_0x539db3[_0x120e6e(0x3a9)]==![])try{_0x539db3['ws'][_0x120e6e(0x298)]===WebSocket[_0x120e6e(0x685)]&&(_0x539db3['ws']=null,setTimeout(()=>{var _0x38be34=_0x120e6e;try{_0x539db3[_0x38be34(0x776)](!![]);}catch(_0x3b4d4f){};},0x7d0));}catch(_0x2e0e14){errorlog(_0x2e0e14);}};},_0x539db3[_0x173334(0x70a)]=function(_0x512b80,_0x11a3dc=null){var _0x4c22ab=_0x173334;log('Messaging\x20sent'),warnlog(_0x512b80),_0x512b80=JSON[_0x4c22ab(0x924)](_0x512b80);if(_0x11a3dc==null){for(var _0x2928b4 in _0x539db3['pcs']){try{_0x539db3[_0x4c22ab(0x77a)][_0x2928b4][_0x4c22ab(0x46f)][_0x4c22ab(0x37d)](_0x512b80);}catch(_0x244c8f){warnlog(_0x4c22ab(0x32e));}}return!![];}else try{return _0x539db3['pcs'][_0x11a3dc][_0x4c22ab(0x46f)][_0x4c22ab(0x37d)](_0x512b80),!![];}catch(_0xbffce5){return warnlog(_0x4c22ab(0x7b4)),warnlog(_0x512b80),![];}return![];},_0x539db3[_0x173334(0x8fb)]=function(_0x548de0,_0x225e76=null){var _0xacd8dd=_0x173334,_0x596103=JSON[_0xacd8dd(0x924)](_0x548de0);if(_0x225e76==null){var _0x27cf0f=[];for(var _0x2c29ad in _0x539db3[_0xacd8dd(0x51f)]){try{if(_0xacd8dd(0x280)in _0x539db3[_0xacd8dd(0x51f)][_0x2c29ad]){var _0x5a9db7=_0x548de0;_0x5a9db7[_0xacd8dd(0x808)]=!![],_0x5a9db7=JSON['stringify'](_0x5a9db7),_0x539db3[_0xacd8dd(0x51f)][_0x539db3[_0xacd8dd(0x51f)][_0x2c29ad]['realUUID']][_0xacd8dd(0x781)]['send'](_0x5a9db7);}else _0x539db3[_0xacd8dd(0x51f)][_0x2c29ad][_0xacd8dd(0x781)][_0xacd8dd(0x37d)](_0x596103);_0x27cf0f[_0xacd8dd(0x6d6)](_0x2c29ad);}catch(_0x36df78){log(_0xacd8dd(0x1f0));}}return _0x27cf0f[_0xacd8dd(0x425)];}else try{if(_0xacd8dd(0x280)in _0x539db3[_0xacd8dd(0x51f)][_0x225e76]){var _0x5a9db7=_0x548de0;_0x5a9db7['altUUID']=!![],_0x5a9db7=JSON[_0xacd8dd(0x924)](_0x5a9db7),_0x539db3[_0xacd8dd(0x51f)][_0x539db3['rpcs'][_0x225e76][_0xacd8dd(0x280)]]['receiveChannel'][_0xacd8dd(0x37d)](_0x5a9db7);}else _0x539db3[_0xacd8dd(0x51f)][_0x225e76]['receiveChannel'][_0xacd8dd(0x37d)](_0x596103);return!![];}catch(_0x1b5605){return log(_0xacd8dd(0x1f0)),![];}},_0x539db3[_0x173334(0x2fa)]=function(_0x27b1d8=![],_0x505051=![]){var _0x5f33e8=_0x173334;_0x505051&&recordLocalVideo(_0x5f33e8(0x22a));_0x539db3['taintedSession']=!![],warnlog(_0x5f33e8(0x87e));try{recordLocalVideo(_0x5f33e8(0x69b));}catch(_0x4560c1){}try{var _0x10d323={};_0x10d323[_0x5f33e8(0x85f)]=!![],_0x10d323['bye']=!![],_0x539db3['sendMessage'](_0x10d323);}catch(_0x3c7a0c){}try{_0x539db3['ws'][_0x5f33e8(0x7c0)]();}catch(_0x1d82e6){}try{transferList[_0x5f33e8(0x21a)](_0x5e0d9f=>{var _0x348b59=_0x5f33e8;_0x5e0d9f['writer']&&_0x5e0d9f[_0x348b59(0x893)][_0x348b59(0x7c0)](),_0x5e0d9f[_0x348b59(0x849)]&&_0x5e0d9f[_0x348b59(0x293)];});}catch(_0x3e0cca){errorlog(_0x3e0cca);}try{_0x539db3[_0x5f33e8(0x698)]&&_0x539db3[_0x5f33e8(0x698)]['srcObject']&&_0x539db3[_0x5f33e8(0x698)][_0x5f33e8(0x2b5)]['getTracks']()[_0x5f33e8(0x21a)](function(_0x1d6624){var _0x58a6cc=_0x5f33e8;_0x1d6624['stop'](),_0x539db3[_0x58a6cc(0x792)][_0x58a6cc(0x2b5)][_0x58a6cc(0x1bb)](_0x1d6624),log('stopping\x20old\x20track');}),_0x539db3[_0x5f33e8(0x792)]&&_0x539db3[_0x5f33e8(0x792)][_0x5f33e8(0x2b5)]&&_0x539db3[_0x5f33e8(0x792)][_0x5f33e8(0x2b5)][_0x5f33e8(0x317)]()['forEach'](function(_0x3e4549){var _0x1b4234=_0x5f33e8;_0x3e4549[_0x1b4234(0x69b)](),_0x539db3[_0x1b4234(0x792)][_0x1b4234(0x2b5)][_0x1b4234(0x1bb)](_0x3e4549),log(_0x1b4234(0x221));}),_0x539db3['streamSrc']&&_0x539db3[_0x5f33e8(0x17e)][_0x5f33e8(0x317)]()['forEach'](function(_0x2da153){var _0x4271c8=_0x5f33e8;_0x2da153['stop'](),_0x539db3[_0x4271c8(0x792)][_0x4271c8(0x2b5)]['removeTrack'](_0x2da153),log(_0x4271c8(0x221));}),_0x539db3[_0x5f33e8(0x6be)]&&_0x539db3[_0x5f33e8(0x6be)][_0x5f33e8(0x317)]()[_0x5f33e8(0x21a)](function(_0x2793af){var _0xc0fbfc=_0x5f33e8;_0x2793af[_0xc0fbfc(0x69b)](),_0x539db3[_0xc0fbfc(0x6be)]['removeTrack'](_0x2793af),log(_0xc0fbfc(0x221));});}catch(_0x422982){errorlog(_0x422982);}try{for(i in _0x539db3[_0x5f33e8(0x51f)]){try{_0x539db3[_0x5f33e8(0x51f)][i][_0x5f33e8(0x792)]&&(_0x539db3[_0x5f33e8(0x51f)][i]['videoElement'][_0x5f33e8(0x7bc)]&&recordLocalVideo(_0x5f33e8(0x69b),null,_0x539db3[_0x5f33e8(0x51f)][i][_0x5f33e8(0x792)]));}catch(_0x166386){}_0x539db3[_0x5f33e8(0x3a8)](i,!![]);}for(i in _0x539db3[_0x5f33e8(0x77a)]){log('closing\x205'),_0x539db3[_0x5f33e8(0x1ac)](i);}}catch(_0x431f2c){errorlog(_0x431f2c);}for(var _0x4b515c in _0x539db3[_0x5f33e8(0x809)]){clearTimeout(_0x539db3[_0x5f33e8(0x809)][_0x4b515c]);}if(_0x27b1d8){reloadRequested(),warnlog(_0x5f33e8(0x1d5));return;}else setTimeout(function(){for(i in _0x539db3){try{delete _0x539db3[i];}catch(_0x5188b0){}}delete _0x539db3;},0x4b0),hangupComplete(),log(_0x5f33e8(0x69a));},_0x539db3[_0x173334(0x27c)]=function(){var _0x1d8a47=_0x173334;_0x539db3[_0x1d8a47(0x1ae)]=!![],_0x539db3[_0x1d8a47(0x648)]=![],notifyOfScreenShare(),warnlog('hanging\x20up'),pokeIframeAPI('director-share',![]),pokeIframeAPI('seeding',![]),pokeAPI(_0x1d8a47(0x4eb),![]);try{_0x539db3[_0x1d8a47(0x792)]&&_0x539db3[_0x1d8a47(0x792)]['srcObject']&&_0x539db3[_0x1d8a47(0x792)]['srcObject'][_0x1d8a47(0x317)]()[_0x1d8a47(0x21a)](function(_0x25cce9){var _0x2229e9=_0x1d8a47;_0x25cce9[_0x2229e9(0x69b)](),_0x539db3[_0x2229e9(0x792)][_0x2229e9(0x2b5)][_0x2229e9(0x1bb)](_0x25cce9),log('stopping\x20old\x20track');});_0x539db3[_0x1d8a47(0x17e)]&&_0x539db3[_0x1d8a47(0x17e)][_0x1d8a47(0x317)]()[_0x1d8a47(0x21a)](function(_0x3d2c47){var _0xc5b7f0=_0x1d8a47;_0x3d2c47[_0xc5b7f0(0x69b)](),_0x539db3[_0xc5b7f0(0x17e)][_0xc5b7f0(0x1bb)](_0x3d2c47),log(_0xc5b7f0(0x221));});for(UUID in _0x539db3['pcs']){var _0x566933=getSenders2(UUID);_0x566933[_0x1d8a47(0x21a)](_0x2c652e=>{var _0x4a1fea=_0x1d8a47;_0x2c652e[_0x4a1fea(0x37f)]&&(_0x2c652e[_0x4a1fea(0x37f)]['enabled']=![]);});}var _0xea9e82={};_0xea9e82[_0x1d8a47(0x85f)]=!![],_0xea9e82['virtualHangup']=!![],_0x539db3[_0x1d8a47(0x70a)](_0xea9e82),getById(_0x1d8a47(0x7b0))[_0x1d8a47(0x10b)]();}catch(_0x4e99e6){errorlog(_0x1d8a47(0x32c));}log('HANG\x20UP\x202\x20COMPLETE');},_0x539db3[_0x173334(0x933)]=function(_0xfcbff8,_0x235d62=![]){var _0x535f22=_0x173334;_0x539db3[_0x535f22(0x77a)][_0xfcbff8][_0x535f22(0x933)]({'iceRestart':_0x235d62})[_0x535f22(0x1f1)](_0x1a4e17=>{var _0x4ff71b=_0x535f22;log('create\x20offer\x20worked');if(SafariVersion&&SafariVersion<=0xd&&(iOS||iPad)){}else{if(_0x539db3[_0x4ff71b(0x3b4)]==0x3||_0x539db3[_0x4ff71b(0x3b4)]==0x5||_0x539db3['stereo']==0x1)_0x1a4e17['sdp']=CodecsHandler[_0x4ff71b(0x779)](_0x1a4e17[_0x4ff71b(0x74a)],{'stereo':0x1}),log(_0x4ff71b(0x1cb));else{if(iOS||iPad){}else _0x539db3[_0x4ff71b(0x3b4)]==0x4&&(_0x1a4e17[_0x4ff71b(0x74a)]=CodecsHandler['setOpusAttributes'](_0x1a4e17['sdp'],{'stereo':0x2}),log('stereo\x20enabled'));}}if(_0x539db3['pcs'][_0xfcbff8]['preferVideoCodec'])try{_0x1a4e17=CodecsHandler['preferCodec'](_0x1a4e17,_0x539db3[_0x4ff71b(0x77a)][_0xfcbff8][_0x4ff71b(0x53d)]),log(_0x4ff71b(0x4ac)+_0x539db3[_0x4ff71b(0x77a)][_0xfcbff8]['preferVideoCodec']+_0x4ff71b(0x26b));}catch(_0x59ba5c){warnlog(_0x4ff71b(0x180));}Android&&_0x539db3[_0x4ff71b(0x327)]!==![]&&_0x539db3[_0x4ff71b(0x892)]&&(_0x1a4e17['sdp']=_0x1a4e17[_0x4ff71b(0x74a)]['replace'](/42e01f/gi,'42001f')),_0x539db3['pcs'][_0xfcbff8][_0x4ff71b(0x5b4)](_0x1a4e17)[_0x4ff71b(0x1f1)](function(){var _0x13cbd5=_0x4ff71b;log(_0x13cbd5(0x6e5)+_0xfcbff8);var _0x1ca149={};_0x1ca149[_0x13cbd5(0x5f9)]=_0xfcbff8,_0x1ca149[_0x13cbd5(0x562)]=_0x539db3[_0x13cbd5(0x562)],_0x1ca149[_0x13cbd5(0x122)]=_0x539db3[_0x13cbd5(0x77a)][_0xfcbff8][_0x13cbd5(0x788)],_0x1ca149[_0x13cbd5(0x43a)]=_0x539db3[_0x13cbd5(0x77a)][_0xfcbff8][_0x13cbd5(0x43a)];_0x539db3[_0x13cbd5(0x106)]&&(_0x1ca149[_0x13cbd5(0x590)]=_0x539db3['scene']);if(_0x539db3[_0x13cbd5(0x6be)]!==![]){var _0x5bb1a1=_0x539db3[_0x13cbd5(0x6be)]['getTracks'](),_0x2c748f=_0x539db3[_0x13cbd5(0x77a)][_0xfcbff8][_0x13cbd5(0x44d)](),_0x184e5c=[];for(var _0x4174e0=0x0;_0x4174e0<_0x2c748f[_0x13cbd5(0x425)];_0x4174e0++){for(var _0x59cccf=0x0;_0x59cccf<_0x5bb1a1[_0x13cbd5(0x425)];_0x59cccf++){_0x2c748f[_0x4174e0]['track']&&_0x2c748f[_0x4174e0][_0x13cbd5(0x37f)]['id']==_0x5bb1a1[_0x59cccf]['id']&&_0x184e5c[_0x13cbd5(0x6d6)](_0x4174e0);}}_0x184e5c[_0x13cbd5(0x425)]&&(_0x1ca149['screen']=_0x184e5c);}_0x539db3[_0x13cbd5(0x39f)]?_0x539db3[_0x13cbd5(0x692)](JSON[_0x13cbd5(0x924)](_0x1ca149['description']))['then'](function(_0x7519e8){var _0x273bb5=_0x13cbd5;_0x1ca149[_0x273bb5(0x122)]=_0x7519e8[0x0],_0x1ca149['vector']=_0x7519e8[0x1],_0x539db3['anysend'](_0x1ca149);})['catch'](errorlog):_0x539db3[_0x13cbd5(0x539)](_0x1ca149);})['catch'](errorlog);})['catch'](errorlog);},_0x539db3[_0x173334(0x66e)]=function(){var _0x5bccf1=_0x173334;for(var _0x17397c in _0x539db3['pcs']){_0x539db3[_0x5bccf1(0x77a)][_0x17397c][_0x5bccf1(0x4a4)]!==![]?(_0x539db3[_0x5bccf1(0x7cf)](_0x17397c),log(_0x5bccf1(0x142))):log(_0x5bccf1(0x8c8));}},_0x539db3[_0x173334(0x1ac)]=function(_0x2e9e0b,_0x17ff60=!![]){var _0x378d92=_0x173334;log(_0x378d92(0x1ac));if(!(_0x2e9e0b in _0x539db3[_0x378d92(0x77a)]))return;clearTimeout(_0x539db3[_0x378d92(0x77a)][_0x2e9e0b][_0x378d92(0x656)]),clearTimeout(_0x539db3[_0x378d92(0x77a)][_0x2e9e0b][_0x378d92(0x5a3)]),clearInterval(_0x539db3[_0x378d92(0x77a)][_0x2e9e0b][_0x378d92(0x840)]),pokeIframeAPI('push-connection',![],_0x2e9e0b);if(_0x378d92(0x280)in _0x539db3[_0x378d92(0x77a)][_0x2e9e0b]){delete _0x539db3[_0x378d92(0x77a)][_0x2e9e0b],applySceneState();return;}_0x2e9e0b+_0x378d92(0x326)in _0x539db3[_0x378d92(0x77a)]&&_0x539db3['pcs'][_0x2e9e0b+_0x378d92(0x326)][_0x378d92(0x280)]&&_0x539db3[_0x378d92(0x77a)][_0x2e9e0b+'_screen'][_0x378d92(0x280)]===_0x2e9e0b&&(clearTimeout(_0x539db3[_0x378d92(0x77a)][_0x2e9e0b+_0x378d92(0x326)][_0x378d92(0x656)]),clearTimeout(_0x539db3[_0x378d92(0x77a)][_0x2e9e0b+'_screen']['closeTimeout']),clearInterval(_0x539db3[_0x378d92(0x77a)][_0x2e9e0b+_0x378d92(0x326)][_0x378d92(0x840)]),_0x539db3[_0x378d92(0x77a)][_0x2e9e0b+_0x378d92(0x326)]=null,delete _0x539db3[_0x378d92(0x77a)][_0x2e9e0b+'_screen']);try{_0x539db3[_0x378d92(0x70a)]({'bye':!![]},_0x2e9e0b);}catch(_0x1eeb51){}try{_0x539db3[_0x378d92(0x77a)][_0x2e9e0b]['close']();}catch(_0x4bda59){}_0x539db3[_0x378d92(0x77a)][_0x2e9e0b][_0x378d92(0x2bf)]&&(_0x539db3[_0x378d92(0x3c4)]&&(_0x17ff60&&(warnlog(_0x378d92(0x299)),playtone(![],_0x378d92(0x873))))),_0x539db3[_0x378d92(0x77a)][_0x2e9e0b]=null,_0x539db3[_0x378d92(0x3a9)]&&(!_0x539db3['cleanOutput']&&setTimeout(function _0x28a9e0(){var _0x4e29eb=_0x378d92;warnUser(_0x4e29eb(0x65a));},0x1)),delete _0x539db3['pcs'][_0x2e9e0b],_0x539db3[_0x378d92(0x129)](),applySceneState();},_0x539db3[_0x173334(0x3a8)]=function(_0x4fde35,_0x1aa0f3=![]){var _0x3fcc3e=_0x173334;log(_0x3fcc3e(0x3a8));if(!(_0x4fde35 in _0x539db3[_0x3fcc3e(0x51f)])){log('UUID\x20not\x20found;\x20cant\x27\x20close');return;}clearInterval(_0x539db3[_0x3fcc3e(0x51f)][_0x4fde35][_0x3fcc3e(0x5a3)]);try{_0x539db3[_0x3fcc3e(0x8fb)]({'bye':!![]},_0x4fde35),warnlog('SEND\x20BYE');}catch(_0x575cfc){}try{var _0x49cd2c=_0x539db3[_0x3fcc3e(0x51f)][_0x4fde35][_0x3fcc3e(0x562)];}catch(_0x43b1fc){}try{_0x539db3['rpcs'][_0x4fde35][_0x3fcc3e(0x7c0)]();}catch(_0x1e6d14){warnlog('already\x20closed\x20PCS');}try{_0x539db3[_0x3fcc3e(0x51f)][_0x4fde35][_0x3fcc3e(0x17e)]&&_0x539db3['rpcs'][_0x4fde35]['streamSrc']['getTracks']()[_0x3fcc3e(0x21a)](function(_0x1d9667){var _0x24165d=_0x3fcc3e;_0x1d9667[_0x24165d(0x69b)](),log(_0x24165d(0x5e2));});}catch(_0x250d38){}if(_0x539db3[_0x3fcc3e(0x29a)])try{_0x539db3[_0x3fcc3e(0x51f)][_0x4fde35][_0x3fcc3e(0x792)]&&_0x3fcc3e(0x29c)in _0x539db3[_0x3fcc3e(0x51f)][_0x4fde35][_0x3fcc3e(0x792)]&&_0x539db3[_0x3fcc3e(0x51f)][_0x4fde35][_0x3fcc3e(0x792)][_0x3fcc3e(0x29c)][_0x3fcc3e(0x69b)]();}catch(_0x5cf1c0){warnlog(_0x5cf1c0);}else!_0x539db3[_0x3fcc3e(0x4f6)]&&(_0x539db3['beepToNotify']&&playtone(![],'leavetone'));try{document[_0x3fcc3e(0x1a8)](_0x3fcc3e(0x88a)+_0x4fde35)&&(getById(_0x3fcc3e(0x88a)+_0x4fde35)[_0x3fcc3e(0x3c6)][_0x3fcc3e(0x39e)](getById(_0x3fcc3e(0x88a)+_0x4fde35)),updateLockedElements());}catch(_0xe99b54){warnlog(_0xe99b54);}try{_0x539db3[_0x3fcc3e(0x51f)][_0x4fde35][_0x3fcc3e(0x792)]&&_0x539db3['rpcs'][_0x4fde35][_0x3fcc3e(0x792)]['remove']();}catch(_0x561a18){}try{if(_0x539db3['broadcast']!==![]){if(_0x539db3['rpcs'][_0x4fde35]['iframeEle']){try{_0x539db3[_0x3fcc3e(0x51f)][_0x4fde35][_0x3fcc3e(0x1fa)]['remove']();}catch(_0xd8509a){errorlog(_0xd8509a);}_0x539db3['rpcs'][_0x4fde35]['iframeEle'][_0x3fcc3e(0x10b)]();}}}catch(_0x4f63b1){}try{_0x539db3[_0x3fcc3e(0x51f)][_0x4fde35][_0x3fcc3e(0x766)]&&_0x539db3['rpcs'][_0x4fde35][_0x3fcc3e(0x766)]['remove']();}catch(_0x22e126){}try{_0x539db3['rpcs'][_0x4fde35][_0x3fcc3e(0x306)]&&_0x539db3['rpcs'][_0x4fde35][_0x3fcc3e(0x306)][_0x3fcc3e(0x10b)]();}catch(_0x1704d7){}'eventPlayActive'in _0x539db3[_0x3fcc3e(0x51f)][_0x4fde35]&&clearInterval(_0x539db3[_0x3fcc3e(0x51f)][_0x4fde35][_0x3fcc3e(0x3b1)]);pokeIframeAPI(_0x3fcc3e(0x58f),![],_0x4fde35),pokeAPI(_0x3fcc3e(0x774),_0x539db3[_0x3fcc3e(0x51f)][_0x4fde35][_0x3fcc3e(0x562)]);try{_0x539db3[_0x3fcc3e(0x51f)][_0x4fde35]=null,delete _0x539db3['rpcs'][_0x4fde35];}catch(_0x13295e){}_0x539db3[_0x3fcc3e(0x3a8)](_0x4fde35+_0x3fcc3e(0x326));(!_0x539db3[_0x3fcc3e(0x29a)]||_0x539db3[_0x3fcc3e(0x1d2)])&&setTimeout(function(){updateMixer();},0x1);if(typeof _0x49cd2c=='undefined')return;try{warnlog(_0x3fcc3e(0x4e0)),_0x49cd2c in _0x539db3[_0x3fcc3e(0x809)]&&(log(_0x3fcc3e(0x375)+_0x49cd2c),clearTimeout(_0x539db3[_0x3fcc3e(0x809)][_0x49cd2c]),delete _0x539db3['watchTimeoutList'][_0x49cd2c]),_0x539db3[_0x3fcc3e(0x809)][_0x49cd2c]=setTimeout(function(_0x25bf7a){var _0x4b6224=_0x3fcc3e;try{delete _0x539db3['watchTimeoutList'][_0x25bf7a];}catch(_0x411656){warnlog('session.watchTimeoutList\x20no\x20longer\x20exists;\x20won\x27t\x20retry.');return;}log(_0x4b6224(0x6ac)+_0x25bf7a);try{for(var _0x49d87c in _0x539db3['rpcs']){if(_0x539db3[_0x4b6224(0x51f)][_0x49d87c]['streamID']===_0x25bf7a){if(_0x539db3['rpcs'][_0x49d87c]['connectionState']===_0x4b6224(0x7f7)){warnlog(_0x4b6224(0x5ed));return;}}}}catch(_0x1ca239){errorlog(_0x1ca239);}warnlog(_0x4b6224(0xe9)),_0x539db3[_0x4b6224(0x7f9)](_0x25bf7a);},_0x539db3[_0x3fcc3e(0x11b)],_0x49cd2c);}catch(_0x2097b9){errorlog(_0x2097b9);}pokeIframeAPI(_0x3fcc3e(0x4e7),![],_0x4fde35),_0x49cd2c!==null?pokeIframeAPI(_0x3fcc3e(0x3da),_0x49cd2c,_0x4fde35):pokeIframeAPI(_0x3fcc3e(0x3da),!![],_0x4fde35),updateUserList();},_0x539db3[_0x173334(0x569)]=null,_0x539db3[_0x173334(0x223)]=function(){var _0x3d6c97=_0x173334;if(_0x539db3[_0x3d6c97(0x757)]){if(_0x539db3['ws']===null||(typeof _0x539db3['ws']!==_0x3d6c97(0x12c)||_0x539db3['ws'][_0x3d6c97(0x298)]!==0x1)){}else{var _0x27d7ad=_0x539db3[_0x3d6c97(0x757)][_0x3d6c97(0x8f3)](',');for(var _0xc2d1da in _0x27d7ad){if(_0x27d7ad[_0xc2d1da]){var _0x523fff=![];for(var _0x1f435f in _0x539db3[_0x3d6c97(0x51f)]){if(_0x539db3['rpcs'][_0x1f435f][_0x3d6c97(0x562)]&&_0x539db3[_0x3d6c97(0x51f)][_0x1f435f][_0x3d6c97(0x562)]===_0x27d7ad[_0xc2d1da]){_0x523fff=!![];break;}}_0x27d7ad[_0xc2d1da]in _0x539db3[_0x3d6c97(0x809)]&&(_0x523fff=!![]);if(_0x523fff)continue;_0x539db3[_0x3d6c97(0x7f9)](_0x27d7ad[_0xc2d1da]);}}}_0x539db3['forceRetry']&&_0x539db3['forceRetry']<0xa&&(_0x539db3[_0x3d6c97(0x7b6)]=0xa),_0x539db3[_0x3d6c97(0x7b6)]&&(clearTimeout(_0x539db3[_0x3d6c97(0x569)]),_0x539db3[_0x3d6c97(0x569)]=setTimeout(function(){log('retrying\x20at\x20an\x20interval'),_0x539db3['retryWatchInterval']();},_0x539db3[_0x3d6c97(0x7b6)]*0x3e8));}},_0x539db3[_0x173334(0x8f6)]=async function(_0x425aec){var _0x37253a=_0x173334;if(_0x425aec in _0x539db3[_0x37253a(0x77a)]){if(_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x495)]===_0x37253a(0x133)||_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x495)]===_0x37253a(0x749))log(_0x37253a(0x4d9)),_0x539db3[_0x37253a(0x1ac)](_0x425aec),warnlog(_0x37253a(0x76d));else{if(iPad||iOS)log(_0x37253a(0x7b1)),_0x539db3[_0x37253a(0x1ac)](_0x425aec),warnlog(_0x37253a(0x323));else{warnlog(_0x37253a(0x835)+_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x495)]);return;}}}else log('Create\x20a\x20new\x20RTC\x20connection;\x20offering\x20SDP\x20on\x20request');if(_0x539db3[_0x37253a(0x453)]!==![]){if(Object[_0x37253a(0x39b)](_0x539db3[_0x37253a(0x77a)])[_0x37253a(0x425)]>_0x539db3[_0x37253a(0x453)]){log(_0x37253a(0x67b)),log(_0x37253a(0x49a)),_0x539db3[_0x37253a(0x1ac)](_0x425aec);return;}}else{if(_0x539db3[_0x37253a(0x8d4)]!==![]){if(Object['keys'](_0x539db3[_0x37253a(0x51f)])[_0x37253a(0x425)]+Object[_0x37253a(0x39b)](_0x539db3[_0x37253a(0x77a)])[_0x37253a(0x425)]>_0x539db3['maxconnections']){log(_0x37253a(0x44c)),log('closing\x209'),_0x539db3[_0x37253a(0x1ac)](_0x425aec);return;}}}!_0x539db3[_0x37253a(0x669)]&&await chooseBestTURN();try{_0x539db3[_0x37253a(0x77a)][_0x425aec]=new RTCPeerConnection(_0x539db3[_0x37253a(0x669)]);}catch(_0x1e3bb9){!_0x539db3[_0x37253a(0x50b)]&&warnUser('An\x20RTC\x20error\x20occured');errorlog(_0x1e3bb9);return;}if(_0x539db3[_0x37253a(0x3a9)]){if(Object[_0x37253a(0x39b)](_0x539db3[_0x37253a(0x77a)])['length']>0x1){log(_0x37253a(0x337)),log('closing\x2010'),_0x539db3[_0x37253a(0x1ac)](_0x425aec);return;}}_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x27b)]={},_0x539db3['pcs'][_0x425aec][_0x37253a(0x43a)]=_0x539db3[_0x37253a(0x815)]+_0x539db3['generateStreamID'](0x5),_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x86e)]=null,_0x539db3['pcs'][_0x425aec][_0x37253a(0x279)]=null,_0x539db3['pcs'][_0x425aec]['obsState']={},_0x539db3['pcs'][_0x425aec][_0x37253a(0x2e4)]['visibility']=null,_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x2e4)][_0x37253a(0x70f)]=null,_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x2e4)]['streaming']=null,_0x539db3['pcs'][_0x425aec][_0x37253a(0x2e4)]['recording']=null,_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x2e4)]['virtualcam']=null,_0x539db3['pcs'][_0x425aec][_0x37253a(0x72d)]=![],_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x85c)]=![],_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x4b8)]=null,_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x10e)]=null,_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x35d)]=null,_0x539db3['pcs'][_0x425aec][_0x37253a(0x3d8)]=null,_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x59f)]=![],_0x539db3['pcs'][_0x425aec]['coDirector']=![],_0x539db3['pcs'][_0x425aec][_0x37253a(0x68a)]=![],_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x5da)]=![],_0x539db3['pcs'][_0x425aec]['guest']=![],_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x350)]=![],_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x7de)]=![],_0x539db3['pcs'][_0x425aec]['degradationPreference']=![],_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x19d)]=null,_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x40f)]=![],_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x1b1)]=![],_0x539db3[_0x37253a(0x77a)][_0x425aec]['allowAudio']=![],_0x539db3['pcs'][_0x425aec][_0x37253a(0x4f3)]=![],_0x539db3[_0x37253a(0x77a)][_0x425aec]['allowWebp']=![],_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x831)]=![],_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x2b2)]=![],_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x786)]=![],_0x539db3['pcs'][_0x425aec][_0x37253a(0x1af)]=![],_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x1f6)]=null,_0x539db3[_0x37253a(0x77a)][_0x425aec]['UUID']=_0x425aec,_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x7bf)]=![],_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x238)]=![],_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x422)]=![],_0x539db3['pcs'][_0x425aec][_0x37253a(0x13e)]=![],_0x539db3['pcs'][_0x425aec]['scaleSnap']=![],_0x539db3['pcs'][_0x425aec]['scaleResolution']=![],_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x71e)]=null,_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x4a4)]=![],_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x1a9)]=![],_0x539db3[_0x37253a(0x77a)][_0x425aec]['keyframeTimeout']=null,_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x4bc)]=![],_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x670)]=![],_0x539db3['pcs'][_0x425aec][_0x37253a(0x53d)]=![],_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x5a3)]=null,_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x844)]=_0x539db3[_0x37253a(0x844)],_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x488)]=Date[_0x37253a(0x5a8)]();function _0xdd263b(_0x4f1913=![]){var _0x5691cf=_0x37253a;if(_0x4f1913)return;_0x539db3[_0x5691cf(0x77a)][_0x425aec]['sendChannel']=_0x539db3[_0x5691cf(0x77a)][_0x425aec][_0x5691cf(0x5d1)](_0x5691cf(0x46f)),_0x539db3[_0x5691cf(0x77a)][_0x425aec][_0x5691cf(0x46f)]['UUID']=_0x425aec,_0x539db3[_0x5691cf(0x77a)][_0x425aec][_0x5691cf(0x46f)][_0x5691cf(0x918)]=()=>{var _0xddea9c=_0x5691cf;if(_0x4f1913)return;log(_0xddea9c(0x577)),msg={},msg[_0xddea9c(0x61a)]={},msg['info'][_0xddea9c(0x4bc)]=_0x539db3['label'],msg[_0xddea9c(0x61a)][_0xddea9c(0x670)]=_0x539db3[_0xddea9c(0x670)],msg[_0xddea9c(0x61a)]['muted']=_0x539db3[_0xddea9c(0x6f5)];try{_0x539db3['group'][_0xddea9c(0x425)]&&(msg[_0xddea9c(0x61a)][_0xddea9c(0x2f5)]=_0x539db3[_0xddea9c(0x445)][_0xddea9c(0x4d4)](','));}catch(_0x1130bb){}msg['info'][_0xddea9c(0x211)]=_0x539db3[_0xddea9c(0x211)],msg[_0xddea9c(0x61a)]['directorDisplayMuted']=_0x539db3['directorDisplayMuted'],msg[_0xddea9c(0x61a)][_0xddea9c(0x88e)]=_0x539db3['directorVideoMuted'],msg[_0xddea9c(0x61a)][_0xddea9c(0x358)]=_0x539db3['videoMuted'];_0x539db3[_0xddea9c(0x4f6)]?msg[_0xddea9c(0x61a)][_0xddea9c(0x74c)]=!![]:msg['info'][_0xddea9c(0x74c)]=![];if(_0x539db3[_0xddea9c(0x29a)]){if(_0x539db3[_0xddea9c(0x4c3)]&&_0x539db3[_0xddea9c(0x4c3)]===_0x425aec)_0x539db3[_0xddea9c(0x581)]();else{msg[_0xddea9c(0x427)]={},msg[_0xddea9c(0x427)][_0xddea9c(0x673)]=_0x539db3[_0xddea9c(0x673)];_0x539db3['soloChatUUID'][_0xddea9c(0x425)]&&!_0x539db3[_0xddea9c(0x441)][_0xddea9c(0x4ee)](_0x425aec)&&(msg['info'][_0xddea9c(0x6f5)]=!![]);var _0x197260=[];for(var _0x49fd0a in _0x539db3[_0xddea9c(0x77a)]){_0x539db3[_0xddea9c(0x77a)][_0x49fd0a][_0xddea9c(0x56a)]===!![]&&_0x197260[_0xddea9c(0x6d6)](_0x49fd0a);}_0x539db3[_0xddea9c(0x60e)]&&(msg[_0xddea9c(0x427)]['blindAllGuests']=!![]),_0x197260['length']&&(msg[_0xddea9c(0x427)]['addCoDirector']=_0x197260);}_0x539db3['autoSyncObject']&&(msg[_0xddea9c(0x61a)]['autoSync']=_0x539db3[_0xddea9c(0x332)]);}_0x539db3['broadcast']!==![]?msg[_0xddea9c(0x61a)][_0xddea9c(0x688)]=!![]:msg[_0xddea9c(0x61a)][_0xddea9c(0x688)]=![];_0x539db3['remote']?msg[_0xddea9c(0x61a)][_0xddea9c(0x57e)]=!![]:msg['info'][_0xddea9c(0x57e)]=![];if(_0x539db3[_0xddea9c(0x474)])msg[_0xddea9c(0x61a)]['obs_control']=_0x539db3[_0xddea9c(0x474)];else{if(_0x539db3['obsControls']===![])msg[_0xddea9c(0x61a)][_0xddea9c(0x449)]=![];else _0x539db3[_0xddea9c(0x4f6)]&&!_0x539db3[_0xddea9c(0x29a)]?msg['info']['obs_control']=![]:msg[_0xddea9c(0x61a)][_0xddea9c(0x449)]=null;}msg[_0xddea9c(0x61a)][_0xddea9c(0x342)]=_0x539db3[_0xddea9c(0x366)];_0x539db3['notifyScreenShare']?msg['screenShareState']=_0x539db3[_0xddea9c(0x648)]:msg[_0xddea9c(0x648)]=![];msg[_0xddea9c(0x61a)][_0xddea9c(0x437)]=_0x539db3['width'],msg[_0xddea9c(0x61a)][_0xddea9c(0x8d7)]=_0x539db3['height'],msg[_0xddea9c(0x61a)][_0xddea9c(0x164)]=_0x539db3['quality'],msg[_0xddea9c(0x61a)]['maxvb_url']=_0x539db3[_0xddea9c(0x1bf)],msg[_0xddea9c(0x61a)][_0xddea9c(0x8d6)]=_0x539db3[_0xddea9c(0x453)],msg[_0xddea9c(0x61a)]['stereo_url']=_0x539db3[_0xddea9c(0x3b4)],msg[_0xddea9c(0x61a)][_0xddea9c(0x36c)]=_0x539db3[_0xddea9c(0x15d)],msg[_0xddea9c(0x61a)][_0xddea9c(0x62f)]=_0x539db3[_0xddea9c(0x615)],msg['info'][_0xddea9c(0xe1)]=_0x539db3[_0xddea9c(0x6ee)],msg[_0xddea9c(0x61a)][_0xddea9c(0x730)]=_0x539db3[_0xddea9c(0x730)],msg[_0xddea9c(0x61a)]['recording_audio_gain']=_0x539db3[_0xddea9c(0x30a)],msg['info'][_0xddea9c(0x6cd)]=_0x539db3[_0xddea9c(0x5f8)],msg['info']['recording_audio_ctx_latency']=_0x539db3[_0xddea9c(0x7ca)],msg[_0xddea9c(0x61a)][_0xddea9c(0x87c)]=!_0x539db3[_0xddea9c(0x72e)],msg[_0xddea9c(0x61a)][_0xddea9c(0x2d6)]=_0x539db3[_0xddea9c(0x7a0)],msg[_0xddea9c(0x61a)]['playback_audio_samplerate']=_0x539db3[_0xddea9c(0x25b)],msg[_0xddea9c(0x61a)][_0xddea9c(0x830)]=_0x539db3['audioMeterGuest'];_0x539db3[_0xddea9c(0x27b)][_0xddea9c(0x2fd)]&&(msg['info'][_0xddea9c(0x4b4)]=_0x539db3[_0xddea9c(0x27b)][_0xddea9c(0x2fd)]);_0x539db3[_0xddea9c(0x15f)]!==![]?_0x539db3[_0xddea9c(0x875)]?msg[_0xddea9c(0x61a)][_0xddea9c(0x56e)]=_0x539db3[_0xddea9c(0x15f)]+parseInt(_0x539db3['rotate']):msg[_0xddea9c(0x61a)]['rotate_video']=_0x539db3['forceRotate']:msg['info'][_0xddea9c(0x56e)]=_0x539db3[_0xddea9c(0x875)];msg[_0xddea9c(0x61a)][_0xddea9c(0x56e)]&&msg['info'][_0xddea9c(0x56e)]>=0x168&&(msg['info']['rotate_video']-=0x168);try{navigator&&navigator[_0xddea9c(0x4f1)]&&(msg[_0xddea9c(0x61a)][_0xddea9c(0x2ab)]=navigator['userAgent']);navigator&&navigator[_0xddea9c(0x576)]&&(msg[_0xddea9c(0x61a)]['platform']=navigator[_0xddea9c(0x576)]);msg[_0xddea9c(0x61a)][_0xddea9c(0x381)]=gpgpuSupport;if(SafariVersion)msg[_0xddea9c(0x61a)][_0xddea9c(0x535)]='Safari';else{if(getChromeVersion()>0x3c)msg[_0xddea9c(0x61a)][_0xddea9c(0x535)]=_0xddea9c(0x13b)+getChromeVersion();else{if(userAgent['indexOf'](_0xddea9c(0x616))>=0x0)msg[_0xddea9c(0x61a)][_0xddea9c(0x535)]=_0xddea9c(0x616);else userAgent['indexOf'](_0xddea9c(0x3c5))>=0x0?msg['info'][_0xddea9c(0x535)]=_0xddea9c(0x91f):msg['info']['Browser']=_0xddea9c(0x71c);}}}catch(_0x5db892){};_0x539db3[_0xddea9c(0x268)]&&(_0xddea9c(0x371)in _0x539db3['batteryState']&&(typeof _0x539db3[_0xddea9c(0x268)]['level']=='number'?msg[_0xddea9c(0x61a)][_0xddea9c(0x4fb)]=parseInt(_0x539db3[_0xddea9c(0x268)]['level']*0x64):msg[_0xddea9c(0x61a)]['power_level']=_0x539db3['batteryState']['level']),_0xddea9c(0x7c2)in _0x539db3[_0xddea9c(0x268)]&&(msg['info'][_0xddea9c(0xee)]=_0x539db3['batteryState']['charging']));_0x539db3[_0xddea9c(0x421)]&&(msg['info']['cpuLimited']=_0x539db3['cpuLimited']);try{_0x539db3['info'][_0xddea9c(0x309)]&&(msg[_0xddea9c(0x5a1)]={},msg[_0xddea9c(0x5a1)][_0xddea9c(0x309)]={},msg[_0xddea9c(0x5a1)][_0xddea9c(0x309)]['c']=_0x539db3[_0xddea9c(0x61a)]['out']['c']);}catch(_0x4c655c){}_0x539db3[_0xddea9c(0x70a)](msg,_0x425aec),pokeIframeAPI('new-push-connection',!![],_0x425aec),pokeIframeAPI(_0xddea9c(0x68d),!![],_0x425aec),updateUserList();},_0x539db3[_0x5691cf(0x77a)][_0x425aec][_0x5691cf(0x46f)][_0x5691cf(0x7fa)]=()=>{var _0x1ff50f=_0x5691cf;pokeIframeAPI(_0x1ff50f(0x3a7),![],_0x425aec),_0x539db3[_0x1ff50f(0x7ea)](),warnlog('send\x20channel\x20closed');return;},_0x539db3[_0x5691cf(0x77a)][_0x425aec]['sendChannel'][_0x5691cf(0x6c3)]=async function(_0x2b552f){var _0x3c88fd=_0x5691cf;log('received\x20data\x20from\x20viewer');try{var _0x20abc9=JSON['parse'](_0x2b552f[_0x3c88fd(0x4b6)]);}catch(_0x110253){warnlog(_0x3c88fd(0x234)),log(_0x2b552f[_0x3c88fd(0x4b6)]);try{var _0x2703e8=new TextDecoder()['decode'](_0x2b552f['data']),_0x20abc9=JSON[_0x3c88fd(0x70e)](_0x2703e8);}catch(_0x298476){try{var _0x20abc9=await new Response(_0x2b552f[_0x3c88fd(0x4b6)])[_0x3c88fd(0x18a)]();_0x20abc9=JSON['parse'](_0x20abc9);}catch(_0x1f6058){return;}}}log(_0x20abc9);if(_0x3c88fd(0x57e)in _0x20abc9)try{_0x20abc9=await _0x539db3['decodeRemote'](_0x20abc9);if(!_0x20abc9)return;}catch(_0x516796){errorlor(_0x516796);}'altUUID'in _0x20abc9?await _0x539db3[_0x3c88fd(0x2ce)](_0x20abc9,_0x425aec+_0x3c88fd(0x326)):await _0x539db3[_0x3c88fd(0x2ce)](_0x20abc9,_0x425aec);};}_0xdd263b(![]),_0x539db3[_0x37253a(0x77a)][_0x425aec]['ondatachannel']=function(_0x463d38){var _0x44db0f=_0x37253a;warnlog(_0x44db0f(0x29d)),warnlog(_0x463d38);if(_0x463d38[_0x44db0f(0x751)][_0x44db0f(0x4bc)]&&_0x463d38[_0x44db0f(0x751)][_0x44db0f(0x4bc)]!==_0x44db0f(0x46f)){_0x539db3['recieveFile'](_0x539db3[_0x44db0f(0x51f)],_0x425aec,_0x463d38[_0x44db0f(0x751)]);return;}},_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x263)]=function(_0x14110a){var _0xa6c55e=_0x37253a;log(_0xa6c55e(0x26a)),_0x539db3[_0xa6c55e(0x933)](_0x425aec);},_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x1c2)]=_0x253b00=>{var _0x5c9bf3=_0x37253a;errorlog(_0x5c9bf3(0x15b));},_0x539db3['pcs'][_0x425aec][_0x37253a(0x656)]=null,_0x539db3[_0x37253a(0x77a)][_0x425aec][_0x37253a(0x40c)]=[],_0x539db3['pcs'][_0x425aec][_0x37253a(0x65c)]=function(_0x3c13b3){var _0x156d09=_0x37253a;if(_0x3c13b3['candidate']==null){log(_0x156d09(0x17a));return;}log(_0x3c13b3);try{if(_0x539db3[_0x156d09(0x86c)]){if(_0x3c13b3[_0x156d09(0x663)][_0x156d09(0x663)]['indexOf'](_0x539db3[_0x156d09(0x86c)])===-0x1){log(_0x156d09(0x597));return;}else log(_0x3c13b3[_0x156d09(0x663)]);}}catch(_0x1209f0){errorlog(_0x1209f0);}if(_0x539db3[_0x156d09(0x77a)][_0x425aec][_0x156d09(0x656)]!==null){_0x539db3['pcs'][_0x425aec][_0x156d09(0x40c)][_0x156d09(0x6d6)](_0x3c13b3['candidate']);return;}_0x539db3['pcs'][_0x425aec][_0x156d09(0x40c)][_0x156d09(0x6d6)](_0x3c13b3['candidate']),_0x539db3[_0x156d09(0x77a)][_0x425aec]['iceTimer']=setTimeout(function(_0x49cad2){var _0x1820a2=_0x156d09;try{_0x539db3[_0x1820a2(0x77a)][_0x49cad2][_0x1820a2(0x656)]=null;}catch(_0x52370a){warnlog(_0x1820a2(0x59a));return;}var _0x576dd5={};_0x576dd5['UUID']=_0x49cad2,_0x576dd5[_0x1820a2(0x373)]=_0x1820a2(0x260),_0x576dd5[_0x1820a2(0x651)]=_0x539db3[_0x1820a2(0x77a)][_0x49cad2][_0x1820a2(0x40c)],_0x576dd5[_0x1820a2(0x43a)]=_0x539db3[_0x1820a2(0x77a)][_0x49cad2][_0x1820a2(0x43a)],_0x539db3[_0x1820a2(0x77a)][_0x49cad2][_0x1820a2(0x40c)]=[],_0x539db3[_0x1820a2(0x39f)]?_0x539db3[_0x1820a2(0x692)](JSON[_0x1820a2(0x924)](_0x576dd5[_0x1820a2(0x651)]))['then'](function(_0x2520cb){var _0x37b323=_0x1820a2;_0x576dd5[_0x37b323(0x651)]=_0x2520cb[0x0],_0x576dd5['vector']=_0x2520cb[0x1],_0x539db3[_0x37b323(0x539)](_0x576dd5);})['catch'](errorlog):_0x539db3[_0x1820a2(0x539)](_0x576dd5);},0xc8,_0x425aec);},_0x539db3[_0x37253a(0x2ce)]=async function(_0x556b58,_0x192905){var _0x3c2e07=_0x37253a;_0x556b58[_0x3c2e07(0x5f9)]=_0x192905;if(_0x556b58[_0x3c2e07(0x122)]){_0x539db3[_0x3c2e07(0x772)](_0x556b58);return;}else{if(_0x556b58[_0x3c2e07(0x663)]){log(_0x3c2e07(0x134)),_0x539db3[_0x3c2e07(0x8f2)](_0x556b58);return;}else{if(_0x556b58[_0x3c2e07(0x651)]){log(_0x3c2e07(0x916)),_0x539db3[_0x3c2e07(0x40b)](_0x556b58);return;}else{if(_0x3c2e07(0x7ea)in _0x556b58){var _0x30b838={};_0x30b838[_0x3c2e07(0x4ff)]=_0x556b58['ping'],_0x539db3['sendMessage'](_0x30b838,_0x192905),warnlog(_0x3c2e07(0x709));return;}else{if(_0x3c2e07(0x4ff)in _0x556b58){warnlog(_0x3c2e07(0x494));return;}else{if(_0x3c2e07(0x4da)in _0x556b58){warnlog(_0x3c2e07(0x2d9)),log(_0x3c2e07(0x230)),_0x539db3[_0x3c2e07(0x1ac)](_0x192905);return;}}}}}}if(_0x539db3[_0x3c2e07(0x29a)]){if(_0x3c2e07(0x4c6)in _0x556b58&&'vector'in _0x556b58){if(_0x539db3[_0x3c2e07(0x19a)])_0x539db3[_0x3c2e07(0x828)]?_0x539db3[_0x3c2e07(0x77c)](_0x556b58[_0x3c2e07(0x4c6)],_0x556b58[_0x3c2e07(0x61b)],_0x539db3[_0x3c2e07(0x828)])['then'](function(_0x184e40){var _0x53a207=_0x3c2e07;if(_0x184e40===_0x539db3[_0x53a207(0x828)]){_0x539db3[_0x53a207(0x77a)][_0x192905][_0x53a207(0x56a)]=!![],getById('container_'+_0x192905)[_0x53a207(0x750)]['add'](_0x53a207(0x41f)),_0x539db3[_0x53a207(0x42c)](_0x192905);var _0x30e52b={};_0x30e52b[_0x53a207(0x31c)]=_0x53a207(0x4c6),_0x539db3['sendMessage'](_0x30e52b,_0x192905);}else{warnlog(_0x53a207(0x6c5));var _0x30e52b={};_0x30e52b[_0x53a207(0x6dd)]=_0x53a207(0x4c6),_0x539db3[_0x53a207(0x70a)](_0x30e52b,_0x192905);}})[_0x3c2e07(0x49b)](function(){var _0x49b79a=_0x3c2e07;warnlog(_0x49b79a(0x90d));var _0x3171e5={};_0x3171e5[_0x49b79a(0x6dd)]='requestCoDirector',_0x539db3[_0x49b79a(0x70a)](_0x3171e5,_0x192905);}):generateHash(_0x539db3[_0x3c2e07(0x19a)]+_0x539db3[_0x3c2e07(0x48c)]+_0x3c2e07(0x1ce),0xc)[_0x3c2e07(0x1f1)](function(_0x2899ea){var _0x230f3f=_0x3c2e07;_0x539db3[_0x230f3f(0x828)]=_0x2899ea,_0x539db3[_0x230f3f(0x77c)](_0x556b58[_0x230f3f(0x4c6)],_0x556b58[_0x230f3f(0x61b)],_0x539db3[_0x230f3f(0x828)])['then'](function(_0x13130d){var _0x2b3050=_0x230f3f;if(_0x13130d===_0x539db3['directorHash']){_0x539db3[_0x2b3050(0x77a)][_0x192905]['coDirector']=!![],getById('container_'+_0x192905)[_0x2b3050(0x750)]['add']('directorBlue'),_0x539db3['announceCoDirector'](_0x192905);var _0x2c5a0a={};_0x2c5a0a[_0x2b3050(0x31c)]=_0x2b3050(0x4c6),_0x539db3[_0x2b3050(0x8fb)](_0x2c5a0a,_0x192905);}else{warnlog(_0x2b3050(0x6c5));var _0x2c5a0a={};_0x2c5a0a[_0x2b3050(0x6dd)]=_0x2b3050(0x4c6),_0x539db3[_0x2b3050(0x8fb)](_0x2c5a0a,_0x192905);}})[_0x230f3f(0x49b)](function(){var _0x4b3e17=_0x230f3f;warnlog(_0x4b3e17(0x90d));var _0x2658f3={};_0x2658f3['rejected']=_0x4b3e17(0x4c6),_0x539db3[_0x4b3e17(0x8fb)](_0x2658f3,_0x192905);});return;})[_0x3c2e07(0x49b)](errorlog);else{warnlog('reject\x20co');var _0x30b838={};_0x30b838[_0x3c2e07(0x6dd)]=_0x3c2e07(0x4c6),_0x539db3[_0x3c2e07(0x8fb)](_0x30b838,_0x192905);}}if(_0x3c2e07(0x5c9)in _0x556b58&&_0x3c2e07(0x4f6)in _0x556b58){log('Someone\x20is\x20trying\x20to\x20transfer\x20a\x20guest');if(_0x539db3[_0x3c2e07(0x50c)]){if(_0x192905 in _0x539db3[_0x3c2e07(0x77a)]&&_0x539db3[_0x3c2e07(0x77a)][_0x192905]['coDirector']===!![]){log(_0x3c2e07(0x697));var _0x30b838={};if(_0x556b58['transferSettings']&&_0x556b58['transferSettings']['updateurl']){_0x30b838[_0x3c2e07(0x668)]=_0x3c2e07(0x5c9),_0x30b838[_0x3c2e07(0x6f6)]=_0x556b58[_0x3c2e07(0x6f6)],log(_0x30b838);if(_0x539db3[_0x3c2e07(0x70a)](_0x30b838,_0x556b58[_0x3c2e07(0x5c9)]['toString']())){var _0x30b838={};_0x30b838[_0x3c2e07(0x668)]=_0x3c2e07(0x5c9),_0x30b838[_0x3c2e07(0x4f6)]=_0x556b58[_0x3c2e07(0x4f6)],_0x30b838[_0x3c2e07(0x632)]=_0x556b58[_0x3c2e07(0x5c9)][_0x3c2e07(0x229)](),_0x539db3[_0x3c2e07(0x555)](_0x30b838);}log(_0x30b838);}else{if(_0x556b58[_0x3c2e07(0x6f6)]&&_0x3c2e07(0x610)in _0x556b58['transferSettings']){_0x30b838[_0x3c2e07(0x668)]=_0x3c2e07(0x5c9),_0x30b838[_0x3c2e07(0x6f6)]=_0x556b58[_0x3c2e07(0x6f6)],delete _0x30b838['transferSettings']['roomid'],delete _0x30b838[_0x3c2e07(0x6f6)][_0x3c2e07(0x29b)],log(_0x30b838);if(_0x539db3[_0x3c2e07(0x70a)](_0x30b838,_0x556b58['migrate'][_0x3c2e07(0x229)]())){var _0x30b838={};_0x30b838[_0x3c2e07(0x668)]=_0x3c2e07(0x5c9),_0x30b838[_0x3c2e07(0x4f6)]=_0x556b58[_0x3c2e07(0x4f6)],_0x30b838[_0x3c2e07(0x632)]=_0x556b58[_0x3c2e07(0x5c9)][_0x3c2e07(0x229)](),_0x539db3[_0x3c2e07(0x555)](_0x30b838);}log(_0x30b838);}else _0x30b838[_0x3c2e07(0x668)]=_0x3c2e07(0x5c9),_0x30b838[_0x3c2e07(0x4f6)]=_0x556b58[_0x3c2e07(0x4f6)],_0x30b838['target']=_0x556b58['migrate']['toString'](),_0x539db3[_0x3c2e07(0x555)](_0x30b838);}pokeIframeAPI(_0x3c2e07(0x8bd),_0x556b58[_0x3c2e07(0x4f6)],_0x556b58[_0x3c2e07(0x5c9)]['toString']());}}else{var _0x30b838={};_0x30b838[_0x3c2e07(0x6dd)]=_0x3c2e07(0x6af),_0x539db3[_0x3c2e07(0x8fb)](_0x30b838,_0x192905);}}}if(_0x3c2e07(0x506)in _0x556b58){if(!_0x556b58[_0x3c2e07(0x5f9)]){log('no\x20UUID\x20in\x20msg');return;}var _0x33f3dd=_0x556b58[_0x3c2e07(0x506)];if(!_0x539db3[_0x3c2e07(0x77a)][_0x33f3dd]){log(_0x3c2e07(0x46d));return;}if(_0x539db3[_0x3c2e07(0x3a6)]['indexOf'](_0x33f3dd)>=0x0){var _0x30b838={};_0x30b838[_0x3c2e07(0x6dd)]=_0x3c2e07(0x506),_0x539db3['sendMessage'](_0x30b838,_0x556b58[_0x3c2e07(0x5f9)]),warnlog('Remote\x20user\x20is\x20a\x20director');return;}if(_0x539db3['remote']){if(_0x3c2e07(0x57e)in _0x556b58&&_0x556b58['remote']===_0x539db3[_0x3c2e07(0x57e)]&&_0x539db3[_0x3c2e07(0x57e)]){}else{if(_0x539db3[_0x3c2e07(0x57e)]===!![]){}}}else{if(_0x539db3['directorList'][_0x3c2e07(0x854)](_0x556b58[_0x3c2e07(0x5f9)])>=0x0){}else return;}_0x3c2e07(0x1a2)in _0x556b58&&_0x539db3[_0x3c2e07(0x1a2)](_0x33f3dd,_0x556b58[_0x3c2e07(0x1a2)]);'targetAudioBitrate'in _0x556b58&&_0x539db3[_0x3c2e07(0x235)](_0x33f3dd,_0x556b58['targetAudioBitrate']);if('requestResolution'in _0x556b58)try{_0x556b58[_0x3c2e07(0x93f)]['s']?_0x539db3[_0x3c2e07(0x1d4)](_0x33f3dd,_0x556b58[_0x3c2e07(0x93f)]['w'],_0x556b58[_0x3c2e07(0x93f)]['h'],!![]):_0x539db3[_0x3c2e07(0x1d4)](_0x33f3dd,_0x556b58[_0x3c2e07(0x93f)]['w'],_0x556b58['requestResolution']['h'],![]);}catch(_0x36c569){errorlog(_0x36c569);}return;}try{if(_0x3c2e07(0x61a)in _0x556b58){_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x27b)][_0x3c2e07(0x61a)]=_0x556b58['info'];_0x3c2e07(0x4bc)in _0x556b58['info']&&(typeof _0x556b58['info'][_0x3c2e07(0x4bc)]==_0x3c2e07(0x77f)?_0x539db3['pcs'][_0x192905][_0x3c2e07(0x4bc)]=sanitizeLabel(_0x556b58['info'][_0x3c2e07(0x4bc)]):_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x4bc)]=![]);if(_0x192905===_0x539db3[_0x3c2e07(0x4c3)])try{_0x539db3[_0x3c2e07(0x77a)][_0x192905]['stats'][_0x3c2e07(0x61a)][_0x3c2e07(0x29a)]=!![];}catch(_0xbf0e41){}else{if(_0x539db3[_0x3c2e07(0x3a6)]['indexOf'](_0x192905)>=0x0)try{_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x27b)][_0x3c2e07(0x61a)][_0x3c2e07(0x56a)]=!![];}catch(_0xe6f179){}}if(Firefox)try{_0x3c2e07(0x6fe)in _0x556b58[_0x3c2e07(0x61a)]&&(_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x85c)]===![]&&(_0x556b58[_0x3c2e07(0x61a)][_0x3c2e07(0x6fe)]&&parseInt(_0x556b58[_0x3c2e07(0x61a)]['vb_url'])>0x0&&(_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x85c)]=parseInt(_0x556b58[_0x3c2e07(0x61a)][_0x3c2e07(0x6fe)]),_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x35d)]&&clearTimeout(_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x35d)]),_0x539db3[_0x3c2e07(0x77a)][_0x192905]['bitrateTimeout']=setTimeout(function(_0x46ee88){var _0x38702f=_0x3c2e07;_0x539db3[_0x38702f(0x64a)](_0x46ee88,null);},0x3e8,_0x192905))));}catch(_0xb7e3b6){errorlog(_0xb7e3b6);}pokeIframeAPI(_0x3c2e07(0x804),_0x556b58[_0x3c2e07(0x61a)],_0x192905);}if(_0x3c2e07(0x3cc)in _0x556b58){if(_0x539db3['iframeSrc'])try{_0x539db3['iframeSrc'][_0x3c2e07(0x71a)](_0x3c2e07(0x408))&&processIframeSyncFeedback(_0x556b58['ifs'],_0x192905);}catch(_0x437474){errorlog(_0x437474);}}_0x3c2e07(0x4a1)in _0x556b58&&_0x539db3['gotGenericData'](_0x556b58['pipe'],_0x192905);_0x3c2e07(0x622)in _0x556b58&&(_0x539db3['autoSyncObject']=_0x556b58[_0x3c2e07(0x622)],_0x539db3['autoSyncCallback'](_0x192905));_0x3c2e07(0x72d)in _0x556b58&&(_0x539db3['pcs'][_0x192905]['optimizedBitrate']=parseInt(_0x556b58[_0x3c2e07(0x72d)]));_0x3c2e07(0x3d7)in _0x556b58&&_0x539db3[_0x3c2e07(0x68f)](_0x192905,_0x556b58[_0x3c2e07(0x3d7)]);_0x3c2e07(0x419)in _0x556b58&&_0x539db3[_0x3c2e07(0x64a)](_0x192905,_0x556b58[_0x3c2e07(0x419)]);_0x3c2e07(0x1a2)in _0x556b58&&_0x539db3['targetBitrate'](_0x192905,_0x556b58['targetBitrate']);_0x3c2e07(0x235)in _0x556b58&&_0x539db3[_0x3c2e07(0x235)](_0x192905,_0x556b58[_0x3c2e07(0x235)]);if('hangup'in _0x556b58){if(_0x3c2e07(0x57e)in _0x556b58){if(_0x556b58[_0x3c2e07(0x57e)]===_0x539db3['remote']&&_0x539db3[_0x3c2e07(0x57e)]||_0x539db3[_0x3c2e07(0x57e)]===!![]){_0x539db3[_0x3c2e07(0x2fa)]();return;}}}if(_0x3c2e07(0x8b1)in _0x556b58){if('remote'in _0x556b58){if(_0x556b58[_0x3c2e07(0x57e)]===_0x539db3['remote']&&_0x539db3['remote']||_0x539db3[_0x3c2e07(0x57e)]===!![]){_0x539db3[_0x3c2e07(0x2fa)](!![]);return;}}}if(_0x3c2e07(0x362)in _0x556b58){if(_0x539db3[_0x3c2e07(0x3a6)]['indexOf'](_0x192905)>=0x0){var _0x3e79e7={};if(_0x539db3['mc'][_0x3c2e07(0x27b)])_0x3e79e7['meshcast']=_0x539db3['mc'][_0x3c2e07(0x27b)];else for(var _0x524b5b in _0x539db3['pcs']){if(_0x524b5b===_0x192905)continue;_0x3e79e7[_0x524b5b]=_0x539db3[_0x3c2e07(0x77a)][_0x524b5b]['stats'];}var _0x30b838={};_0x30b838['remoteStats']=_0x3e79e7,_0x539db3[_0x3c2e07(0x70a)](_0x30b838,_0x192905);}else{if(_0x3c2e07(0x57e)in _0x556b58){if(_0x556b58[_0x3c2e07(0x57e)]===_0x539db3[_0x3c2e07(0x57e)]&&_0x539db3[_0x3c2e07(0x57e)]||_0x539db3[_0x3c2e07(0x57e)]===!![]){var _0x3e79e7={};if(_0x539db3['mc'][_0x3c2e07(0x27b)])_0x3e79e7[_0x3c2e07(0x1f6)]=_0x539db3['mc'][_0x3c2e07(0x27b)];else for(var _0x524b5b in _0x539db3[_0x3c2e07(0x77a)]){if(_0x524b5b===_0x192905)continue;_0x3e79e7[_0x524b5b]=_0x539db3[_0x3c2e07(0x77a)][_0x524b5b][_0x3c2e07(0x27b)];}var _0x30b838={};_0x30b838[_0x3c2e07(0x69f)]=_0x3e79e7,_0x539db3['sendMessage'](_0x30b838,_0x192905);}}else{var _0x3e79e7={};if(_0x539db3['mc']['stats'])_0x3e79e7['meshcast']=_0x539db3['mc'][_0x3c2e07(0x27b)];else for(var _0x524b5b in _0x539db3['pcs']){if(_0x524b5b===_0x192905)continue;if(!_0x539db3[_0x3c2e07(0x77a)][_0x524b5b][_0x3c2e07(0x27b)])continue;if(_0x539db3[_0x3c2e07(0x77a)][_0x524b5b][_0x3c2e07(0x2bf)])continue;if(_0x539db3[_0x3c2e07(0x4f6)]){if('scene'in _0x539db3[_0x3c2e07(0x77a)][_0x524b5b]['stats']){if(_0x539db3[_0x3c2e07(0x77a)][_0x524b5b][_0x3c2e07(0x27b)][_0x3c2e07(0x4a4)]===![])continue;}else continue;}_0x3e79e7[_0x524b5b]={},_0x539db3[_0x3c2e07(0x77a)][_0x524b5b][_0x3c2e07(0x27b)][_0x3c2e07(0x603)]&&(_0x3e79e7[_0x524b5b][_0x3c2e07(0x603)]=_0x539db3[_0x3c2e07(0x77a)][_0x524b5b][_0x3c2e07(0x27b)][_0x3c2e07(0x603)]),_0x539db3['pcs'][_0x524b5b][_0x3c2e07(0x27b)][_0x3c2e07(0x822)]&&(_0x3e79e7[_0x524b5b][_0x3c2e07(0x822)]=_0x539db3[_0x3c2e07(0x77a)][_0x524b5b]['stats'][_0x3c2e07(0x822)]),_0x539db3[_0x3c2e07(0x77a)][_0x524b5b][_0x3c2e07(0x27b)]['available_outgoing_bitrate_kbps']&&(_0x3e79e7[_0x524b5b][_0x3c2e07(0x899)]=_0x539db3[_0x3c2e07(0x77a)][_0x524b5b][_0x3c2e07(0x27b)][_0x3c2e07(0x899)]),_0x539db3[_0x3c2e07(0x77a)][_0x524b5b]['stats'][_0x3c2e07(0x4a4)]&&(_0x3e79e7[_0x524b5b][_0x3c2e07(0x4a4)]=_0x539db3[_0x3c2e07(0x77a)][_0x524b5b][_0x3c2e07(0x27b)][_0x3c2e07(0x4a4)]),_0x539db3[_0x3c2e07(0x77a)][_0x524b5b][_0x3c2e07(0x4bc)]&&(_0x3e79e7[_0x524b5b][_0x3c2e07(0x4bc)]=_0x539db3[_0x3c2e07(0x77a)][_0x524b5b][_0x3c2e07(0x4bc)]),_0x539db3['pcs'][_0x524b5b][_0x3c2e07(0x27b)][_0x3c2e07(0x662)]&&(_0x3e79e7[_0x524b5b]['resolution']=_0x539db3[_0x3c2e07(0x77a)][_0x524b5b]['stats'][_0x3c2e07(0x662)]),_0x539db3[_0x3c2e07(0x77a)][_0x524b5b]['stats'][_0x3c2e07(0x850)]&&(_0x3e79e7[_0x524b5b][_0x3c2e07(0x850)]=_0x539db3[_0x3c2e07(0x77a)][_0x524b5b]['stats'][_0x3c2e07(0x850)]);}var _0x30b838={};_0x30b838['remoteStats']=_0x3e79e7,_0x539db3[_0x3c2e07(0x70a)](_0x30b838,_0x192905);}}}if(_0x3c2e07(0x16f)in _0x556b58){clearInterval(_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x840)]);if(_0x539db3[_0x3c2e07(0x3a6)][_0x3c2e07(0x854)](_0x192905)>=0x0){if(_0x556b58[_0x3c2e07(0x16f)]){_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x840)]=setInterval(function(_0x5e37aa){var _0x3bbb43=_0x3c2e07,_0xa9600f={};if(_0x539db3['mc'][_0x3bbb43(0x27b)])_0xa9600f[_0x3bbb43(0x1f6)]=_0x539db3['mc']['stats'];else for(var _0x4f0cb7 in _0x539db3[_0x3bbb43(0x77a)]){if(_0x4f0cb7===_0x5e37aa)continue;if(!_0x539db3['pcs'][_0x4f0cb7]['stats'])continue;if(_0x539db3['pcs'][_0x4f0cb7][_0x3bbb43(0x2bf)])continue;_0xa9600f[_0x4f0cb7]=_0x539db3['pcs'][_0x4f0cb7][_0x3bbb43(0x27b)];}var _0x53bb1c={};_0x53bb1c[_0x3bbb43(0x69f)]=_0xa9600f,_0x539db3[_0x3bbb43(0x70a)](_0x53bb1c,_0x5e37aa);},0xbb8,_0x192905);var _0x3e79e7={};if(_0x539db3['mc'][_0x3c2e07(0x27b)])_0x3e79e7[_0x3c2e07(0x1f6)]=_0x539db3['mc'][_0x3c2e07(0x27b)];else for(var _0x524b5b in _0x539db3[_0x3c2e07(0x77a)]){if(_0x524b5b===_0x192905)continue;if(!_0x539db3[_0x3c2e07(0x77a)][_0x524b5b][_0x3c2e07(0x27b)])continue;if(_0x539db3['pcs'][_0x524b5b][_0x3c2e07(0x2bf)])continue;_0x3e79e7[_0x524b5b]=_0x539db3['pcs'][_0x524b5b][_0x3c2e07(0x27b)];}var _0x30b838={};_0x30b838['remoteStats']=_0x3e79e7,_0x539db3[_0x3c2e07(0x70a)](_0x30b838,_0x192905);}}else{if(_0x3c2e07(0x57e)in _0x556b58){if(_0x556b58['remote']===_0x539db3[_0x3c2e07(0x57e)]&&_0x539db3[_0x3c2e07(0x57e)]||_0x539db3[_0x3c2e07(0x57e)]===!![]){if(_0x556b58[_0x3c2e07(0x16f)]){_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x840)]=setInterval(function(_0x95dd54){var _0x31ca51=_0x3c2e07,_0x5dd87e={};if(_0x539db3['mc'][_0x31ca51(0x27b)])_0x5dd87e[_0x31ca51(0x1f6)]=_0x539db3['mc'][_0x31ca51(0x27b)];else for(var _0x5c19e1 in _0x539db3[_0x31ca51(0x77a)]){if(_0x5c19e1===_0x95dd54)continue;if(!_0x539db3['pcs'][_0x5c19e1][_0x31ca51(0x27b)])continue;if(_0x539db3[_0x31ca51(0x77a)][_0x5c19e1][_0x31ca51(0x2bf)])continue;_0x5dd87e[_0x5c19e1]=_0x539db3[_0x31ca51(0x77a)][_0x5c19e1][_0x31ca51(0x27b)];}var _0x14a458={};_0x14a458['remoteStats']=_0x5dd87e,_0x539db3[_0x31ca51(0x70a)](_0x14a458,_0x95dd54);},0xbb8,_0x192905);var _0x3e79e7={};if(_0x539db3['mc'][_0x3c2e07(0x27b)])_0x3e79e7[_0x3c2e07(0x1f6)]=_0x539db3['mc'][_0x3c2e07(0x27b)];else for(var _0x524b5b in _0x539db3[_0x3c2e07(0x77a)]){if(_0x524b5b===_0x192905)continue;if(!_0x539db3[_0x3c2e07(0x77a)][_0x524b5b][_0x3c2e07(0x27b)])continue;if(_0x539db3[_0x3c2e07(0x77a)][_0x524b5b]['guest'])continue;_0x3e79e7[_0x524b5b]=_0x539db3[_0x3c2e07(0x77a)][_0x524b5b][_0x3c2e07(0x27b)];}var _0x30b838={};_0x30b838['remoteStats']=_0x3e79e7,_0x539db3[_0x3c2e07(0x70a)](_0x30b838,_0x192905);}}}else{if(_0x556b58[_0x3c2e07(0x16f)]){_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x840)]=setInterval(function(_0xc04059){var _0x2c52a5=_0x3c2e07,_0x2ae4d1={};if(_0x539db3['mc']['stats'])_0x2ae4d1[_0x2c52a5(0x1f6)]=_0x539db3['mc'][_0x2c52a5(0x27b)];else for(var _0x319c32 in _0x539db3[_0x2c52a5(0x77a)]){if(_0x319c32===_0xc04059)continue;if(!_0x539db3[_0x2c52a5(0x77a)][_0x319c32]['stats'])continue;if(_0x539db3['pcs'][_0x319c32]['guest'])continue;if(_0x539db3[_0x2c52a5(0x4f6)]){if(_0x2c52a5(0x4a4)in _0x539db3[_0x2c52a5(0x77a)][_0x319c32]['stats']){if(_0x539db3[_0x2c52a5(0x77a)][_0x319c32]['stats']['scene']===![])continue;}else continue;}_0x2ae4d1[_0x319c32]={},_0x539db3[_0x2c52a5(0x77a)][_0x319c32]['stats'][_0x2c52a5(0x603)]&&(_0x2ae4d1[_0x319c32][_0x2c52a5(0x603)]=_0x539db3[_0x2c52a5(0x77a)][_0x319c32]['stats'][_0x2c52a5(0x603)]),_0x539db3[_0x2c52a5(0x77a)][_0x319c32][_0x2c52a5(0x27b)]['nacks_per_second']&&(_0x2ae4d1[_0x319c32][_0x2c52a5(0x822)]=_0x539db3[_0x2c52a5(0x77a)][_0x319c32][_0x2c52a5(0x27b)][_0x2c52a5(0x822)]),_0x539db3[_0x2c52a5(0x77a)][_0x319c32]['stats']['available_outgoing_bitrate_kbps']&&(_0x2ae4d1[_0x319c32][_0x2c52a5(0x899)]=_0x539db3[_0x2c52a5(0x77a)][_0x319c32][_0x2c52a5(0x27b)][_0x2c52a5(0x899)]),_0x539db3['pcs'][_0x319c32][_0x2c52a5(0x27b)][_0x2c52a5(0x4a4)]&&(_0x2ae4d1[_0x319c32]['scene']=_0x539db3[_0x2c52a5(0x77a)][_0x319c32]['stats'][_0x2c52a5(0x4a4)]),_0x539db3[_0x2c52a5(0x77a)][_0x319c32][_0x2c52a5(0x4bc)]&&(_0x2ae4d1[_0x319c32][_0x2c52a5(0x4bc)]=_0x539db3['pcs'][_0x319c32][_0x2c52a5(0x4bc)]),_0x539db3['pcs'][_0x319c32][_0x2c52a5(0x27b)][_0x2c52a5(0x662)]&&(_0x2ae4d1[_0x319c32][_0x2c52a5(0x662)]=_0x539db3[_0x2c52a5(0x77a)][_0x319c32]['stats'][_0x2c52a5(0x662)]),_0x539db3['pcs'][_0x319c32][_0x2c52a5(0x27b)][_0x2c52a5(0x850)]&&(_0x2ae4d1[_0x319c32][_0x2c52a5(0x850)]=_0x539db3[_0x2c52a5(0x77a)][_0x319c32][_0x2c52a5(0x27b)][_0x2c52a5(0x850)]);}var _0x341875={};_0x341875[_0x2c52a5(0x69f)]=_0x2ae4d1,_0x539db3[_0x2c52a5(0x70a)](_0x341875,_0xc04059);},0xbb8,_0x192905);var _0x3e79e7={};if(_0x539db3['mc'][_0x3c2e07(0x27b)])_0x3e79e7[_0x3c2e07(0x1f6)]=_0x539db3['mc'][_0x3c2e07(0x27b)];else for(var _0x524b5b in _0x539db3[_0x3c2e07(0x77a)]){if(_0x524b5b===_0x192905)continue;if(!_0x539db3[_0x3c2e07(0x77a)][_0x524b5b][_0x3c2e07(0x27b)])continue;if(_0x539db3[_0x3c2e07(0x77a)][_0x524b5b]['guest'])continue;if(_0x539db3[_0x3c2e07(0x4f6)]){if(_0x3c2e07(0x4a4)in _0x539db3['pcs'][_0x524b5b][_0x3c2e07(0x27b)]){if(_0x539db3[_0x3c2e07(0x77a)][_0x524b5b]['stats'][_0x3c2e07(0x4a4)]===![])continue;}else continue;}_0x3e79e7[_0x524b5b]={},_0x539db3[_0x3c2e07(0x77a)][_0x524b5b][_0x3c2e07(0x27b)][_0x3c2e07(0x603)]&&(_0x3e79e7[_0x524b5b][_0x3c2e07(0x603)]=_0x539db3['pcs'][_0x524b5b][_0x3c2e07(0x27b)][_0x3c2e07(0x603)]),_0x539db3[_0x3c2e07(0x77a)][_0x524b5b][_0x3c2e07(0x27b)][_0x3c2e07(0x822)]&&(_0x3e79e7[_0x524b5b][_0x3c2e07(0x822)]=_0x539db3[_0x3c2e07(0x77a)][_0x524b5b][_0x3c2e07(0x27b)][_0x3c2e07(0x822)]),_0x539db3[_0x3c2e07(0x77a)][_0x524b5b][_0x3c2e07(0x27b)]['available_outgoing_bitrate_kbps']&&(_0x3e79e7[_0x524b5b][_0x3c2e07(0x899)]=_0x539db3[_0x3c2e07(0x77a)][_0x524b5b][_0x3c2e07(0x27b)][_0x3c2e07(0x899)]),_0x539db3[_0x3c2e07(0x77a)][_0x524b5b][_0x3c2e07(0x27b)][_0x3c2e07(0x4a4)]&&(_0x3e79e7[_0x524b5b][_0x3c2e07(0x4a4)]=_0x539db3[_0x3c2e07(0x77a)][_0x524b5b][_0x3c2e07(0x27b)][_0x3c2e07(0x4a4)]),_0x539db3[_0x3c2e07(0x77a)][_0x524b5b]['label']&&(_0x3e79e7[_0x524b5b]['label']=_0x539db3['pcs'][_0x524b5b][_0x3c2e07(0x4bc)]),_0x539db3['pcs'][_0x524b5b][_0x3c2e07(0x27b)][_0x3c2e07(0x662)]&&(_0x3e79e7[_0x524b5b][_0x3c2e07(0x662)]=_0x539db3[_0x3c2e07(0x77a)][_0x524b5b]['stats'][_0x3c2e07(0x662)]),_0x539db3[_0x3c2e07(0x77a)][_0x524b5b][_0x3c2e07(0x27b)][_0x3c2e07(0x850)]&&(_0x3e79e7[_0x524b5b][_0x3c2e07(0x850)]=_0x539db3['pcs'][_0x524b5b][_0x3c2e07(0x27b)][_0x3c2e07(0x850)]);}var _0x30b838={};_0x30b838[_0x3c2e07(0x69f)]=_0x3e79e7,_0x539db3[_0x3c2e07(0x70a)](_0x30b838,_0x192905);}}}}if(_0x3c2e07(0x93f)in _0x556b58)try{_0x556b58['requestResolution']['s']?_0x539db3[_0x3c2e07(0x1d4)](_0x556b58[_0x3c2e07(0x5f9)],_0x556b58[_0x3c2e07(0x93f)]['w'],_0x556b58[_0x3c2e07(0x93f)]['h'],!![]):_0x539db3[_0x3c2e07(0x1d4)](_0x556b58['UUID'],_0x556b58[_0x3c2e07(0x93f)]['w'],_0x556b58[_0x3c2e07(0x93f)]['h'],![]);}catch(_0x4546c6){errorlog(_0x4546c6);}'keyframe'in _0x556b58&&(_0x556b58[_0x3c2e07(0x4a4)]?_0x539db3[_0x3c2e07(0x3a6)][_0x3c2e07(0x854)](_0x192905)>=0x0?_0x539db3['sendKeyFrameScenes']():errorlog(_0x3c2e07(0xe6)):_0x539db3['forcePLI'](_0x192905));if(_0x3c2e07(0x6cf)in _0x556b58){var _0x17cd38=![],_0x1e2044=![];_0x539db3[_0x3c2e07(0x3a6)][_0x3c2e07(0x854)](_0x192905)>=0x0&&(_0x17cd38=!![],_0x3c2e07(0x46a)in _0x556b58&&(_0x556b58[_0x3c2e07(0x46a)]==!![]&&(_0x1e2044=!![]))),log('isDirector\x20'+_0x17cd38),getChatMessage(_0x556b58[_0x3c2e07(0x6cf)],_0x539db3[_0x3c2e07(0x77a)][_0x192905]['label'],_0x17cd38,_0x1e2044);}if('order'in _0x556b58){_0x539db3[_0x3c2e07(0x77a)][_0x192905]['order']=parseInt(_0x556b58[_0x3c2e07(0x670)])||0x0;_0x192905 in _0x539db3[_0x3c2e07(0x51f)]&&(_0x539db3[_0x3c2e07(0x51f)][_0x192905][_0x3c2e07(0x670)]=_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x670)]);if(_0x539db3[_0x3c2e07(0x29a)]){var _0x4424e0=document['querySelectorAll']('[data-action-type=\x22order-value\x22][data--u-u-i-d=\x22'+_0x192905+'\x22]');log(_0x4424e0),_0x4424e0[0x0]&&(_0x4424e0[0x0]['innerText']=parseInt(_0x556b58[_0x3c2e07(0x670)])||0x0);}updateMixer();}_0x3c2e07(0x7bf)in _0x556b58&&_0x539db3[_0x3c2e07(0x3ac)](_0x192905,parseFloat(_0x556b58[_0x3c2e07(0x7bf)])||0x0);if(_0x539db3['director']&&_0x539db3[_0x3c2e07(0x77a)][_0x192905]['coDirector']&&'directorState'in _0x556b58){_0x539db3['syncState']=_0x556b58[_0x3c2e07(0x7dc)];for(var _0x3f6c66 in _0x539db3[_0x3c2e07(0xf9)]){syncSceneState(_0x3f6c66),syncOtherState(_0x3f6c66);}}if(_0x539db3['directorList']['indexOf'](_0x192905)==-0x1){if(_0x3c2e07(0x5a2)in _0x556b58){var _0x30b838={};_0x30b838[_0x3c2e07(0x6dd)]=_0x3c2e07(0x5a2),_0x539db3[_0x3c2e07(0x70a)](_0x30b838,_0x192905);}else{if(_0x3c2e07(0x1cf)in _0x556b58){var _0x30b838={};_0x30b838['rejected']='requestVideoRecord',_0x539db3['sendMessage'](_0x30b838,_0x192905);}else{if(_0x3c2e07(0x775)in _0x556b58){var _0x30b838={};_0x30b838[_0x3c2e07(0x6dd)]=_0x3c2e07(0x775),_0x539db3[_0x3c2e07(0x70a)](_0x30b838,_0x192905);}else{if(_0x3c2e07(0x38a)in _0x556b58){var _0x30b838={};_0x30b838['rejected']='changeURL',_0x539db3[_0x3c2e07(0x70a)](_0x30b838,_0x192905);}else{if(_0x3c2e07(0x5ab)in _0x556b58){var _0x30b838={};_0x30b838['rejected']=_0x3c2e07(0x5ab),_0x539db3[_0x3c2e07(0x70a)](_0x30b838,_0x192905);}else{if(_0x3c2e07(0x53a)in _0x556b58){var _0x30b838={};_0x30b838[_0x3c2e07(0x6dd)]=_0x3c2e07(0x53a),_0x539db3[_0x3c2e07(0x70a)](_0x30b838,_0x192905);}else{if(_0x3c2e07(0x153)in _0x556b58){var _0x30b838={};_0x30b838[_0x3c2e07(0x6dd)]='requestChangeGating',_0x539db3[_0x3c2e07(0x70a)](_0x30b838,_0x192905);}else{if('requestChangeCompressor'in _0x556b58){var _0x30b838={};_0x30b838[_0x3c2e07(0x6dd)]=_0x3c2e07(0x501),_0x539db3[_0x3c2e07(0x70a)](_0x30b838,_0x192905);}else{if('requestChangeSubGain'in _0x556b58){var _0x30b838={};_0x30b838[_0x3c2e07(0x6dd)]=_0x3c2e07(0x5d7),_0x539db3['sendMessage'](_0x30b838,_0x192905);}else{if(_0x3c2e07(0x561)in _0x556b58){var _0x30b838={};_0x30b838[_0x3c2e07(0x6dd)]=_0x3c2e07(0x561),_0x539db3['sendMessage'](_0x30b838,_0x192905);}else{if(_0x3c2e07(0x2fa)in _0x556b58){var _0x30b838={};_0x30b838[_0x3c2e07(0x6dd)]=_0x3c2e07(0x2fa),_0x539db3[_0x3c2e07(0x70a)](_0x30b838,_0x192905);}else{if(_0x3c2e07(0x599)in _0x556b58){var _0x30b838={};_0x30b838[_0x3c2e07(0x6dd)]='displayMute',_0x539db3[_0x3c2e07(0x70a)](_0x30b838,_0x192905);}else{if('speakerMute'in _0x556b58){var _0x30b838={};_0x30b838['rejected']=_0x3c2e07(0x2d4),_0x539db3[_0x3c2e07(0x70a)](_0x30b838,_0x192905);}else{if(_0x3c2e07(0x3be)in _0x556b58){var _0x30b838={};_0x30b838[_0x3c2e07(0x6dd)]=_0x3c2e07(0x3be),_0x539db3[_0x3c2e07(0x70a)](_0x30b838,_0x192905);}else{if(_0x3c2e07(0x54c)in _0x556b58){var _0x30b838={};_0x30b838['rejected']='micIsolated',_0x539db3[_0x3c2e07(0x70a)](_0x30b838,_0x192905);}else{if(_0x3c2e07(0x5b7)in _0x556b58){var _0x30b838={};_0x30b838[_0x3c2e07(0x6dd)]=_0x3c2e07(0x5b7),_0x539db3[_0x3c2e07(0x70a)](_0x30b838,_0x192905);}}}}}}}}}}}}}}}}}else{if('requestAudioHack'in _0x556b58){var _0x1016c0=_0x539db3[_0x3c2e07(0x17e)][_0x3c2e07(0x2df)]();_0x1016c0[_0x3c2e07(0x425)]&&('deviceId'in _0x556b58?applyAudioHack(_0x556b58[_0x3c2e07(0x438)],_0x556b58[_0x3c2e07(0x4a2)],_0x556b58['deviceId']):applyAudioHack(_0x556b58[_0x3c2e07(0x438)],_0x556b58['value']));}if('requestVideoRecord'in _0x556b58){if(_0x556b58[_0x3c2e07(0x1cf)]){if(_0x539db3[_0x3c2e07(0x792)]){var _0x48dd13=0x1770;_0x556b58['value']&&(_0x48dd13=parseInt(_0x556b58['value'])),recordLocalVideo(_0x3c2e07(0x213),_0x48dd13);}}else _0x539db3[_0x3c2e07(0x792)]&&recordLocalVideo('stop');}if('changeOrder'in _0x556b58){_0x539db3['order']==![]&&(_0x539db3[_0x3c2e07(0x670)]=0x0);_0x539db3[_0x3c2e07(0x670)]+=parseInt(_0x556b58[_0x3c2e07(0x775)])||0x0;var _0x30b838={};_0x30b838={},_0x30b838[_0x3c2e07(0x670)]=_0x539db3[_0x3c2e07(0x670)],_0x539db3[_0x3c2e07(0x87f)](_0x30b838),updateMixer();}_0x3c2e07(0x38a)in _0x556b58&&changeURL(_0x556b58[_0x3c2e07(0x38a)]);_0x3c2e07(0x3a5)in _0x556b58&&stopClock();_0x3c2e07(0x6e7)in _0x556b58&&pauseClock();'resumeClock'in _0x556b58&&resumeClock();_0x3c2e07(0x777)in _0x556b58&&setClock(_0x556b58[_0x3c2e07(0x777)]);'hideClock'in _0x556b58&&hideClock();_0x3c2e07(0x384)in _0x556b58&&showClock();'startClock'in _0x556b58&&startClock();'requestUpload'in _0x556b58&&toggleFileshare(_0x192905);if('group'in _0x556b58)try{_0x539db3['sendMessage']({'group':_0x556b58[_0x3c2e07(0x445)]}),_0x556b58[_0x3c2e07(0x445)]?_0x539db3['group']=_0x556b58[_0x3c2e07(0x445)][_0x3c2e07(0x8f3)](','):_0x539db3['group']=[],updateMixer();}catch(_0x4c4758){}if(_0x3c2e07(0x5ab)in _0x556b58){if(_0x3c2e07(0x4a2)in _0x556b58){if(typeof _0x556b58[_0x3c2e07(0x4a2)]==_0x3c2e07(0x77f)){_0x539db3[_0x3c2e07(0x4bc)]=sanitizeLabel(_0x556b58[_0x3c2e07(0x4a2)]),log(_0x3c2e07(0x733)+_0x539db3[_0x3c2e07(0x4bc)]);if(_0x539db3[_0x3c2e07(0x29a)]){var _0x4424e0=getById(_0x3c2e07(0x8d0)+_0x192905);if(_0x539db3[_0x3c2e07(0x4bc)])_0x4424e0[_0x3c2e07(0x1f8)]=_0x539db3[_0x3c2e07(0x4bc)],_0x4424e0[_0x3c2e07(0x750)][_0x3c2e07(0x10b)]('addALabel');else _0x539db3[_0x3c2e07(0x4c3)]===_0x192905?(_0x4424e0[_0x3c2e07(0x1f8)]=miscTranslations[_0x3c2e07(0x938)],_0x4424e0['classList']['remove'](_0x3c2e07(0x5f5))):(_0x4424e0['innerText']=miscTranslations[_0x3c2e07(0x38d)],_0x4424e0[_0x3c2e07(0x750)][_0x3c2e07(0x897)](_0x3c2e07(0x5f5)));}else _0x539db3['showlabels']&&updateMixer();!_0x539db3[_0x3c2e07(0x29a)]&&(_0x539db3[_0x3c2e07(0x4bc)]?document[_0x3c2e07(0x212)]=_0x539db3[_0x3c2e07(0x4bc)]:document[_0x3c2e07(0x212)]=location[_0x3c2e07(0x267)]);var _0x10193d=encodeURIComponent(_0x539db3[_0x3c2e07(0x4bc)]);urlParams[_0x3c2e07(0x5c8)]('l')?updateURL('l='+_0x10193d,!![],![]):updateURL(_0x3c2e07(0x2d7)+_0x10193d,!![],![]);var _0x30b838={};_0x30b838[_0x3c2e07(0x5ab)]=!![],_0x30b838[_0x3c2e07(0x4a2)]=_0x539db3[_0x3c2e07(0x4bc)],_0x539db3['sendMessage'](_0x30b838);}else{_0x539db3[_0x3c2e07(0x4bc)]=![];var _0x30b838={};_0x30b838[_0x3c2e07(0x5ab)]=!![],_0x30b838['value']=_0x539db3[_0x3c2e07(0x4bc)],_0x539db3[_0x3c2e07(0x70a)](_0x30b838);if(_0x539db3[_0x3c2e07(0x29a)]){var _0x4424e0=getById('label_'+_0x192905);_0x539db3[_0x3c2e07(0x4c3)]===_0x192905?(_0x4424e0[_0x3c2e07(0x1f8)]=miscTranslations['main-director'],_0x4424e0['classList'][_0x3c2e07(0x10b)]('addALabel')):(_0x4424e0[_0x3c2e07(0x1f8)]=miscTranslations['add-a-label'],_0x4424e0['classList'][_0x3c2e07(0x897)](_0x3c2e07(0x5f5)));}else _0x539db3[_0x3c2e07(0x251)]?(document[_0x3c2e07(0x212)]=location[_0x3c2e07(0x267)],updateMixer()):document['title']=location[_0x3c2e07(0x267)];}}}if(_0x3c2e07(0x53a)in _0x556b58){if(_0x556b58[_0x3c2e07(0x438)]==_0x3c2e07(0x7a1))changeLowEQ(parseFloat(_0x556b58[_0x3c2e07(0x4a2)]),_0x556b58[_0x3c2e07(0x37f)]);else{if(_0x556b58[_0x3c2e07(0x438)]==_0x3c2e07(0x3cb))changeMidEQ(parseFloat(_0x556b58[_0x3c2e07(0x4a2)]),_0x556b58[_0x3c2e07(0x37f)]);else _0x556b58[_0x3c2e07(0x438)]=='high'&&changeHighEQ(parseFloat(_0x556b58['value']),_0x556b58[_0x3c2e07(0x37f)]);}}if(_0x3c2e07(0x153)in _0x556b58){var _0x3851a5=_0x539db3[_0x3c2e07(0x914)];if(_0x556b58[_0x3c2e07(0x4a2)]==='false')_0x539db3[_0x3c2e07(0x914)]=![],log(_0x3c2e07(0x3bd));else _0x556b58[_0x3c2e07(0x4a2)]==='true'?(_0x539db3[_0x3c2e07(0x914)]=!![],log(_0x3c2e07(0x39a))):_0x539db3[_0x3c2e07(0x914)]=_0x556b58[_0x3c2e07(0x4a2)];_0x539db3[_0x3c2e07(0x914)]!==_0x3851a5&&senderAudioUpdate();}if(_0x3c2e07(0x501)in _0x556b58){var _0x3851a5=_0x539db3['compressor'];if(_0x556b58[_0x3c2e07(0x4a2)]===_0x3c2e07(0x514))_0x539db3[_0x3c2e07(0x5f8)]=![],log(_0x3c2e07(0x3bd));else{if(_0x556b58[_0x3c2e07(0x4a2)]==='1')_0x539db3[_0x3c2e07(0x5f8)]=0x1,log(_0x3c2e07(0x39a));else _0x556b58[_0x3c2e07(0x4a2)]==='2'?(_0x539db3[_0x3c2e07(0x5f8)]=0x2,log(_0x3c2e07(0x39a))):_0x539db3[_0x3c2e07(0x5f8)]=parseInt(_0x556b58['value'])||![];}_0x539db3['compressor']!==_0x3851a5&&senderAudioUpdate();}'requestChangeSubGain'in _0x556b58&&changeSubGain(parseFloat(_0x556b58[_0x3c2e07(0x4a2)]),_0x556b58[_0x3c2e07(0x27e)]);_0x3c2e07(0x561)in _0x556b58&&(_0x539db3[_0x3c2e07(0x513)]&&lowerhand());if(_0x3c2e07(0x88c)in _0x556b58){var _0x30b838={};_0x30b838[_0x3c2e07(0x5f9)]=_0x192905,_0x30b838['audioOptions']=listAudioSettingsPrep(),sendMediaDevices(_0x30b838[_0x3c2e07(0x5f9)]),_0x539db3[_0x3c2e07(0x70a)](_0x30b838,_0x30b838[_0x3c2e07(0x5f9)]);}if(_0x3c2e07(0x93c)in _0x556b58){var _0x30b838={};_0x30b838['UUID']=_0x192905,_0x30b838[_0x3c2e07(0x8ef)]=listVideoSettingsPrep(),sendMediaDevices(_0x30b838[_0x3c2e07(0x5f9)]),_0x539db3[_0x3c2e07(0x70a)](_0x30b838,_0x30b838[_0x3c2e07(0x5f9)]);}_0x3c2e07(0x266)in _0x556b58&&changeAudioOutputDeviceById(_0x556b58['changeSpeaker'],_0x192905);_0x3c2e07(0xe5)in _0x556b58&&changeAudioDeviceById(_0x556b58[_0x3c2e07(0xe5)],_0x192905);_0x3c2e07(0x1e4)in _0x556b58&&changeVideoDeviceById(_0x556b58[_0x3c2e07(0x1e4)],_0x192905);_0x3c2e07(0x800)in _0x556b58&&(_0x3c2e07(0x8b3)in _0x556b58&&_0x556b58[_0x3c2e07(0x8b3)]?updateCameraConstraints(_0x556b58['keyname'],_0x556b58[_0x3c2e07(0x4a2)],!![],_0x192905):updateCameraConstraints(_0x556b58['keyname'],_0x556b58[_0x3c2e07(0x4a2)],![],![]));_0x3c2e07(0x573)in _0x556b58&&changeLowCut(parseFloat(_0x556b58[_0x3c2e07(0x4a2)]),_0x556b58[_0x3c2e07(0x37f)]);_0x3c2e07(0x573)in _0x556b58&&changeLowCut(parseFloat(_0x556b58[_0x3c2e07(0x4a2)]),_0x556b58['track']);_0x3c2e07(0x2fa)in _0x556b58&&(_0x539db3['directorUUID']&&_0x539db3['hangup']());if(_0x3c2e07(0xe3)in _0x556b58){}if(_0x3c2e07(0x3be)in _0x556b58){var _0x31861e=parseInt(_0x556b58[_0x3c2e07(0x3be)])/0x64||0x0;_0x539db3[_0x3c2e07(0x30a)]=parseInt(_0x556b58[_0x3c2e07(0x3be)])||0x0;try{for(var _0x2f4d2a in _0x539db3[_0x3c2e07(0x8c5)]){log('Adjusting\x20Gain;\x20only\x20track\x200\x20in\x20all\x20likely\x20hood,\x20unless\x20more\x20than\x20track\x200\x20support\x20is\x20added.'),_0x539db3[_0x3c2e07(0x8c5)][_0x2f4d2a]['gainNode'][_0x3c2e07(0x4d6)][_0x3c2e07(0x716)](_0x31861e,_0x539db3[_0x3c2e07(0x8c5)][_0x2f4d2a][_0x3c2e07(0x64c)]['currentTime']);}}catch(_0x520ab3){}updateVolume(!![]);}if(_0x3c2e07(0x200)in _0x556b58){if(_0x556b58[_0x3c2e07(0x200)])_0x539db3[_0x3c2e07(0x3a6)][_0x3c2e07(0x854)](_0x192905)>=0x0&&(_0x539db3['micIsolated'][_0x3c2e07(0x6d6)](_0x192905),_0x539db3[_0x3c2e07(0x125)]());else{var _0x9ce658=_0x539db3[_0x3c2e07(0x54c)][_0x3c2e07(0x854)](_0x192905);_0x9ce658>-0x1&&(_0x539db3[_0x3c2e07(0x54c)][_0x3c2e07(0x540)](_0x9ce658,0x1),_0x539db3[_0x3c2e07(0x125)]());}}if(_0x3c2e07(0x58d)in _0x556b58){if(_0x556b58[_0x3c2e07(0x58d)])_0x539db3[_0x3c2e07(0x3a6)][_0x3c2e07(0x854)](_0x192905)>=0x0&&(_0x539db3[_0x3c2e07(0x58d)][_0x3c2e07(0x6d6)](_0x192905),_0x539db3[_0x3c2e07(0x66b)]());else{var _0x9ce658=_0x539db3[_0x3c2e07(0x58d)][_0x3c2e07(0x854)](_0x192905);_0x9ce658>-0x1&&(_0x539db3['lowerVolume'][_0x3c2e07(0x540)](_0x9ce658,0x1),_0x539db3[_0x3c2e07(0x66b)]());}}if(_0x3c2e07(0x678)in _0x556b58){var _0x4a1662=parseFloat(_0x556b58[_0x3c2e07(0x678)]/0x3e8)||0x0;_0x539db3['micDelay']=parseInt(_0x556b58['delay'])||0x0;for(var _0x2f4d2a in _0x539db3[_0x3c2e07(0x8c5)]){_0x539db3[_0x3c2e07(0x8c5)][_0x2f4d2a][_0x3c2e07(0x764)][_0x3c2e07(0x3c8)][_0x3c2e07(0x716)](_0x4a1662,_0x539db3[_0x3c2e07(0x8c5)][_0x2f4d2a]['audioContext'][_0x3c2e07(0x7e9)]);}}_0x3c2e07(0x2d4)in _0x556b58&&(_0x556b58[_0x3c2e07(0x2d4)]?(_0x539db3[_0x3c2e07(0x211)]=!![],_0x539db3[_0x3c2e07(0x529)]()):(_0x539db3[_0x3c2e07(0x211)]=![],_0x539db3[_0x3c2e07(0x529)]())),_0x3c2e07(0x599)in _0x556b58&&(_0x556b58['displayMute']?(_0x539db3[_0x3c2e07(0x382)]=!![],_0x539db3[_0x3c2e07(0x568)]()):(_0x539db3[_0x3c2e07(0x382)]=![],_0x539db3['directorDisplayMute']())),'changeParams'in _0x556b58&&applyNewParams(_0x556b58[_0x3c2e07(0x77d)]);}if(_0x539db3['directorUUID']===_0x192905){_0x556b58[_0x3c2e07(0x668)]==='migrate'&&(warnlog(_0x3c2e07(0x556)),'transferSettings'in _0x556b58&&(_0x3c2e07(0x29b)in _0x556b58['transferSettings']&&(_0x539db3[_0x3c2e07(0x29b)]=_0x556b58[_0x3c2e07(0x29b)]),_0x3c2e07(0x610)in _0x556b58['transferSettings']&&(_0x556b58[_0x3c2e07(0x6f6)]['broadcast']===!![]||_0x556b58[_0x3c2e07(0x6f6)][_0x3c2e07(0x610)]===null?(_0x539db3[_0x3c2e07(0x610)]=null,_0x539db3[_0x3c2e07(0x341)]===![]&&(_0x539db3[_0x3c2e07(0x341)]=0x2),_0x539db3['style']===![]&&(_0x539db3['style']=0x1),_0x539db3[_0x3c2e07(0x6fc)]===null&&(_0x539db3[_0x3c2e07(0x6fc)]=!![])):_0x539db3['broadcast']=_0x556b58['transferSettings'][_0x3c2e07(0x610)],_0x556b58[_0x3c2e07(0x6f6)][_0x3c2e07(0x6d7)]&&(_0x539db3['broadcast']!==![]?updateURL(_0x3c2e07(0x610),!![]):updateURL(_0x3c2e07(0x42f),!![]))),'roomid'in _0x556b58[_0x3c2e07(0x6f6)]&&(_0x539db3[_0x3c2e07(0x4f6)]=_0x556b58['transferSettings']['roomid'],_0x556b58['transferSettings']['updateurl']&&updateURL('room='+_0x539db3[_0x3c2e07(0x4f6)],!![]))));try{if(_0x3c2e07(0x427)in _0x556b58&&_0x3c2e07(0x8c0)in _0x556b58[_0x3c2e07(0x427)])for(var _0x4469bf=0x0;_0x4469bf<_0x556b58['directorSettings'][_0x3c2e07(0x8c0)][_0x3c2e07(0x425)];_0x4469bf++){if(!_0x539db3[_0x3c2e07(0x3a6)][_0x3c2e07(0x4ee)](_0x556b58[_0x3c2e07(0x427)][_0x3c2e07(0x8c0)][_0x4469bf][_0x3c2e07(0x229)])){_0x539db3[_0x3c2e07(0x3a6)][_0x3c2e07(0x6d6)](_0x556b58[_0x3c2e07(0x427)][_0x3c2e07(0x8c0)][_0x4469bf]['toString']());var _0x3adbdc=getById(_0x3c2e07(0x88a)+_0x556b58[_0x3c2e07(0x427)][_0x3c2e07(0x8c0)][_0x4469bf][_0x3c2e07(0x229)]());_0x3adbdc&&_0x3adbdc[_0x3c2e07(0x750)][_0x3c2e07(0x897)]('directorBlue');}}}catch(_0x554859){errorlog(_0x554859);}}if(_0x3c2e07(0x328)in _0x556b58){if(_0x539db3[_0x3c2e07(0x57e)]){if(_0x3c2e07(0x57e)in _0x556b58&&_0x556b58['remote']===_0x539db3[_0x3c2e07(0x57e)]&&_0x539db3[_0x3c2e07(0x57e)])_0x539db3[_0x3c2e07(0x4ef)](parseFloat(_0x556b58[_0x3c2e07(0x328)]));else _0x539db3['remote']===!![]&&_0x539db3[_0x3c2e07(0x4ef)](parseFloat(_0x556b58[_0x3c2e07(0x328)]));}else{if(_0x539db3[_0x3c2e07(0x3a6)][_0x3c2e07(0x854)](_0x192905)>=0x0)_0x539db3['remoteZoom'](parseFloat(_0x556b58[_0x3c2e07(0x328)]));else return;}}if(_0x3c2e07(0x4ca)in _0x556b58){if(_0x539db3[_0x3c2e07(0x57e)]){if(_0x3c2e07(0x57e)in _0x556b58&&_0x556b58['remote']===_0x539db3[_0x3c2e07(0x57e)]&&_0x539db3[_0x3c2e07(0x57e)])_0x539db3['remoteFocus'](parseFloat(_0x556b58[_0x3c2e07(0x4ca)]));else _0x539db3[_0x3c2e07(0x57e)]===!![]&&_0x539db3[_0x3c2e07(0x85a)](parseFloat(_0x556b58['focus']));}else{if(_0x539db3[_0x3c2e07(0x3a6)][_0x3c2e07(0x854)](_0x192905)>=0x0)_0x539db3[_0x3c2e07(0x85a)](parseFloat(_0x556b58['focus']));else return;}}if(_0x3c2e07(0x1fe)in _0x556b58){log(_0x3c2e07(0x1fe));try{_0x539db3[_0x3c2e07(0x624)](_0x192905,_0x556b58['requestFile']);}catch(_0x4fc485){errorlog(_0x4fc485);}}_0x3c2e07(0x8a7)in _0x556b58&&playbackMIDI(_0x556b58[_0x3c2e07(0x8a7)],!![]);}catch(_0x4dfaf3){errorlog(_0x4dfaf3);}manageSceneState(_0x556b58,_0x192905);if(_0x3c2e07(0x6dd)in _0x556b58){if(_0x556b58[_0x3c2e07(0x6dd)]==_0x3c2e07(0x657)){if(_0x539db3['remote'])warnUser(_0x3c2e07(0x2b7),0xbb8);else document[_0x3c2e07(0x7c8)](_0x3c2e07(0x5ae))&&document['querySelector'](_0x3c2e07(0x5ae))['value']?warnUser('Invalid\x20remote\x20control\x20code.\x0a\x0aThe\x20remote\x20OBS\x20system\x20needs\x20a\x20matching\x20passcode\x20set\x20using\x20&remote.\x0a\x0aSee\x20the\x20documentation\x20for\x20help..',0x1b58):warnUser(_0x3c2e07(0x859),0x2710);getById(_0x3c2e07(0x55a))['classList'][_0x3c2e07(0x10b)](_0x3c2e07(0x778));}else{if(_0x539db3[_0x3c2e07(0x29a)])!_0x539db3['cleanOutput']&&warnUser(_0x3c2e07(0x159)+_0x556b58[_0x3c2e07(0x6dd)]+_0x3c2e07(0x12f),0x1388);else!_0x539db3['cleanOutput']&&(_0x539db3['remote']?warnUser(_0x3c2e07(0x46c),0x1388):warnUser('The\x20remote\x20control\x20request\x20failed.',0x1388));}errorlog(_0x3c2e07(0x851)+_0x556b58[_0x3c2e07(0x6dd)]+_0x3c2e07(0x593)+_0x539db3[_0x3c2e07(0x29a)]);}if(_0x3c2e07(0x6e1)in _0x556b58||'video'in _0x556b58){log(_0x3c2e07(0x886));_0x556b58[_0x3c2e07(0x6e1)]&&(_0x539db3['pcs'][_0x192905]['allowAudio']=!![]);if(_0x539db3[_0x3c2e07(0x3c0)]&&_0x3c2e07(0x4cc)in _0x556b58&&_0x556b58[_0x3c2e07(0x4cc)]!==![])_0x539db3['pcs'][_0x192905][_0x3c2e07(0x10c)]=_0x556b58['allowwebp'],_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x1b1)]=![],setTimeout(function(){makeImages(!![]);},0x3e8);else _0x556b58[_0x3c2e07(0x81e)]&&(_0x539db3['pcs'][_0x192905][_0x3c2e07(0x1b1)]=!![]);_0x3c2e07(0x610)in _0x556b58&&_0x556b58[_0x3c2e07(0x610)]!==![]&&(_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x786)]=_0x556b58[_0x3c2e07(0x610)]);_0x3c2e07(0x264)in _0x556b58&&_0x556b58[_0x3c2e07(0x264)]!==![]&&(_0x539db3['pcs'][_0x192905][_0x3c2e07(0x4f3)]=_0x556b58['iframe']);_0x3c2e07(0x798)in _0x556b58&&_0x556b58[_0x3c2e07(0x798)]!==![]&&(_0x539db3['pcs'][_0x192905][_0x3c2e07(0x2b2)]=_0x556b58[_0x3c2e07(0x798)]);_0x3c2e07(0x80f)in _0x556b58&&_0x556b58[_0x3c2e07(0x80f)]!==![]&&(_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x831)]=_0x556b58[_0x3c2e07(0x80f)]);_0x3c2e07(0x2a6)in _0x556b58&&_0x556b58[_0x3c2e07(0x2a6)]!==![]&&(_0x539db3[_0x3c2e07(0x77a)][_0x192905]['allowScreen']=!![]);_0x3c2e07(0x53d)in _0x556b58&&_0x556b58[_0x3c2e07(0x53d)]!==![]&&(_0x539db3['pcs'][_0x192905][_0x3c2e07(0x53d)]=_0x556b58[_0x3c2e07(0x53d)][_0x3c2e07(0x5e5)]());if(_0x539db3[_0x3c2e07(0x1f6)]){if(_0x539db3['meshcast']==_0x3c2e07(0x81e))_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x1b1)]=![];else{if(_0x539db3[_0x3c2e07(0x1f6)]==_0x3c2e07(0x6e1))_0x539db3['pcs'][_0x192905][_0x3c2e07(0x2bd)]=![];else _0x539db3[_0x3c2e07(0x77a)][_0x192905]['allowVideo']==![]?_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x1f6)]=![]:(_0x539db3[_0x3c2e07(0x77a)][_0x192905]['allowAudio']=![],_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x1b1)]=![]);}}if(_0x539db3['promptAccess']){playtone(),window[_0x3c2e07(0x4ca)]();var _0x40760b=![];_0x192905 in _0x539db3[_0x3c2e07(0x51f)]&&_0x539db3[_0x3c2e07(0x51f)][_0x192905]['label']&&(_0x40760b=_0x539db3[_0x3c2e07(0x51f)][_0x192905][_0x3c2e07(0x4bc)]||_0x539db3['rpcs'][_0x192905][_0x3c2e07(0x562)]||![]);_0x40760b=_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x4bc)]||_0x40760b||_0x539db3[_0x3c2e07(0x77a)][_0x192905]['streamID']||_0x192905||'Someone';var _0x1f0f11=await confirmAlt(_0x40760b+miscTranslations[_0x3c2e07(0x557)],!![]);if(!_0x1f0f11){try{log(_0x3c2e07(0x21e)),_0x539db3[_0x3c2e07(0x1ac)](_0x192905);}catch(_0x35f37c){}return;}}_0x3c2e07(0x2bf)in _0x556b58&&(_0x556b58[_0x3c2e07(0x2bf)]==!![]&&(_0x539db3['pcs'][_0x192905][_0x3c2e07(0x2bf)]=!![],_0x539db3['beepToNotify']&&(playtone(![],'jointone'),showNotification(_0x3c2e07(0x3fd),'')),pokeIframeAPI('guest-connected',_0x556b58[_0x3c2e07(0x29a)],_0x192905)));_0x3c2e07(0x29a)in _0x556b58&&(_0x556b58[_0x3c2e07(0x29a)]==!![]&&((iOS||iPad)&&(_0x539db3[_0x3c2e07(0x77a)][_0x192905]['forceios']==!![]&&(_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x2bf)]=!![])),_0x539db3[_0x3c2e07(0x3c4)]&&(playtone(![],'jointone'),showNotification(_0x3c2e07(0x793),_0x3c2e07(0x613))),pokeIframeAPI(_0x3c2e07(0x930),_0x556b58[_0x3c2e07(0x29a)],_0x192905)));_0x3c2e07(0x40f)in _0x556b58&&(_0x556b58[_0x3c2e07(0x40f)]===!![]&&(_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x40f)]=!![]));'limitaudio'in _0x556b58&&(_0x556b58[_0x3c2e07(0x116)]==!![]&&(_0x539db3[_0x3c2e07(0x77a)][_0x192905]['limitAudio']=!![]));_0x3c2e07(0x931)in _0x556b58&&(_0x556b58['enhanceaudio']==!![]&&(_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x7de)]=!![]));_0x556b58['degrade']&&(_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x470)]=_0x556b58[_0x3c2e07(0x2cf)]);if(_0x3c2e07(0x1a9)in _0x556b58)try{_0x539db3[_0x3c2e07(0x77a)][_0x192905]['keyframeRate']=_0x556b58['keyframeRate'],_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x1a9)]&&setTimeout(function(){_0x539db3['forcePLI'](_0x192905);},0x1388);}catch(_0x45dd96){warnlog(_0x45dd96);}_0x3c2e07(0x4b8)in _0x556b58&&(_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x4b8)]=_0x556b58['solo']);'layout'in _0x556b58&&(_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x10e)]=_0x556b58[_0x3c2e07(0x10e)],pokeIframeAPI(_0x3c2e07(0x8dd),_0x556b58[_0x3c2e07(0x10e)],_0x192905));if(_0x3c2e07(0x4a4)in _0x556b58){if(_0x556b58[_0x3c2e07(0x4a4)]!==![]){try{typeof _0x556b58['scene']===_0x3c2e07(0x77f)?_0x539db3['pcs'][_0x192905][_0x3c2e07(0x4a4)]=_0x556b58[_0x3c2e07(0x4a4)]['replace'](/[\W]+/g,'_'):_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x4a4)]=(parseInt(_0x556b58[_0x3c2e07(0x4a4)])||0x0)+'',_0x539db3['pcs'][_0x192905][_0x3c2e07(0x27b)]['scene']=_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x4a4)],updateSceneList(_0x539db3[_0x3c2e07(0x77a)][_0x192905]['scene']);}catch(_0x3db98c){errorlog(_0x3db98c);}_0x3c2e07(0x71e)in _0x556b58&&(_0x539db3['pcs'][_0x192905]['showDirector']=_0x556b58['showDirector']);if('showDirector'in _0x556b58&&_0x556b58[_0x3c2e07(0x71e)])_0x556b58[_0x3c2e07(0x71e)]==0x2&&(_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x2bd)]=![]);else{if(_0x539db3[_0x3c2e07(0x29a)]&&_0x539db3[_0x3c2e07(0x71e)]==![])_0x539db3['pcs'][_0x192905][_0x3c2e07(0x2bd)]=![],_0x539db3['pcs'][_0x192905][_0x3c2e07(0x1b1)]=![],_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x4f3)]=![],_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x1f6)]=![],_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x10c)]=![];else _0x539db3['director']&&(_0x539db3[_0x3c2e07(0x71e)]==0x2&&(_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x2bd)]=![]),_0x539db3['pcs'][_0x192905]['allowIframe']=![]);}_0x539db3['pcs'][_0x192905][_0x3c2e07(0x4b8)]?pokeIframeAPI(_0x3c2e07(0x879),_0x556b58['scene'],_0x192905):pokeIframeAPI(_0x3c2e07(0x1b8),_0x556b58['scene'],_0x192905);}}if(_0x539db3['director']==!![]){var _0x30b838={};_0x30b838[_0x3c2e07(0x427)]=getDirectorSettings(_0x539db3[_0x3c2e07(0x77a)][_0x192905][_0x3c2e07(0x4a4)]),_0x3c2e07(0x29a)in _0x556b58&&(_0x556b58['director']==!![]&&(_0x30b838[_0x3c2e07(0x7dc)]=getDetailedState())),_0x539db3[_0x3c2e07(0x70a)](_0x30b838,_0x192905);}_0x539db3['initialPublish'](_0x192905);}},_0x539db3[_0x37253a(0x1be)]=function(_0x5db893){var _0x4303e6=_0x37253a;log(_0x4303e6(0x7ac)+_0x5db893);if(_0x5db893 in _0x539db3[_0x4303e6(0x77a)]){}else{errorlog('UUID\x20not\x20found\x20in\x20pcs');return;}getSenders2(_0x5db893)['length']&&errorlog(_0x4303e6(0x196)+getSenders2(_0x5db893)[_0x4303e6(0x425)]);if(_0x539db3[_0x4303e6(0x77a)][_0x5db893][_0x4303e6(0x4f3)]===!![]){if(_0x539db3[_0x4303e6(0x4b0)]){var _0x2c8f8d={};_0x2c8f8d[_0x4303e6(0x4b0)]=_0x539db3[_0x4303e6(0x4b0)],_0x539db3['iframeEle']&&_0x539db3[_0x4303e6(0x1fa)][_0x4303e6(0x1d0)]&&(_0x539db3[_0x4303e6(0x4b0)][_0x4303e6(0x71a)](_0x4303e6(0x408))&&(_0x2c8f8d['iframeSrc']+=_0x4303e6(0x4e3)+parseInt(Math[_0x4303e6(0x7c6)](_0x539db3[_0x4303e6(0x1fa)][_0x4303e6(0x1d0)][_0x4303e6(0x3cc)]['t']))+'')),_0x539db3['sendMessage'](_0x2c8f8d,_0x5db893);}}_0x539db3[_0x4303e6(0x77a)][_0x5db893]['allowDownloads']===!![]&&_0x539db3[_0x4303e6(0x4b1)](_0x5db893);if(_0x539db3['chunked']){_0x539db3[_0x4303e6(0x6e6)](_0x5db893);return;}var _0x48c1f0=_0x539db3[_0x4303e6(0x59e)]();log('Does\x20Local\x20Stream\x20Source\x20EXIST?'),log(_0x48c1f0[_0x4303e6(0x317)]());if(_0x539db3[_0x4303e6(0x647)]&&_0x539db3[_0x4303e6(0x77a)][_0x5db893][_0x4303e6(0x1f6)]===null){_0x539db3['pcs'][_0x5db893][_0x4303e6(0x1f6)]=!![];var _0x2c8f8d={};_0x2c8f8d[_0x4303e6(0x1f6)]=_0x539db3[_0x4303e6(0x647)],_0x539db3['sendMessage'](_0x2c8f8d,_0x5db893),warnlog(_0x2c8f8d);}_0x539db3[_0x4303e6(0x77a)][_0x5db893]['allowScreen']&&createSecondStream2(_0x5db893);var _0x26755e=![];_0x48c1f0[_0x4303e6(0x82a)]()['forEach'](_0x50e0e5=>{var _0x51a9e8=_0x4303e6;try{_0x539db3['pcs'][_0x5db893][_0x51a9e8(0x1b1)]===!![]&&(_0x50e0e5['kind']==_0x51a9e8(0x81e)&&(_0x539db3[_0x51a9e8(0x77a)][_0x5db893]['guest']===!![]&&_0x539db3['roombitrate']===0x0?log(_0x51a9e8(0x3f8)):(_0x539db3[_0x51a9e8(0x77a)][_0x5db893][_0x51a9e8(0x233)](_0x50e0e5,_0x48c1f0),warnlog(_0x51a9e8(0x42d)),_0x26755e=!![],setTimeout(function(_0x1e9dc9){try{_0x539db3['optimizeBitrate'](_0x1e9dc9);}catch(_0x64adc7){warnlog(_0x64adc7);}},_0x539db3[_0x51a9e8(0x811)],_0x5db893))));}catch(_0x312358){errorlog(_0x312358);}});_0x539db3[_0x4303e6(0x642)]&&(_0x48c1f0=mixMinusAudio(_0x5db893));_0x48c1f0[_0x4303e6(0x2df)]()[_0x4303e6(0x21a)](_0x1813a6=>{var _0x589e86=_0x4303e6;try{_0x539db3[_0x589e86(0x77a)][_0x5db893][_0x589e86(0x2bd)]===!![]&&(_0x1813a6[_0x589e86(0x7d2)]==_0x589e86(0x6e1)&&(_0x539db3[_0x589e86(0x77a)][_0x5db893][_0x589e86(0x233)](_0x1813a6,_0x48c1f0),warnlog(_0x589e86(0x8da))));}catch(_0x5d5a22){errorlog(_0x5d5a22);}}),log(_0x4303e6(0x359));_0x48c1f0[_0x4303e6(0x2df)]()[_0x4303e6(0x425)]&&(_0x539db3['applySoloChat'](),log(_0x4303e6(0x6fb)),_0x539db3[_0x4303e6(0x77a)][_0x5db893][_0x4303e6(0x350)]===!![]&&(warnlog(_0x4303e6(0x1b9)),setTimeout(_0x539db3[_0x4303e6(0x623)],0x3e8,_0x5db893,0x7d00,0x0)),_0x539db3[_0x4303e6(0x77a)][_0x5db893][_0x4303e6(0x7de)]===!![]&&setTimeout(_0x539db3[_0x4303e6(0x26e)],0x3e8,_0x5db893));if(_0x539db3[_0x4303e6(0x77a)][_0x5db893][_0x4303e6(0x470)])setTimeout(_0x539db3[_0x4303e6(0x470)],0x3e8,_0x5db893,_0x539db3[_0x4303e6(0x77a)][_0x5db893]['degradationPreference']);else{if(_0x539db3[_0x4303e6(0x28e)]&&SafariVersion){if(_0x539db3[_0x4303e6(0x28e)]==_0x4303e6(0x794))setTimeout(_0x539db3[_0x4303e6(0x470)],0x3e8,_0x5db893,_0x4303e6(0x174));else _0x539db3[_0x4303e6(0x28e)]=='motion'&&setTimeout(_0x539db3[_0x4303e6(0x470)],0x3e8,_0x5db893,'maintain-framerate');}}if(iOS||iPad){if(SafariVersion&&SafariVersion<=0xd){}else _0x26755e&&(setTimeout(function(_0x1c2532){_0x539db3['setScale'](_0x1c2532,null);},0x7d0,_0x5db893),setTimeout(function(_0x425567){var _0x2a90cb=_0x4303e6,_0xa4059a=0x64;_0x539db3[_0x2a90cb(0x77a)][_0x425567]['scale']&&(_0xa4059a=_0x539db3[_0x2a90cb(0x77a)][_0x425567][_0x2a90cb(0x7bf)]),_0x539db3[_0x2a90cb(0x3ac)](_0x425567,_0xa4059a);},0x1388,_0x5db893));}};function _0x30874a(_0x41ece8,_0x4e929b,_0x2d5e9a){var _0x2358a0=_0x37253a,_0x2b90e9=new Blob([_0x41ece8],{'type':_0x2358a0(0x6d2)}),_0x27afa4=new FileReader();_0x27afa4[_0x2358a0(0x5d0)]=function(_0x48584e){var _0x59a1c6=_0x2358a0;_0x2d5e9a(_0x48584e['target'][_0x59a1c6(0x687)]);},_0x27afa4['readAsText'](_0x2b90e9,_0x4e929b);}_0x539db3[_0x37253a(0x4b1)]=function(_0x4baf87){var _0x597ec5=_0x37253a;log(_0x597ec5(0x31b));if(!_0x539db3['hostedFiles']||!_0x539db3[_0x597ec5(0x785)][_0x597ec5(0x425)])return;var _0x8714c9={},_0x126fa6=[];for(var _0x2154b8=0x0;_0x2154b8<_0x539db3[_0x597ec5(0x785)][_0x597ec5(0x425)];_0x2154b8++){(_0x539db3[_0x597ec5(0x785)][_0x2154b8]['restricted']===![]||_0x539db3[_0x597ec5(0x785)][_0x2154b8][_0x597ec5(0x8e5)]===_0x4baf87)&&_0x126fa6['push']({'id':_0x539db3['hostedFiles'][_0x2154b8]['id'],'name':_0x539db3[_0x597ec5(0x785)][_0x2154b8][_0x597ec5(0x911)],'size':_0x539db3[_0x597ec5(0x785)][_0x2154b8]['size']});}_0x8714c9[_0x597ec5(0x57f)]=_0x126fa6;if(_0x4baf87 in _0x539db3[_0x597ec5(0x77a)])_0x539db3[_0x597ec5(0x70a)](_0x8714c9,_0x4baf87);else _0x4baf87 in _0x539db3[_0x597ec5(0x51f)]&&_0x539db3[_0x597ec5(0x8fb)](_0x8714c9,_0x4baf87);log(_0x8714c9);},_0x539db3[_0x37253a(0x77a)][_0x425aec]['oniceconnectionstatechange']=function(_0x350b3f){var _0x1111b0=_0x37253a;if(!(_0x425aec in _0x539db3[_0x1111b0(0x77a)]))return;try{if(this[_0x1111b0(0x61f)]===_0x1111b0(0x749))log(_0x1111b0(0x88f));else{if(this[_0x1111b0(0x61f)]==='disconnected')log(_0x1111b0(0x7d3));else{if(this[_0x1111b0(0x61f)]==='failed')log(_0x1111b0(0x476)),_0x539db3[_0x1111b0(0x77a)][_0x425aec][_0x1111b0(0x806)]?_0x539db3[_0x1111b0(0x77a)][_0x425aec][_0x1111b0(0x806)]():_0x539db3[_0x1111b0(0x933)](_0x425aec,!![]);else{if(this[_0x1111b0(0x61f)]===_0x1111b0(0x7f7)){log(_0x1111b0(0x1c9));var _0x402b6d=getSenders2(_0x425aec);_0x402b6d[_0x1111b0(0x21a)](_0x45ca5d=>{var _0x3d6617=_0x1111b0;if(!_0x45ca5d[_0x3d6617(0x37f)])return;if(_0x45ca5d['track'][_0x3d6617(0x7d2)]==='video'){_0x539db3[_0x3d6617(0x77a)][_0x425aec]['videoCodecs']=_0x45ca5d[_0x3d6617(0x242)]()[_0x3d6617(0x483)],log(_0x539db3[_0x3d6617(0x77a)][_0x425aec][_0x3d6617(0x653)]);return;}else{if(_0x45ca5d[_0x3d6617(0x37f)][_0x3d6617(0x7d2)]==='audio'){_0x539db3[_0x3d6617(0x77a)][_0x425aec][_0x3d6617(0x834)]=_0x45ca5d[_0x3d6617(0x242)]()[_0x3d6617(0x483)],log(_0x539db3[_0x3d6617(0x77a)][_0x425aec][_0x3d6617(0x834)]);return;}}});}else log(this[_0x1111b0(0x61f)]);}}}}catch(_0x5e8111){errorlog(_0x5e8111);}},_0x539db3['pcs'][_0x425aec]['onconnectionstatechange']=function(_0x3d3b08){var _0x166078=_0x37253a;switch(_0x539db3[_0x166078(0x77a)][_0x425aec][_0x166078(0x495)]){case _0x166078(0x7f7):log(_0x166078(0x860)),clearTimeout(_0x539db3[_0x166078(0x77a)][_0x425aec]['closeTimeout']);if(_0x539db3[_0x166078(0x3a9)]){if(_0x539db3['ws'][_0x166078(0x298)]!==0x1){_0x539db3['ws'][_0x166078(0x7c0)]();break;}_0x539db3['ws']['close'](),setTimeout(function(){var _0x1d62d5=_0x166078;_0x539db3[_0x1d62d5(0x50b)]!=!![]&&warnUser('Remote\x20peer\x20connected\x20to\x20video\x20stream.\x0a\x0aConnection\x20to\x20handshake\x20server\x20being\x20killed\x20on\x20request.\x20This\x20increases\x20security,\x20but\x20the\x20peer\x20will\x20not\x20be\x20able\x20to\x20reconnect\x20automatically\x20on\x20connection\x20failure.\x0a\x0aPress\x20OK\x20to\x20start\x20the\x20stream!');},0x1);}break;case _0x166078(0xea):log(_0x166078(0x1e7)),clearTimeout(_0x539db3[_0x166078(0x77a)][_0x425aec][_0x166078(0x5a3)]),_0x539db3[_0x166078(0x77a)][_0x425aec][_0x166078(0x5a3)]=setTimeout(function(_0x2e24f3){var _0x201901=_0x166078;_0x2e24f3 in _0x539db3[_0x201901(0x77a)]?(warnlog(_0x201901(0x58a)),log(_0x201901(0x544)),_0x539db3['closePC'](_0x2e24f3)):errorlog('\x20---\x20PC\x20TIMED\x20OUT\x20and\x20already\x20deleted.\x20shouldn\x27t\x20happen');},0x2710,_0x425aec);break;case _0x166078(0x133):warnlog(_0x166078(0x4d1)),clearTimeout(_0x539db3[_0x166078(0x77a)][_0x425aec]['closeTimeout']),_0x539db3['pcs'][_0x425aec][_0x166078(0x5a3)]=setTimeout(function(_0x366a74){var _0x3af1bd=_0x166078;_0x366a74 in _0x539db3[_0x3af1bd(0x77a)]?(warnlog(_0x3af1bd(0x58a)),log(_0x3af1bd(0x429)),_0x539db3[_0x3af1bd(0x1ac)](_0x366a74)):errorlog(_0x3af1bd(0x1ca));},0xbb8,_0x425aec);break;case _0x166078(0x749):warnlog(_0x166078(0x7a3)),log('closing\x2018'),_0x539db3[_0x166078(0x1ac)](_0x425aec);break;default:log(_0x166078(0x78b)+_0x539db3[_0x166078(0x77a)][_0x425aec][_0x166078(0x495)]),clearTimeout(_0x539db3[_0x166078(0x77a)][_0x425aec][_0x166078(0x5a3)]);break;}},_0x539db3[_0x37253a(0x77a)][_0x425aec]['onclose']=function(_0x59f71f){var _0x378845=_0x37253a;warnlog(_0x378845(0x7d5)),log(_0x378845(0x22b)),_0x539db3['closePC'](_0x425aec);},_0x539db3['pcs'][_0x425aec]['onopen']=function _0x4465fd(){var _0x455f4d=_0x37253a;log(_0x455f4d(0x378));};},_0x539db3[_0x173334(0x55c)]=function(_0x47281e){var _0x563866=_0x173334;if(_0x47281e[_0x563866(0x122)]['type']==_0x563866(0x652))_0x539db3[_0x563866(0x645)](_0x47281e),_0x539db3[_0x563866(0x1aa)](_0x47281e);else try{if(!(_0x47281e[_0x563866(0x5f9)]in _0x539db3[_0x563866(0x77a)]))return;var _0x44f55a=_0x539db3['maxvideobitrate'];if(_0x539db3[_0x563866(0x2c5)]&&_0x539db3[_0x563866(0x77a)][_0x47281e[_0x563866(0x5f9)]][_0x563866(0x2bf)]==!![]&&_0x539db3[_0x563866(0x77a)][_0x47281e[_0x563866(0x5f9)]][_0x563866(0x40f)]==![]){if(_0x44f55a===![]||_0x44f55a>_0x539db3[_0x563866(0x4fc)]){var _0x408f2a=Object['keys'](_0x539db3[_0x563866(0x77a)])[_0x563866(0x425)];if(_0x539db3[_0x563866(0x29e)])_0x44f55a=_0x539db3['maxMobileBitrate'];else{if(_0x408f2a>0x4)_0x44f55a=_0x539db3[_0x563866(0x6cc)];else(iOS||iPad)&&SafariVersion&&SafariVersion<=0xd?_0x44f55a=_0x539db3[_0x563866(0x6cc)]:_0x44f55a=_0x539db3[_0x563866(0x4fc)];}}(iOS||iPad)&&(_0x539db3[_0x563866(0x77a)][_0x47281e[_0x563866(0x5f9)]]['setBitrate']=_0x44f55a,_0x47281e[_0x563866(0x122)]['sdp']=CodecsHandler[_0x563866(0x2ff)](_0x47281e['description'][_0x563866(0x74a)],_0x563866(0x32b)),_0x47281e['description'][_0x563866(0x74a)]=CodecsHandler['setVideoBitrates'](_0x47281e[_0x563866(0x122)]['sdp'],{'min':parseInt(_0x44f55a/0x2)||0x1,'max':_0x44f55a}),_0x44f55a=![]);}else{if(_0x539db3['pcs'][_0x47281e[_0x563866(0x5f9)]][_0x563866(0x2bf)]==!![])_0x44f55a!==![]?_0x539db3[_0x563866(0x936)]!==![]&&(_0x539db3['roombitrate']<_0x44f55a&&(_0x44f55a=_0x539db3[_0x563866(0x936)])):_0x44f55a=_0x539db3[_0x563866(0x936)],(iOS||iPad)&&_0x539db3[_0x563866(0x77a)][_0x47281e[_0x563866(0x5f9)]][_0x563866(0x40f)]&&(_0x539db3[_0x563866(0x77a)][_0x47281e['UUID']][_0x563866(0x19d)]=!![]);else{if(iOS||iPad){var _0x33f9be=0x0;for(var _0x207372 in _0x539db3[_0x563866(0x77a)]){_0x47281e[_0x563866(0x5f9)]!==_0x207372&&(_0x539db3[_0x563866(0x77a)][_0x207372]['encoder']===!![]&&(_0x33f9be+=0x1));}if(_0x33f9be>=0x3){if(_0x539db3[_0x563866(0x77a)][_0x47281e[_0x563866(0x5f9)]][_0x563866(0x40f)])_0x539db3[_0x563866(0x77a)][_0x47281e[_0x563866(0x5f9)]][_0x563866(0x19d)]=!![],_0x539db3[_0x563866(0x77a)][_0x47281e[_0x563866(0x5f9)]]['preferVideoCodec']&&_0x539db3['pcs'][_0x47281e[_0x563866(0x5f9)]][_0x563866(0x53d)]===_0x563866(0x6a2)&&(_0x47281e[_0x563866(0x122)][_0x563866(0x74a)]=CodecsHandler['preferCodec'](_0x47281e[_0x563866(0x122)]['sdp'],'h264'),log(_0x563866(0x4ac)+_0x539db3[_0x563866(0x77a)][_0x47281e[_0x563866(0x5f9)]][_0x563866(0x53d)]+'\x20as\x20preferred\x20codec\x20by\x20viewer\x20via\x20API'));else _0x539db3[_0x563866(0x77a)][_0x47281e[_0x563866(0x5f9)]][_0x563866(0x53d)]&&_0x539db3[_0x563866(0x77a)][_0x47281e[_0x563866(0x5f9)]][_0x563866(0x53d)]===_0x563866(0x575)?(_0x47281e[_0x563866(0x122)][_0x563866(0x74a)]=CodecsHandler['preferCodec'](_0x47281e[_0x563866(0x122)]['sdp'],_0x563866(0x575)),log(_0x563866(0x4ac)+_0x539db3[_0x563866(0x77a)][_0x47281e[_0x563866(0x5f9)]]['preferVideoCodec']+_0x563866(0x4cf)),_0x539db3['pcs'][_0x47281e['UUID']][_0x563866(0x19d)]=![]):(_0x47281e[_0x563866(0x122)]['sdp']=CodecsHandler[_0x563866(0x2ff)](_0x47281e[_0x563866(0x122)]['sdp'],_0x563866(0x32b)),log(_0x563866(0x270)),_0x539db3['pcs'][_0x47281e['UUID']][_0x563866(0x19d)]=![]);}else _0x539db3[_0x563866(0x77a)][_0x47281e[_0x563866(0x5f9)]]['preferVideoCodec']&&_0x539db3[_0x563866(0x77a)][_0x47281e[_0x563866(0x5f9)]]['preferVideoCodec']!==_0x563866(0x6a2)?_0x539db3[_0x563866(0x77a)][_0x47281e[_0x563866(0x5f9)]][_0x563866(0x53d)]===_0x563866(0x575)||_0x539db3[_0x563866(0x77a)][_0x47281e[_0x563866(0x5f9)]][_0x563866(0x53d)]===_0x563866(0x32b)?(_0x47281e[_0x563866(0x122)][_0x563866(0x74a)]=CodecsHandler[_0x563866(0x2ff)](_0x47281e[_0x563866(0x122)]['sdp'],_0x539db3[_0x563866(0x77a)][_0x47281e[_0x563866(0x5f9)]][_0x563866(0x53d)]),log('Trying\x20to\x20set\x20'+_0x539db3[_0x563866(0x77a)][_0x47281e['UUID']]['preferVideoCodec']+_0x563866(0x4cf)),_0x539db3[_0x563866(0x77a)][_0x47281e[_0x563866(0x5f9)]][_0x563866(0x19d)]=![]):_0x539db3['pcs'][_0x47281e[_0x563866(0x5f9)]][_0x563866(0x19d)]=!![]:(_0x539db3[_0x563866(0x77a)][_0x47281e['UUID']]['encoder']=!![],_0x539db3['pcs'][_0x47281e[_0x563866(0x5f9)]][_0x563866(0x53d)]&&_0x539db3[_0x563866(0x77a)][_0x47281e[_0x563866(0x5f9)]][_0x563866(0x53d)]==='h264'&&(_0x47281e[_0x563866(0x122)][_0x563866(0x74a)]=CodecsHandler[_0x563866(0x2ff)](_0x47281e[_0x563866(0x122)][_0x563866(0x74a)],_0x563866(0x6a2)),log(_0x563866(0x4ac)+_0x539db3[_0x563866(0x77a)][_0x47281e[_0x563866(0x5f9)]]['preferVideoCodec']+_0x563866(0x4cf))));}else _0x539db3['pcs'][_0x47281e[_0x563866(0x5f9)]][_0x563866(0x53d)]!==![]&&(_0x47281e[_0x563866(0x122)][_0x563866(0x74a)]=CodecsHandler[_0x563866(0x2ff)](_0x47281e[_0x563866(0x122)][_0x563866(0x74a)],_0x539db3[_0x563866(0x77a)][_0x47281e['UUID']][_0x563866(0x53d)]),log(_0x563866(0x4ac)+_0x539db3['pcs'][_0x47281e[_0x563866(0x5f9)]][_0x563866(0x53d)]+_0x563866(0x4cf)));}}if(_0x44f55a){var _0x5d81bd=CodecsHandler[_0x563866(0x6a3)](_0x47281e[_0x563866(0x122)][_0x563866(0x74a)]);log(_0x563866(0x473)+_0x5d81bd);if(_0x5d81bd!==![]&&_0x5d81bd>_0x44f55a){var _0x38a999=CodecsHandler['getOpusBitrate'](_0x47281e[_0x563866(0x122)][_0x563866(0x74a)])||0x0;_0x47281e[_0x563866(0x122)][_0x563866(0x74a)]=CodecsHandler[_0x563866(0x742)](_0x47281e[_0x563866(0x122)][_0x563866(0x74a)],{'min':parseInt(_0x44f55a/0xa)||0x1,'max':parseInt(_0x44f55a+_0x38a999/0x400)}),_0x539db3[_0x563866(0x77a)][_0x47281e['UUID']][_0x563866(0x68a)]=_0x44f55a;}else{if(_0x5d81bd===![]){var _0x38a999=CodecsHandler['getOpusBitrate'](_0x47281e[_0x563866(0x122)][_0x563866(0x74a)])||0x0;_0x47281e[_0x563866(0x122)][_0x563866(0x74a)]=CodecsHandler[_0x563866(0x742)](_0x47281e[_0x563866(0x122)][_0x563866(0x74a)],{'min':parseInt(_0x44f55a/0xa)||0x1,'max':parseInt(_0x44f55a+_0x38a999/0x400)});if(_0x539db3['outboundVideoBitrate']&&_0x539db3['outboundVideoBitrate']>_0x44f55a)_0x539db3[_0x563866(0x77a)][_0x47281e[_0x563866(0x5f9)]][_0x563866(0x68a)]=_0x44f55a;else _0x539db3['outboundVideoBitrate']?_0x539db3[_0x563866(0x77a)][_0x47281e['UUID']]['setBitrate']=outboundVideoBitrate:_0x539db3['pcs'][_0x47281e[_0x563866(0x5f9)]][_0x563866(0x85c)]=0x9c4;}else _0x539db3[_0x563866(0x77a)][_0x47281e['UUID']][_0x563866(0x68a)]=_0x5d81bd;}}else{if(_0x539db3[_0x563866(0x502)]!==![]){var _0x5d81bd=CodecsHandler[_0x563866(0x6a3)](_0x47281e[_0x563866(0x122)]['sdp']);if(_0x5d81bd===![]){var _0x38a999=CodecsHandler[_0x563866(0x4d8)](_0x47281e['description'][_0x563866(0x74a)])||0x0;_0x47281e[_0x563866(0x122)][_0x563866(0x74a)]=CodecsHandler[_0x563866(0x742)](_0x47281e[_0x563866(0x122)][_0x563866(0x74a)],{'min':parseInt(_0x539db3[_0x563866(0x502)]/0xa)||0x1,'max':parseInt(_0x539db3[_0x563866(0x502)]+_0x38a999/0x400)});}else _0x539db3[_0x563866(0x77a)][_0x47281e['UUID']][_0x563866(0x68a)]===![]&&(_0x539db3[_0x563866(0x77a)][_0x47281e[_0x563866(0x5f9)]][_0x563866(0x68a)]=_0x5d81bd);}else _0x539db3[_0x563866(0x77a)][_0x47281e['UUID']][_0x563866(0x68a)]===![]&&(_0x539db3[_0x563866(0x77a)][_0x47281e['UUID']][_0x563866(0x68a)]=CodecsHandler['getVideoBitrates'](_0x47281e[_0x563866(0x122)][_0x563866(0x74a)]));}_0x539db3['outboundAudioBitrate']&&(_0x47281e[_0x563866(0x122)][_0x563866(0x74a)]=CodecsHandler['setOpusAttributes'](_0x47281e[_0x563866(0x122)][_0x563866(0x74a)],{'maxaveragebitrate':_0x539db3[_0x563866(0x6ab)]*0x400,'cbr':_0x539db3[_0x563866(0x887)]}));if(_0x563866(0x43a)in _0x47281e&&_0x47281e[_0x563866(0x43a)]!=_0x539db3['pcs'][_0x47281e[_0x563866(0x5f9)]][_0x563866(0x43a)]){errorlog(_0x563866(0x8e8));return;}_0x539db3['pcs'][_0x47281e[_0x563866(0x5f9)]][_0x563866(0x684)](_0x47281e['description'])['then']()[_0x563866(0x49b)](errorlog);}catch(_0x437e3f){errorlog(_0x437e3f);}},_0x539db3[_0x173334(0x772)]=function(_0x8efbf8){var _0x2e8d31=_0x173334;_0x539db3[_0x2e8d31(0x39f)]&&_0x2e8d31(0x61b)in _0x8efbf8?_0x539db3[_0x2e8d31(0x77c)](_0x8efbf8[_0x2e8d31(0x122)],_0x8efbf8[_0x2e8d31(0x61b)])['then'](function(_0x38bbbf){var _0x337198=_0x2e8d31;_0x8efbf8[_0x337198(0x122)]=JSON[_0x337198(0x70e)](_0x38bbbf),_0x539db3[_0x337198(0x55c)](_0x8efbf8);}):_0x539db3['processDescription2'](_0x8efbf8);},_0x539db3['processIce']=function(_0x31aad7){var _0x2448a0=_0x173334;_0x539db3['password']&&_0x2448a0(0x61b)in _0x31aad7?_0x539db3[_0x2448a0(0x77c)](_0x31aad7[_0x2448a0(0x663)],_0x31aad7['vector'])['then'](function(_0x46be76){var _0x3ac623=_0x2448a0;_0x31aad7[_0x3ac623(0x663)]=JSON[_0x3ac623(0x70e)](_0x46be76),_0x539db3[_0x3ac623(0x5e8)](_0x31aad7);}):_0x539db3[_0x2448a0(0x5e8)](_0x31aad7);},_0x539db3[_0x173334(0x5e8)]=function(_0x509c67){var _0x3ca3d1=_0x173334;try{if(_0x539db3[_0x3ca3d1(0x86c)]){if(_0x509c67[_0x3ca3d1(0x663)][_0x3ca3d1(0x663)]['indexOf'](_0x539db3[_0x3ca3d1(0x86c)])===-0x1){log(_0x3ca3d1(0x597)),log(_0x509c67[_0x3ca3d1(0x663)]);return;}else log(_0x3ca3d1(0x119)),log(_0x509c67[_0x3ca3d1(0x663)]);}}catch(_0x512fb1){errorlog(_0x512fb1);}if(_0x509c67[_0x3ca3d1(0x663)]&&_0x3ca3d1(0x663)in _0x509c67[_0x3ca3d1(0x663)]&&_0x509c67[_0x3ca3d1(0x663)][_0x3ca3d1(0x663)]=='')return;if(_0x509c67['UUID']in _0x539db3['pcs']&&_0x509c67['type']==_0x3ca3d1(0x57e)){log('PCS\x20WINS\x20ICE');if('session'in _0x509c67&&_0x539db3[_0x3ca3d1(0x77a)][_0x509c67[_0x3ca3d1(0x5f9)]]['session']!=_0x509c67[_0x3ca3d1(0x43a)]){errorlog(_0x3ca3d1(0x3dd));return;}_0x539db3[_0x3ca3d1(0x77a)][_0x509c67['UUID']][_0x3ca3d1(0x294)](_0x509c67[_0x3ca3d1(0x663)])[_0x3ca3d1(0x1f1)]()[_0x3ca3d1(0x49b)](function(_0x4aa5a9){errorlog(_0x4aa5a9),errorlog(_0x509c67);});}else{if(_0x509c67[_0x3ca3d1(0x5f9)]in _0x539db3[_0x3ca3d1(0x51f)]&&_0x509c67[_0x3ca3d1(0x373)]=='local'){log('RPCS\x20WINS\x20ICE');if('session'in _0x509c67&&_0x539db3['rpcs'][_0x509c67['UUID']][_0x3ca3d1(0x43a)]!=_0x509c67[_0x3ca3d1(0x43a)]){errorlog(_0x3ca3d1(0x3dd));return;}if(_0x539db3[_0x3ca3d1(0x51f)][_0x509c67[_0x3ca3d1(0x5f9)]]===null)return;_0x539db3[_0x3ca3d1(0x51f)][_0x509c67[_0x3ca3d1(0x5f9)]][_0x3ca3d1(0x294)](_0x509c67[_0x3ca3d1(0x663)])[_0x3ca3d1(0x1f1)]()['catch'](function(_0x5452f6){errorlog(_0x5452f6),errorlog(_0x509c67);});}else warnlog(_0x509c67),warnlog(_0x3ca3d1(0x265));}},_0x539db3[_0x173334(0x40b)]=function(_0x122f75){var _0x1e0f74=_0x173334;if(_0x539db3[_0x1e0f74(0x39f)]&&'vector'in _0x122f75)_0x539db3[_0x1e0f74(0x77c)](_0x122f75[_0x1e0f74(0x651)],_0x122f75[_0x1e0f74(0x61b)])[_0x1e0f74(0x1f1)](function(_0x4fbfa4){var _0x5d6cf9=_0x1e0f74;_0x122f75[_0x5d6cf9(0x651)]=JSON['parse'](_0x4fbfa4);var _0x5c3488={};_0x5c3488[_0x5d6cf9(0x5f9)]=_0x122f75[_0x5d6cf9(0x5f9)],_0x5c3488[_0x5d6cf9(0x373)]=_0x122f75[_0x5d6cf9(0x373)];for(var _0x208551=0x0;_0x208551<_0x122f75[_0x5d6cf9(0x651)][_0x5d6cf9(0x425)];_0x208551++){_0x5c3488[_0x5d6cf9(0x663)]=_0x122f75['candidates'][_0x208551],_0x539db3[_0x5d6cf9(0x5e8)](_0x5c3488);}});else{var _0x16ea80={};_0x16ea80['UUID']=_0x122f75[_0x1e0f74(0x5f9)],_0x16ea80[_0x1e0f74(0x373)]=_0x122f75[_0x1e0f74(0x373)];for(var _0x191d0b=0x0;_0x191d0b<_0x122f75[_0x1e0f74(0x651)]['length'];_0x191d0b++){_0x16ea80[_0x1e0f74(0x663)]=_0x122f75[_0x1e0f74(0x651)][_0x191d0b],_0x539db3['processIce2'](_0x16ea80);}}},_0x539db3['connectPeer']=function(_0x422032){var _0x31d75d=_0x173334;_0x31d75d(0x554)in _0x422032&&(_0x539db3[_0x31d75d(0x51f)][_0x422032[_0x31d75d(0x5f9)]][_0x31d75d(0xfa)]=_0x422032[_0x31d75d(0x554)],log(_0x31d75d(0x28f)),log(_0x422032[_0x31d75d(0x554)])),_0x539db3['rpcs'][_0x422032[_0x31d75d(0x5f9)]][_0x31d75d(0x684)](_0x422032['description'])['then'](function(){var _0x521a09=_0x31d75d;if(_0x539db3[_0x521a09(0x51f)][_0x422032[_0x521a09(0x5f9)]]['remoteDescription']['type']===_0x521a09(0x652))_0x539db3[_0x521a09(0x51f)][_0x422032[_0x521a09(0x5f9)]][_0x521a09(0x8d5)]()['then'](function(_0x438b0e){var _0x22537e=_0x521a09;log(_0x22537e(0x711));if(!_0x539db3[_0x22537e(0x29a)]&&_0x539db3[_0x22537e(0x3b4)]==0x5)_0x438b0e[_0x22537e(0x74a)]=CodecsHandler[_0x22537e(0x779)](_0x438b0e['sdp'],{'stereo':0x1,'maxaveragebitrate':(_0x539db3[_0x22537e(0x71f)]||0x100)*0x400,'cbr':_0x539db3[_0x22537e(0x887)],'useinbandfec':0x1,'maxptime':_0x539db3[_0x22537e(0x7bb)],'minptime':_0x539db3[_0x22537e(0x55d)],'ptime':_0x539db3[_0x22537e(0x6f0)]}),log(_0x22537e(0x6c1));else{if(_0x539db3['mono']&&Firefox)_0x539db3['audiobitrate']?_0x438b0e[_0x22537e(0x74a)]=CodecsHandler[_0x22537e(0x779)](_0x438b0e['sdp'],{'stereo':0x0,'maxaveragebitrate':_0x539db3[_0x22537e(0x71f)]*0x400,'cbr':_0x539db3[_0x22537e(0x887)],'useinbandfec':0x1,'maxptime':_0x539db3[_0x22537e(0x7bb)],'minptime':_0x539db3[_0x22537e(0x55d)],'ptime':_0x539db3[_0x22537e(0x6f0)]}):_0x438b0e[_0x22537e(0x74a)]=CodecsHandler[_0x22537e(0x779)](_0x438b0e[_0x22537e(0x74a)],{'stereo':0x0});else{if(_0x539db3['stereo']==0x1||_0x539db3[_0x22537e(0x3b4)]==0x2||_0x539db3[_0x22537e(0x3b4)]==0x5)_0x438b0e[_0x22537e(0x74a)]=CodecsHandler['setOpusAttributes'](_0x438b0e[_0x22537e(0x74a)],{'stereo':0x1,'maxaveragebitrate':(_0x539db3[_0x22537e(0x71f)]||0x100)*0x400,'cbr':_0x539db3[_0x22537e(0x887)],'useinbandfec':0x1,'maxptime':_0x539db3[_0x22537e(0x7bb)],'minptime':_0x539db3[_0x22537e(0x55d)],'ptime':_0x539db3[_0x22537e(0x6f0)]}),log(_0x22537e(0x6c1));else{if(_0x539db3['stereo']==0x4)_0x438b0e[_0x22537e(0x74a)]=CodecsHandler[_0x22537e(0x779)](_0x438b0e[_0x22537e(0x74a)],{'stereo':0x2,'maxaveragebitrate':(_0x539db3['audiobitrate']||0x100)*0x400,'cbr':_0x539db3[_0x22537e(0x887)],'useinbandfec':0x1,'maxptime':_0x539db3['maxptime'],'minptime':_0x539db3[_0x22537e(0x55d)],'ptime':_0x539db3[_0x22537e(0x6f0)]});else _0x539db3[_0x22537e(0x71f)]&&(_0x438b0e[_0x22537e(0x74a)]=CodecsHandler[_0x22537e(0x779)](_0x438b0e[_0x22537e(0x74a)],{'maxaveragebitrate':_0x539db3['audiobitrate']*0x400,'cbr':_0x539db3['cbr'],'useinbandfec':0x1,'maxptime':_0x539db3[_0x22537e(0x7bb)],'minptime':_0x539db3[_0x22537e(0x55d)],'ptime':_0x539db3[_0x22537e(0x6f0)]}));}}}_0x539db3[_0x22537e(0x2af)]&&(_0x438b0e[_0x22537e(0x74a)]=CodecsHandler[_0x22537e(0x2ff)](_0x438b0e[_0x22537e(0x74a)],_0x539db3['codec']));_0x539db3['h264profile']&&(_0x438b0e[_0x22537e(0x74a)]=_0x438b0e[_0x22537e(0x74a)]['replace'](/42e01f/gi,_0x539db3['h264profile']),_0x438b0e[_0x22537e(0x74a)]=_0x438b0e[_0x22537e(0x74a)][_0x22537e(0x3e2)](/42001f/gi,_0x539db3[_0x22537e(0x327)]),_0x438b0e['sdp']=_0x438b0e['sdp'][_0x22537e(0x3e2)](/420029/gi,_0x539db3[_0x22537e(0x327)]),_0x438b0e[_0x22537e(0x74a)]=_0x438b0e[_0x22537e(0x74a)][_0x22537e(0x3e2)](/42a01e/gi,_0x539db3[_0x22537e(0x327)]),_0x438b0e[_0x22537e(0x74a)]=_0x438b0e[_0x22537e(0x74a)][_0x22537e(0x3e2)](/42a014/gi,_0x539db3[_0x22537e(0x327)]),_0x438b0e[_0x22537e(0x74a)]=_0x438b0e[_0x22537e(0x74a)][_0x22537e(0x3e2)](/42a00b/gi,_0x539db3[_0x22537e(0x327)]),_0x438b0e['sdp']=_0x438b0e[_0x22537e(0x74a)][_0x22537e(0x3e2)](/640c1f/gi,_0x539db3[_0x22537e(0x327)]));_0x539db3[_0x22537e(0x6e3)]&&(log(_0x438b0e[_0x22537e(0x74a)]),_0x438b0e['sdp']=CodecsHandler[_0x22537e(0x883)](_0x438b0e[_0x22537e(0x74a)]));_0x539db3[_0x22537e(0x7ff)]&&(_0x438b0e[_0x22537e(0x74a)]=CodecsHandler['disablePLI'](_0x438b0e[_0x22537e(0x74a)]));_0x539db3[_0x22537e(0x91c)]&&(_0x438b0e[_0x22537e(0x74a)]=CodecsHandler[_0x22537e(0x870)](_0x438b0e[_0x22537e(0x74a)]));if(_0x539db3[_0x22537e(0x51f)][_0x422032[_0x22537e(0x5f9)]][_0x22537e(0x79f)])log(_0x22537e(0x522)),_0x438b0e['sdp']=_0x43d6be(_0x438b0e[_0x22537e(0x74a)],_0x539db3[_0x22537e(0x51f)][_0x422032[_0x22537e(0x5f9)]]['manualBandwidth']);else _0x539db3[_0x22537e(0x419)]&&(log('bit\x20rate\x20being\x20munged'),_0x438b0e['sdp']=_0x43d6be(_0x438b0e[_0x22537e(0x74a)],_0x539db3['bitrate']));return _0x539db3['rpcs'][_0x422032['UUID']][_0x22537e(0x5b4)](_0x438b0e);})[_0x521a09(0x1f1)](function _0x206d9(){var _0x521b26=_0x521a09;log(_0x521b26(0x889));var _0x49fcb5={};_0x49fcb5[_0x521b26(0x5f9)]=_0x422032[_0x521b26(0x5f9)],_0x49fcb5[_0x521b26(0x122)]=_0x539db3['rpcs'][_0x422032[_0x521b26(0x5f9)]][_0x521b26(0x788)],_0x49fcb5[_0x521b26(0x43a)]=_0x539db3[_0x521b26(0x51f)][_0x422032['UUID']][_0x521b26(0x43a)],_0x539db3[_0x521b26(0x39f)]?_0x539db3['encryptMessage'](JSON['stringify'](_0x49fcb5[_0x521b26(0x122)]))[_0x521b26(0x1f1)](function(_0xdb4aff){var _0xa9dfd3=_0x521b26;_0x49fcb5[_0xa9dfd3(0x122)]=_0xdb4aff[0x0],_0x49fcb5[_0xa9dfd3(0x61b)]=_0xdb4aff[0x1],_0x539db3[_0xa9dfd3(0x2e1)](_0x49fcb5);})[_0x521b26(0x49b)](errorlog):_0x539db3[_0x521b26(0x2e1)](_0x49fcb5);})[_0x521a09(0x49b)](errorlog);else _0x539db3[_0x521a09(0x51f)][_0x422032['UUID']][_0x521a09(0x5d9)][_0x521a09(0x373)]===_0x521a09(0x62b)&&errorlog(_0x521a09(0x6a5));})[_0x31d75d(0x49b)](errorlog);},_0x539db3['getLocalStream']=function(){var _0x128199=_0x173334;if(_0x539db3['videoElement']['srcObject'])return _0x539db3['videoElement'][_0x128199(0x2b5)];else return _0x539db3[_0x128199(0x792)]['src']&&_0x539db3['streamSrc']?_0x539db3[_0x128199(0x17e)]:(log(_0x128199(0x7e5)),checkBasicStreamsExist(),_0x539db3[_0x128199(0x792)]['srcObject']);};var _0x10e565={},_0x5d0526=![],_0x4338c1=[];_0x539db3[_0x173334(0x624)]=function(_0x4d7f1a,_0x300112){var _0x3e619f=_0x173334;log(_0x3e619f(0x16d)+_0x300112+'\x20'+_0x4d7f1a);var _0xaf586=new FileReader(),_0x54b5a=![];for(var _0xb6fd54=0x0;_0xb6fd54<_0x539db3[_0x3e619f(0x785)][_0x3e619f(0x425)];_0xb6fd54++){if(_0x539db3['hostedFiles'][_0xb6fd54]['id']===_0x300112){_0x54b5a=_0xb6fd54;break;}}if(_0x54b5a===![]){warnlog(_0x3e619f(0x565));return;}else{if(_0x539db3[_0x3e619f(0x785)][_0x54b5a][_0x3e619f(0xf5)]==0x0){warnlog(_0x3e619f(0x84f));return;}else{if(!(_0x539db3[_0x3e619f(0x785)][_0x54b5a][_0x3e619f(0x8e5)]===![]||_0x539db3[_0x3e619f(0x785)][_0x54b5a][_0x3e619f(0x8e5)]===_0x4d7f1a)){warnlog(_0x3e619f(0x940));return;}}}var _0x4e7894=0x4000,_0x4eb84a=0x0,_0x54c556=_0x54b5a;_0x54c556==='sendChannel'&&(_0x54c556=_0x3e619f(0x44e)+_0x539db3['generateStreamID'](0x5));if(_0x4d7f1a in _0x539db3['pcs'])var _0x1e0571=_0x539db3[_0x3e619f(0x77a)][_0x4d7f1a][_0x3e619f(0x5d1)](_0x54c556);else{if(_0x4d7f1a in _0x539db3[_0x3e619f(0x51f)])var _0x1e0571=_0x539db3[_0x3e619f(0x51f)][_0x4d7f1a][_0x3e619f(0x5d1)](_0x54c556);else{warnlog('UUID\x20does\x20not\x20exist');return;}}_0x1e0571[_0x3e619f(0x909)]='arraybuffer';var _0x1cc38a=_0x539db3[_0x3e619f(0x785)][_0x54b5a][_0x3e619f(0x826)](0x0,_0x4e7894);_0x1e0571[_0x3e619f(0x918)]=()=>{var _0x94259=_0x3e619f;_0x1e0571[_0x94259(0x37d)](JSON[_0x94259(0x924)]({'type':_0x94259(0x215),'size':_0x539db3[_0x94259(0x785)][_0x54b5a][_0x94259(0x671)],'filename':_0x539db3[_0x94259(0x785)][_0x54b5a][_0x94259(0x911)],'id':_0x539db3[_0x94259(0x785)][_0x54b5a]['id']})),_0xaf586[_0x94259(0x32f)](_0x1cc38a);},_0x1e0571[_0x3e619f(0x7fa)]=()=>{var _0x20839f=_0x3e619f;try{var _0x2c391=_0x539db3['hostedTransfers'][_0x20839f(0x854)](_0x1e0571);_0x2c391>-0x1&&_0x539db3['hostedTransfers'][_0x20839f(0x540)](_0x2c391,0x1);}catch(_0x1428b4){errorlog(_0x1428b4);}log('Transfer\x20ended'),_0x1e0571=null;},_0x1e0571[_0x3e619f(0x6c3)]=_0x97e4d=>{},_0x539db3[_0x3e619f(0x8a3)][_0x3e619f(0x6d6)](_0x1e0571),_0xaf586[_0x3e619f(0x5d0)]=function(){var _0x4e8071=_0x3e619f;if(_0x539db3[_0x4e8071(0x785)][_0x54b5a][_0x4e8071(0xf5)]==0x0)return;var _0x1b6322=_0xaf586[_0x4e8071(0x687)];log(_0x1b6322);try{_0x1e0571[_0x4e8071(0x37d)](_0x1b6322);}catch(_0x413848){try{_0x1e0571[_0x4e8071(0x7c0)]();}catch(_0x46133e){}warnlog(_0x413848);return;}_0x4eb84a+=0x1;if(_0x4eb84a*_0x4e7894<_0x539db3[_0x4e8071(0x785)][_0x54b5a][_0x4e8071(0x671)])try{log(_0x4e8071(0x90b)+_0x4eb84a),_0x1cc38a=_0x539db3[_0x4e8071(0x785)][_0x54b5a][_0x4e8071(0x826)](_0x4eb84a*_0x4e7894,(_0x4eb84a+0x1)*_0x4e7894),_0xaf586['readAsArrayBuffer'](_0x1cc38a);}catch(_0x580c7){errorlog(_0x580c7);}else _0x1e0571[_0x4e8071(0x37d)]('EOF1'),_0x1e0571['close']();};},_0x539db3[_0x173334(0x8aa)]=null,_0x539db3[_0x173334(0x635)]=null,_0x539db3[_0x173334(0x34a)]=async function(_0x39eda8=null){var _0x506ada=_0x173334;if(_0x539db3[_0x506ada(0x8aa)]!==null)return;else _0x539db3[_0x506ada(0x8aa)]=![];!_0x39eda8&&_0x539db3[_0x506ada(0x27b)][_0x506ada(0x4d0)]&&(_0x39eda8=_0x539db3[_0x506ada(0x27b)]['Chunked_video']);let _0x115dd3=0x0;var _0x2a0449=_0x539db3[_0x506ada(0x17e)][_0x506ada(0x82a)]()[0x0];if(!_0x2a0449){_0x539db3[_0x506ada(0x8aa)]=null;return;}var _0x491aca=new MediaStreamTrackProcessor(_0x2a0449),_0x5a6d29=_0x491aca[_0x506ada(0x250)];const _0x4e0ddc=_0x5a6d29[_0x506ada(0x123)]();var _0x57e81a=![],_0x45f239=-0x1;const _0x343025={'output':_0x569ef5=>{var _0x36cbc2=_0x506ada;if(_0x569ef5[_0x36cbc2(0x618)][_0x36cbc2(0x911)]==_0x36cbc2(0x466)){let _0x4522eb=new Uint8Array(_0x569ef5[_0x36cbc2(0x310)]);_0x569ef5['copyTo'](_0x4522eb),_0x4338c1[_0x36cbc2(0x6d6)]([_0x569ef5[_0x36cbc2(0x2a2)]-_0x562d3b,_0x569ef5[_0x36cbc2(0x373)]]),_0x4338c1[_0x36cbc2(0x6d6)](_0x4522eb),_0x5d0526[_0x36cbc2(0x181)]();}},'error':_0x1e5714=>{errorlog(_0x1e5714);}};let _0x173dea=new VideoEncoder(_0x343025);_0x173dea[_0x506ada(0x6d5)](_0x39eda8),_0x539db3[_0x506ada(0x27b)][_0x506ada(0x4d0)]=_0x39eda8,_0x539db3['chunkedVideoEnabled']=!![];var _0x562d3b=-0x1;_0x4e0ddc['read']()[_0x506ada(0x1f1)](function _0x261fad({done:_0x51505d,value:_0x245d5b}){var _0x3ddd9a=_0x506ada;if(_0x51505d||_0x57e81a){_0x173dea['close']();_0x245d5b&&_0x245d5b[_0x3ddd9a(0x7c0)]();_0x539db3[_0x3ddd9a(0x8aa)]=null;return;}_0x562d3b==-0x1&&(_0x562d3b=_0x245d5b[_0x3ddd9a(0x2a2)]);_0x45f239==_0x245d5b[_0x3ddd9a(0x2a2)]&&(_0x245d5b[_0x3ddd9a(0x2a2)]+=0x1,warnlog('Timestamp\x20duplicated'));if(!_0x57e81a){_0x45f239=_0x245d5b[_0x3ddd9a(0x2a2)],_0x115dd3++;if(_0x5d0526[_0x3ddd9a(0x458)]){const _0x5d2dbf=_0x115dd3>=0x3c;_0x5d2dbf&&(_0x115dd3=0x0,_0x5d0526[_0x3ddd9a(0x458)]=![],warnlog(_0x3ddd9a(0x3e5))),_0x173dea['encode'](_0x245d5b,{'keyFrame':_0x5d2dbf});}else _0x173dea['encode'](_0x245d5b,{'keyFrame':![]});}_0x245d5b[_0x3ddd9a(0x7c0)](),_0x4e0ddc[_0x3ddd9a(0x758)]()['then'](_0x261fad);});},_0x539db3['webCodecAudio']=async function(_0x5a0a41){var _0x3e4d0c=_0x173334;if(_0x539db3[_0x3e4d0c(0x635)]!==null)return;else _0x539db3[_0x3e4d0c(0x635)]=![];!_0x5a0a41&&_0x539db3[_0x3e4d0c(0x27b)][_0x3e4d0c(0x1a7)]&&(_0x5a0a41=_0x539db3[_0x3e4d0c(0x27b)][_0x3e4d0c(0x1a7)]);var _0xb32333=_0x539db3[_0x3e4d0c(0x792)]['srcObject'][_0x3e4d0c(0x2df)]()[0x0];if(!_0xb32333){_0x539db3[_0x3e4d0c(0x635)]=null;return;}var _0x2f30e1=new MediaStreamTrackProcessor(_0xb32333),_0x1810d2=_0x2f30e1['readable'];const _0x50faac=_0x1810d2[_0x3e4d0c(0x123)]();var _0x2b048a=![],_0x5f0317=-0x1,_0x1a04c4=-0x1;const _0x4bd38e={'output':_0x5cd8a2=>{var _0x1b9c09=_0x3e4d0c;if(_0x5cd8a2[_0x1b9c09(0x618)][_0x1b9c09(0x911)]=='EncodedAudioChunk'){let _0x3045d5=new Uint8Array(_0x5cd8a2['byteLength']);_0x5cd8a2[_0x1b9c09(0x42b)](_0x3045d5),_0x4338c1[_0x1b9c09(0x6d6)]([_0x5cd8a2[_0x1b9c09(0x2a2)]-_0x1a04c4,_0x1b9c09(0x6e1)]),_0x4338c1[_0x1b9c09(0x6d6)](_0x3045d5),_0x5d0526['sendChunks']();}},'error':_0x1770a0=>{errorlog(_0x1770a0);}};let _0x4d2e72=new AudioEncoder(_0x4bd38e);_0x4d2e72[_0x3e4d0c(0x6d5)](_0x5a0a41),_0x539db3['stats']['Chunked_audio']={},_0x539db3['stats'][_0x3e4d0c(0x1a7)][_0x3e4d0c(0x2af)]=_0x5a0a41[_0x3e4d0c(0x2af)],_0x539db3[_0x3e4d0c(0x27b)][_0x3e4d0c(0x1a7)][_0x3e4d0c(0x8c3)]=_0x5a0a41[_0x3e4d0c(0x8c3)],_0x539db3[_0x3e4d0c(0x27b)][_0x3e4d0c(0x1a7)][_0x3e4d0c(0x25b)]=_0x5a0a41[_0x3e4d0c(0x25b)],_0x539db3[_0x3e4d0c(0x27b)]['Chunked_audio'][_0x3e4d0c(0x419)]=_0x5a0a41[_0x3e4d0c(0x910)][_0x3e4d0c(0x419)],_0x539db3['chunkedAudioEnabled']=!![],_0x50faac[_0x3e4d0c(0x758)]()['then'](function _0x5ae875({done:_0x54c018,value:_0x25943f}){var _0x2d8f34=_0x3e4d0c;if(_0x54c018||_0x2b048a){_0x4d2e72['close']();_0x25943f&&_0x25943f['close']();_0x539db3['chunkedAudioEnabled']=null;return;}_0x1a04c4==-0x1&&(_0x1a04c4=_0x25943f[_0x2d8f34(0x2a2)]),_0x5f0317==_0x25943f[_0x2d8f34(0x2a2)]&&(_0x25943f[_0x2d8f34(0x2a2)]+=0x1),!_0x2b048a&&(_0x5f0317=_0x25943f[_0x2d8f34(0x2a2)],_0x4d2e72['encode'](_0x25943f)),_0x25943f[_0x2d8f34(0x7c0)](),_0x50faac[_0x2d8f34(0x758)]()[_0x2d8f34(0x1f1)](_0x5ae875);});},_0x539db3['getPCM']=function(_0xc7867e){var _0x3e8918=_0x173334;warnlog(_0x3e8918(0x391));const _0x19d2ff=window[_0x3e8918(0x8f5)]||window[_0x3e8918(0x41d)],_0x16bd3d=new _0x19d2ff(),_0x50e4a4=_0x16bd3d[_0x3e8918(0x2c1)](_0xc7867e),_0x3a252e=0x800,_0x21003b=(_0x16bd3d[_0x3e8918(0x246)]||_0x16bd3d['createJavaScriptNode'])[_0x3e8918(0x444)](_0x16bd3d,_0x3a252e,0x1,0x1);return _0x21003b[_0x3e8918(0x135)]=function(_0x3e9876){var _0x5234fd=_0x3e8918,_0x487e27=new Uint8Array(_0x3e9876[_0x5234fd(0x5dc)]['getChannelData'](0x0)[_0x5234fd(0x845)]);_0x4338c1[_0x5234fd(0x6d6)]([0x0,_0x5234fd(0x50f)]),_0x4338c1[_0x5234fd(0x6d6)](_0x487e27),_0x5d0526[_0x5234fd(0x181)]();},_0x50e4a4[_0x3e8918(0x776)](_0x21003b),_0x21003b[_0x3e8918(0x776)](_0x16bd3d[_0x3e8918(0x8a8)]),_0x21003b;},_0x539db3[_0x173334(0x6e6)]=function(_0x36f25f){var _0x5128cb=_0x173334;log('SENDING\x20CHUNKS\x20TO:\x20'+_0x36f25f);!_0x539db3[_0x5128cb(0x8aa)]&&_0x539db3[_0x5128cb(0x27b)]['Chunked_video']&&(config=_0x539db3['stats'][_0x5128cb(0x4d0)],_0x539db3[_0x5128cb(0x34a)](config));!_0x539db3[_0x5128cb(0x635)]&&_0x539db3['stats'][_0x5128cb(0x1a7)]&&(config=_0x539db3[_0x5128cb(0x27b)]['Chunked_audio'],_0x539db3[_0x5128cb(0x511)](config));if(_0x36f25f in _0x10e565)return;if(!_0x5d0526){var _0x3b12a0=_0x539db3[_0x5128cb(0x59e)](),_0x461562=_0x539db3[_0x5128cb(0x31e)],_0x4f6f05=null;_0x539db3[_0x5128cb(0x1bf)]&&_0x539db3[_0x5128cb(0x1bf)]<_0x461562&&(_0x461562=_0x539db3[_0x5128cb(0x1bf)]);var _0x141f43={'codec':_0x5128cb(0x516),'width':0x780,'height':0x438,'bitrate':parseInt(_0x461562*0x3e8),'frameRate':0x1e},_0x178bfb=_0x3b12a0[_0x5128cb(0x82a)]();if(_0x178bfb[_0x5128cb(0x425)]){var _0x3f506f=_0x178bfb[0x0][_0x5128cb(0x708)]();_0x3f506f[_0x5128cb(0x5f0)]&&(_0x141f43[_0x5128cb(0x5f0)]=_0x3f506f[_0x5128cb(0x5f0)]),_0x3f506f[_0x5128cb(0x165)]&&(_0x141f43[_0x5128cb(0x165)]=_0x3f506f[_0x5128cb(0x165)]),_0x3f506f[_0x5128cb(0x273)]&&(_0x141f43[_0x5128cb(0x273)]=_0x3f506f[_0x5128cb(0x273)]);}else _0x141f43=![];if(_0x461562<0x259){var _0x45c68e=_0x141f43[_0x5128cb(0x5f0)]*_0x141f43[_0x5128cb(0x165)]/(0x280*0x168);if(_0x45c68e>=0x2)_0x141f43[_0x5128cb(0x5f0)]=parseInt(_0x141f43[_0x5128cb(0x5f0)]/0x2),_0x141f43[_0x5128cb(0x165)]=parseInt(_0x141f43[_0x5128cb(0x165)]/0x2);else _0x45c68e>=1.5&&(_0x141f43['width']=parseInt(_0x141f43['width']/1.5),_0x141f43['height']=parseInt(_0x141f43[_0x5128cb(0x165)]/1.5));}var _0x2663fe={'codec':'opus','numberOfChannels':0x2,'sampleRate':0xbb80,'tuning':{'bitrate':0xfa00}};if(_0x461562>0xbb8)var _0x2663fe={'codec':'opus','numberOfChannels':0x2,'sampleRate':0xbb80,'tuning':{'bitrate':0x1f400}};else{if(_0x461562<0x259)var _0x2663fe={'codec':_0x5128cb(0x855),'numberOfChannels':0x1,'sampleRate':0xbb80,'tuning':{'bitrate':0x7d00}};}var _0x178bfb=_0x3b12a0['getAudioTracks']();if(_0x178bfb['length']){var _0x3f506f=_0x178bfb[0x0][_0x5128cb(0x708)]();_0x2663fe['numberOfChannels']>_0x3f506f[_0x5128cb(0x8b0)]&&(_0x2663fe[_0x5128cb(0x8c3)]=_0x3f506f[_0x5128cb(0x8b0)]),_0x2663fe['sampleRate']>_0x3f506f[_0x5128cb(0x25b)]&&(_0x2663fe[_0x5128cb(0x25b)]=_0x3f506f[_0x5128cb(0x25b)]);}else _0x2663fe=![];if(!_0x2663fe&&!_0x141f43)return;_0x5d0526={},_0x5d0526[_0x5128cb(0x458)]=!![],_0x5d0526[_0x5128cb(0x301)]=_0x141f43||![],_0x5d0526[_0x5128cb(0x3ef)]=_0x2663fe||![],_0x5d0526[_0x5128cb(0x301)]&&_0x539db3[_0x5128cb(0x34a)](_0x5d0526['configVideo']),_0x5d0526[_0x5128cb(0x3ef)]&&(_0x5d0526[_0x5128cb(0x3ef)][_0x5128cb(0x2af)]==_0x5128cb(0x50f)?_0x539db3[_0x5128cb(0x304)](_0x3b12a0):_0x539db3[_0x5128cb(0x511)](_0x5d0526[_0x5128cb(0x3ef)])),_0x5d0526[_0x5128cb(0x181)]=function(){var _0x3f636b=_0x5128cb;if(_0x4f6f05)return;_0x4f6f05=!![];while(_0x4338c1[_0x3f636b(0x425)]){if(!Object[_0x3f636b(0x39b)](_0x10e565)[_0x3f636b(0x425)]){_0x4338c1=[],_0x4f6f05=null;return;}var _0x2edcbb=_0x4338c1[_0x3f636b(0x686)]();if(_0x2edcbb['length']===0x2){_0x2edcbb['push'](_0x4338c1[_0x3f636b(0x425)]);var _0x52059b=JSON[_0x3f636b(0x924)](_0x2edcbb);for(var _0x369d37 in _0x10e565){try{_0x10e565[_0x369d37][_0x3f636b(0x298)]==='open'&&_0x10e565[_0x369d37][_0x3f636b(0x37d)](_0x52059b);}catch(_0x296770){}}}else{if(_0x2edcbb[_0x3f636b(0x310)]>0x40000){for(var _0x369d37 in _0x10e565){try{_0x10e565[_0x369d37][_0x3f636b(0x298)]===_0x3f636b(0x2ef)&&_0x10e565[_0x369d37][_0x3f636b(0x37d)](_0x2edcbb[_0x3f636b(0x826)](0x0,0x40000));}catch(_0x51c241){}}_0x4338c1[_0x3f636b(0x89c)](_0x2edcbb[_0x3f636b(0x826)](0x40000));}else for(var _0x369d37 in _0x10e565){try{_0x10e565[_0x369d37][_0x3f636b(0x298)]==='open'&&_0x10e565[_0x369d37][_0x3f636b(0x37d)](_0x2edcbb);}catch(_0x55ea2e){}}}_0x539db3[_0x3f636b(0x27b)][_0x3f636b(0x30e)]=_0x10e565[_0x369d37][_0x3f636b(0x728)];}_0x4f6f05=null;},_0x3b12a0['ended']=function(_0x59d937){};}var _0x57f055=_0x5128cb(0x31e);if(_0x36f25f in _0x539db3[_0x5128cb(0x77a)])_0x10e565[_0x36f25f]=_0x539db3[_0x5128cb(0x77a)][_0x36f25f][_0x5128cb(0x5d1)](_0x57f055);else{if(_0x36f25f in _0x539db3[_0x5128cb(0x51f)])_0x10e565[_0x36f25f]=_0x539db3['rpcs'][_0x36f25f][_0x5128cb(0x5d1)](_0x57f055);else{warnlog(_0x5128cb(0x292));return;}}_0x10e565[_0x36f25f][_0x5128cb(0x578)]=_0x5128cb(0x848),_0x10e565[_0x36f25f]['binaryType']=_0x5128cb(0x69e),_0x10e565[_0x36f25f][_0x5128cb(0x4e6)]=![],_0x10e565[_0x36f25f][_0x5128cb(0x918)]=()=>{var _0x46bbbb=_0x5128cb;log(_0x46bbbb(0x225)),_0x10e565[_0x36f25f][_0x46bbbb(0x37d)](JSON['stringify']({'type':_0x46bbbb(0x790),'size':0x5af3107a3fff,'configVideo':_0x5d0526[_0x46bbbb(0x301)],'configAudio':_0x5d0526[_0x46bbbb(0x3ef)],'recordType':_0x539db3['chunked'],'filename':_0x57f055+_0x46bbbb(0x3bb),'id':_0x57f055}));},_0x10e565[_0x36f25f][_0x5128cb(0x7fa)]=()=>{var _0x414f2e=_0x5128cb;try{var _0x122091=_0x539db3[_0x414f2e(0x8a3)][_0x414f2e(0x854)](_0x10e565[_0x36f25f]);_0x122091>-0x1&&_0x539db3[_0x414f2e(0x8a3)][_0x414f2e(0x540)](_0x122091,0x1);}catch(_0x5d92ae){errorlog(_0x5d92ae);}log('Transfer\x20ended'),_0x10e565[_0x36f25f]=null,delete _0x10e565[_0x36f25f];var _0x553d03=![];for(var _0x42742e=0x0;_0x42742e<_0x539db3[_0x414f2e(0x8a3)]['length'];_0x42742e++){if(_0x414f2e(0x578)in _0x539db3[_0x414f2e(0x8a3)][_0x42742e]&&_0x539db3[_0x414f2e(0x8a3)][_0x42742e]['contentType']=='chunks'){_0x553d03=!![];break;}}if(_0x553d03)try{_0x5d0526[_0x414f2e(0x69b)]();}catch(_0x40c15e){}},_0x10e565[_0x36f25f]['onmessage']=_0x382d77=>{var _0x1cb0bf=_0x5128cb;if(_0x382d77[_0x1cb0bf(0x4b6)])try{var _0x112cb7=JSON[_0x1cb0bf(0x70e)](_0x382d77[_0x1cb0bf(0x4b6)]);_0x112cb7['kf']&&(log(_0x1cb0bf(0x5fd)),_0x5d0526[_0x1cb0bf(0x458)]=!![]);}catch(_0x22cc00){}},_0x539db3[_0x5128cb(0x8a3)][_0x5128cb(0x6d6)](_0x10e565[_0x36f25f]);},_0x539db3[_0x173334(0x2c7)]=async function(_0xd15078,_0x2171d4,_0x1fb538){var _0x38869c=_0x173334;log(_0x38869c(0x333));var _0x474b9f=_0x1fb538;_0x474b9f[_0x38869c(0x909)]='arraybuffer';var _0x4173ad='',_0x272485=0x0,_0x3019da=![],_0x1e7e20=![],_0x260853=0x0,_0x30f724={};_0x474b9f[_0x38869c(0x918)]=_0x338ca4=>{var _0x17115c=_0x38869c;log(_0x17115c(0x34b));},_0x474b9f['onmessage']=_0x551f24=>{var _0x3c8f3c=_0x38869c;if(!_0x3019da)try{_0x3019da=JSON[_0x3c8f3c(0x70e)](_0x551f24['data']);if(_0x3019da['type']=='filetransfer'){var {readable:_0xcc7241,writable:_0x13fb94}=new TransformStream({'transform':(_0x1fff6b,_0x2faa73)=>_0x1fff6b['arrayBuffer']()[_0x3c8f3c(0x1f1)](_0x328daf=>_0x2faa73['enqueue'](new Uint8Array(_0x328daf)))});_0x30f724[_0x3c8f3c(0x893)]=_0x13fb94[_0x3c8f3c(0x550)]();;_0xcc7241['pipeTo'](streamSaver[_0x3c8f3c(0x689)](_0x3019da[_0x3c8f3c(0x168)]));for(var _0x4a2cb3=0x0;_0x4a2cb3{var _0x1d6afc=_0x38869c;_0x260853<=0x0&&(_0x30f724[_0x1d6afc(0x893)]&&setTimeout(function(_0x321324,_0x95a482){var _0x4adefb=_0x1d6afc;_0x95a482<=0x0?(_0x321324[_0x4adefb(0x7c0)](),_0x321324=null):setTimeout(function(_0x81fa27,_0x38e706){_0x81fa27['close'](),_0x81fa27=null;},0x1388,_0x321324);},0x3e8,_0x30f724[_0x1d6afc(0x893)],_0x260853));_0x474b9f=null;return;};return;};async function _0x23c49e(_0x4f9167,_0x3c1415=![]){var _0xe356a0=_0x173334;_0x4f9167['decoder'][_0xe356a0(0x4b3)](_0x4f9167[_0xe356a0(0x62d)][_0xe356a0(0x686)]());if(_0x4f9167[_0xe356a0(0x8c7)]===null&&!_0x3c1415)return;_0x4f9167[_0xe356a0(0x8c7)]=setTimeout(function(_0x214570){_0x23c49e(_0x214570);},0x21,_0x4f9167);}return _0x539db3['recieveChunkedStream']=async function(_0x35dcf8,_0xa8ce9d,_0x47370a){var _0x1b1ab9=_0x173334;log('Created\x20transfer\x20channel');var _0x2e7146=_0x47370a;_0x2e7146[_0x1b1ab9(0x909)]=_0x1b1ab9(0x69e);var _0x937622='',_0x18623a=0x0,_0x9bf541=![],_0x4657fa=![],_0x15889c={};_0x2e7146[_0x1b1ab9(0x918)]=_0x48b3a2=>{var _0x618658=_0x1b1ab9;log(_0x618658(0x34b)),_0x539db3[_0x618658(0x51f)][_0xa8ce9d][_0x618658(0x27b)][_0x618658(0x547)]={};},_0x2e7146[_0x1b1ab9(0x7fa)]=async function(_0x182d24){var _0x1356ab=_0x1b1ab9;if(_0x15889c[_0x1356ab(0x849)]){if(_0x15889c[_0x1356ab(0x792)][_0x1356ab(0x293)]){await delay(0x3e8);try{await _0x15889c[_0x1356ab(0x792)][_0x1356ab(0x293)]();}catch(_0x38c1be){}}}_0x2e7146=null;_0x539db3['rpcs'][_0xa8ce9d]&&(_0x539db3[_0x1356ab(0x51f)][_0xa8ce9d]['stats'][_0x1356ab(0x547)]=_0x1356ab(0x41e));return;};async function _0x3a8783(){var _0x54f58a=_0x1b1ab9,_0x4f8c67=await window[_0x54f58a(0x8d2)]({'startIn':_0x54f58a(0x4b2),'suggestedName':_0x54f58a(0x500),'types':[{'description':_0x54f58a(0x398),'accept':{'video/webm':['.webm']}}]}),_0x2dcee7=await _0x4f8c67[_0x54f58a(0x1a4)]();return _0x15889c[_0x54f58a(0x3a0)][_0x54f58a(0x58c)]=_0x2dcee7,_0x15889c['videoWriter']=new WebMWriter(_0x15889c['writer_config']),_0x15889c[_0x54f58a(0x792)][_0x54f58a(0x293)]=async function(){var _0x2b582d=_0x54f58a;_0x15889c['videoElement']['stopWriter']=![],clearInterval(_0x15889c[_0x2b582d(0x3b8)]),await _0x15889c[_0x2b582d(0x849)][_0x2b582d(0x79b)](),_0x15889c[_0x2b582d(0x3a0)][_0x2b582d(0x58c)][_0x2b582d(0x7c0)]();},_0x15889c['videoWriter'];}_0x2e7146['onmessage']=async function(_0x3f57d4){var _0x2e2752=_0x1b1ab9;if(!_0x9bf541)try{_0x9bf541=JSON[_0x2e2752(0x70e)](_0x3f57d4[_0x2e2752(0x4b6)]);if(_0x9bf541[_0x2e2752(0x373)]==_0x2e2752(0x790)){log(_0x2e2752(0x2fc)),log(_0x9bf541),_0x15889c['UUID']=_0xa8ce9d,_0x15889c[_0x2e2752(0x533)]=0x0,_0x15889c[_0x2e2752(0x869)]=0x2,_0x15889c['time']=Date[_0x2e2752(0x5a8)](),_0x15889c['dc']=_0x2e7146,_0x15889c['id']=_0x9bf541['id'],_0x15889c[_0x2e2752(0x3a0)]={},_0x15889c[_0x2e2752(0x3a0)][_0x2e2752(0x81e)]=![],_0x15889c[_0x2e2752(0x3a0)][_0x2e2752(0x6e1)]=![],_0x15889c[_0x2e2752(0x49f)]=![],_0x15889c[_0x2e2752(0x638)]=![];_0x9bf541['configVideo']&&(_0x15889c[_0x2e2752(0x49f)]={},_0x15889c['stream_configVideo'][_0x2e2752(0x5f0)]=_0x9bf541[_0x2e2752(0x301)][_0x2e2752(0x5f0)]+''||_0x2e2752(0x3c9),_0x15889c[_0x2e2752(0x49f)][_0x2e2752(0x165)]=_0x9bf541[_0x2e2752(0x301)]['height']+''||_0x2e2752(0x8e9),_0x15889c[_0x2e2752(0x49f)][_0x2e2752(0x2af)]=_0x9bf541[_0x2e2752(0x301)][_0x2e2752(0x2af)]||_0x2e2752(0x516),_0x15889c[_0x2e2752(0x3a0)][_0x2e2752(0x81e)]=!![],_0x15889c[_0x2e2752(0x3a0)][_0x2e2752(0x5f0)]=parseInt(_0x15889c['stream_configVideo'][_0x2e2752(0x5f0)]),_0x15889c[_0x2e2752(0x3a0)]['height']=parseInt(_0x15889c[_0x2e2752(0x49f)][_0x2e2752(0x165)]),_0x9bf541[_0x2e2752(0x301)][_0x2e2752(0x2af)]=='vp09.00.10.08'?_0x15889c[_0x2e2752(0x3a0)]['codec']=_0x2e2752(0x553):_0x15889c['writer_config'][_0x2e2752(0x2af)]='VP9',_0x539db3[_0x2e2752(0x51f)][_0xa8ce9d][_0x2e2752(0x27b)][_0x2e2752(0x319)]=_0x9bf541[_0x2e2752(0x301)]);_0x9bf541[_0x2e2752(0x3ef)]&&(_0x15889c[_0x2e2752(0x638)]=_0x9bf541[_0x2e2752(0x3ef)],_0x15889c['writer_config'][_0x2e2752(0x6e1)]=!![],_0x15889c[_0x2e2752(0x3a0)][_0x2e2752(0x23f)]=_0x9bf541['configAudio'][_0x2e2752(0x25b)]||0xbb80,_0x15889c[_0x2e2752(0x3a0)][_0x2e2752(0x431)]=_0x9bf541[_0x2e2752(0x3ef)][_0x2e2752(0x8c3)]||0x1,_0x539db3[_0x2e2752(0x51f)][_0xa8ce9d][_0x2e2752(0x27b)][_0x2e2752(0x864)]=_0x9bf541[_0x2e2752(0x3ef)]);_0x15889c['buffer']=![],_0x15889c[_0x2e2752(0x792)]=createVideoElement(),_0x15889c[_0x2e2752(0x792)]['autoplay']=!![],_0x15889c[_0x2e2752(0x792)][_0x2e2752(0x6f5)]=![],_0x15889c['videoElement'][_0x2e2752(0x7af)]('playsinline',''),_0x15889c[_0x2e2752(0x792)][_0x2e2752(0x7a4)][_0x2e2752(0x5f9)]=_0xa8ce9d,_0x15889c['videoElement']['chunkedtransfer']=!![],_0x15889c[_0x2e2752(0x792)]['srcObject']=new MediaStream(),_0x15889c[_0x2e2752(0x849)]=![],_0x15889c[_0x2e2752(0x82c)]=![],_0x15889c[_0x2e2752(0x52d)]=![],_0x15889c[_0x2e2752(0x636)]=![],_0x15889c[_0x2e2752(0x81e)]=![],_0x15889c[_0x2e2752(0x6e1)]=![];_0x15889c[_0x2e2752(0x49f)]&&(_0x15889c[_0x2e2752(0x52d)]={'output':_0x4217d4=>{var _0x35497f=_0x2e2752;_0x15889c[_0x35497f(0x81e)][_0x35497f(0x6c7)][_0x35497f(0x436)](_0x4217d4);},'error':_0x1ef2e9=>{var _0x46cddb=_0x2e2752;_0x15889c['video'][_0x46cddb(0x531)]['state']=='closed'?warnlog(_0x46cddb(0x685)):errorlog(_0x1ef2e9[_0x46cddb(0x4a0)]);}},_0x15889c[_0x2e2752(0x81e)]={},_0x15889c[_0x2e2752(0x81e)]['generator']=new MediaStreamTrackGenerator({'kind':'video'}),_0x15889c[_0x2e2752(0x81e)]['stream']=new MediaStream([_0x15889c[_0x2e2752(0x81e)][_0x2e2752(0x2ea)]]),_0x15889c[_0x2e2752(0x81e)]['frameWriter']=_0x15889c[_0x2e2752(0x81e)]['generator'][_0x2e2752(0x816)][_0x2e2752(0x550)](),_0x15889c[_0x2e2752(0x81e)][_0x2e2752(0x531)]=new VideoDecoder(_0x15889c[_0x2e2752(0x52d)]),_0x15889c[_0x2e2752(0x81e)][_0x2e2752(0x531)][_0x2e2752(0x6d5)](_0x15889c[_0x2e2752(0x49f)]),_0x15889c[_0x2e2752(0x81e)][_0x2e2752(0x62d)]=[],_0x15889c[_0x2e2752(0x81e)]['nextQueue']=null,_0x15889c['videoElement'][_0x2e2752(0x2b5)][_0x2e2752(0x233)](_0x15889c['video'][_0x2e2752(0x12e)][_0x2e2752(0x82a)]()[0x0]));_0x15889c['stream_configAudio']&&(_0x15889c['init_audio']={'output':_0x3f82c9=>{var _0x44814d=_0x2e2752;_0x15889c[_0x44814d(0x6e1)][_0x44814d(0x6c7)][_0x44814d(0x436)](_0x3f82c9);},'error':_0x50c031=>{var _0x27000e=_0x2e2752;_0x15889c[_0x27000e(0x6e1)]['decoder'][_0x27000e(0xf5)]==_0x27000e(0x749)?warnlog(_0x27000e(0x685)):errorlog(_0x50c031[_0x27000e(0x4a0)]);}},_0x15889c[_0x2e2752(0x6e1)]={},_0x15889c[_0x2e2752(0x6e1)][_0x2e2752(0x2ea)]=new MediaStreamTrackGenerator({'kind':'audio'}),_0x15889c[_0x2e2752(0x6e1)][_0x2e2752(0x12e)]=new MediaStream([_0x15889c[_0x2e2752(0x6e1)][_0x2e2752(0x2ea)]]),_0x15889c[_0x2e2752(0x6e1)]['frameWriter']=_0x15889c[_0x2e2752(0x6e1)][_0x2e2752(0x2ea)]['writable']['getWriter'](),_0x15889c[_0x2e2752(0x6e1)][_0x2e2752(0x531)]=new AudioDecoder(_0x15889c[_0x2e2752(0x636)]),_0x15889c[_0x2e2752(0x6e1)][_0x2e2752(0x531)][_0x2e2752(0x6d5)](_0x15889c['stream_configAudio']),_0x15889c['audio'][_0x2e2752(0x62d)]=[],_0x15889c['audio'][_0x2e2752(0x8c7)]=null,_0x15889c[_0x2e2752(0x6e1)]['stream']['getAudioTracks']()['forEach'](_0x2625c5=>{var _0x105008=_0x2e2752;_0x15889c['videoElement'][_0x105008(0x2b5)][_0x105008(0x233)](_0x2625c5);}));log(_0x15889c),_0x15889c[_0x2e2752(0x858)]=![],_0x15889c[_0x2e2752(0x4e6)]=![],_0x15889c[_0x2e2752(0x313)]=0x0,_0x15889c[_0x2e2752(0x792)][_0x2e2752(0x60b)]('error',function(_0x256605){errorlog(_0x256605);}),_0x15889c['videoElement'][_0x2e2752(0x45f)]=_0x3a8783,_0x15889c['videoElement'][_0x2e2752(0x55e)]=function(){updateMixer();},_0x15889c[_0x2e2752(0x1f3)]=0x2;_0x9bf541[_0x2e2752(0x1f3)]&&(_0x15889c[_0x2e2752(0x1f3)]=parseFloat(_0x9bf541['chunkTime'])||0x2);_0x539db3['rpcs'][_0xa8ce9d]['streamSrc']=_0x15889c['videoElement'][_0x2e2752(0x2b5)],_0x539db3['rpcs'][_0xa8ce9d][_0x2e2752(0x792)]=_0x15889c[_0x2e2752(0x792)],setupIncomingVideoTracking(_0x539db3[_0x2e2752(0x51f)][_0xa8ce9d][_0x2e2752(0x792)],_0xa8ce9d);if(_0x15889c[_0x2e2752(0x6e1)]&&_0x15889c['video'])updateIncomingVideoElement(_0xa8ce9d);else{if(_0x15889c[_0x2e2752(0x81e)])updateIncomingVideoElement(_0xa8ce9d,!![],![]);else _0x15889c[_0x2e2752(0x6e1)]&&updateIncomingVideoElement(_0xa8ce9d,![],!![]);}_0x15889c[_0x2e2752(0x411)]=async function(_0x5776c2){var _0x24e877=_0x2e2752;_0x539db3[_0x24e877(0x51f)][_0xa8ce9d][_0x24e877(0x27b)][_0x24e877(0x547)]['my_time']=_0x5776c2[_0x24e877(0x2a2)]/0xf4240;if(_0x5776c2['type']=='audio'){await _0x15889c[_0x24e877(0x487)](_0x5776c2);return;}try{_0x5776c2=new EncodedVideoChunk(_0x5776c2);}catch(_0x33cbdf){errorlog(_0x33cbdf),errorlog(_0x5776c2);return;}if(_0x15889c['videoWriter']&&_0x15889c[_0x24e877(0x792)][_0x24e877(0x293)]){if(!_0x15889c['header']&&_0x5776c2[_0x24e877(0x373)]!==_0x24e877(0x281))log(_0x24e877(0x87a)),log(_0x5776c2),!_0x15889c[_0x24e877(0x30d)]&&(_0x2e7146[_0x24e877(0x37d)](JSON['stringify']({'kf':!![]})),_0x15889c[_0x24e877(0x30d)]=setTimeout(function(){var _0x128745=_0x24e877;clearTimeout(_0x15889c[_0x128745(0x30d)]),_0x15889c[_0x128745(0x30d)]=null;},0x3e8));else!_0x15889c[_0x24e877(0x4e6)]?(_0x15889c[_0x24e877(0x4e6)]=Date['now'](),_0x15889c[_0x24e877(0x849)][_0x24e877(0x4f9)](_0x5776c2),log(_0x24e877(0x130)),_0x539db3['director']&&(_0x15889c['updateTime']=setInterval(function(_0x8e9fbe){var _0x341d12=_0x24e877,_0xa57f0a=(Date[_0x341d12(0x5a8)]()-_0x15889c[_0x341d12(0x4e6)])/0x3e8,_0x365172=Math[_0x341d12(0x579)](_0xa57f0a/0x3c),_0x44770d=Math[_0x341d12(0x579)](_0xa57f0a-_0x365172*0x3c);try{document[_0x341d12(0x7c8)](_0x341d12(0x8fc)+_0x8e9fbe+'\x27]')[_0x341d12(0x5fc)]=_0x341d12(0x5d5)+_0x365172+_0x341d12(0x752)+zpadTime(_0x44770d)+'s';}catch(_0x3a807b){log('not\x20record\x20button\x20detected;\x20can\x27t\x20update\x20time\x20since\x20started\x20recording');}},0x3e8,_0xa8ce9d))):_0x15889c[_0x24e877(0x849)][_0x24e877(0x4f9)](_0x5776c2);}_0x15889c[_0x24e877(0x858)]&&_0x15889c['video']&&_0x15889c['video'][_0x24e877(0x531)][_0x24e877(0xf5)]===_0x24e877(0x749)&&(warnlog(_0x24e877(0x231)),_0x15889c[_0x24e877(0x858)]=![],_0x15889c[_0x24e877(0x81e)][_0x24e877(0x531)]=new VideoDecoder(_0x15889c['init_video']),await _0x15889c[_0x24e877(0x81e)][_0x24e877(0x531)]['configure'](_0x15889c[_0x24e877(0x49f)]),_0x15889c[_0x24e877(0x858)]=![]);if(_0x15889c['playbackheader']||_0x5776c2[_0x24e877(0x373)]==='key'){_0x15889c[_0x24e877(0x858)]=!![];_0x5776c2[_0x24e877(0x373)]===_0x24e877(0x281)?_0x15889c[_0x24e877(0x313)]=0x0:_0x15889c[_0x24e877(0x313)]+=0x1;try{_0x539db3[_0x24e877(0x845)]||_0x539db3[_0x24e877(0x1c0)]?(clearTimeout(_0x15889c['video'][_0x24e877(0x8c7)]),_0x15889c['video']['queue'][_0x24e877(0x425)]?_0x5776c2['timestamp']-_0x15889c[_0x24e877(0x81e)]['queue'][0x0][_0x24e877(0x2a2)]>0x3e8*((_0x539db3[_0x24e877(0x845)]||0x0)+(_0x539db3[_0x24e877(0x1c0)]||0x0))?(_0x23c49e(_0x15889c['video'],!![]),_0x15889c[_0x24e877(0x81e)][_0x24e877(0x62d)][_0x24e877(0x6d6)](_0x5776c2)):_0x15889c[_0x24e877(0x81e)][_0x24e877(0x62d)]['push'](_0x5776c2):_0x15889c[_0x24e877(0x81e)][_0x24e877(0x62d)]['push'](_0x5776c2)):_0x15889c[_0x24e877(0x81e)]['decoder'][_0x24e877(0x4b3)](_0x5776c2);}catch(_0x1e9078){errorlog(_0x1e9078),_0x15889c[_0x24e877(0x858)]=![];}}!_0x15889c[_0x24e877(0x858)]&&(!_0x15889c[_0x24e877(0x30d)]&&(_0x2e7146['send'](JSON[_0x24e877(0x924)]({'kf':!![]})),_0x15889c[_0x24e877(0x30d)]=setTimeout(function(){var _0x4ef98d=_0x24e877;clearTimeout(_0x15889c[_0x4ef98d(0x30d)]),_0x15889c[_0x4ef98d(0x30d)]=null;},0x3e8)));},_0x15889c[_0x2e2752(0x487)]=async function(_0x32e59c){var _0x7349ba=_0x2e2752;if(!_0x15889c['audio']){errorlog(_0x7349ba(0x534));return;}try{_0x32e59c[_0x7349ba(0x373)]='key',_0x32e59c=new EncodedAudioChunk(_0x32e59c);}catch(_0x5b5441){return;}_0x15889c['videoWriter']&&_0x15889c[_0x7349ba(0x4e6)]&&_0x15889c['videoElement']['stopWriter']&&_0x15889c['videoWriter'][_0x7349ba(0x4f9)](_0x32e59c),_0x15889c[_0x7349ba(0x6e1)][_0x7349ba(0x531)][_0x7349ba(0xf5)]===_0x7349ba(0x749)&&(_0x15889c[_0x7349ba(0x6e1)][_0x7349ba(0x531)]=new AudioDecoder(_0x15889c[_0x7349ba(0x636)]),_0x15889c[_0x7349ba(0x6e1)][_0x7349ba(0x531)]['configure'](_0x15889c[_0x7349ba(0x638)])),_0x539db3[_0x7349ba(0x845)]||_0x539db3['sync']?(clearTimeout(_0x15889c[_0x7349ba(0x6e1)]['nextQueue']),_0x15889c[_0x7349ba(0x6e1)]['queue'][_0x7349ba(0x425)]?_0x32e59c[_0x7349ba(0x2a2)]-_0x15889c['audio']['queue'][0x0][_0x7349ba(0x2a2)]>(_0x539db3[_0x7349ba(0x845)]||0x0)+(_0x539db3['sync']||0x0)?(_0x23c49e(_0x15889c[_0x7349ba(0x6e1)]),_0x15889c['audio'][_0x7349ba(0x62d)][_0x7349ba(0x6d6)](_0x32e59c)):_0x15889c[_0x7349ba(0x6e1)][_0x7349ba(0x62d)][_0x7349ba(0x6d6)](_0x32e59c):_0x15889c[_0x7349ba(0x6e1)][_0x7349ba(0x62d)]['push'](_0x32e59c)):_0x15889c[_0x7349ba(0x6e1)][_0x7349ba(0x531)]['decode'](_0x32e59c);},transferList[_0x2e2752(0x6d6)](_0x15889c),_0x4657fa=transferList[_0x2e2752(0x425)]-0x1,updateDownloadLink(_0x4657fa);}else errorlog(_0x9bf541);return;}catch(_0x44bb78){errorlog(_0x44bb78);}try{var _0xada387=_0x3f57d4[_0x2e2752(0x4b6)];if(typeof _0xada387==_0x2e2752(0x77f)){if(_0x15889c[_0x2e2752(0x845)]){var _0x43d48a=new Int8Array(_0xada387['buffer']);_0x15889c['buffer']=![],await _0x15889c[_0x2e2752(0x411)]({'data':_0x43d48a,'timestamp':_0x15889c[_0x2e2752(0x82c)][0x0],'type':_0x15889c['frameMeta'][0x1]});}_0x15889c[_0x2e2752(0x82c)]=JSON[_0x2e2752(0x70e)](_0xada387);}else{try{if(_0xada387[_0x2e2752(0x310)]>=0x40000){if(_0x15889c['buffer']){_0xada387=new Int8Array(_0xada387);var _0x43d48a=new Int8Array(_0x15889c[_0x2e2752(0x845)][_0x2e2752(0x425)]+_0xada387[_0x2e2752(0x425)]);_0x43d48a[_0x2e2752(0x7b2)](_0x15889c['buffer']),_0x43d48a[_0x2e2752(0x7b2)](_0xada387,_0x15889c[_0x2e2752(0x845)][_0x2e2752(0x425)]),_0x15889c['buffer']=_0x43d48a;}else _0x15889c[_0x2e2752(0x845)]=new Int8Array(_0xada387);return;}else{if(_0x15889c['buffer']){_0xada387=new Int8Array(_0xada387);var _0x43d48a=new Int8Array(_0x15889c[_0x2e2752(0x845)][_0x2e2752(0x425)]+_0xada387['length']);_0x43d48a[_0x2e2752(0x7b2)](_0x15889c['buffer']),_0x43d48a[_0x2e2752(0x7b2)](_0xada387,_0x15889c['buffer']['length']),_0x15889c[_0x2e2752(0x845)]=![],await _0x15889c[_0x2e2752(0x411)]({'data':_0x43d48a,'timestamp':_0x15889c[_0x2e2752(0x82c)][0x0],'type':_0x15889c[_0x2e2752(0x82c)][0x1]});}else await _0x15889c[_0x2e2752(0x411)]({'data':new Uint8Array(_0xada387),'timestamp':_0x15889c[_0x2e2752(0x82c)][0x0],'type':_0x15889c['frameMeta'][0x1]});}}catch(_0x454b3c){errorlog(_0x454b3c);}return;}}catch(_0x5c8513){errorlog(_0x5c8513);}};return;},_0x539db3['setupIncoming']=async function(_0x44ffb5){var _0x171001=_0x173334;log('SETUP\x20INCOMING');var _0x37dc6c=_0x44ffb5[_0x171001(0x5f9)];if(_0x37dc6c in _0x539db3[_0x171001(0x51f)]){if(_0x171001(0x43a)in _0x44ffb5){if(_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x43a)]==_0x44ffb5['session']){log(_0x171001(0x6d4));return;}_0x539db3[_0x171001(0x3a8)](_0x37dc6c);}}else log(_0x171001(0x6b7));try{for(var _0x45761a in _0x539db3[_0x171001(0x51f)]){_0x539db3['rpcs'][_0x45761a][_0x171001(0x562)]==_0x44ffb5[_0x171001(0x562)]&&(_0x539db3[_0x171001(0x51f)][_0x45761a]['videoElement']&&(_0x539db3[_0x171001(0x51f)][_0x45761a]['videoElement'][_0x171001(0x5c1)][_0x171001(0x6ba)]=_0x171001(0x1e0)),_0x539db3[_0x171001(0x3a8)](_0x45761a),_0x45761a!==_0x37dc6c&&(_0x45761a in _0x539db3['pcs']&&(_0x44ffb5[_0x171001(0x43a)]&&_0x44ffb5[_0x171001(0x43a)][_0x171001(0x7b5)](0x0,0x6)!==_0x539db3['loadoutID']?(warnlog('CLOSING\x20SECONDARY\x20CONNECTION;\x20matched\x20stream\x20ID\x20has\x20re-connected'),log(_0x171001(0x6b4)),_0x539db3[_0x171001(0x1ac)](_0x45761a,![])):warnlog(_0x171001(0x300)))));}document[_0x171001(0x1a8)]('mainmenu')&&document[_0x171001(0x1a8)](_0x171001(0x3fe))[_0x171001(0x3c6)]['removeChild'](document[_0x171001(0x1a8)]('mainmenu'));}catch(_0x4bb2af){errorlog(_0x4bb2af);}if(_0x539db3[_0x171001(0x92b)]!==![]){if(Object['keys'](_0x539db3[_0x171001(0x51f)])[_0x171001(0x425)]>=_0x539db3['maxpublishers']){warnlog(_0x171001(0x220));return;}}else{if(_0x539db3[_0x171001(0x8d4)]!==![]){if(Object[_0x171001(0x39b)](_0x539db3[_0x171001(0x51f)])[_0x171001(0x425)]+Object[_0x171001(0x39b)](_0x539db3[_0x171001(0x77a)])[_0x171001(0x425)]>=_0x539db3[_0x171001(0x8d4)]){warnlog('Publisher\x20will\x20be\x20ignored\x20due\x20to\x20max\x20connections\x20already\x20hit');return;}}}if(_0x539db3[_0x171001(0x62d)]){if(_0x539db3[_0x171001(0x29a)])!(_0x37dc6c in _0x539db3[_0x171001(0x77a)])&&_0x539db3['offerSDP'](_0x37dc6c);else{if(_0x539db3[_0x171001(0x3a6)][_0x171001(0x854)](_0x37dc6c)==-0x1)return;}}!_0x539db3[_0x171001(0x669)]&&await chooseBestTURN();try{_0x539db3[_0x171001(0x51f)][_0x37dc6c]=new RTCPeerConnection(_0x539db3[_0x171001(0x669)]);}catch(_0x411986){!_0x539db3[_0x171001(0x50b)]&&warnUser(_0x171001(0x148));errorlog(_0x411986);return;}if(_0x539db3['security']){if(Object[_0x171001(0x39b)](_0x539db3[_0x171001(0x51f)])[_0x171001(0x425)]>0x1){warnlog('TOO\x20MANY\x20PUBLISHING\x20PEERS'),log(_0x539db3[_0x171001(0x51f)]),delete _0x539db3[_0x171001(0x51f)][_0x37dc6c],updateUserList();return;}else warnlog(_0x171001(0x4ec));}_0x44ffb5['streamID']in _0x539db3[_0x171001(0x824)]&&delete _0x539db3[_0x171001(0x824)][_0x44ffb5['streamID']];try{_0x539db3['rpcs'][_0x37dc6c][_0x171001(0x562)]=_0x44ffb5[_0x171001(0x562)];}catch(_0x265861){errorlog(_0x265861);return;}_0x44ffb5[_0x171001(0x43a)]?_0x539db3['rpcs'][_0x37dc6c]['session']=_0x44ffb5['session']:_0x539db3['rpcs'][_0x37dc6c][_0x171001(0x43a)]=null;_0x539db3['rpcs'][_0x37dc6c][_0x171001(0x496)]=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x731)]=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x2b2)]=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c]['allowGraphs']=![],_0x539db3['rpcs'][_0x37dc6c][_0x171001(0x27b)]={},_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x852)]=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x27b)]['Audio_Loudness']=![],_0x539db3['rpcs'][_0x37dc6c][_0x171001(0x71e)]=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x5f3)]=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x919)]=null,_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x8d8)]=-0x1,_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x853)]=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c]['channelOffset']=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x472)]=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c]['targetBandwidth']=-0x1,_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x79f)]=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x792)]=![],_0x539db3['rpcs'][_0x37dc6c][_0x171001(0x306)]=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x932)]=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x445)]=[],_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x85f)]=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x5cd)]=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x5b6)]=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x915)]=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x650)]=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c]['remoteMuteState']=![],_0x539db3['rpcs'][_0x37dc6c]['remoteMuteElement']=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x5a3)]=null,_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x7cb)]=null,_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x769)]=null,_0x539db3[_0x171001(0x51f)][_0x37dc6c]['mutedStateScene']=null,_0x539db3[_0x171001(0x51f)][_0x37dc6c]['delayNode']={},_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x875)]=![],_0x539db3['rpcs'][_0x37dc6c][_0x171001(0x4d3)]=![],_0x539db3['rpcs'][_0x37dc6c][_0x171001(0x13e)]=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c]['scaleWidth']=![],_0x539db3['rpcs'][_0x37dc6c][_0x171001(0x4aa)]=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x112)]=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x17e)]=null,_0x539db3['rpcs'][_0x37dc6c][_0x171001(0xfa)]=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x648)]=![],_0x539db3['rpcs'][_0x37dc6c][_0x171001(0x29a)]=null,_0x539db3[_0x171001(0x51f)][_0x37dc6c]['directorVideoMuted']=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x24d)]=0x64,_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x480)]=0x0,_0x539db3['rpcs'][_0x37dc6c]['nackCount']=0x0,_0x539db3[_0x171001(0x51f)][_0x37dc6c]['settings']=![],_0x539db3['rpcs'][_0x37dc6c][_0x171001(0x8b8)]='1',_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x591)]='1',_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x377)]=![],_0x539db3['rpcs'][_0x37dc6c][_0x171001(0x726)]=0x0,_0x539db3[_0x171001(0x51f)][_0x37dc6c]['label']=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x670)]=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c]['canvasCtx']=null,_0x539db3['rpcs'][_0x37dc6c][_0x171001(0x766)]=null,_0x539db3[_0x171001(0x51f)][_0x37dc6c]['inboundAudioPipeline']={},_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x4b0)]=![],_0x539db3['rpcs'][_0x37dc6c][_0x171001(0x1fa)]=![],_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x488)]=Date[_0x171001(0x5a8)](),_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x844)]=_0x539db3['wssid'];(_0x539db3[_0x171001(0x4fe)]==0x2||_0x539db3[_0x171001(0x4fe)]==0x4)&&(_0x539db3['rpcs'][_0x37dc6c][_0x171001(0x731)]=!![]);if(_0x539db3[_0x171001(0x74f)]){var _0x187e36=createRichVideoElement(_0x37dc6c);_0x187e36[_0x171001(0x5c1)][_0x171001(0x6ba)]=_0x171001(0x756);}if(_0x539db3['director']){if(_0x539db3[_0x171001(0x106)]&&_0x171001(0x590)in _0x44ffb5&&_0x44ffb5[_0x171001(0x590)]!==![]){}else{var _0x19ecfd=soloLinkGenerator(_0x539db3['rpcs'][_0x37dc6c]['streamID']);createControlBox(_0x37dc6c,_0x19ecfd,_0x539db3[_0x171001(0x51f)][_0x37dc6c]['streamID']);}}_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x5f9)]=_0x37dc6c;if(_0x171001(0x562)in _0x44ffb5){_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x562)]=_0x44ffb5[_0x171001(0x562)];try{if(_0x539db3[_0x171001(0x37b)]){if(_0x539db3[_0x171001(0x37b)]['includes'](_0x539db3[_0x171001(0x51f)][_0x37dc6c]['streamID'])){if(_0x539db3[_0x171001(0x549)]!==![]){let _0x377e05=_0x539db3[_0x171001(0x37b)][_0x171001(0x854)](_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x562)]);_0x539db3[_0x171001(0x549)][_0x171001(0x425)]>_0x377e05&&(_0x539db3['rpcs'][_0x37dc6c][_0x171001(0x79f)]=parseInt(_0x539db3[_0x171001(0x549)][_0x377e05]),_0x539db3['rpcs'][_0x37dc6c][_0x171001(0x79f)]<=0x0&&(_0x539db3[_0x171001(0x51f)][_0x37dc6c]['manualBandwidth']=![]));}}}}catch(_0x33e20c){errorlog(_0x33e20c);}}_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x7fa)]=function(_0x2327d3){var _0x4a092c=_0x171001;_0x539db3[_0x4a092c(0x3a8)](_0x37dc6c);},_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x656)]=null,_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x40c)]=[],_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x65c)]=function(_0x33ab00){var _0x4826ed=_0x171001;if(_0x33ab00[_0x4826ed(0x663)]==null){log(_0x4826ed(0x895));return;}try{if(_0x539db3['icefilter']){if(_0x33ab00[_0x4826ed(0x663)][_0x4826ed(0x663)][_0x4826ed(0x854)](_0x539db3[_0x4826ed(0x86c)])===-0x1){log(_0x4826ed(0x597));return;}else log(_0x33ab00[_0x4826ed(0x663)]);}}catch(_0x275ba9){errorlog(_0x275ba9);}if(_0x539db3[_0x4826ed(0x51f)][_0x37dc6c][_0x4826ed(0x656)]!==null){_0x539db3[_0x4826ed(0x51f)][_0x37dc6c]['iceBundle'][_0x4826ed(0x6d6)](_0x33ab00[_0x4826ed(0x663)]);return;}_0x539db3[_0x4826ed(0x51f)][_0x37dc6c][_0x4826ed(0x40c)]['push'](_0x33ab00[_0x4826ed(0x663)]),_0x539db3[_0x4826ed(0x51f)][_0x37dc6c][_0x4826ed(0x656)]=setTimeout(function(){var _0x65e495=_0x4826ed;if(!(_0x37dc6c in _0x539db3[_0x65e495(0x51f)]))return;_0x539db3[_0x65e495(0x51f)][_0x37dc6c]['iceTimer']=null;if(_0x539db3[_0x65e495(0x51f)][_0x37dc6c][_0x65e495(0x40c)]==[])return;var _0x41b486={};_0x41b486[_0x65e495(0x5f9)]=_0x37dc6c,_0x41b486['type']='remote',_0x41b486[_0x65e495(0x651)]=_0x539db3[_0x65e495(0x51f)][_0x37dc6c][_0x65e495(0x40c)],_0x41b486[_0x65e495(0x43a)]=_0x539db3['rpcs'][_0x37dc6c][_0x65e495(0x43a)],_0x539db3['rpcs'][_0x37dc6c]['iceBundle']=[],_0x539db3[_0x65e495(0x39f)]?_0x539db3['encryptMessage'](JSON[_0x65e495(0x924)](_0x41b486[_0x65e495(0x651)]))['then'](function(_0x5286a2){var _0x185137=_0x65e495;_0x41b486[_0x185137(0x651)]=_0x5286a2[0x0],_0x41b486[_0x185137(0x61b)]=_0x5286a2[0x1],_0x539db3['anyrequest'](_0x41b486);})[_0x65e495(0x49b)](errorlog):_0x539db3[_0x65e495(0x2e1)](_0x41b486);},0x190);},_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x57d)]=function(_0x3e820b){var _0x2762dd=_0x171001;switch(this['connectionState']){case'new':log(_0x2762dd(0x346)),log(_0x2762dd(0x4df)),clearInterval(_0x539db3[_0x2762dd(0x51f)][this[_0x2762dd(0x5f9)]][_0x2762dd(0x5a3)]);case _0x2762dd(0x633):log(_0x2762dd(0x633)),log(_0x2762dd(0x8db)),clearInterval(_0x539db3[_0x2762dd(0x51f)][this[_0x2762dd(0x5f9)]][_0x2762dd(0x5a3)]);case _0x2762dd(0x7f7):log(_0x2762dd(0x1a0)),log(_0x2762dd(0x8a4)),clearInterval(_0x539db3[_0x2762dd(0x51f)][this[_0x2762dd(0x5f9)]][_0x2762dd(0x5a3)]);if(_0x539db3[_0x2762dd(0x3a9)]){if(_0x539db3['ws'][_0x2762dd(0x298)]!==0x1){_0x539db3['ws'][_0x2762dd(0x7c0)]();break;}_0x539db3['ws']['close'](),setTimeout(function(){var _0x55a182=_0x2762dd;_0x539db3[_0x55a182(0x50b)]!=!![]&&warnUser(_0x55a182(0x93b));},0x1);}break;case _0x2762dd(0xea):log(_0x2762dd(0x1f9)),warnlog('rpcs\x20onconnectionstatechange\x20Disconnected;\x20retry\x20in\x205s'),clearInterval(_0x539db3[_0x2762dd(0x51f)][this[_0x2762dd(0x5f9)]][_0x2762dd(0x5a3)]);this[_0x2762dd(0x5f9)]in _0x539db3[_0x2762dd(0x51f)]?_0x539db3[_0x2762dd(0x51f)][this['UUID']][_0x2762dd(0x5a3)]=setTimeout(function(_0x3fed24){var _0x112641=_0x2762dd;_0x539db3[_0x112641(0x3a8)](_0x3fed24);},0x1388,this[_0x2762dd(0x5f9)]):log(_0x2762dd(0x7e0));break;case _0x2762dd(0x133):warnlog('FAIL\x20rpcs\x20onconnectionstatechange'),log(_0x2762dd(0x782)),clearInterval(_0x539db3[_0x2762dd(0x51f)][this[_0x2762dd(0x5f9)]][_0x2762dd(0x5a3)]);this['UUID']in _0x539db3[_0x2762dd(0x51f)]?_0x539db3['rpcs'][this[_0x2762dd(0x5f9)]]['closeTimeout']=setTimeout(function(_0x56cef2){var _0x56adc1=_0x2762dd;_0x539db3[_0x56adc1(0x3a8)](_0x56cef2);},0xbb8,this[_0x2762dd(0x5f9)]):log(_0x2762dd(0x7e0));break;case _0x2762dd(0x749):warnlog('RTC\x20closed'),_0x539db3['closeRPC'](this[_0x2762dd(0x5f9)]);break;default:log(_0x2762dd(0x169)),clearInterval(_0x539db3['rpcs'][this['UUID']][_0x2762dd(0x5a3)]);break;}},_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x243)]=function(){var _0x2740e6=_0x171001;try{if(this[_0x2740e6(0x61f)]==_0x2740e6(0x749))errorlog(_0x2740e6(0x685));else{if(this['iceConnectionState']=='disconnected')warnlog('ICE\x20DISCONNECTED'),_0x539db3[_0x2740e6(0x51f)][_0x37dc6c][_0x2740e6(0x8b8)]='0',_0x539db3[_0x2740e6(0x51f)][_0x37dc6c][_0x2740e6(0x792)]['style'][_0x2740e6(0x33c)]='0',_0x539db3[_0x2740e6(0x51f)][_0x37dc6c][_0x2740e6(0x5c0)]=setTimeout(function(_0xc4c025){updateMixer();},0x1f4,_0x37dc6c);else this[_0x2740e6(0x61f)]=='failed'?errorlog(_0x2740e6(0x2a9)):(log('ICE:\x20'+this[_0x2740e6(0x61f)]),_0x539db3[_0x2740e6(0x51f)][_0x37dc6c]['disconnectedTimeout']&&clearTimeout(_0x539db3[_0x2740e6(0x51f)][_0x37dc6c][_0x2740e6(0x5c0)]),_0x539db3[_0x2740e6(0x51f)][_0x37dc6c]['videoElement']&&_0x2740e6(0x33c)in _0x539db3['rpcs'][_0x37dc6c][_0x2740e6(0x792)]['style']?_0x539db3[_0x2740e6(0x51f)][_0x37dc6c][_0x2740e6(0x8b8)]=='0'&&_0x539db3[_0x2740e6(0x51f)][_0x37dc6c][_0x2740e6(0x591)]=='1'?(_0x539db3['rpcs'][_0x37dc6c][_0x2740e6(0x792)][_0x2740e6(0x5c1)][_0x2740e6(0x33c)]='1',_0x539db3[_0x2740e6(0x51f)][_0x37dc6c][_0x2740e6(0x8b8)]='1',updateMixer()):_0x539db3[_0x2740e6(0x51f)][_0x37dc6c][_0x2740e6(0x8b8)]='1':_0x539db3['rpcs'][_0x37dc6c][_0x2740e6(0x8b8)]='1');}}catch(_0x38a459){}},_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x13d)]=function(_0x269a50){var _0x60998d=_0x171001;log(_0x269a50);if(_0x269a50[_0x60998d(0x751)][_0x60998d(0x4bc)]&&_0x269a50['channel'][_0x60998d(0x4bc)]!==_0x60998d(0x46f)){if(_0x539db3[_0x60998d(0x318)][_0x60998d(0x4ee)](_0x539db3['rpcs'][_0x37dc6c][_0x60998d(0x562)]))return;_0x269a50[_0x60998d(0x751)][_0x60998d(0x4bc)]==='chunked'?_0x539db3[_0x60998d(0x76e)](_0x539db3[_0x60998d(0x51f)],_0x37dc6c,_0x269a50[_0x60998d(0x751)]):_0x539db3['recieveFile'](_0x539db3[_0x60998d(0x51f)],_0x37dc6c,_0x269a50[_0x60998d(0x751)]);return;}_0x539db3[_0x60998d(0x51f)][_0x37dc6c][_0x60998d(0x781)]=_0x269a50[_0x60998d(0x751)],_0x539db3[_0x60998d(0x51f)][_0x37dc6c][_0x60998d(0x781)][_0x60998d(0x5f9)]=_0x37dc6c,_0x539db3[_0x60998d(0x51f)][_0x37dc6c]['receiveChannel']['onopen']=_0x5a1e4f=>{var _0x4683ca=_0x60998d,_0x2e2a27={};_0x2e2a27[_0x4683ca(0x80f)]=![],_0x2e2a27[_0x4683ca(0x798)]=![],_0x2e2a27[_0x4683ca(0x264)]=![],_0x2e2a27[_0x4683ca(0x6e1)]=![],_0x2e2a27['video']=![],_0x2e2a27[_0x4683ca(0x610)]=![],_0x2e2a27[_0x4683ca(0x4cc)]=![],_0x2e2a27[_0x4683ca(0x2a6)]=![];try{if(_0x539db3[_0x4683ca(0x2c4)]!==![])_0x539db3[_0x4683ca(0x2c4)][_0x4683ca(0x4ee)](_0x539db3[_0x4683ca(0x51f)][_0x37dc6c][_0x4683ca(0x562)])?_0x2e2a27[_0x4683ca(0x81e)]=!![]:_0x2e2a27[_0x4683ca(0x81e)]=![];else{if(_0x539db3['broadcast']!==![]){if(_0x539db3[_0x4683ca(0x610)]!==null)_0x539db3[_0x4683ca(0x51f)][_0x37dc6c][_0x4683ca(0x562)]===_0x539db3[_0x4683ca(0x610)]?(_0x2e2a27[_0x4683ca(0x610)]=!![],_0x2e2a27[_0x4683ca(0x81e)]=!![]):_0x2e2a27[_0x4683ca(0x81e)]=![];else _0x539db3[_0x4683ca(0x4c3)]&&(_0x37dc6c==_0x539db3['directorUUID']?(_0x2e2a27[_0x4683ca(0x610)]=!![],_0x2e2a27[_0x4683ca(0x81e)]=!![]):_0x2e2a27[_0x4683ca(0x81e)]=![]);}else _0x539db3[_0x4683ca(0x109)]!==![]?_0x539db3[_0x4683ca(0x109)]['includes'](_0x539db3['rpcs'][_0x37dc6c][_0x4683ca(0x562)])?_0x2e2a27[_0x4683ca(0x81e)]=![]:_0x2e2a27[_0x4683ca(0x81e)]=!![]:_0x2e2a27[_0x4683ca(0x81e)]=!![];}_0x539db3['noaudio']!==![]?_0x539db3[_0x4683ca(0x655)]['includes'](_0x539db3[_0x4683ca(0x51f)][_0x37dc6c][_0x4683ca(0x562)])?_0x2e2a27['audio']=!![]:_0x2e2a27[_0x4683ca(0x6e1)]=![]:_0x2e2a27[_0x4683ca(0x6e1)]=!![];_0x539db3[_0x4683ca(0x117)]!==![]?_0x539db3[_0x4683ca(0x117)][_0x4683ca(0x4ee)](_0x539db3[_0x4683ca(0x51f)][_0x37dc6c][_0x4683ca(0x562)])?_0x2e2a27[_0x4683ca(0x264)]=!![]:_0x2e2a27[_0x4683ca(0x264)]=![]:_0x2e2a27['iframe']=!![];if(_0x539db3[_0x4683ca(0x1af)]!==![]){if(_0x539db3['allowScreen']===!![])_0x2e2a27[_0x4683ca(0x2a6)]=!![];else _0x539db3[_0x4683ca(0x1af)][_0x4683ca(0x4ee)](_0x539db3[_0x4683ca(0x51f)][_0x37dc6c][_0x4683ca(0x562)])?_0x2e2a27[_0x4683ca(0x2a6)]=!![]:_0x2e2a27[_0x4683ca(0x2a6)]=![];}else _0x2e2a27[_0x4683ca(0x2a6)]=!![];_0x539db3[_0x4683ca(0x8b7)]!==![]&&(!_0x539db3[_0x4683ca(0x8b7)][_0x4683ca(0x4ee)](_0x539db3[_0x4683ca(0x51f)][_0x37dc6c][_0x4683ca(0x562)])&&(_0x2e2a27[_0x4683ca(0x81e)]=![],_0x2e2a27[_0x4683ca(0x6e1)]=![]));(_0x539db3['midiIn']||_0x539db3[_0x4683ca(0x45a)])&&(_0x2e2a27[_0x4683ca(0x798)]=_0x539db3[_0x4683ca(0xdf)]||_0x539db3[_0x4683ca(0x45a)]);_0x2e2a27[_0x4683ca(0x80f)]=!![];_0x539db3[_0x4683ca(0x416)]&&(_0x2e2a27[_0x4683ca(0x80f)]=![]);_0x539db3[_0x4683ca(0x2af)]&&(_0x539db3[_0x4683ca(0x2af)]==_0x4683ca(0x3c0)||_0x539db3[_0x4683ca(0x2af)]=='images'||_0x539db3[_0x4683ca(0x2af)]==_0x4683ca(0x7db))&&(_0x2e2a27[_0x4683ca(0x4cc)]=!![]);_0x539db3[_0x4683ca(0x10e)]&&(_0x2e2a27[_0x4683ca(0x10e)]=!![]);if(_0x539db3[_0x4683ca(0x318)]['includes'](_0x539db3[_0x4683ca(0x51f)][_0x37dc6c]['streamID'])){warnlog(_0x4683ca(0x649)),_0x2e2a27[_0x4683ca(0x80f)]=![],_0x2e2a27[_0x4683ca(0x798)]=![],_0x2e2a27['iframe']=![],_0x2e2a27[_0x4683ca(0x6e1)]=![],_0x2e2a27[_0x4683ca(0x81e)]=![],_0x2e2a27[_0x4683ca(0x610)]=![],_0x2e2a27['allowwebp']=![];;}}catch(_0x519a16){errorlog(_0x519a16);}try{_0x2e2a27['info']={},_0x2e2a27[_0x4683ca(0x61a)]['label']=_0x539db3['label'],_0x2e2a27[_0x4683ca(0x61a)][_0x4683ca(0x670)]=_0x539db3[_0x4683ca(0x670)],_0x2e2a27[_0x4683ca(0x61a)]['stereo_url']=_0x539db3[_0x4683ca(0x3b4)],_0x2e2a27['info'][_0x4683ca(0x6fe)]=_0x539db3[_0x4683ca(0x419)],_0x2e2a27[_0x4683ca(0x61a)][_0x4683ca(0x3d0)]=_0x539db3[_0x4683ca(0x71f)],_0x2e2a27[_0x4683ca(0x61a)]['codec_url']=_0x539db3['codec'],_0x2e2a27[_0x4683ca(0x61a)][_0x4683ca(0x730)]=_0x539db3['version'],_0x2e2a27[_0x4683ca(0x61a)][_0x4683ca(0x40f)]=_0x539db3[_0x4683ca(0x40f)],_0x2e2a27['info']['enhance_audio']=_0x539db3[_0x4683ca(0x83c)],_0x2e2a27['info'][_0x4683ca(0x6f0)]=_0x539db3[_0x4683ca(0x6f0)],_0x2e2a27[_0x4683ca(0x61a)][_0x4683ca(0x55d)]=_0x539db3['minptime'],_0x2e2a27[_0x4683ca(0x61a)]['maxptime']=_0x539db3[_0x4683ca(0x7bb)];navigator&&navigator[_0x4683ca(0x4f1)]&&(_0x2e2a27[_0x4683ca(0x61a)][_0x4683ca(0x2ab)]=navigator[_0x4683ca(0x4f1)]);navigator&&navigator[_0x4683ca(0x576)]&&(_0x2e2a27[_0x4683ca(0x61a)][_0x4683ca(0x576)]=navigator[_0x4683ca(0x576)]);if(_0x539db3[_0x4683ca(0x746)]===![]){if(window[_0x4683ca(0x352)]){_0x2e2a27['info']['obs']=window[_0x4683ca(0x352)][_0x4683ca(0x634)];try{_0x2e2a27=_0x539db3[_0x4683ca(0x6ec)](_0x2e2a27,_0x37dc6c);}catch(_0x3b58fd){errorlog(_0x3b58fd),warnUser(_0x3b58fd['message']);}}else _0x2e2a27[_0x4683ca(0x61a)][_0x4683ca(0x4d2)]=![];}else _0x2e2a27[_0x4683ca(0x61a)][_0x4683ca(0x4d2)]=![];}catch(_0x371a3b){};_0x2e2a27[_0x4683ca(0x2bf)]=![],_0x2e2a27[_0x4683ca(0x4a4)]=![],_0x2e2a27[_0x4683ca(0x29a)]=![],_0x2e2a27[_0x4683ca(0x116)]=![],_0x2e2a27['forceios']=![];_0x539db3['enhance']&&(_0x2e2a27[_0x4683ca(0x931)]=!![]);_0x539db3[_0x4683ca(0x2cf)]&&(_0x2e2a27[_0x4683ca(0x2cf)]=_0x539db3[_0x4683ca(0x2cf)]);_0x539db3[_0x4683ca(0x4b8)]&&(_0x2e2a27[_0x4683ca(0x4b8)]=_0x539db3[_0x4683ca(0x4b8)]);_0x539db3[_0x4683ca(0x1a9)]!==![]&&(_0x2e2a27[_0x4683ca(0x1a9)]=_0x539db3[_0x4683ca(0x1a9)]);if(_0x539db3[_0x4683ca(0x29a)]){_0x2e2a27[_0x4683ca(0x29a)]=!![],_0x2e2a27[_0x4683ca(0x40f)]=_0x539db3[_0x4683ca(0x40f)];if(_0x539db3[_0x4683ca(0x4c3)]&&_0x539db3[_0x4683ca(0x4c3)]===_0x37dc6c)_0x539db3[_0x4683ca(0x581)]();else{var _0x352fd1={};_0x352fd1[_0x4683ca(0x8c0)]=[];for(var _0x17abe3 in _0x539db3[_0x4683ca(0x77a)]){_0x539db3[_0x4683ca(0x77a)][_0x17abe3][_0x4683ca(0x56a)]===!![]&&_0x352fd1[_0x4683ca(0x8c0)][_0x4683ca(0x6d6)](_0x17abe3);}_0x352fd1[_0x4683ca(0x8c0)]['length']&&(_0x2e2a27[_0x4683ca(0x427)]=_0x352fd1);}}else{if(_0x539db3[_0x4683ca(0x4a4)]!==![])_0x2e2a27[_0x4683ca(0x4a4)]=_0x539db3['scene'],_0x539db3['showDirector']&&(_0x2e2a27[_0x4683ca(0x71e)]=_0x539db3['showDirector']);else _0x539db3[_0x4683ca(0x4f6)]!==![]&&_0x539db3[_0x4683ca(0x4f6)]!==''&&(_0x2e2a27[_0x4683ca(0x40f)]=_0x539db3[_0x4683ca(0x40f)],_0x2e2a27[_0x4683ca(0x2bf)]=!![]);}!_0x539db3[_0x4683ca(0x4f6)]&&(_0x539db3[_0x4683ca(0x3c4)]&&(playtone(![],'jointone'),showNotification(_0x4683ca(0x595)))),_0x539db3[_0x4683ca(0x51f)][_0x37dc6c]['settings']=_0x2e2a27,_0x539db3[_0x4683ca(0x8fb)](_0x2e2a27,_0x37dc6c)?log(_0x4683ca(0x435)):errorlog('Failed\x20to\x20request\x20video\x20and\x20audio;\x20iOS\x20device\x20asking?'),pokeIframeAPI(_0x4683ca(0x4e7),!![],_0x37dc6c),pokeIframeAPI(_0x4683ca(0x58f),!![],_0x37dc6c),pokeAPI(_0x4683ca(0x256),_0x539db3[_0x4683ca(0x51f)][_0x37dc6c][_0x4683ca(0x562)]);},_0x539db3[_0x60998d(0x51f)][_0x37dc6c][_0x60998d(0x781)][_0x60998d(0x6c3)]=async _0x35dc7b=>{var _0x2721f1=_0x60998d;if(typeof _0x35dc7b[_0x2721f1(0x4b6)]=='object'){if(!_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x306)]){_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x306)]=document[_0x2721f1(0x2d0)]('img'),_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x306)][_0x2721f1(0x5f0)]=0x10,_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x306)][_0x2721f1(0x165)]=0x9,_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x306)][_0x2721f1(0x5c1)][_0x2721f1(0x6e2)]=_0x2721f1(0x16a),_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x306)][_0x2721f1(0x7a4)][_0x2721f1(0x5f9)]=_0x37dc6c;try{_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x306)][_0x2721f1(0x7a4)][_0x2721f1(0x152)]=_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['streamID'];}catch(_0x1a9eca){}_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x306)][_0x2721f1(0x778)]=![],_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['imageElement'][_0x2721f1(0x60b)](_0x2721f1(0x205),function(_0x305405){var _0x5d3f55=_0x2721f1;log(_0x5d3f55(0x572));try{if(_0x305405[_0x5d3f55(0x1b0)]||_0x305405['metaKey']){_0x305405[_0x5d3f55(0x14e)]();var _0x1919d2=_0x305405[_0x5d3f55(0x338)]['dataset'][_0x5d3f55(0x5f9)];if(_0x5d3f55(0x27b)in _0x539db3[_0x5d3f55(0x51f)][_0x1919d2]){var [_0x4cdc7e,_0x580e87]=statsMenuCreator();printViewStats(_0x580e87,_0x1919d2),_0x4cdc7e[_0x5d3f55(0x32d)]=setInterval(printViewStats,_0x539db3[_0x5d3f55(0x82b)],_0x580e87,_0x1919d2);}return _0x305405[_0x5d3f55(0x1da)](),![];}}catch(_0x1d6b18){errorlog(_0x1d6b18);}}),updateMixer();}else _0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x306)][_0x2721f1(0x778)]&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['imageElement']['hidden']=![],_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['imageElement']['style']['visibility']=_0x2721f1(0x839));_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x306)]['src']=window[_0x2721f1(0x5c3)][_0x2721f1(0x574)](new Blob([new Uint8Array(_0x35dc7b[_0x2721f1(0x4b6)])],{'type':_0x2721f1(0x24c)}));return;}try{var _0x16076c=JSON[_0x2721f1(0x70e)](_0x35dc7b['data']);}catch(_0x38c699){_0x16076c=_0x38c699[_0x2721f1(0x4b6)];}_0x16076c['UUID']=_0x37dc6c;if(_0x2721f1(0x4da)in _0x16076c){warnlog('BYE\x20RPCS'),_0x539db3[_0x2721f1(0x3a8)](_0x37dc6c,!![]);return;}else{if(_0x2721f1(0x7ea)in _0x16076c){var _0x557287={};_0x557287['pong']=_0x16076c[_0x2721f1(0x7ea)],_0x539db3[_0x2721f1(0x8fb)](_0x557287,_0x37dc6c),warnlog(_0x2721f1(0x709));return;}else{if(_0x2721f1(0x4ff)in _0x16076c){warnlog(_0x2721f1(0x494));return;}}}var _0x477a9d=![],_0x239d4c=![];if(_0x2721f1(0x6dd)in _0x16076c){if(_0x539db3[_0x2721f1(0x29a)])!_0x539db3['cleanOutput']&&warnUser(_0x2721f1(0x159)+_0x16076c['rejected']+_0x2721f1(0x12f),0x1388);else!_0x539db3[_0x2721f1(0x50b)]&&(_0x539db3[_0x2721f1(0x57e)]?warnUser(_0x2721f1(0x46c),0x1388):warnUser(_0x2721f1(0x291),0x1388));errorlog('ACTION\x20REJECTED:\x20'+_0x16076c['rejected']+',\x20isDirector:\x20'+_0x539db3['director']);}if(_0x2721f1(0x122)in _0x16076c)_0x539db3[_0x2721f1(0x772)](_0x16076c);else{if(_0x2721f1(0x663)in _0x16076c)_0x16076c['UUID']=_0x37dc6c,log(_0x2721f1(0x134)),_0x539db3[_0x2721f1(0x8f2)](_0x16076c);else _0x2721f1(0x651)in _0x16076c&&(_0x16076c['UUID']=_0x37dc6c,log(_0x2721f1(0x8ca)),_0x539db3[_0x2721f1(0x40b)](_0x16076c));}if(_0x2721f1(0x4b0)in _0x16076c)try{_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x4b0)]=_0x16076c[_0x2721f1(0x4b0)]||![];if(_0x539db3[_0x2721f1(0x29a)]){if(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x4b0)]){var _0x15dfd2=document[_0x2721f1(0x2d0)](_0x2721f1(0x7aa));_0x15dfd2[_0x2721f1(0x1f8)]=_0x539db3['rpcs'][_0x37dc6c]['iframeSrc'],_0x15dfd2[_0x2721f1(0x1f8)]=_0x15dfd2['innerHTML'],_0x15dfd2=_0x15dfd2[_0x2721f1(0x114)]||_0x15dfd2[_0x2721f1(0x1f8)]||'',getById(_0x2721f1(0x8de)+_0x37dc6c)[_0x2721f1(0x5fc)]=_0x2721f1(0x7e3)+_0x15dfd2+_0x2721f1(0x442)+_0x15dfd2+_0x2721f1(0x8bb),getById(_0x2721f1(0x8de)+_0x37dc6c)[_0x2721f1(0x750)][_0x2721f1(0x10b)](_0x2721f1(0x778));}else getById(_0x2721f1(0x8de)+_0x37dc6c)[_0x2721f1(0x750)]['add']('hidden'),getById(_0x2721f1(0x8de)+_0x37dc6c)[_0x2721f1(0x1f8)]='';}else{if(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x4b0)]==![]){try{_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['iframeEle'][_0x2721f1(0x10b)]();}catch(_0x3795d5){errorlog(_0x3795d5);}_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x5cd)]&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x5cd)][_0x2721f1(0x10b)](),_0x539db3['rpcs'][_0x37dc6c]['iframeVideo']=![]);_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x1fa)]=![],_0x477a9d=!![];if(_0x539db3[_0x2721f1(0x610)]!==![]){if(_0x539db3[_0x2721f1(0x610)]!==null)_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x562)]===_0x539db3[_0x2721f1(0x610)]&&(_0x539db3[_0x2721f1(0x2f1)]=![]);else _0x37dc6c==_0x539db3[_0x2721f1(0x4c3)]&&(_0x539db3[_0x2721f1(0x2f1)]=![]);}}else{if(_0x539db3[_0x2721f1(0x610)]!==![]){if(_0x539db3['broadcast']!==null){if(_0x539db3['rpcs'][_0x37dc6c]['streamID']===_0x539db3[_0x2721f1(0x610)]){if(_0x539db3[_0x2721f1(0x117)]===![])_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x1fa)]=loadIframe(_0x16076c[_0x2721f1(0x4b0)],_0x37dc6c),_0x477a9d=!![],_0x539db3[_0x2721f1(0x2f1)]=_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x1fa)],_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x562)]&&(_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x1fa)][_0x2721f1(0x7a4)][_0x2721f1(0x152)]=_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x562)]);else _0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x562)]in _0x539db3['noiframe']&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x1fa)]=loadIframe(_0x16076c['iframeSrc'],_0x37dc6c),_0x477a9d=!![],_0x539db3[_0x2721f1(0x2f1)]=_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['iframeEle'],_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x562)]&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x1fa)][_0x2721f1(0x7a4)]['sid']=_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x562)]));}}else{if(_0x539db3[_0x2721f1(0x4c3)]){if(_0x37dc6c==_0x539db3[_0x2721f1(0x4c3)]){if(_0x539db3[_0x2721f1(0x117)]===![])_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x1fa)]=loadIframe(_0x16076c['iframeSrc'],_0x37dc6c),_0x477a9d=!![],_0x539db3[_0x2721f1(0x2f1)]=_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x1fa)],_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x562)]&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x1fa)]['dataset'][_0x2721f1(0x152)]=_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x562)]);else _0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x562)]in _0x539db3[_0x2721f1(0x117)]&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x1fa)]=loadIframe(_0x16076c[_0x2721f1(0x4b0)],_0x37dc6c),_0x477a9d=!![],_0x539db3['broadcastIFrame']=_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x1fa)],_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x562)]&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x1fa)][_0x2721f1(0x7a4)][_0x2721f1(0x152)]=_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x562)]));}}}}else{if(_0x539db3[_0x2721f1(0x117)]===![])_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x1fa)]=loadIframe(_0x16076c[_0x2721f1(0x4b0)],_0x37dc6c),_0x477a9d=!![],_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['streamID']&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['iframeEle'][_0x2721f1(0x7a4)][_0x2721f1(0x152)]=_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x562)]);else _0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x562)]in _0x539db3[_0x2721f1(0x117)]&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['iframeEle']=loadIframe(_0x16076c[_0x2721f1(0x4b0)],_0x37dc6c),_0x477a9d=!![],_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['streamID']&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x1fa)]['dataset']['sid']=_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['streamID']));}}}}catch(_0x36ed64){errorlog(_0x36ed64);}else{if(_0x2721f1(0x3cc)in _0x16076c){if(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['iframeEle'])try{_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x4b0)][_0x2721f1(0x71a)]('https://www.youtube.com/')&&processIframeSyncUpdates(_0x16076c[_0x2721f1(0x3cc)],_0x37dc6c);}catch(_0x2caa57){errorlog(_0x2caa57);}}}if(_0x2721f1(0x57e)in _0x16076c)try{_0x16076c=await _0x539db3['decodeRemote'](_0x16076c);if(!_0x16076c)return;}catch(_0x17ba43){errorlor(_0x17ba43);}_0x2721f1(0x657)in _0x16076c&&processOBSCommand(_0x16076c);if(_0x2721f1(0x6cf)in _0x16076c){var _0xd13575=![],_0x42141c=![];_0x539db3[_0x2721f1(0x4c3)]===_0x37dc6c&&(_0xd13575=!![],_0x2721f1(0x46a)in _0x16076c&&(_0x16076c[_0x2721f1(0x46a)]==!![]&&(_0x42141c=!![])));if(_0x539db3[_0x2721f1(0x29a)]){if(_0x16076c[_0x2721f1(0x6cf)]==_0x2721f1(0x272))_0x539db3[_0x2721f1(0x3c4)]&&playtone(),getById(_0x2721f1(0x814)+_0x37dc6c)[_0x2721f1(0x5c1)]['display']=_0x2721f1(0x756),_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x738)][_0x2721f1(0x5c1)][_0x2721f1(0x6ba)]=_0x2721f1(0x126);else _0x16076c[_0x2721f1(0x6cf)]=='Lowered\x20hand'&&(getById(_0x2721f1(0x814)+_0x37dc6c)['style'][_0x2721f1(0x6ba)]=_0x2721f1(0x1e0),_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x738)][_0x2721f1(0x5c1)]['display']=_0x2721f1(0x1e0));}log('isDirector\x20'+_0xd13575),getChatMessage(_0x16076c[_0x2721f1(0x6cf)],_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x4bc)],_0xd13575,_0x42141c);}'pipe'in _0x16076c&&_0x539db3[_0x2721f1(0x56c)](_0x16076c[_0x2721f1(0x4a1)],_0x37dc6c);_0x2721f1(0x622)in _0x16076c&&(_0x539db3[_0x2721f1(0x332)]=_0x16076c[_0x2721f1(0x622)],_0x539db3[_0x2721f1(0x1c3)](_0x37dc6c));_0x2721f1(0x6de)in _0x16076c&&log(_0x16076c);_0x2721f1(0x445)in _0x16076c&&(_0x16076c[_0x2721f1(0x445)]?_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x445)]=_0x16076c[_0x2721f1(0x445)][_0x2721f1(0x8f3)](','):_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x445)]=[],_0x477a9d=!![]);_0x2721f1(0x92f)in _0x16076c&&(log(_0x16076c),_0x539db3['closedCaptions']&&updateClosedCaptions(_0x16076c,_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['label'],_0x37dc6c));_0x2721f1(0x798)in _0x16076c&&_0x16076c[_0x2721f1(0x798)]!==![]&&(_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x2b2)]=_0x16076c[_0x2721f1(0x798)]);_0x539db3[_0x2721f1(0x29a)]&&(_0x2721f1(0x59b)in _0x16076c&&updateDirectorsAudio(_0x16076c['audioOptions'],_0x37dc6c),_0x2721f1(0x8b2)in _0x16076c&&gotDevicesRemote(_0x16076c[_0x2721f1(0x8b2)],_0x37dc6c),'videoOptions'in _0x16076c&&updateDirectorsVideo(_0x16076c[_0x2721f1(0x8ef)],_0x37dc6c),'recorder'in _0x16076c&&updateRemoteRecordButton(_0x37dc6c,_0x16076c['recorder']),_0x2721f1(0x551)in _0x16076c&&updateRemoteTimerButton(_0x37dc6c,_0x16076c['timer']));_0x2721f1(0x1f6)in _0x16076c&&meshcastWatch(_0x37dc6c,_0x16076c[_0x2721f1(0x1f6)]);_0x2721f1(0x561)in _0x16076c&&(_0x539db3[_0x2721f1(0x3a6)]['indexOf'](_0x37dc6c)>=0x0&&(_0x539db3[_0x2721f1(0x513)]&&lowerhand()));_0x2721f1(0x10e)in _0x16076c&&(_0x539db3[_0x2721f1(0x3a6)]['indexOf'](_0x37dc6c)>=0x0&&(_0x539db3[_0x2721f1(0x10e)]=_0x16076c[_0x2721f1(0x10e)],pokeIframeAPI('layout-updated',_0x539db3[_0x2721f1(0x10e)]),_0x477a9d=!![]));if(_0x2721f1(0x24e)in _0x16076c){if(_0x539db3[_0x2721f1(0x610)]===![]){log(_0x16076c);if(_0x539db3[_0x2721f1(0x3a6)][_0x2721f1(0x854)](_0x37dc6c)>=0x0){if(_0x16076c['infocus']!==![]){if(_0x16076c[_0x2721f1(0x24e)]===_0x539db3[_0x2721f1(0x562)])_0x539db3[_0x2721f1(0x24e)]=!![];else{if(_0x539db3['view_set'][_0x2721f1(0x425)]&&!(_0x16076c[_0x2721f1(0x24e)]in _0x539db3['view_set']))warnlog(_0x2721f1(0x4ed)),_0x539db3['infocus']=![];else{if(_0x539db3[_0x2721f1(0x757)]&&_0x539db3[_0x2721f1(0x757)]!==_0x16076c[_0x2721f1(0x24e)])warnlog(_0x2721f1(0x19e)),_0x539db3[_0x2721f1(0x24e)]=![];else{if(_0x539db3[_0x2721f1(0x4a4)]!==![]&&_0x539db3[_0x2721f1(0x4c3)]&&_0x539db3['directorUUID']in _0x539db3['rpcs']&&!_0x539db3[_0x2721f1(0x51f)][_0x539db3[_0x2721f1(0x4c3)]][_0x2721f1(0x71e)]&&_0x16076c[_0x2721f1(0x24e)]===_0x539db3[_0x2721f1(0x51f)][_0x539db3[_0x2721f1(0x4c3)]]['streamID'])warnlog(_0x2721f1(0x736)),_0x539db3[_0x2721f1(0x24e)]=![];else{for(var _0x14e66d in _0x539db3[_0x2721f1(0x51f)]){if(_0x539db3['rpcs'][_0x14e66d][_0x2721f1(0x562)]===_0x16076c[_0x2721f1(0x24e)]){_0x539db3[_0x2721f1(0x24e)]=_0x14e66d;break;}}warnlog('ON\x20FOCUS\x20NOT\x20FOUND');}}}}}else _0x539db3['infocus']=![];_0x477a9d=!![],_0x239d4c=!![];}}}_0x2721f1(0x604)in _0x16076c&&(log(_0x16076c),_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x27b)][_0x2721f1(0x604)]=_0x16076c[_0x2721f1(0x604)],isIFrame&&parent[_0x2721f1(0x423)]({'sensors':_0x16076c['sensors']},_0x539db3[_0x2721f1(0x63b)]));_0x2721f1(0x8a7)in _0x16076c&&playbackMIDI(_0x16076c[_0x2721f1(0x8a7)]);'fileList'in _0x16076c&&_0x16076c[_0x2721f1(0x57f)]&&addDownloadLink(_0x16076c[_0x2721f1(0x57f)],_0x37dc6c,_0x539db3['rpcs']);_0x2721f1(0x56e)in _0x16076c&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['rotate']!=_0x16076c[_0x2721f1(0x56e)]&&(_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x875)]=_0x16076c['rotate_video'],_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x792)]&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x792)]['rotated']=_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x875)]),_0x477a9d=!![]));if(_0x2721f1(0x61a)in _0x16076c){warnlog(_0x16076c),_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['stats']['info']=_0x16076c[_0x2721f1(0x61a)];_0x16076c[_0x2721f1(0x61a)][_0x2721f1(0x622)]&&(!_0x539db3['autoSyncObject']&&(_0x539db3[_0x2721f1(0x332)]=_0x16076c[_0x2721f1(0x61a)][_0x2721f1(0x622)],_0x539db3[_0x2721f1(0x1c3)](_0x37dc6c)));if(_0x539db3['rpcs'][_0x37dc6c]['signalMeter']){if(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['stats'][_0x2721f1(0x61a)][_0x2721f1(0x421)])_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x112)][_0x2721f1(0x7a4)][_0x2721f1(0x832)]='1';else _0x2721f1(0x421)in _0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x27b)][_0x2721f1(0x61a)]&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x112)][_0x2721f1(0x7a4)][_0x2721f1(0x832)]='0');}_0x2721f1(0x449)in _0x16076c[_0x2721f1(0x61a)]&&(_0x16076c[_0x2721f1(0x61a)]['obs_control']!==![]?(_0x539db3['rpcs'][_0x37dc6c]['obsControl']=_0x16076c[_0x2721f1(0x61a)][_0x2721f1(0x449)],_0x539db3[_0x2721f1(0x8ae)](_0x2721f1(0x28a),_0x37dc6c)):_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x377)]=![]);if(_0x2721f1(0x4bc)in _0x16076c['info']){typeof _0x16076c['info'][_0x2721f1(0x4bc)]==_0x2721f1(0x77f)?_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['label']=sanitizeLabel(_0x16076c[_0x2721f1(0x61a)][_0x2721f1(0x4bc)]):_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x4bc)]=![];applyStyleEffect(_0x37dc6c);if(_0x539db3[_0x2721f1(0x29a)]){var _0x4ce42f=getById(_0x2721f1(0x8d0)+_0x37dc6c);if(_0x4ce42f){_0x4ce42f[_0x2721f1(0x5c1)][_0x2721f1(0x4c1)]=_0x2721f1(0x8e0),_0x4ce42f['style'][_0x2721f1(0x837)]='2px',_0x4ce42f[_0x2721f1(0x5c1)][_0x2721f1(0x770)]=_0x2721f1(0x6a6),_0x4ce42f[_0x2721f1(0x5c1)]['position']='relative',_0x4ce42f[_0x2721f1(0x5c1)]['cursor']=_0x2721f1(0x31d),_0x4ce42f['dataset'][_0x2721f1(0x5f9)]=_0x37dc6c;if(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x4bc)])_0x4ce42f[_0x2721f1(0x1f8)]=_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x4bc)],_0x4ce42f['classList']['remove'](_0x2721f1(0x5f5));else _0x539db3['directorUUID']===_0x37dc6c?(_0x4ce42f[_0x2721f1(0x1f8)]=miscTranslations['main-director'],_0x4ce42f[_0x2721f1(0x750)][_0x2721f1(0x10b)](_0x2721f1(0x5f5))):(_0x4ce42f[_0x2721f1(0x1f8)]=miscTranslations[_0x2721f1(0x38d)],_0x4ce42f[_0x2721f1(0x750)][_0x2721f1(0x897)](_0x2721f1(0x5f5)));_0x4ce42f['onclick']=async function(_0x516a4c){var _0x1968a1=_0x2721f1,_0x9c4f34=_0x516a4c[_0x1968a1(0x632)][_0x1968a1(0x1f8)];_0x539db3[_0x1968a1(0x51f)][_0x516a4c[_0x1968a1(0x632)]['dataset'][_0x1968a1(0x5f9)]]['label']===![]&&(_0x9c4f34='');window[_0x1968a1(0x4ca)]();var _0x2ff6ce=await promptAlt(miscTranslations[_0x1968a1(0x7be)],![],![],_0x9c4f34);if(_0x2ff6ce!==null){_0x2ff6ce==''?(_0x2ff6ce=![],_0x539db3[_0x1968a1(0x4c3)]===_0x37dc6c?(_0x516a4c[_0x1968a1(0x632)][_0x1968a1(0x1f8)]=miscTranslations[_0x1968a1(0x938)],_0x516a4c[_0x1968a1(0x632)][_0x1968a1(0x750)][_0x1968a1(0x10b)](_0x1968a1(0x5f5))):(_0x516a4c[_0x1968a1(0x632)]['innerText']=miscTranslations['add-a-label'],_0x516a4c['target'][_0x1968a1(0x750)][_0x1968a1(0x897)](_0x1968a1(0x5f5)))):(_0x516a4c['target']['innerText']=_0x2ff6ce,_0x516a4c[_0x1968a1(0x632)]['classList']['remove'](_0x1968a1(0x5f5)));var _0x122d0b={};_0x122d0b[_0x1968a1(0x5f9)]=_0x516a4c['target']['dataset']['UUID'],_0x122d0b['changeLabel']=!![],_0x122d0b['value']=_0x2ff6ce,_0x539db3['sendRequest'](_0x122d0b,_0x122d0b[_0x1968a1(0x5f9)]);}};}}}if('order'in _0x16076c['info']){_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x670)]=parseInt(_0x16076c[_0x2721f1(0x61a)][_0x2721f1(0x670)])||0x0;if(_0x539db3[_0x2721f1(0x29a)]){var _0x53583f=document['querySelectorAll'](_0x2721f1(0x706)+_0x37dc6c+'\x22]');_0x53583f[0x0]&&(_0x53583f[0x0][_0x2721f1(0x1f8)]=_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x670)]);}}else _0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['order']=0x0;if(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x2a4)]){if('power_level'in _0x16076c[_0x2721f1(0x61a)]){if(_0x16076c['info']['power_level']!==null){var _0xecb993=_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x2a4)]['querySelector'](_0x2721f1(0x432));if(_0xecb993){var _0x2106ae=parseInt(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['stats'][_0x2721f1(0x61a)][_0x2721f1(0x4fb)])||0x0;_0x2106ae>0x64&&(_0x2106ae=0x64);_0x2106ae<0x0&&(_0x2106ae=0x0);_0xecb993['style'][_0x2721f1(0x165)]=parseInt(_0x2106ae)+'%';if(_0x2106ae<0xa)_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x2a4)]['classList']['remove']('warn'),_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x2a4)][_0x2721f1(0x750)]['add']('alert');else _0x2106ae<0x19?(_0x539db3['rpcs'][_0x37dc6c]['batteryMeter'][_0x2721f1(0x750)][_0x2721f1(0x10b)]('alert'),_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x2a4)][_0x2721f1(0x750)][_0x2721f1(0x897)](_0x2721f1(0x5e6))):(_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x2a4)][_0x2721f1(0x750)][_0x2721f1(0x10b)](_0x2721f1(0x5b5)),_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x2a4)][_0x2721f1(0x750)][_0x2721f1(0x10b)]('warn'));_0x2106ae<0x64&&_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x2a4)][_0x2721f1(0x750)][_0x2721f1(0x10b)](_0x2721f1(0x778)),_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x2a4)][_0x2721f1(0x212)]=_0x2106ae+_0x2721f1(0x73f);}}}'plugged_in'in _0x16076c[_0x2721f1(0x61a)]&&(_0x16076c[_0x2721f1(0x61a)][_0x2721f1(0xee)]===![]?(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x2a4)][_0x2721f1(0x7a4)][_0x2721f1(0x1ad)]='0',_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x2a4)][_0x2721f1(0x750)][_0x2721f1(0x10b)](_0x2721f1(0x778))):_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['batteryMeter'][_0x2721f1(0x7a4)][_0x2721f1(0x1ad)]='1');}if(_0x2721f1(0x2f5)in _0x16076c[_0x2721f1(0x61a)]){_0x16076c[_0x2721f1(0x61a)][_0x2721f1(0x2f5)]?_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x445)]=_0x16076c[_0x2721f1(0x61a)][_0x2721f1(0x2f5)][_0x2721f1(0x8f3)](','):_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['group']=[];if(_0x539db3[_0x2721f1(0x29a)]){var _0x53583f=document[_0x2721f1(0x5fe)](_0x2721f1(0x767)+_0x37dc6c+'\x22]');for(var _0x15be66=0x0;_0x15be66<_0x53583f[_0x2721f1(0x425)];_0x15be66++){_0x53583f[_0x15be66][_0x2721f1(0x750)][_0x2721f1(0x10b)](_0x2721f1(0x611));for(var _0x1bf865=0x0;_0x1bf865<_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x445)][_0x2721f1(0x425)];_0x1bf865++){_0x53583f[_0x15be66][_0x2721f1(0x7a4)]['group']===_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['group'][_0x1bf865]&&_0x53583f[_0x15be66][_0x2721f1(0x750)]['add']('pressed');}}}else _0x477a9d=!![];}'muted'in _0x16076c[_0x2721f1(0x61a)]&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x37e)]=_0x16076c['info']['muted'],_0x539db3[_0x2721f1(0x4a4)]===![]&&(_0x539db3[_0x2721f1(0x4f6)]&&((!_0x539db3['cleanOutput']||_0x539db3[_0x2721f1(0x29a)])&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x321)]?_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x37e)]?_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x321)]['style'][_0x2721f1(0x6ba)]='block':_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x321)][_0x2721f1(0x5c1)][_0x2721f1(0x6ba)]=_0x2721f1(0x1e0):(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x321)]=getById(_0x2721f1(0x2c9))[_0x2721f1(0x22e)](!![]),_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x321)]['id']=_0x2721f1(0x8f1)+_0x37dc6c,_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['remoteMuteState']?_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x321)][_0x2721f1(0x5c1)][_0x2721f1(0x6ba)]=_0x2721f1(0x756):_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['remoteMuteElement'][_0x2721f1(0x5c1)]['display']='none',_0x477a9d=!![])))),pokeIframeAPI('remote-mute-state',_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x37e)],_0x37dc6c));if(_0x539db3[_0x2721f1(0x29a)]){if('recording_audio_pipeline'in _0x16076c[_0x2721f1(0x61a)]){if(_0x16076c[_0x2721f1(0x61a)]['recording_audio_pipeline']==![]){var _0x53583f=document[_0x2721f1(0x5fe)]('[data-action-type=\x22mute-guest\x22][data--u-u-i-d=\x22'+_0x37dc6c+'\x22]');_0x53583f[0x0]&&(_0x53583f[0x0]['disabled']=!![],_0x53583f[0x0][_0x2721f1(0x212)]=miscTranslations[_0x2721f1(0x8e7)]);var _0x53583f=document['querySelectorAll'](_0x2721f1(0x163)+_0x37dc6c+'\x22]');_0x53583f[0x0]&&(_0x53583f[0x0][_0x2721f1(0x18e)]=!![],_0x53583f[0x0][_0x2721f1(0x212)]=title=miscTranslations[_0x2721f1(0x8e7)],_0x53583f[0x0]['style'][_0x2721f1(0x33c)]=0.2);}}if(_0x2721f1(0x548)in _0x16076c[_0x2721f1(0x61a)]){if(_0x16076c['info']['recording_audio_gain']!==![]){var _0x3ec6f0=parseInt(_0x16076c['info'][_0x2721f1(0x548)])||0x0;if(_0x3ec6f0===0x0){var _0x53583f=document[_0x2721f1(0x5fe)](_0x2721f1(0x7d7)+_0x37dc6c+'\x22]');_0x53583f[0x0]&&(_0x53583f[0x0][_0x2721f1(0x4a2)]=0x1,_0x53583f[0x0]['className']=_0x2721f1(0x611),_0x53583f[0x0]['children'][0x1][_0x2721f1(0x5fc)]=miscTranslations[_0x2721f1(0x1e5)],_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x480)]=0x1),pokeIframeAPI(_0x2721f1(0x34e),!![],_0x37dc6c);}else{var _0x53583f=document[_0x2721f1(0x5fe)](_0x2721f1(0x163)+_0x37dc6c+'\x22]');_0x53583f[0x0]&&(_0x53583f[0x0]['value']=_0x3ec6f0,_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x24d)]=_0x3ec6f0,remoteVolumeUI(_0x53583f[0x0]));}}}'directorSpeakerMuted'in _0x16076c['info']&&(_0x16076c['info'][_0x2721f1(0x211)]&&updateRemoteSpeakerMute(_0x37dc6c)),_0x2721f1(0x382)in _0x16076c['info']&&(_0x16076c[_0x2721f1(0x61a)][_0x2721f1(0x382)]&&updateRemoteDisplayMute(_0x37dc6c));}_0x2721f1(0x88e)in _0x16076c[_0x2721f1(0x61a)]&&(_0x539db3[_0x2721f1(0x29a)]?_0x16076c[_0x2721f1(0x61a)][_0x2721f1(0x88e)]&&updateDirectorVideoMute(_0x37dc6c):(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x88e)]=_0x16076c[_0x2721f1(0x61a)]['directorVideoMuted'],_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x88e)]&&(_0x37dc6c in _0x539db3[_0x2721f1(0x51f)]&&_0x539db3[_0x2721f1(0x567)](0x0,_0x37dc6c))));_0x2721f1(0x358)in _0x16076c['info']&&(_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x85f)]=_0x16076c['info'][_0x2721f1(0x358)],_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x85f)]&&(_0x539db3[_0x2721f1(0x29a)]&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x3aa)][_0x2721f1(0x5c1)][_0x2721f1(0x6ba)]=_0x2721f1(0x756))),pokeIframeAPI('remote-video-mute-state',_0x539db3['rpcs'][_0x37dc6c]['videoMuted'],_0x37dc6c));_0x2721f1(0x56e)in _0x16076c[_0x2721f1(0x61a)]&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x875)]!=_0x16076c[_0x2721f1(0x61a)]['rotate_video']&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x875)]=_0x16076c[_0x2721f1(0x61a)][_0x2721f1(0x56e)],_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x792)]&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['videoElement'][_0x2721f1(0x6d8)]=_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x875)]),_0x477a9d=!![]));_0x2721f1(0x74c)in _0x16076c['info']&&(_0x16076c[_0x2721f1(0x61a)][_0x2721f1(0x74c)]===![]&&document[_0x2721f1(0x5fe)]('container_'+_0x37dc6c)[_0x2721f1(0x21a)](_0x4a8f38=>{var _0xd0a019=_0x2721f1;_0x4a8f38[_0xd0a019(0x5fe)](_0xd0a019(0x63a))['forEach'](_0x2e7064=>{var _0x38a372=_0xd0a019,_0x1ec9aa=soloLinkGenerator(_0x539db3['rpcs'][_0x37dc6c][_0x38a372(0x562)],![]);_0x2e7064[_0x38a372(0x4a2)]=_0x1ec9aa,_0x2e7064['href']=_0x1ec9aa,_0x2e7064[_0x38a372(0x1f8)]=_0x1ec9aa;});}));if(_0x37dc6c===_0x539db3['directorUUID'])try{_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x27b)]['info'][_0x2721f1(0x29a)]=!![],getById(_0x2721f1(0x88a)+_0x37dc6c)[_0x2721f1(0x750)][_0x2721f1(0x897)](_0x2721f1(0x521));}catch(_0x15099c){}else{if(_0x539db3['directorList'][_0x2721f1(0x854)](_0x37dc6c)>=0x0)try{_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x27b)][_0x2721f1(0x61a)][_0x2721f1(0x56a)]=!![],getById('container_'+_0x37dc6c)[_0x2721f1(0x750)][_0x2721f1(0x897)](_0x2721f1(0x41f));}catch(_0x325196){}}_0x239d4c=!![],pokeAPI(_0x2721f1(0x28a),getDetailedState(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x562)])),pokeIframeAPI(_0x2721f1(0x4b7),_0x16076c[_0x2721f1(0x61a)],_0x37dc6c);}if(_0x2721f1(0x5a1)in _0x16076c){if(_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x27b)]&&_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x27b)][_0x2721f1(0x61a)]){_0x2721f1(0x891)in _0x16076c[_0x2721f1(0x5a1)]&&(_0x539db3['rpcs'][_0x37dc6c]['stats'][_0x2721f1(0x61a)][_0x2721f1(0x6e9)]=_0x16076c[_0x2721f1(0x5a1)]['qlr']);_0x2721f1(0x1f4)in _0x16076c[_0x2721f1(0x5a1)]&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x27b)]['info']['conn_type']=_0x16076c[_0x2721f1(0x5a1)][_0x2721f1(0x1f4)]);if(_0x2721f1(0x832)in _0x16076c[_0x2721f1(0x5a1)]){_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['stats'][_0x2721f1(0x61a)][_0x2721f1(0x421)]=_0x16076c[_0x2721f1(0x5a1)]['cpu'];if(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x112)]){if(_0x16076c[_0x2721f1(0x5a1)]['cpu'])_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x112)][_0x2721f1(0x7a4)][_0x2721f1(0x832)]='1';else'cpu'in _0x16076c[_0x2721f1(0x5a1)]&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x112)][_0x2721f1(0x7a4)]['cpu']='0');}}'hw_enc'in _0x16076c[_0x2721f1(0x5a1)]&&(_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x27b)][_0x2721f1(0x61a)][_0x2721f1(0x4e2)]=_0x16076c[_0x2721f1(0x5a1)][_0x2721f1(0x3ba)]);_0x2721f1(0x617)in _0x16076c[_0x2721f1(0x5a1)]&&(typeof _0x16076c['miniInfo'][_0x2721f1(0x617)]=='number'?_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x27b)][_0x2721f1(0x61a)][_0x2721f1(0x4fb)]=_0x16076c[_0x2721f1(0x5a1)][_0x2721f1(0x617)]*0x64:_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x27b)][_0x2721f1(0x61a)][_0x2721f1(0x4fb)]=null);_0x2721f1(0x88b)in _0x16076c['miniInfo']&&(_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x27b)][_0x2721f1(0x61a)][_0x2721f1(0xee)]=_0x16076c[_0x2721f1(0x5a1)]['chrg']);'out'in _0x16076c['miniInfo']&&'c'in _0x16076c[_0x2721f1(0x5a1)][_0x2721f1(0x309)]&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x27b)][_0x2721f1(0x61a)]['total_outbound_p2p_connections']=_0x16076c[_0x2721f1(0x5a1)][_0x2721f1(0x309)]['c'],_0x539db3[_0x2721f1(0x385)]&&_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x131)]&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x131)]['innerText']='🔗'+_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x27b)][_0x2721f1(0x61a)][_0x2721f1(0x26d)],_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x131)][_0x2721f1(0x7a4)][_0x2721f1(0x4a2)]=_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x27b)]['info'][_0x2721f1(0x26d)]));if(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x2a4)]){if(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['stats'][_0x2721f1(0x61a)]&&_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x27b)][_0x2721f1(0x61a)][_0x2721f1(0x4fb)]!==null){var _0xecb993=_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x2a4)][_0x2721f1(0x7c8)](_0x2721f1(0x432));if(_0xecb993){var _0x2106ae=_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x27b)]['info'][_0x2721f1(0x4fb)];_0x2106ae>0x64&&(_0x2106ae=0x64);_0x2106ae<0x0&&(_0x2106ae=0x0);_0xecb993[_0x2721f1(0x5c1)][_0x2721f1(0x165)]=parseInt(_0x2106ae)+'%';if(_0x2106ae<0xa)_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x2a4)][_0x2721f1(0x750)][_0x2721f1(0x10b)](_0x2721f1(0x5e6)),_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x2a4)][_0x2721f1(0x750)][_0x2721f1(0x897)]('alert');else _0x2106ae<0x19?(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x2a4)][_0x2721f1(0x750)][_0x2721f1(0x10b)](_0x2721f1(0x5b5)),_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x2a4)][_0x2721f1(0x750)][_0x2721f1(0x897)](_0x2721f1(0x5e6))):(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['batteryMeter'][_0x2721f1(0x750)][_0x2721f1(0x10b)]('alert'),_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['batteryMeter'][_0x2721f1(0x750)][_0x2721f1(0x10b)](_0x2721f1(0x5e6)));_0x2106ae<0x64&&_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x2a4)][_0x2721f1(0x750)][_0x2721f1(0x10b)](_0x2721f1(0x778)),_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['batteryMeter']['title']=_0x2106ae+_0x2721f1(0x73f);}}_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['stats'][_0x2721f1(0x61a)]&&'plugged_in'in _0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['stats'][_0x2721f1(0x61a)]&&_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x27b)][_0x2721f1(0x61a)][_0x2721f1(0xee)]===![]?(_0x539db3['rpcs'][_0x37dc6c]['batteryMeter'][_0x2721f1(0x7a4)][_0x2721f1(0x1ad)]='0',_0x539db3['rpcs'][_0x37dc6c]['batteryMeter'][_0x2721f1(0x750)][_0x2721f1(0x10b)](_0x2721f1(0x778))):_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x2a4)][_0x2721f1(0x7a4)][_0x2721f1(0x1ad)]='1';}}}if(_0x2721f1(0x427)in _0x16076c){_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x29a)]=!![];if(_0x539db3['directorUUID']===_0x37dc6c){'totalRoomBitrate'in _0x16076c[_0x2721f1(0x427)]&&(_0x539db3[_0x2721f1(0x673)]=parseInt(_0x16076c[_0x2721f1(0x427)][_0x2721f1(0x673)])||0x0,_0x477a9d=!![]);if(_0x16076c[_0x2721f1(0x427)][_0x2721f1(0x7c7)]){if(_0x539db3[_0x2721f1(0x610)]===![]){if(_0x16076c['directorSettings'][_0x2721f1(0x7c7)]===_0x539db3[_0x2721f1(0x562)])_0x539db3['infocus']=!![];else for(var _0x14e66d in _0x539db3[_0x2721f1(0x51f)]){if(_0x539db3[_0x2721f1(0x51f)][_0x14e66d][_0x2721f1(0x562)]===_0x16076c[_0x2721f1(0x427)][_0x2721f1(0x7c7)]){if((_0x539db3['directorList'][_0x2721f1(0x4ee)](_0x14e66d)||_0x539db3[_0x2721f1(0x51f)][_0x14e66d][_0x2721f1(0x29a)])&&!_0x539db3[_0x2721f1(0x71e)])break;_0x539db3[_0x2721f1(0x24e)]=_0x14e66d;break;}}_0x477a9d=!![],_0x239d4c=!![];}}if(_0x2721f1(0x71e)in _0x16076c[_0x2721f1(0x427)]){if(_0x539db3[_0x2721f1(0x4a4)]!==![]){if(_0x539db3[_0x2721f1(0x71e)])_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x71e)]=_0x539db3[_0x2721f1(0x71e)];else _0x16076c['directorSettings'][_0x2721f1(0x71e)]&&(_0x539db3['rpcs'][_0x37dc6c]['showDirector']=_0x16076c[_0x2721f1(0x427)][_0x2721f1(0x71e)]);}}if(_0x539db3[_0x2721f1(0x4a4)]!==![]){if(_0x16076c['directorSettings']['scene'])for(var _0x14e66d in _0x16076c[_0x2721f1(0x427)]['scene']){setTimeout(function(_0x47413a){var _0x108c96=_0x2721f1;_0x539db3[_0x108c96(0x51c)](_0x47413a);},0x3e8,_0x16076c[_0x2721f1(0x427)][_0x2721f1(0x4a4)][_0x14e66d]);}if(_0x16076c[_0x2721f1(0x427)]['mute'])for(var _0x14e66d in _0x16076c[_0x2721f1(0x427)][_0x2721f1(0xe3)]){setTimeout(function(_0x5049ae){_0x539db3['directorActions'](_0x5049ae);},0x3e8,_0x16076c[_0x2721f1(0x427)]['mute'][_0x14e66d]);}}if(_0x2721f1(0x8c0)in _0x16076c['directorSettings'])for(var _0x15be66=0x0;_0x15be66<_0x16076c['directorSettings'][_0x2721f1(0x8c0)][_0x2721f1(0x425)];_0x15be66++){if(!_0x539db3[_0x2721f1(0x3a6)][_0x2721f1(0x4ee)](_0x16076c[_0x2721f1(0x427)][_0x2721f1(0x8c0)][_0x15be66]['toString'])){_0x539db3[_0x2721f1(0x3a6)][_0x2721f1(0x6d6)](_0x16076c[_0x2721f1(0x427)][_0x2721f1(0x8c0)][_0x15be66][_0x2721f1(0x229)]());var _0x24bb9e=getById(_0x2721f1(0x88a)+_0x16076c[_0x2721f1(0x427)]['addCoDirector'][_0x15be66][_0x2721f1(0x229)]());_0x24bb9e&&_0x24bb9e[_0x2721f1(0x750)][_0x2721f1(0x897)](_0x2721f1(0x41f));}}}}if(_0x539db3['directorList'][_0x2721f1(0x854)](_0x37dc6c)>=0x0){_0x539db3['scene']!==![]&&(_0x2721f1(0x89f)in _0x16076c&&_0x539db3[_0x2721f1(0x51c)](_0x16076c));'directorSettings'in _0x16076c&&_0x16076c[_0x2721f1(0x427)][_0x2721f1(0x3b2)]&&(!_0x539db3[_0x2721f1(0x29a)]&&(_0x539db3[_0x2721f1(0x4a4)]===![]&&(_0x539db3[_0x2721f1(0x382)]=!![],_0x539db3[_0x2721f1(0x568)]())));if('directorState'in _0x16076c){_0x539db3[_0x2721f1(0xf9)]=_0x16076c[_0x2721f1(0x7dc)];for(var _0x46033f in _0x539db3[_0x2721f1(0xf9)]){syncSceneState(_0x46033f),syncOtherState(_0x46033f);}}}if(_0x2721f1(0x6dd)in _0x16076c){if(_0x539db3['director']){if(_0x16076c['rejected']===_0x2721f1(0x4c6))_0x539db3[_0x2721f1(0x7dc)]=![],pokeAPI(_0x2721f1(0x29a),![]),pokeIframeAPI(_0x2721f1(0x29a),![]),!_0x539db3[_0x2721f1(0x50b)]&&(warnUser(_0x2721f1(0x2e3),0xbb8),getById('head4')[_0x2721f1(0x5fc)]=miscTranslations[_0x2721f1(0x761)]);else{if(_0x16076c['rejected']==='requestCoMigrate')!_0x539db3[_0x2721f1(0x50b)]&&warnUser(_0x2721f1(0x2a7),0xbb8);else{if(!_0x539db3[_0x2721f1(0x50b)]){if(_0x539db3[_0x2721f1(0x4c3)]===_0x37dc6c)warnUser(_0x2721f1(0x25e),0x1388);else _0x539db3['remote']&&!_0x539db3[_0x2721f1(0x29a)]?warnUser(_0x2721f1(0x3f7),0x1388):warnUser(_0x2721f1(0x8f7),0x1388);}}}}warnlog(_0x2721f1(0x851)+_0x16076c['rejected']+',\x20isDirector:\x20'+_0x539db3[_0x2721f1(0x29a)]);}if(_0x2721f1(0x31c)in _0x16076c){if(_0x16076c['approved']===_0x2721f1(0x4c6)){if(_0x539db3[_0x2721f1(0x29a)]){try{_0x539db3['label']===![]&&(document[_0x2721f1(0x212)]=miscTranslations[_0x2721f1(0x4be)]);}catch(_0x5e5e5b){errorlog(_0x5e5e5b);};!_0x539db3['cleanOutput']&&!_0x539db3[_0x2721f1(0x7dc)]&&(warnUser(_0x2721f1(0x48f),0xbb8),getById(_0x2721f1(0x4f2))['innerHTML']=_0x2721f1(0x344)),_0x539db3[_0x2721f1(0x7dc)]=!![],pokeAPI(_0x2721f1(0x29a),!![]),pokeIframeAPI(_0x2721f1(0x29a),!![]);}}}if(_0x2721f1(0x670)in _0x16076c){_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x670)]=parseInt(_0x16076c['order'])||0x0;_0x37dc6c in _0x539db3['pcs']&&(_0x539db3[_0x2721f1(0x77a)][_0x37dc6c][_0x2721f1(0x670)]=parseInt(_0x16076c[_0x2721f1(0x670)])||0x0);if(_0x539db3[_0x2721f1(0x29a)]){var _0x53583f=document[_0x2721f1(0x5fe)](_0x2721f1(0x706)+_0x37dc6c+'\x22]');_0x53583f[0x0]&&(_0x53583f[0x0][_0x2721f1(0x1f8)]=parseInt(_0x16076c[_0x2721f1(0x670)])||0x0);}_0x477a9d=!![];}if(_0x2721f1(0x5ab)in _0x16076c){log(_0x2721f1(0x64b));if(_0x2721f1(0x4a2)in _0x16076c){log('value\x20there');if(typeof _0x16076c[_0x2721f1(0x4a2)]==_0x2721f1(0x77f)){_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x4bc)]=sanitizeLabel(_0x16076c[_0x2721f1(0x4a2)]);_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x4bc)][_0x2721f1(0x425)]==0x0&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x4bc)]=![]);applyStyleEffect(_0x37dc6c);if(_0x539db3[_0x2721f1(0x29a)]){var _0x53583f=getById(_0x2721f1(0x8d0)+_0x37dc6c);if(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x4bc)])_0x53583f[_0x2721f1(0x1f8)]=_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['label'],_0x53583f[_0x2721f1(0x750)]['remove'](_0x2721f1(0x5f5));else _0x539db3['directorUUID']===_0x37dc6c?(_0x53583f[_0x2721f1(0x1f8)]=miscTranslations[_0x2721f1(0x938)],_0x53583f[_0x2721f1(0x750)][_0x2721f1(0x10b)](_0x2721f1(0x5f5))):(_0x53583f[_0x2721f1(0x1f8)]=miscTranslations[_0x2721f1(0x38d)],_0x53583f[_0x2721f1(0x750)]['add'](_0x2721f1(0x5f5)));}else _0x539db3[_0x2721f1(0x251)]&&(_0x477a9d=!![]);}else{_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x4bc)]=![],applyStyleEffect(_0x37dc6c);if(_0x539db3[_0x2721f1(0x29a)]){var _0x53583f=getById(_0x2721f1(0x8d0)+_0x37dc6c);_0x539db3[_0x2721f1(0x4c3)]===_0x37dc6c?(_0x53583f[_0x2721f1(0x1f8)]=miscTranslations[_0x2721f1(0x938)],_0x53583f[_0x2721f1(0x750)]['remove'](_0x2721f1(0x5f5))):(_0x53583f[_0x2721f1(0x1f8)]=miscTranslations[_0x2721f1(0x38d)],_0x53583f['classList'][_0x2721f1(0x897)](_0x2721f1(0x5f5)));}else _0x539db3[_0x2721f1(0x251)]&&(_0x477a9d=!![]);}_0x239d4c=!![],pokeIframeAPI(_0x2721f1(0x70b),_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['label'],_0x37dc6c);}}_0x2721f1(0x517)in _0x16076c&&(log(_0x16076c),_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['remoteMuteState']=_0x16076c[_0x2721f1(0x517)],_0x539db3[_0x2721f1(0x567)](![],_0x37dc6c),_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x27b)][_0x2721f1(0x61a)]&&(_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x27b)][_0x2721f1(0x61a)][_0x2721f1(0x6f5)]=_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['remoteMuteState']),_0x539db3[_0x2721f1(0x4a4)]===![]&&(_0x539db3[_0x2721f1(0x4f6)]&&((!_0x539db3[_0x2721f1(0x50b)]||_0x539db3[_0x2721f1(0x29a)])&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x321)]?_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x37e)]?_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x321)][_0x2721f1(0x5c1)]['display']=_0x2721f1(0x756):_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['remoteMuteElement'][_0x2721f1(0x5c1)][_0x2721f1(0x6ba)]=_0x2721f1(0x1e0):(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['remoteMuteElement']=getById(_0x2721f1(0x2c9))[_0x2721f1(0x22e)](!![]),_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x321)]['id']=_0x2721f1(0x8f1)+_0x37dc6c,_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x37e)]?_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x321)][_0x2721f1(0x5c1)][_0x2721f1(0x6ba)]='block':_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x321)]['style'][_0x2721f1(0x6ba)]=_0x2721f1(0x1e0),_0x477a9d=!![]),_0x239d4c=!![]))),pokeAPI(_0x2721f1(0x188),_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x37e)],_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x562)]),pokeIframeAPI(_0x2721f1(0x484),_0x16076c[_0x2721f1(0x517)],_0x37dc6c));if(_0x2721f1(0x3f3)in _0x16076c){var _0x46833d=getChromeVersion();_0x46833d&&(_0x46833d<0x50&&(_0x477a9d=!![]));}if('videoMuted'in _0x16076c){log('videoMuted:\x20'+_0x16076c[_0x2721f1(0x85f)]),_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x85f)]=_0x16076c[_0x2721f1(0x85f)];!_0x539db3[_0x2721f1(0x29a)]?(_0x539db3['rpcs'][_0x37dc6c]['videoMuted']?(!_0x539db3[_0x2721f1(0x694)]&&_0x539db3['requestRateLimit'](0x0,_0x37dc6c),_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['imageElement']&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x306)]['hidden']=!![],_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x306)][_0x2721f1(0x5c1)][_0x2721f1(0x60d)]=_0x2721f1(0x778))):updateIncomingVideoElement(_0x37dc6c,!![],![]),_0x477a9d=!![]):_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x85f)]?_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['remoteVideoMuteElement'][_0x2721f1(0x5c1)]['display']='inline-block':_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['remoteVideoMuteElement'][_0x2721f1(0x5c1)][_0x2721f1(0x6ba)]=_0x2721f1(0x1e0);if(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['defaultSpeaker']&&_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x85f)])setTimeout(function(){activeSpeaker();},0x0);else!_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['videoMuted']&&setTimeout(function(){activeSpeaker();},0x0);_0x239d4c=!![],pokeAPI(_0x2721f1(0x33d),_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x85f)],_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x562)]),pokeIframeAPI(_0x2721f1(0x404),_0x16076c[_0x2721f1(0x85f)],_0x37dc6c);}if(_0x2721f1(0x68c)in _0x16076c){if(_0x37dc6c+'_screen'in _0x539db3[_0x2721f1(0x51f)]){_0x539db3[_0x2721f1(0x51f)][_0x37dc6c+'_screen'][_0x2721f1(0x650)]=_0x16076c[_0x2721f1(0x68c)];if(_0x539db3[_0x2721f1(0x29a)]){_0x539db3['rpcs'][_0x37dc6c+'_screen'][_0x2721f1(0x85f)]=!_0x16076c[_0x2721f1(0x68c)];try{pokeAPI(_0x2721f1(0x33d),_0x539db3['rpcs'][_0x37dc6c+_0x2721f1(0x326)]['videoMuted'],_0x539db3[_0x2721f1(0x51f)][_0x37dc6c+_0x2721f1(0x326)][_0x2721f1(0x562)]);}catch(_0x2818e6){}_0x539db3[_0x2721f1(0x51f)][_0x37dc6c]['videoMuted']?_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x3aa)][_0x2721f1(0x5c1)][_0x2721f1(0x6ba)]=_0x2721f1(0x126):_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x3aa)]['style']['display']=_0x2721f1(0x1e0);}else _0x539db3[_0x2721f1(0x51f)][_0x37dc6c+_0x2721f1(0x326)]['virtualHangup']=_0x16076c[_0x2721f1(0x68c)],_0x477a9d=!![];_0x239d4c=!![];}}_0x2721f1(0x648)in _0x16076c&&(_0x539db3['rpcs'][_0x37dc6c][_0x2721f1(0x648)]=_0x16076c[_0x2721f1(0x648)],_0x477a9d=!![],pokeIframeAPI('remote-screenshare-state',_0x16076c[_0x2721f1(0x648)],_0x37dc6c));if(_0x2721f1(0x2e2)in _0x16076c){if(!_0x539db3[_0x2721f1(0x29a)]){if(_0x2721f1(0x632)in _0x16076c){if(_0x539db3[_0x2721f1(0x3a6)]['indexOf'](_0x37dc6c)>=0x0){var _0x3455cc=_0x16076c['target'];if(_0x3455cc===!![])_0x539db3[_0x2721f1(0x88e)]=_0x16076c[_0x2721f1(0x2e2)];else _0x3455cc in _0x539db3['rpcs']&&(_0x539db3[_0x2721f1(0x51f)][_0x3455cc]['directorVideoMuted']=_0x16076c[_0x2721f1(0x2e2)],_0x539db3[_0x2721f1(0x51f)][_0x3455cc][_0x2721f1(0x88e)]&&_0x539db3[_0x2721f1(0x567)](0x0,_0x3455cc),_0x477a9d=!![]);}}}_0x239d4c=!![];}'virtualHangup'in _0x16076c&&(!_0x539db3[_0x2721f1(0x29a)]&&(_0x539db3['directorList'][_0x2721f1(0x854)](_0x37dc6c)>=0x0&&(_0x37dc6c in _0x539db3[_0x2721f1(0x51f)]&&(_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x650)]=_0x16076c[_0x2721f1(0x650)],_0x539db3[_0x2721f1(0x51f)][_0x37dc6c][_0x2721f1(0x650)]&&(_0x37dc6c in _0x539db3[_0x2721f1(0x51f)]&&_0x539db3['requestRateLimit'](0x0,_0x37dc6c)),_0x477a9d=!![]))),_0x239d4c=!![]);if(_0x2721f1(0x1fe)in _0x16076c){log(_0x2721f1(0x744));try{_0x539db3['sendFile'](_0x37dc6c,_0x16076c[_0x2721f1(0x1fe)]);}catch(_0x551891){errorlog(_0x551891);}}_0x2721f1(0x69f)in _0x16076c&&remoteStats(_0x16076c,_0x37dc6c);if(_0x477a9d)setTimeout(function(){updateMixer(),updateUserList();},0x1);else _0x239d4c&&updateUserList();},_0x539db3[_0x60998d(0x51f)][_0x37dc6c][_0x60998d(0x781)][_0x60998d(0x7fa)]=()=>{var _0x5c58da=_0x60998d;warnlog(_0x5c58da(0x236));};},_0x539db3[_0x171001(0x51f)][_0x37dc6c][_0x171001(0x1c2)]=_0x427215=>{var _0x39bf19=_0x171001;warnlog(_0x39bf19(0x6ef)),_0x539db3[_0x39bf19(0x406)](_0x427215,_0x37dc6c);},log(_0x171001(0x5e3));},_0x539db3[_0x173334(0x1c4)]=function(_0x3919f5,_0xd4b6e3){var _0x49e793=_0x173334;log(_0x49e793(0x7ba)),!_0x539db3['rpcs'][_0xd4b6e3][_0x49e793(0x30f)]?(_0x539db3[_0x49e793(0x51f)][_0xd4b6e3][_0x49e793(0x30f)]=createVideoElement(),_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+'_screen']={},_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)]['realUUID']=_0xd4b6e3,_0x539db3[_0x49e793(0x51f)][_0xd4b6e3]['streamID']&&(_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+'_screen'][_0x49e793(0x562)]=_0x539db3['rpcs'][_0xd4b6e3]['streamID']+':s'),_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)]['stats']={},_0x539db3[_0x49e793(0x51f)][_0xd4b6e3]['stats']['Audio_Loudness']=![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)]['getStats']=function(){return new Promise((_0xd34acb,_0xc086c)=>{_0xd34acb([]);});},_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x715)]=![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x2b2)]=![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x496)]=![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)]['loudest']=![],_0x539db3['rpcs'][_0xd4b6e3+'_screen'][_0x49e793(0x919)]=null,_0x539db3['rpcs'][_0xd4b6e3+_0x49e793(0x326)]['codirectorRequested']=![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)]['bandwidth']=-0x1,_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+'_screen'][_0x49e793(0x853)]=![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x71e)]=![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)]['channelOffset']=![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+'_screen'][_0x49e793(0x472)]=![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)]['targetBandwidth']=-0x1,_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x79f)]=![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x792)]=![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+'_screen'][_0x49e793(0x306)]=![],_0x539db3['rpcs'][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x932)]=![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x445)]=[],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x85f)]=![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x5cd)]=![],_0x539db3['rpcs'][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x88e)]=![],_0x539db3['rpcs'][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x650)]=![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x37e)]=![],_0x539db3['rpcs'][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x321)]=![],_0x539db3['rpcs'][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x5b6)]=![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x915)]=![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x5a3)]=null,_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x7cb)]=null,_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)]['mutedStateMixer']=null,_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x475)]=null,_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x665)]={},_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+'_screen'][_0x49e793(0x13e)]=![],_0x539db3['rpcs'][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x422)]=![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x4aa)]=![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x852)]=![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+'_screen'][_0x49e793(0x112)]=![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x17e)]=null,_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0xfa)]=![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)]['screenShareState']=!![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x24d)]=0x64,_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+'_screen'][_0x49e793(0x480)]=0x0,_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+'_screen'][_0x49e793(0x796)]=0x0,_0x539db3['rpcs'][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x8b8)]='1',_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x591)]='1',_0x539db3['rpcs'][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x377)]=![],_0x539db3['rpcs'][_0xd4b6e3+'_screen']['pliCount']=0x0,_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+'_screen'][_0x49e793(0x4bc)]=![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x670)]=![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+'_screen']['canvasCtx']=null,_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x766)]=null,_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x586)]={},_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+'_screen'][_0x49e793(0x4b0)]=![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+'_screen']['iframeEle']=![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+'_screen'][_0x49e793(0x488)]=Date[_0x49e793(0x5a8)](),_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x110)]=![],_0x539db3['rpcs'][_0xd4b6e3+_0x49e793(0x326)]['savedVolume']=![],(_0x539db3[_0x49e793(0x4fe)]==0x2||_0x539db3['activeSpeaker']==0x4)&&(_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)]['loudest']=!![]),_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x792)]=_0x539db3[_0x49e793(0x51f)][_0xd4b6e3]['screenElement'],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x792)][_0x49e793(0x7a4)]['UUID']=_0xd4b6e3+_0x49e793(0x326),_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x792)]['id']=_0x49e793(0x75f)+_0xd4b6e3+'_screen',_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x562)]&&(_0x539db3['rpcs'][_0xd4b6e3+_0x49e793(0x326)]['videoElement'][_0x49e793(0x7a4)]['sid']=_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+'_screen'][_0x49e793(0x562)]),_0x539db3['rpcs'][_0xd4b6e3+'_screen'][_0x49e793(0x792)][_0x49e793(0x366)]=![],_0x539db3['rpcs'][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x932)]=![],setupIncomingScreenTracking(_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x792)],_0xd4b6e3+_0x49e793(0x326)),_0x539db3[_0x49e793(0x51f)][_0xd4b6e3][_0x49e793(0x30f)][_0x49e793(0x2b5)]=createMediaStream(),_0x3919f5[_0x49e793(0x21a)](function(_0x4eb9e5){var _0x51feb5=_0x49e793;_0x539db3['rpcs'][_0xd4b6e3][_0x51feb5(0x30f)][_0x51feb5(0x2b5)][_0x51feb5(0x233)](_0x4eb9e5);}),_0x539db3['rpcs'][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x792)][_0x49e793(0x866)]=!![],_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)][_0x49e793(0x792)][_0x49e793(0x7af)](_0x49e793(0x741),''),mediaSourceUpdated(_0xd4b6e3+_0x49e793(0x326),_0x539db3[_0x49e793(0x51f)][_0xd4b6e3+_0x49e793(0x326)]['streamID'])):_0x3919f5[_0x49e793(0x21a)](function(_0x117e3b){var _0x3e7598=_0x49e793,_0x3c0373=![];_0x539db3[_0x3e7598(0x51f)][_0xd4b6e3][_0x3e7598(0x30f)]['srcObject'][_0x3e7598(0x317)]()[_0x3e7598(0x21a)](function(_0x2466d4){_0x2466d4['id']==_0x117e3b['id']&&(_0x3c0373=!![]);}),!_0x3c0373&&_0x539db3['rpcs'][_0xd4b6e3][_0x3e7598(0x30f)][_0x3e7598(0x2b5)][_0x3e7598(0x233)](_0x117e3b);});},_0x539db3[_0x173334(0x406)]=function(_0x29e8dd,_0x1ec365){var _0x257e52=_0x173334;if(_0x539db3['badStreamList'][_0x257e52(0x4ee)](_0x539db3[_0x257e52(0x51f)][_0x1ec365]['streamID'])){errorlog('new\x20connection\x20is\x20contained\x20in\x20badStreamList\x202!\x20This\x20shouldn\x27t\x20happen');return;}var _0x1c0bf7=[],_0xcd8c36=![];if(_0x29e8dd[_0x257e52(0x70c)]&&_0x29e8dd[_0x257e52(0x70c)][0x0])_0xcd8c36=_0x29e8dd[_0x257e52(0x70c)][0x0],_0x1c0bf7=_0xcd8c36[_0x257e52(0x317)]();else{if(_0x29e8dd[_0x257e52(0x37f)])_0x1c0bf7['push'](_0x29e8dd[_0x257e52(0x37f)]);else{errorlog(_0x257e52(0x841));return;}}if(_0x539db3[_0x257e52(0x51f)][_0x1ec365][_0x257e52(0x17e)]){var _0x2a1d38=_0x539db3[_0x257e52(0x51f)][_0x1ec365][_0x257e52(0x17e)][_0x257e52(0x317)]();_0x1c0bf7[_0x257e52(0x21a)](function(_0x510c9c){var _0x2e33fa=_0x257e52;_0x2a1d38[_0x2e33fa(0x21a)](function(_0x3d9da9){var _0x1455e3=_0x2e33fa;if(_0x510c9c['id']==_0x3d9da9['id']){var _0x10b9dd=_0x1c0bf7[_0x1455e3(0x854)](_0x510c9c);_0x10b9dd>-0x1&&_0x1c0bf7[_0x1455e3(0x540)](_0x10b9dd,0x1);}});});}var _0x5c82a5=![];if(_0x539db3[_0x257e52(0x51f)][_0x1ec365][_0x257e52(0xfa)]&&_0x539db3[_0x257e52(0x51f)][_0x1ec365][_0x257e52(0xfa)][_0x257e52(0x425)]){log(_0x257e52(0x24a)+_0x539db3[_0x257e52(0x51f)][_0x1ec365]['screenIndexes']);var _0x54f056=_0x539db3[_0x257e52(0x51f)][_0x1ec365][_0x257e52(0x224)]();for(var _0x3d1e8c=0x0;_0x3d1e8c<_0x54f056[_0x257e52(0x425)];_0x3d1e8c++){for(var _0xd7292d=0x0;_0xd7292d<_0x1c0bf7[_0x257e52(0x425)];_0xd7292d++){if(_0x54f056[_0x3d1e8c]['track']&&_0x54f056[_0x3d1e8c]['track']['id']==_0x1c0bf7[_0xd7292d]['id'])for(var _0x415b99=0x0;_0x415b99<_0x539db3[_0x257e52(0x51f)][_0x1ec365][_0x257e52(0xfa)]['length'];_0x415b99++){if(_0x539db3['rpcs'][_0x1ec365][_0x257e52(0xfa)][_0x415b99]==_0x3d1e8c){_0x5c82a5=!![];break;}}if(_0x5c82a5)break;}if(_0x5c82a5)break;}}log(_0x257e52(0x12a)+_0x5c82a5);try{var _0x2ed6ac=_0x1c0bf7[_0x257e52(0x425)];while(_0x2ed6ac--){if(_0x1c0bf7[_0x2ed6ac]['kind']==_0x257e52(0x81e)){if(_0x539db3[_0x257e52(0x2c4)]!==![]&&!_0x539db3[_0x257e52(0x2c4)][_0x257e52(0x4ee)](_0x539db3['rpcs'][_0x1ec365][_0x257e52(0x562)])){_0x1c0bf7['splice'](_0x2ed6ac,0x1);continue;}else{if(_0x539db3[_0x257e52(0x51f)][_0x1ec365]['settings']&&_0x539db3[_0x257e52(0x51f)][_0x1ec365][_0x257e52(0x110)][_0x257e52(0x2a6)]&&_0x5c82a5)continue;else{if(_0x539db3['rpcs'][_0x1ec365]['settings']&&!_0x539db3[_0x257e52(0x51f)][_0x1ec365][_0x257e52(0x110)][_0x257e52(0x81e)]){_0x1c0bf7[_0x257e52(0x540)](_0x2ed6ac,0x1);continue;}}}}else{if(_0x1c0bf7[_0x2ed6ac][_0x257e52(0x7d2)]==_0x257e52(0x6e1)){if(_0x539db3[_0x257e52(0x655)]!==![]&&!_0x539db3[_0x257e52(0x655)][_0x257e52(0x4ee)](_0x539db3[_0x257e52(0x51f)][_0x1ec365][_0x257e52(0x562)])){_0x1c0bf7[_0x257e52(0x540)](_0x2ed6ac,0x1);continue;}else{if(_0x539db3[_0x257e52(0x51f)][_0x1ec365]['settings']&&_0x539db3[_0x257e52(0x51f)][_0x1ec365][_0x257e52(0x110)][_0x257e52(0x2a6)]&&_0x5c82a5)continue;else{if(_0x539db3[_0x257e52(0x51f)][_0x1ec365][_0x257e52(0x110)]&&!_0x539db3[_0x257e52(0x51f)][_0x1ec365][_0x257e52(0x110)]['audio']){_0x1c0bf7['splice'](_0x2ed6ac,0x1);continue;}}}}}}}catch(_0x1a2f01){errorlog(_0x1a2f01);}if(!_0x1c0bf7[_0x257e52(0x425)]){log('NO\x20NEW\x20TRACKS?');return;}if(_0x5c82a5){_0x539db3[_0x257e52(0x1c4)](_0x1c0bf7,_0x1ec365);return;}_0x539db3[_0x257e52(0x845)]!==![]&&playoutdelay(_0x1ec365);_0x539db3[_0x257e52(0x529)](),_0x539db3[_0x257e52(0x568)]();_0xcd8c36&&(_0xcd8c36[_0x257e52(0x3fc)]=function(_0x4bbb5a){var _0x31c861=_0x257e52;try{warnlog('Track\x20was\x20removed'),_0x539db3[_0x31c861(0x51f)][_0x1ec365][_0x31c861(0x17e)][_0x31c861(0x317)]()[_0x31c861(0x21a)](_0x31b35a=>{var _0x3b6dd2=_0x31c861;_0x31b35a['id']==_0x4bbb5a[_0x3b6dd2(0x37f)]['id']&&_0x539db3[_0x3b6dd2(0x51f)][_0x1ec365][_0x3b6dd2(0x17e)]['removeTrack'](_0x31b35a);}),_0x4bbb5a[_0x31c861(0x37f)]['kind']==_0x31c861(0x81e)?updateIncomingVideoElement(_0x1ec365,!![],![]):updateIncomingVideoElement(_0x1ec365,![],!![]),updateIncomingVideoElement(_0x1ec365),setTimeout(function(){updateMixer();},0x1);}catch(_0x13f272){}},_0xcd8c36['onerror']=function(_0x26fa00){var _0x1534cd=_0x257e52;errorlog(_0x26fa00);try{warnlog(_0x1534cd(0x57a)),_0x539db3[_0x1534cd(0x51f)][_0x1ec365]['streamSrc']['getTracks']()[_0x1534cd(0x21a)](_0x377877=>{var _0x1c206f=_0x1534cd;try{_0x377877['id']==_0x26fa00[_0x1c206f(0x37f)]['id']&&_0x539db3['rpcs'][_0x1ec365][_0x1c206f(0x17e)]['removeTrack'](_0x377877);}catch(_0x128769){}}),_0x26fa00[_0x1534cd(0x37f)][_0x1534cd(0x7d2)]==_0x1534cd(0x81e)?updateIncomingVideoElement(_0x1ec365,!![],![]):updateIncomingVideoElement(_0x1ec365,![],!![]),setTimeout(function(){updateMixer();},0x1);}catch(_0x891454){errorlog(_0x891454);}});createRichVideoElement(_0x1ec365);!_0x539db3[_0x257e52(0x51f)][_0x1ec365][_0x257e52(0x17e)]&&(_0x539db3[_0x257e52(0x51f)][_0x1ec365][_0x257e52(0x17e)]=createMediaStream(),mediaSourceUpdated(_0x1ec365,_0x539db3['rpcs'][_0x1ec365][_0x257e52(0x562)]));var _0x1738de=![],_0x1b6ab1=![];_0x1c0bf7[_0x257e52(0x21a)](_0x26f172=>{var _0x54dc71=_0x257e52;if(_0x26f172['kind']=='video')_0x1738de=!![];else _0x26f172['kind']=='audio'&&(_0x1b6ab1=!![]);log(_0x54dc71(0x8ea)),_0x539db3[_0x54dc71(0x51f)][_0x1ec365][_0x54dc71(0x17e)][_0x54dc71(0x233)](_0x26f172);});isIFrame&&_0x539db3['sendframes']&&_0x1c0bf7[_0x257e52(0x21a)](_0x10f176=>{var _0x15ae87=_0x257e52;if(_0x10f176[_0x15ae87(0x7d2)]==='video')log(_0x15ae87(0x23b)),_0x10f176[_0x15ae87(0x463)]=new MediaStreamTrackProcessor(_0x10f176)[_0x15ae87(0x250)][_0x15ae87(0x123)](),_0x10f176['frameReader'][_0x15ae87(0x758)]()[_0x15ae87(0x1f1)](function _0x2b57cb({done:_0x34bcd6,value:_0x138e69}){var _0x28dc4e=_0x15ae87;if(_0x34bcd6){_0x138e69&&_0x138e69[_0x28dc4e(0x7c0)]();return;}try{parent['postMessage']({'frame':_0x138e69,'UUID':_0x1ec365,'streamID':_0x539db3[_0x28dc4e(0x51f)][_0x1ec365][_0x28dc4e(0x562)],'trackID':_0x10f176['id'],'kind':_0x28dc4e(0x81e)},_0x539db3[_0x28dc4e(0x118)],[_0x138e69]);}catch(_0x446d94){_0x138e69[_0x28dc4e(0x7c0)]();return;}_0x138e69['close'](),_0x10f176[_0x28dc4e(0x463)]['read']()[_0x28dc4e(0x1f1)](_0x2b57cb);});else _0x10f176[_0x15ae87(0x7d2)]===_0x15ae87(0x6e1)&&(log(_0x15ae87(0x1e9)),_0x10f176[_0x15ae87(0x463)]=new MediaStreamTrackProcessor(_0x10f176)['readable'][_0x15ae87(0x123)](),_0x10f176[_0x15ae87(0x463)][_0x15ae87(0x758)]()[_0x15ae87(0x1f1)](function _0x48b4b8({done:_0x268f85,value:_0x95c90e}){var _0x18ba00=_0x15ae87;if(_0x268f85){_0x95c90e&&_0x95c90e[_0x18ba00(0x7c0)]();return;}try{parent[_0x18ba00(0x423)]({'frame':_0x95c90e,'UUID':_0x1ec365,'streamID':_0x539db3[_0x18ba00(0x51f)][_0x1ec365][_0x18ba00(0x562)],'trackID':_0x10f176['id'],'kind':_0x18ba00(0x6e1)},_0x539db3[_0x18ba00(0x118)],[new ArrayBuffer(_0x95c90e)]);}catch(_0x122e9e){_0x95c90e[_0x18ba00(0x7c0)]();return;}_0x95c90e[_0x18ba00(0x7c0)](),_0x10f176[_0x18ba00(0x463)][_0x18ba00(0x758)]()[_0x18ba00(0x1f1)](_0x48b4b8);}));});if(_0x1b6ab1&&_0x1738de)updateIncomingVideoElement(_0x1ec365);else{if(_0x1738de)updateIncomingVideoElement(_0x1ec365,!![],![]);else _0x1b6ab1&&updateIncomingVideoElement(_0x1ec365,![],!![]);}return _0x539db3;if(_0x1738de){var _0x509f2d=![];if(_0x539db3[_0x257e52(0x51f)][_0x1ec365][_0x257e52(0x27b)]&&_0x539db3[_0x257e52(0x51f)][_0x1ec365][_0x257e52(0x27b)][_0x257e52(0x61a)]&&_0x539db3[_0x257e52(0x51f)][_0x1ec365][_0x257e52(0x27b)]['info'][_0x257e52(0x535)]&&_0x539db3[_0x257e52(0x51f)][_0x1ec365]['stats'][_0x257e52(0x61a)]['Browser']==='Firefox'){if(_0x539db3[_0x257e52(0x419)]){if(_0x539db3[_0x257e52(0x29a)]||_0x539db3[_0x257e52(0x4f6)]!==![]&&_0x539db3[_0x257e52(0x4f6)]!==''&&_0x539db3[_0x257e52(0x4a4)]===![]){}else{if(_0x539db3[_0x257e52(0x51f)][_0x1ec365][_0x257e52(0x8d8)]!==![]){if(_0x539db3[_0x257e52(0x51f)][_0x1ec365][_0x257e52(0x8d8)]>=0x0&&_0x539db3[_0x257e52(0x51f)][_0x1ec365][_0x257e52(0x8d8)]<_0x539db3[_0x257e52(0x419)]){}else _0x509f2d={},_0x509f2d[_0x257e52(0x419)]=_0x539db3['bitrate'],_0x539db3[_0x257e52(0x51f)][_0x1ec365][_0x257e52(0x8d8)]=_0x539db3[_0x257e52(0x419)],log('requested\x20video\x20bitrate\x20increase;\x20Firefox\x20peer\x20detected');}else _0x509f2d={},_0x509f2d[_0x257e52(0x419)]=_0x539db3['bitrate'],_0x539db3[_0x257e52(0x51f)][_0x1ec365][_0x257e52(0x8d8)]=_0x539db3[_0x257e52(0x419)],log(_0x257e52(0x644));}}}if(_0x539db3['scale'])_0x509f2d==![]&&(_0x509f2d={}),_0x509f2d[_0x257e52(0x7bf)]=parseFloat(_0x539db3[_0x257e52(0x7bf)]);else(_0x539db3['viewheight']||_0x539db3[_0x257e52(0x275)])&&_0x539db3[_0x257e52(0x93f)](_0x1ec365,_0x539db3[_0x257e52(0x275)]||0x1000,_0x539db3[_0x257e52(0x791)]||0x870);_0x509f2d&&_0x539db3['sendRequest'](_0x509f2d,_0x1ec365);}if(_0x539db3[_0x257e52(0x7a0)]===!![]){var _0x1118f9=function(_0x5282b3){var _0xea1e8e=function(_0x2e0fe3){var _0x56f364=_0x2c19;if(!(_0x2e0fe3 in _0x539db3['rpcs']))return;if(!_0x539db3['rpcs'][_0x2e0fe3][_0x56f364(0x792)])return;try{var _0x119530=_0x539db3[_0x56f364(0x51f)][_0x2e0fe3][_0x56f364(0x792)]['muted'];_0x539db3[_0x56f364(0x51f)][_0x2e0fe3][_0x56f364(0x792)]['muted']=![];}catch(_0x338fcd){warnlog(_0x338fcd);}try{_0x539db3[_0x56f364(0x51f)][_0x2e0fe3]['videoElement']['removeEventListener']('play',_0xea1e8e);}catch(_0xbaeab3){warnlog(_0xbaeab3);}_0x539db3[_0x56f364(0xed)][_0x56f364(0xf5)]=='suspended'&&_0x539db3[_0x56f364(0xed)][_0x56f364(0xf1)]();updateIncomingVideoElement(_0x1ec365,![],!![]);try{_0x539db3[_0x56f364(0x51f)][_0x2e0fe3][_0x56f364(0x792)]['muted']=_0x119530,_0x56f364(0x3b1)in _0x539db3['rpcs'][_0x2e0fe3]&&clearInterval(_0x539db3['rpcs'][_0x5282b3][_0x56f364(0x3b1)]),delete _0x539db3[_0x56f364(0x51f)][_0x2e0fe3][_0x56f364(0x3b1)];}catch(_0x2460bf){warnlog(_0x2460bf);}};return _0xea1e8e(_0x5282b3);};_0x539db3[_0x257e52(0xed)][_0x257e52(0xf5)]==_0x257e52(0x8a5)&&(_0x539db3[_0x257e52(0x227)]=!![]);if(_0x257e52(0x3b1)in _0x539db3[_0x257e52(0x51f)][_0x1ec365]){}else _0x539db3['firstPlayTriggered']==![]?_0x539db3[_0x257e52(0x51f)][_0x1ec365]['eventPlayActive']=setInterval(function(_0x554d34){var _0x406ce8=_0x257e52;_0x554d34 in _0x539db3[_0x406ce8(0x51f)]?(log(_0x406ce8(0x818)),_0x539db3[_0x406ce8(0x227)]&&(clearInterval(_0x539db3[_0x406ce8(0x51f)][_0x554d34][_0x406ce8(0x3b1)]),_0x539db3[_0x406ce8(0x51f)][_0x554d34][_0x406ce8(0x792)][_0x406ce8(0x60b)](_0x406ce8(0x81f),_0x1118f9(_0x554d34)))):log(_0x406ce8(0x56b));},0x3e8,_0x1ec365):(!_0x539db3[_0x257e52(0x51f)][_0x1ec365][_0x257e52(0x3b1)]&&(_0x539db3['rpcs'][_0x1ec365]['eventPlayActive']=!![]),_0x539db3[_0x257e52(0x51f)][_0x1ec365][_0x257e52(0x792)][_0x257e52(0x60b)](_0x257e52(0x81f),_0x1118f9(_0x1ec365)));}_0x539db3[_0x257e52(0x51f)][_0x1ec365][_0x257e52(0x792)][_0x257e52(0x6d8)]=_0x539db3['rpcs'][_0x1ec365][_0x257e52(0x875)],setTimeout(function(){updateMixer();},0x1),_0x539db3[_0x257e52(0x529)](),_0x539db3[_0x257e52(0x568)](),updateUserList();},_0x539db3;}());function getMeshcastCanvasTrack(){var _0x55a840=_0x12766c;!session['mc']&&errorlog(_0x55a840(0x1e1));!session['mc']['canvas']&&(session['mc'][_0x55a840(0x766)]=document[_0x55a840(0x2d0)](_0x55a840(0x766)),session['mc'][_0x55a840(0x766)]['width']=0x140,session['mc'][_0x55a840(0x766)][_0x55a840(0x165)]=0xb4);!session['mc'][_0x55a840(0x3f5)]&&(session['mc'][_0x55a840(0x3f5)]=session['mc']['canvas']['getContext']('2d',{'alpha':![]}),session['mc'][_0x55a840(0x3f5)][_0x55a840(0x857)]='#000',session['mc'][_0x55a840(0x3f5)][_0x55a840(0x1c1)](0x0,0x0,session['mc'][_0x55a840(0x766)]['width'],session['mc'][_0x55a840(0x766)]['height']));!session['mc']['canvasStream']&&(function _0xbb30c2(){var _0x3d71da=_0x55a840;session['mc'][_0x3d71da(0x3f5)]['fillRect'](0x0,0x0,session['mc'][_0x3d71da(0x766)][_0x3d71da(0x5f0)],session['mc']['canvas']['height']),setTimeout(_0xbb30c2,0xfa);}(),session['mc'][_0x55a840(0x53e)]=session['mc'][_0x55a840(0x766)][_0x55a840(0x104)](0x4));var _0x4cc6e4=session['mc']['canvasStream'][_0x55a840(0x82a)]();if(_0x4cc6e4[_0x55a840(0x425)])return _0x4cc6e4[0x0];return errorlog('Meschast\x20canvas\x20not\x20working'),![];}function _0x28f3(){var _0x3bf9ff=['town','RTC\x20Connection\x20seems\x20to\x20be\x20dead\x20or\x20not\x20yet\x20open?\x203','substring','forceRetry','token','mykey','speakerMuted','session.setupScreenShareAddon','maxptime','recording','alpha','new-display-name','scale','close','blow','charging','cause','miss','while','ceil','soloVideo','querySelector','broke','audioLatency','mutedState','protect','selectImageTFLITE_contents','repeat','forcePLI','stopping\x20some\x20preload\x20bitrate\x20','substance','kind','PCS:\x20ICE\x20Disconnected;\x20wait\x20for\x20retry?\x20pcs','tire','WebRTC\x20Connection\x20Closed.\x20Clean\x20up.\x20657','dataOffset','[data-action-type=\x22mute-guest\x22][data--u-u-i-d=\x22','ball','instrument','orderby','jpeg','directorState','run','enhanceAudio','bought','UUID\x20not\x20found;\x20can\x27t\x20close.','udp','Content-Type','Shared\x20website:\x20Possibly\x20too\x20many\x20connections\x20from\x20the\x20same\x20address\x20tried\x20to\x20connect.Visit\x20https://discord.vdo.ninja\x20for\x20support.','downloads','touch','rampUpTime','single','opposite','hands_','loadoutID','writable','world','..\x20waiting\x20for\x20user\x20gesture','scaleResolution','food','miconly','sell','noise','video','play','kept','Transfer\x20was\x20completed\x20successfully','nacks_per_second','shore','waitingWatchList','encodering\x20being\x20kicked','slice','build','directorHash','?ts=','getVideoTracks','statsInterval','frameMeta','pattern','represent','enemy','playback_audio_volume_meter','allowDownloads','cpu','shoulder','audioCodecs','The\x20other\x20end\x20is\x20just\x20being\x20a\x20keener.\x20Ignore\x20it:\x20','hssConnection','top','leave','visible','onerror','apple','enhance','audioConstraints','fun','came','requestedStatsInterval','Something\x20went\x20wrong\x20with\x20incoming\x20track..','overlayNinja','heart','wssid','buffer','\x20is\x20not\x20defined;\x20skipping.','method','chunks','videoWriter','keyframeTimeout','hash','dollar','duck','must','requested\x20file\x20has\x20been\x20removed.','video_encoder','ACTION\x20REJECTED:\x20','slot','bandwidthMuted','indexOf','opus','meshcastBitrate','fillStyle','playbackheader','The\x20request\x20was\x20rejected.\x0a\x0aThe\x20remote\x20OBS\x20system\x20needs\x20a\x20matching\x20passcode\x20set\x20using\x20&remote.\x0a\x0aSee\x20the\x20documentation\x20for\x20help.','remoteFocus','session.limitMaxBandwidth\x20running:\x20','savedBitrate','zoom\x20success','Requested_resolution','videoMuted','CONNECTEED!','acc','his','wash','chunked_mode_audio','many','autoplay','though','Meshcast\x20error:\x20432','status','went','electric','icefilter','heat','sceneDisplay','govern','disableREMB','writeBytes','devicePixelRatio','leavetone','laugh','rotate','tube','when','./media/bg_sample2.webp','solo-scene-connected','waiting\x20for\x20keyframe','leg','recording_audio_pipeline','fill','hanging\x20up','sendPeers','directMigrateIssue','custom\x20layout\x20being\x20applied','hope','disableNACK','prototype','five','ASKING\x20FOR\x20AUDIO\x20AND\x20VIDEO?','cbr','atom','providing\x20answer','container_','chrg','getAudioSettings','reject','directorVideoMuted','ICE\x20closed?','supply','qlr','AndroidFix','writer','done\x20setting\x20degrad','null\x20ice\x20rpcs','fat','add','BROWER\x20DID\x20NOT\x20SUPPORT\x20LIMIT\x20BITRATE','available_outgoing_bitrate_kbps','558514lBCuKM','dark','unshift','mirrorExclude','screenShareBitrate','action','1261989nfVyMI','screenShareElement','remoteInterfaceAPI','hostedTransfers','closeTimeout\x20cancelled;\x204','running','remoteHash','midi','destination','vdoninja','chunkedVideoEnabled','maxaveragebitrate','ontimeout','screensharebutton','obsStateSync','midiHotkeys','channelCount','reload','mediaDevices','ctrl','webrtc-is-blocked','continue','always','allowVideos','opacityDisconnect','money','him','','condition','transfer','Remote\x20request\x20failed\x20to\x20decode;\x20continuing\x20still.','cameraConstraints','addCoDirector','pushLoudness','Second\x20Thread\x20Waiting\x20for\x20TURN\x20LIST\x20to\x20load','numberOfChannels','very','webAudios','collect','nextQueue','Not\x20a\x20scene','about','GOT\x20ICES!!','hand','decimal','silver','Not\x20supported;\x20expected\x20\x27filetransfer\x27','three','label_','directorChat','showSaveFilePicker','canvasWebGL','maxconnections','createAnswer','maxviewers_url','height_url','bandwidth','./media/bg_sample.webp','added\x20audio\x20track','closeTimeout\x20cancelled;\x203','safe','layout-enabled','iframeDetails_','sceneType','left','Bad\x20EBML\x20datatype\x20','42e01f','steel','them','restricted','brought','Audio\x20processing\x20is\x20disabled\x20with\x20this\x20guest.\x20Can\x27t\x20mute\x20or\x20change\x20volume','Answer\x20SDP\x20does\x20not\x20have\x20a\x20matching\x20session\x20ID','720','adding\x20track','match','glass','light','hasOwnProperty','videoOptions','minimumRoomBitrate','remoteMuteState_','processIce','split','trouble','AudioContext','offerSDP','The\x20request\x20failed;\x20the\x20remote\x20user\x20did\x20not\x20recognize\x20you\x20as\x20the\x20director','steve','WebMWriter','nature','sendRequest','[data-action-type=\x27recorder-local\x27][data--u-u-i-d=\x27','instant','fall','quick','most','slotmode','fresh','box','responseText','1048184UKRDBu','virtualcam','ask','sitePassword','binaryType','digest','cid:','prove','Failed\x20attempt\x20to\x20connect\x20as\x20co-director','card','RECONNECTING\x20to\x20HSS;\x20DISCONNECTING\x20FROM\x20TRANSFERRED\x20ROOM','tuning','name','sea','sort','noisegate','lockedAudioBitrate','GOT\x20ICEs!!','body','onopen','canvasIntervalAction','application/sdp','shoe','noREMB','crease','fight','Chrome\x20for\x20iOS','milk','son','apiserver','meshcastCodec','stringify','row','limitTotalBitrate','defaultBackgroundImages','heavy','turn:turn-eu1.vdo.ninja:3478','small','maxpublishers','wire','basic','may','transcript','director-connected','enhanceaudio','voiceMeter','createOffer','theyBeSharksHere','find','roombitrate','thus','main-director','get','column','Remote\x20peer\x20connected\x20to\x20video\x20stream.\x0a\x0aConnection\x20to\x20handshake\x20server\x20being\x20killed\x20on\x20request.\x20This\x20increases\x20security,\x20but\x20the\x20peer\x20will\x20not\x20be\x20able\x20to\x20reconnect\x20automatically\x20on\x20connection\x20failure.\x0a\x0aPress\x20OK\x20to\x20start\x20the\x20stream!','getVideoSettings','Mute\x20video\x203306','/status','requestResolution','user\x20didn\x27t\x20have\x20access\x20for\x20this\x20file.','calculateScale','midiIn','couldn\x27t\x20set\x20rate\x20limit','denoise_url','cry','mute','usual','changeMicrophone','Not\x20director','act','your','\x20---\x20we\x20will\x20ask\x20again','disconnected','loud','provide','audioCtx','plugged_in','syllable','edgelist','resume','old','Seeking\x20beyond\x20the\x20end\x20of\x20file\x20is\x20not\x20allowed','path','state','coDirectorEnable','again','sister','syncState','screenIndexes','horse','poor','signature','require','check','Overwrite\x20crosses\x20blob\x20boundaries','cleanDirector','thing','shall','captureStream','deep','customWSS','tree','school','exclude','setParameters','remove','allowWebp','getAsDataArray','layout','\x20(fail)','settings','optimize','signalMeter','gun','textContent','meshcastScreenShareCodec','limitaudio','noiframe','sendframes','PASSED','lost','retryTimeout','webcamonly','labelstyle','for','random','turn:turn-eu4.vdo.ninja:3478','men','description','getReader','apiSocket','applyIsolatedChat','inline-block','select','\x20(timeout)','applySoloChat','screenshare:\x20','effect','object','well','stream',')\x20failed\x20due\x20to\x20permissions\x20or\x20it\x20was\x20rejected\x20by\x20the\x20user','start\x20writing\x20frames','connectionDetails','large','failed','GOT\x20ICE!!','onaudioprocess','available-speedtest-servers','move','deferring\x20with\x20a\x20promise;\x20hashed\x20room','skin','selected','Chromium-based\x20v','corn','ondatachannel','scaleHeight','studioSoftware','told','debug','FORCE\x20KEYFRAME\x20FOR\x20SCENE','last','mean','38676hIwJGu','mcSetScale','fruit','An\x20RTC\x20error\x20occured','ease','localVoiceMeter','request\x20zoom\x20change:\x20','Transfer\x20was\x20cnacelled\x20by\x20remote\x20user;\x20parital\x20file\x20saved.','part','preventDefault','nation','rail','maxframeRate_q2','sid','requestChangeGating','red','wss','cool','soldier','child','The\x20request\x20(','remember','Publisher\x20is\x20being\x20sent\x20a\x20video\x20stream???\x20NOT\x20EXPECTED!','steam','echoCancellation','chatbutton','forceRotate','include','cut','gave','[data-action-type=\x22volume\x22][data--u-u-i-d=\x22','quality_url','height','\x20:\x20','weather','filename','closeTimeout\x20cancelled;\x207','contain','log','need','SENDING\x20FILE:\x20','meshcastMenu','requestStatsContinuous','midiOut','form','https://turnservers.socialstream.ninja/','disableHotKeys','maintain-resolution','position','reach','example','fell','noun','empty\x20ice..','raw','family','win','streamSrc','midiChannel','couldn\x27t\x20set\x20preferred\x20codec','sendChunks','near','joiningRoom','sending\x20message\x20via\x20server','shine','actual\x20bitrate:','silent','remoteMuted','history','text','active','but','any','disabled','timeout','post','character','bandwidth\x20set\x20c!\x20','story','were','isView','PROBLEM,\x20Senders\x20is\x20more\x20than\x200:\x20','LOADING\x20UP\x20WAITING\x20WATCH\x20STREAM:\x20','Clean\x20up','requestAudioRateLimit','directorPassword','codirectorSettings','resolve','encoder','NOT\x20VIEW\x20TARGET','networkPriority','**\x20connected','month','targetBitrate','sat','createWritable','whether','wing','Chunked_audio','getElementById','keyframeRate','connectPeer','took','closePC','plugged','taintedSession','allowScreen','ctrlKey','allowVideo','decide','localMuteElement','json','triangle','corner','energy','scene-connected','limiting\x20AudioEncoder','focus\x20success','removeTrack','grabFaceData','vDav','initialPublish','maxvideobitrate','sync','fillRect','ontrack','autoSyncCallback','setupScreenShareAddon','setMeshcastVideoBitrate','animal','dead','does','iceConnectionState\x20==\x20connected','\x20---\x20PC\x20TIMED\x20OUT\x20and\x20already\x20deleted.\x20shouldn\x27t\x20happen','stereo\x20enabled','screensharecursor','difficult','abc123','requestVideoRecord','sendOnNewConnect','abs','switchMode','serve','setResolution','Reloading?\x20uh\x20oh.\x20Why\x20didn\x27t\x20it?','flower','root','tainted','too','stopPropagation','Room\x20is\x20already\x20claimed\x20by\x20someone\x20else.','door','introButton','voice','preLimitedBitrate','none','Meshcast\x20not\x20connected;\x20cant\x27\x20create\x20canvas\x20for\x20it','where','turn:turn-eu2.obs.ninja:3478','changeCamera','unmute-guest','Only\x20the\x20main\x20director\x20can\x20use\x20this\x20setting','onconnectionstatechange\x20pcs\x20ice\x20--\x20disconnected,\x20but\x20not\x20yet\x20closed?\x20','map','STARTING\x20NEW\x20AUDIO\x20TRACK','RTC\x20Connection\x20seems\x20to\x20be\x20dead\x20or\x20not\x20yet\x20open?\x202','sending\x20message\x20via\x20WSS\x20as\x20WebRTC\x20failed\x20to\x20send\x20message;\x20RTC\x20peers\x20only','promptAccess','also','fast','limitTotalBitrateGuests','PUBLISHER\x27s\x20RTC\x20Connection\x20seems\x20to\x20be\x20dead?\x20','then','drop','chunkTime','con','than','meshcast','their','innerText','closeTimeout\x20cancelled;\x205','iframeEle','stay','soft','hat','requestFile','king','micIsolate','encodings','bypass','reason','controls','click','arrive','green','RTC\x20already\x20connected','https://turnservers.rtc.ninja/','enc','talk','pip','und','either','writeEBMLVarIntWidth','getRandomValues','directorSpeakerMuted','title','start','screenshareDenoise','filetransfer','little','wrong','sugar','suffix','forEach','walk','chair','sail','closing\x2013','isInteger','Publisher\x20will\x20be\x20ignored\x20due\x20to\x20max\x20connections\x20already\x20hit','stopping\x20old\x20track','stick','retryWatchInterval','getReceivers','chunkedtransfer\x20OPEN','hot','firstPlayTriggered','element','toString','estop','closing\x2019','FORCING\x20A\x20KEY\x20FRAME:\x20','probable','cloneNode','drive','closing\x2012','Restarting\x20since\x20closed','maxBitrate','addTrack','Couldn\x27t\x20parse\x20JSON;\x20will\x20attempt\x20as\x20ArrayBuffer\x20UINT8ARRAY','targetAudioBitrate','rpc\x20datachannel\x20closed','TFJSModel','scaleDueToBitrate','wheel','scaleFactor','STARTING\x20NEW\x20VIDEO\x20TRACK','waitImageTimeoutObject','already\x20watching\x20stream','bear','samplingFrequency','surface','transferred','getParameters','oniceconnectionstatechange','Meshcast\x20not\x20available.','iceServers','createScriptProcessor','window','url','been','session.rpcs[UUID].screenIndexes:\x20','limitMeshcastBitrate','image/webp','directorVolumeState','infocus','back','readable','showlabels','grew','iOS\x20devices\x20do\x20not\x20support\x20dynamic\x20bitrates\x20correctly;\x20skipping','meshcastScale','thought','newViewConnection','section','solve','same','done\x20clearing\x20audio','sampleRate','writeDoubleBE','south','The\x20request\x20failed;\x20you\x20can\x27t\x20apply\x20this\x20action\x20to\x20the\x20main\x20director.','observe','local','postInterval','boy','onnegotiationneeded','iframe','ICE\x20DID\x20NOT\x20FIND\x20A\x20PC\x20OPTION?\x20peer\x20might\x20have\x20left\x20before\x20ICE\x20complete','changeSpeaker','hostname','batteryState','quality','onnegotiationneeded\x20triggered;\x20creating\x20offer','\x20as\x20preferred\x20codec\x20by\x20viewer\x20via\x20API\x20(offer)','joinroom','total_outbound_p2p_connections','enhanceAudioEncoder','middle','Setting\x20Codec\x20to\x20vp8','resolution\x20scale:\x20','Raised\x20hand','frameRate','brother','viewwidth','chord','country','https://turnservers.vdo.ninja/','sceneMute','dictionary','stats','hangupDirector','after','deviceId','max_bandwidth_capped_kbps','realUUID','key','train','both','writeString','there','muted_activeSpeaker','turnlist','half','was','details','postURL','connected\x20to\x20video\x20server','aspectRatio','contentHint','SCREENS','rejoining\x20room','The\x20remote\x20control\x20request\x20failed.','UUID\x20does\x20not\x20exist','stopWriter','addIceCandidate','letter','busy','dynamicScale','readyState','WHY\x20ARE\x20YOU\x20GOD\x20DAMN\x20BEEPING','director','roomenc','recorder','data\x20channel\x20being\x20used\x20in\x20reverse;\x20this\x20shouldn\x27t\x20really\x20happen,\x20except\x20if\x20maybe\x20doing\x20a\x20file\x20transfer','flagship','prioritize-audio','front','job','timestamp','jump','batteryMeter','don\x27t','allowscreen','Only\x20the\x20main\x20director\x20can\x20transfer\x20this\x20guest','rub','ICE\x20FAILED','done\x20setting\x20degrad\x20to\x20maintain-framerate','useragent','RTCRtpSender','meat','ptz','codec','dream','music','allowMIDI','slave','Remote\x20TURN\x20LIST\x20Loaded\x20**\x20','srcObject','dress','Invalid\x20remote\x20control\x20code.\x0a\x0aUse\x20the\x20field\x20below\x20to\x20try\x20again\x20with\x20a\x20different\x20passcode.','Update\x20Mixer\x20Event\x20on\x20REsize\x20SET','sceneSync','evening','selectedIndex','chatname','allowAudio','overlayControls','guest','Someone\x20Joined\x20the\x20Room\x20with\x20a\x20video','createMediaStreamSource','great','gather','novideo','mobile','vDAv','recieveFile','process','muteStateTemplate','ArrayBufferDataStream\x27s\x20pos\x20lies\x20beyond\x20end\x20of\x20buffer','dear','deal','tfliteModule','processPCSOnMessage','degrade','createElement','settle','UN-MUTED','ROOMID\x20EANBLED','speakerMute','clean','playback_audio_pipeline','label=','roomclaimed','BYE','Authorization','hundred','screenShareLabel','bar','wss://proxywss.rtc.ninja:443','getAudioTracks','who','anyrequest','directVideoMuted','The\x20main\x20director\x20denied\x20you\x20as\x20a\x20co-director','obsState','water','subtle','Max\x20bandwidth\x20controlling\x20bitrate:\x20','capital','gridlayout','generator','wall','sink','room-is-claimed','Can\x27t\x20change\x20the\x20location\x20once\x20started\x20streaming','open','ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnpqrstuvwxyz23456789','broadcastIFrame','bandwidth\x20set\x20e!\x20','weight','notifyScreenShare','initial_group','general','whose','getTimezoneOffset','turn:turn-cae1.vdo.ninja:3478','hangup','autoadd','CHUNKED\x20DETAILS','network_type','captain','preferCodec','Websocket\x20connection\x20failed\x20or\x20something;\x20this\x20is\x20a\x20split\x20connection.\x20not\x20ideal,\x20as\x20it\x20could\x20be\x20unstable.','configVideo','expect','under','getPCM','forceTcpMode','imageElement','sent','totalBitrate:\x20','out','audioGain','wind','speakerMuted_default','requestKeyframe','chunksInQueue','screenElement','byteLength','quotient','life','delta','begin','notice','division','getTracks','badStreamList','chunked_mode_video','above','session.provideFileList','approved','pointer','chunked','bring','bank','remoteMuteElement','screenshareAEC','cleaning\x20up\x20lost\x20connection\x20--\x20disconnected\x20-\x20iOS\x20specific','sleep','just','_screen','h264profile','zoom','EOF1','VDO-Ninja','vp8','failed\x20to\x20disconnect','interval','RTC\x20Connection\x20seems\x20to\x20be\x20dead\x20or\x20not\x20yet\x20open?\x204','readAsArrayBuffer','draw','soon','autoSyncObject','Created\x20transfer\x20channel','especially','seat','white','closing\x203','currentTarget','\x20(good)','copy','bad','opacity','remoteVideoMuted','father','useinbandfec','spot','minipreview','screenshare_url','option','You\x20are\x20a\x20co-director\x20of\x20this\x20room;\x20you\x20have\x20partial\x20director\x20control\x20assigned\x20to\x20you.','bandwidth\x20set\x20h!\x20','new','nor','eye','tiny','webCodec','Opened\x20transfer\x20channel','pass','true\x20.','director-mute-state','these','limitAudio','request\x20focus\x20change:\x20','obsstudio','desaltStreamID','twenty','never','winter','round','video_muted_init','does\x20any\x20audio\x20exist?','setUint32','unified-plan','writeByte','bitrateTimeout','seedStream','only','race','home','requestStats','edge','speedtest','meshcastScreenShareBitrate','screenshare','house','one','correct','see','death','aec_url','successfully\x20sent\x20message\x20vis\x20WebRTC\x20instead\x20of\x20WSS','de2','huge','language','level','rose','type','ice','watchTimeoutList:','max','obsControl','WEBRTC\x20CONNECTION\x20OPEN','updateLocalStatsInterval','span','view_set','MESHCAST();','send','remoteMuteState','track','care','gpGPU','directorDisplayMuted','preloadbitrate','showClock','showConnections','famous','long','teeth','screenshareContentHint','changeURL','charCodeAt','point','add-a-label','scale\x20set!','age','\x20(ok)','PCM\x20STARTED','screenShareStartPaused','divide','next','msg\x20size\x20error','bird','much','Video\x20File','crypto','noise\x20gate\x20on','keys','guestFeeds','cow','removeChild','password','writer_config','trackNumber','good','RSASSA-PKCS1-v1_5','choose','stopClock','directorList','new-push-connection','closeRPC','security','remoteVideoMuteElement','numeral','setScale','quite','setVideoScale','This\x20shouldn\x27t\x20happen','reduce','eventPlayActive','blindAllGuests','tone','stereo','before','show','ArrayBufferDataStream','updateTime','Stream\x20ID\x20is\x20already\x20in\x20use.','hw_enc','.webm','finger','noise\x20gate\x20off','volume','such','webp','groupAudio','help','sudden','beepToNotify','CriOS','parentNode','least','delayTime','1280','SET\x20SCALING\x20IS\x20FIRING,\x20which\x20is\x20GOOD\x20!!!!!!','mid','ifs','arm','segment','maxframeRate','ab_url','tool','listPromise','equate','afraid','felt','born','audioBitrate','maxBandwidth','failed\x20to\x20send\x20zoom\x20change\x20request','end-view-connection','final','windowed','Incoming\x20Ice\x20Offer\x20does\x20not\x20match\x20Session','sceneType2','sendGenericData','thousand','our','replace','videoMargin','claim','Keyframe\x20inserted','dog','ride','eight','autostart','audio\x20bandwidth\x20set\x20f!','vdo.socialstream.ninja','frame','crowd','joining-room','configAudio','fig','screenshareStereo','west','requestSceneUpdate','nopreview','ctx','noScaling','The\x20remote\x20request\x20failed;\x20the\x20remote\x20token\x20did\x20not\x20match\x20or\x20the\x20remote\x20user\x20does\x20not\x20allow\x20remote\x20control.','room\x20rate\x20restriction\x20detected.\x20No\x20videos\x20will\x20be\x20published\x20to\x20other\x20guests','SHA-256','minute','appendChild','onremovetrack','A\x20Guest\x20joined\x20the\x20room','mainmenu','Failed\x20to\x20determine\x20size\x20of\x20element','importKey','office','screenShareElementHidden','engine','remote-video-mute-state','cleanup','onTrack','statsMenu','https://www.youtube.com/','nine','let','processIceBundle','iceBundle','FileSystemWritableFileStream','spread','forceios','clear','processFrame','natural','heard','carry','way','nodownloads','introOnClean','gone','bitrate','recordLocal','design','earth','webkitAudioContext','Chunked\x20Stream\x20Ended','directorBlue','screensharequality','cpuLimited','scaleWidth','postMessage','poem','length','plan','directorSettings','sound','closing\x2016','10px','copyTo','announceCoDirector','added\x20video\x20track','smell','broadcast=false','bone','channels','.battery-level','simple','ready','successfully\x20requested\x20audio\x20and\x20video','write','width_url','keyname','favor','session','kill','feed','mix','randomize','getTime','fakeUser','soloChatUUID','\x27\x20target=\x27_blank\x27>','search','call','group','vdav','application/','encodeRemote','obs_control','\x20x\x20','sight','closing\x202','getSenders','sendChannel_','foot','yet','high','seed','maxviewers','past','climb','live','defaultPassword','needKeyFrame','channelOffset','midiRemote','directorEnabledPPT','control','forceMediaSettings','ocean','startWriter','defaultIframeSrc','videoaddedtoroom','occur','frameReader','fraction','with','EncodedVideoChunk','-kbps','lowBitrateCutoff','transparent','overlay','pull','The\x20remote\x20request\x20failed;\x20the\x20&remote\x20token\x20did\x20not\x20match\x20or\x20the\x20remote\x20user\x20does\x20not\x20allow\x20remote\x20control.','no\x20pcs[UUID]','createMediaStreamDestination','sendChannel','degradationPreference','throw','channelWidth','BITRATE:\x20','obsControls','mutedStateScene','ICE\x20FAILed.\x20bad?','feel','vdAv','event','wonder','colony','pol1','shop','fit','sending\x20message\x20via\x20WSS\x20as\x20WebRTC\x20failed\x20to\x20send\x20message','directorMutedState','rtc.ninja','8px','codecs','remote-mute-state','street','over','processFrameAudio','startTime','possible','getOptimizedScale:\x20','better','salt','requested-stream','offset','The\x20director\x20approved\x20you\x20as\x20a\x20co-director','current','successfully\x20sent\x20message\x20vis\x20WebRTC\x20instead\x20of\x20WSS\x20to\x20all\x20RTC\x20Peers','Checking\x20to\x20see\x20if\x20reconnectino\x20to\x20ws\x20lost\x20any\x20peers','forest','PONGED','connectionState','activelySpeaking','website','scaleResolutionDownBy','EncodedAudioChunk','closing\x208','catch','sure','pitch','EastSideRepresentZ','stream_configVideo','message','pipe','value','tie','scene','neighbor','effectValue','rule','speed','mono','scaleSnap','charAt','Trying\x20to\x20set\x20','lead','ON\x20NEGO\x20NEEDED','during','iframeSrc','provideFileList','videos','decode','conn_type','arrange','data','view-connection-info','solo','setupYourOwnPlease','POST','signData','label','coat','control-room-co-director','AES-CBC','strange','float','msg','directorUUID','take','camp','requestCoDirector','unit','list','area','focus','square','allowwebp','sticky','1310KMifPe','\x20as\x20preferred\x20codec\x20by\x20viewer\x20via\x20API','Chunked_video','Setting\x20pc\x20connection\x20timeout\x20in\x205\x20seconds\x20??','obs','savedVolume','join','fly','gain','gray','getOpusBitrate','closing\x206','bye','joy','sign','north','study','closeTimeout\x20cancelled;\x202','Should\x20we\x20ask\x20to\x20play\x20the\x20stream\x20Again?','die','hardware_video_encoder','&start=','center','slow','header','new-view-connection','believe','cmd','verify','seeding','CONNECTED\x20TO\x20FIRST\x20PEER','NOT\x20IN\x20VIEW\x20SET','includes','remoteZoom','RTC\x20Connection\x20seems\x20to\x20be\x20dead\x20or\x20not\x20yet\x20open?\x201','userAgent','head4','allowIframe','coast','PolandPirat','roomid','content-type','writeFloatBE','addFrame','particular','power_level','maxMobileBitrate','generateStreamID','activeSpeaker','pong','myVideo.webm','requestChangeCompressor','outboundVideoBitrate','iceTransportPolicy','loadend','term','requestAs','3234880CpRazc','stood','base','code','cleanOutput','codirector_transfer','quiet','trade','pcm','already\x20waiting\x20for\x20stream','webCodecAudio','GET','raisehands','false','fear','vp09.00.10.08','muteState','2241830ZBmDcY','scale\x20scale','desert','from','directorActions','roomhost','make','rpcs','yes','directorBox','bit\x20rate\x20being\x20munged','set-video-scale','cent','OPEN','Max\x20bandwidth\x20being\x20capped:\x20','controlRoomBitrate','&code=','directorSpeakerMute','slots','system','second','init_video','period','obsVisibility','equalizer','decoder','showSettings','completed','Audio\x20isn\x27t\x20setup\x20yet.','Browser','travel','fire','/h264','anysend','requestChangeEQ','generateRandomString','ago','preferVideoCodec','canvasStream','cost','splice','radio','put','guide','closing\x2014','hit','differ','chunked_mode','recording_audio_gain','bitrate_set','stone','similar','micIsolated','flow','necessary','video/webm','getWriter','timer','week','VP9','screen','sendMsg','TRANSFERRING?','prompt-access-request','recordedBlobs','station','obsRemotePassword','work','processDescription2','minptime','oncanplay','writeU8','doctor','lowerhand','streamID','woman','wear','requested\x20file\x20was\x20not\x20found','hear','requestRateLimit','directorDisplayMute','forceRetryTimeout','coDirector','Lost\x20child','gotGenericData','bit','rotate_video','4pDNgAa','crop','game','clicked','requestChangeLowcut','createObjectURL','vp9','platform','send\x20channel\x20open\x20pcs','contentType','floor','Track\x20threw\x20an\x20error;\x20going\x20to\x20reconnect\x20it','among','oxygen','onconnectionstatechange','remote','fileList','privateKey','newMainDirectorSetup','Unknown\x20Meshcast\x20error','turn:www.turn.vdo.ninja:3478','friend','bandwidth\x20set\x20g!\x20','inboundAudioPipeline','present','spring','danger','\x20---\x20PC\x20TIMED\x20OUT,\x20but\x20still\x20alive.\x20Killing\x20it.','strong','fileWriter','lowerVolume','ran','view-connection','isScene','opacityMuted','midiOffset',',\x20isDirector:\x20','car','There\x27s\x20a\x20new\x20incoming\x20connection.','Media','dropped\x20candidate\x20due\x20to\x20filter','wild','displayMute','ice\x20timer\x20no\x20longer\x20exists','audioOptions','noExitPrompt','TrackNumber\x20must\x20be\x20>\x200\x20and\x20<\x20127','getLocalStream','bitrateTimeoutFirefox','can\x27t\x20change\x20bitrate;\x20no\x20video\x20senders\x20found','miniInfo','requestAudioHack','closeTimeout','mount','soil','labelsize','https://meshcast.io/view.html?api=','now','each','late','changeLabel','setVideoBitrate','audioDevice','#obsRemotePassword>input','message\x20could\x20not\x20be\x20sent;\x20queuing\x20it','swim','bright','time','she','setLocalDescription','alert','lockedVideoBitrate','requestUpload','led','getResponseHeader','still','autohide','question','product','between','err','disconnectedTimeout','style','servers','URL','rest','failed\x20to\x20send\x20focus\x20change\x20request','print','permaid','has','migrate','cell','discuss','subtract','iframeVideo','main','double','onload','createDataChannel','other','oil','Bad\x20UINT\x20size\x20','\x20','common','requestChangeSubGain','gyro','remoteDescription','setAudioBitrate','pingTimeout','inputBuffer','want','garden','resending\x20message','bread','saw','Track\x20stopped','setup\x20peer\x20complete','publicKey','toLowerCase','warn','voiceMeterTemplate','processIce2','screenshareAutogain','invent','socialstream','privacy','\x20---\x20we\x20will\x20not\x20ask\x20again;\x20we\x27re\x20already\x20connected','mind','sit','width','zoomedBitrate','utf-8','codirectorRequested','sensorData','addALabel','mouth','nocursor','compressor','UUID','Inbound\x20User-based\x20Message\x20from\x20Room','borderColor','innerHTML','KEY\x20FRAME\x20REQUESTED','querySelectorAll','man','this','why','writeEBMLVarInt','video_bitrate_kbps','sensors','queueList','finish','ori','outputDevice','except','grand','addEventListener','skill','visibility','directorBlindAllGuests','sense','broadcast','pressed','forceScreenShareAspectRatio','Trying\x20to\x20join\x20at\x20least','century','autoGainControl','Firefox','bat','constructor','turn','info','vector','options','flat','audioContentHint','iceConnectionState','come','tail','autoSync','limitAudioEncoder','sendFile','chatmessage','dataReceived','listing','BlobBuffer','proper','together','answer','share','queue','maxsamplerate','agc_url','resolution\x20scale','company','target','checking','pluginVersion','chunkedAudioEnabled','init_audio','codirector_changeURL','stream_configAudio','hunt','[data-sololink]','iframetarget','band','limitMaxBandwidth','18ZSXgxB','since','special','reply','mixMinus','welcomeMessage','requested\x20video\x20bitrate\x20increase;\x20Firefox\x20peer\x20detected','setupIncoming','sharp','meshcastSettings','screenShareState','new\x20connection\x20is\x20contained\x20in\x20badStreamList!\x20This\x20might\x20be\x20the\x20director\x27s\x20video/audio\x20->\x20this\x20a\x20scene?','limitBitrate','Change\x20Label','audioContext','audioChannels','neck','seven','virtualHangup','candidates','offer','videoCodecs','Generate\x20Some\x20Crypto\x20keys\x20first','noaudio','iceTimer','obsCommand','grow','island','Remote\x20peer\x20disconnected.\x20Due\x20to\x20enhanced\x20security,\x20please\x20refresh\x20to\x20create\x20a\x20new\x20connection.','pose','onicecandidate','maintain-framerate','waitImageTimeout','knew','would','appear','resolution','candidate','can\x27t\x20change\x20bitrate;\x20no\x20video\x20sender\x20found','delayNode','measureEBMLVarInt','property','request','configuration','free','applyIsolatedVolume','you','totalSceneBitrate','sendKeyFrameScenes','currentCameraConstraints','order','size','which','totalRoomBitrate','right','spend','rise','relay','delay','7hSShOF','black','closing\x201','no\x20audio\x20track\x20to\x20poke','stretch','cae1','nothing','seedAttempts','setFloat32','charge','else','setRemoteDescription','CLOSED','shift','result','broadcast_mode','createWriteStream','setBitrate','videoDevice','screenStopped','push-connection','children','limitAudioBitrate','morning','guess','encryptMessage','optimizeBitrate','manual','The\x20Director\x20has\x20disabled\x20your\x20vision\x20temporarily
    ','case','Valid\x20co\x20director\x20trying\x20to\x20transfer\x20a\x20guest','canvasSource','starting\x20some\x20preload\x20bitrate\x20','HANG\x20UP\x20COMPLETE','stop','all','screenshareid','arraybuffer','remoteStats','original','problem','h264','getVideoBitrates','until','Someone\x20sent\x20us\x20an\x20ANSWER\x20sdp??','5px','lift','avatar','enabled','meshcastAudioBitrate','outboundAudioBitrate','watchTimeoutList2:','Offset\x20may\x20not\x20be\x20negative','quart','requestCoMigrate','modern','locate','timecode','feet','closing\x2020','follow','measure','MAKING\x20A\x20NEW\x20RPCS\x20RTC\x20CONNECTION','moon','hurry','display','blood','encrypt','consider','screenStream','pos','scaleResolutionDownBy\x20set\x202!','stereo\x20inbound\x20enabled','closing\x204','onmessage','certain','codirector\x20request\x20hash\x20failed','can\x27t\x20change\x20audio\x20bitrate;\x20no\x20audio\x20sender\x20found','frameWriter','valley','turns:www.turn.vdo.ninja:443','Can\x27t\x20play\x20your\x20own\x20stream\x20ID','meet','lowMobileBitrate','recording_audio_compressor_type','cover','chat','dad','face','text/plain','verifyData','SDP\x20Sessions\x20Match.\x20I\x20assume\x20ADDING\x20TRACKS.\x20RPCS','configure','push','updateurl','rotated','lay','sensorDataFilter','class','score','rejected','effectsData','suggest','yellow','audio','objectFit','noNacks','love','publishing\x20SDP\x20Offer:\x20','chunkedStream','pauseClock','brown','quality_limitation_reason','Bearer\x20','mass','getOBSOptimization','requestFocusChange','noiseSuppression','New\x20ON\x20TRACK\x20event','ptime','cross','season','getWrittenSize','videoMutedFlag','muted','transferSettings','shape','burn','art','side','starting\x20kicker','showList','Audio\x20Bitrate\x20is\x20locked;\x20can\x27t\x20update','vb_url','concat','quietOthers','writeUnsignedIntBE','recordingVideoCodec','number','course','1vh','[data-action-type=\x22order-value\x22][data--u-u-i-d=\x22','far','getSettings','PINGED','sendMessage','remote-label-changed','streams','seeding\x20!!','parse','sourceActive','develop','creating\x20answer','tabernac','directorView','compare','allowGraphs','setValueAtTime','quality_ss','waitImage','targetBandwidth','startsWith','ear','Unknown','law','showDirector','audiobitrate','directorBlindButton','summer','human','previewToggleState','store','remoteFocusZoomRequest','pliCount','7441176MkiwVn','bufferedAmount','first','wood','encode','raise','optimizedBitrate','disableWebAudio','measureUnsignedInt','version','loudest','equal','New\x20Label:\x20','closedCaptions','setRequestHeader','not\x20allowed\x20to\x20show\x20the\x20director','layout-updated','remoteRaisedHandElement','proxy','decrypt','hour','sharperScreen','stun:stun.l.google.com:19302','writeU16BE','%\x20battery\x20remaining','early','playsinline','setVideoBitrates','could\x20not\x20be\x20sent;\x20queuing\x20it','requestFile\x20in\x20reverse','application/json;\x20charset=utf-8','disableOBS','said','audioMeterGuest','closed','sdp','IchBinSteveDerNinja','room_init','replaceAll','imagine','showall','classList','channel','m\x20:\x20','#000','trip','are','block','view','read','bandwidth\x20set\x20a!\x20','experiment','cook','autorecordremote','lot','stunServers','videosource_','meterStyle','not-the-director','broadcastChannel','cotton','micDelay','material','canvas','[data-action-type=\x22toggle-group\x22][data--u-u-i-d=\x22','how','mutedStateMixer','stand','onreadystatechange','total','cleaning\x20up\x20lost\x20connection','recieveChunkedStream','force','marginLeft','deferring\x20with\x20a\x20promise','processDescription','plant','endViewConnection','changeOrder','connect','setClock','hidden','setOpusAttributes','pcs','figure','decryptMessage','changeParams','industry','string','pixelFix','receiveChannel','closeTimeout\x20cancelled;\x206\x27\x20retry\x20in\x203s?','wss://api.vdo.ninja:443','beauty','hostedFiles','allowBroadcast','orientation','localDescription','joinRoom','We\x20will\x20not\x20request\x20the\x20meshcast\x20as\x20no\x20audio\x20or\x20video\x20is\x20requested','rtc\x20state:\x20','audioInputChannels','turn:turn-use1.vdo.ninja:3478','board','air','chunkedtransfer','viewheight','videoElement','A\x20director\x20joined\x20the\x20room','detail','populate','nackCount','pow','allowmidi','matter','truck','complete','multiply','sending\x20request\x20via\x20server','behind','manualBandwidth','audioEffects','low','mirrored','pcs\x20RTC\x20CLOSED','dataset','against','verb','controlTimer','ground','ring','div','bind','INITIAL\x20PUBLISH\x20START:\x20','spoke','subject','setAttribute','videosource','closing\x207','set'];_0x28f3=function(){return _0x3bf9ff;};return _0x28f3();}var meshcastServer=![];function selectMeshcast(_0x3688e9){var _0x59118e=_0x12766c;meshcastServer={};var _0x5a588c=_0x3688e9[_0x59118e(0x2bb)],_0x5b8163=_0x3688e9[_0x59118e(0x61c)];meshcastServer[_0x59118e(0x248)]=_0x5b8163[_0x5a588c][_0x59118e(0x248)],meshcastServer[_0x59118e(0x50a)]=_0x5b8163[_0x5a588c][_0x59118e(0x50a)];}async function meshcast(_0x33c3b3=![]){var _0x12930d=_0x12766c;async function _0x2f68db(_0x3dc587,_0x872fa6){var _0x4dc0ea=_0x2c19;const _0x29b987=new XMLHttpRequest();_0x29b987[_0x4dc0ea(0x5d0)]=function(){var _0x381dbc=_0x4dc0ea;if(parseFloat(this[_0x381dbc(0x904)])>=0x0){if(parseFloat(this[_0x381dbc(0x904)])>0x32)_0x3dc587['innerHTML']+='\x20(full)';else{if(parseFloat(this[_0x381dbc(0x904)])>0xa)_0x3dc587['innerHTML']+=_0x381dbc(0x390);else{if(parseFloat(this[_0x381dbc(0x904)])>0x0)_0x3dc587[_0x381dbc(0x5fc)]+=_0x381dbc(0x339);else{var _0x47a8e5=![];_0x3dc587[_0x381dbc(0x13a)]&&(_0x47a8e5=!![]),_0x3dc587[_0x381dbc(0x18e)]=!![],_0x3dc587[_0x381dbc(0x5fc)]+=_0x381dbc(0x10f),document[_0x381dbc(0x1a8)]('edgelist')['appendChild'](_0x3dc587),_0x47a8e5&&(document[_0x381dbc(0x1a8)](_0x381dbc(0xf0))['options'][0x0]['selected']=!![]);}}}}else{var _0x47a8e5=![];_0x3dc587[_0x381dbc(0x13a)]&&(_0x47a8e5=!![]),document[_0x381dbc(0x1a8)](_0x381dbc(0xf0))[_0x381dbc(0x3fb)](_0x3dc587),_0x3dc587[_0x381dbc(0x5fc)]+=_0x381dbc(0x10f),_0x3dc587[_0x381dbc(0x18e)]=!![],_0x47a8e5&&(document[_0x381dbc(0x1a8)]('edgelist')[_0x381dbc(0x61c)][0x0][_0x381dbc(0x13a)]=!![]);}session[_0x381dbc(0x29a)]&&!session[_0x381dbc(0x50b)]&&!session['cleanDirector']&&document[_0x381dbc(0x1a8)](_0x381dbc(0x16e))[_0x381dbc(0x750)][_0x381dbc(0x10b)]('hidden');},_0x29b987[_0x4dc0ea(0x83a)]=function(){var _0x42b949=_0x4dc0ea,_0x193a6e=![];_0x3dc587[_0x42b949(0x13a)]&&(_0x193a6e=!![]),document['getElementById'](_0x42b949(0xf0))['appendChild'](_0x3dc587),_0x3dc587[_0x42b949(0x5fc)]+=_0x42b949(0x10f),_0x3dc587[_0x42b949(0x18e)]=!![],_0x193a6e&&(document['getElementById'](_0x42b949(0xf0))[_0x42b949(0x61c)][0x0][_0x42b949(0x13a)]=!![]);},_0x29b987['open'](_0x4dc0ea(0x512),_0x872fa6,!![]),_0x29b987[_0x4dc0ea(0x18f)]=0x3e8,_0x29b987[_0x4dc0ea(0x8ac)]=function(_0x3d62eb){var _0x2f6c8e=_0x4dc0ea,_0x92b399=![];_0x3dc587[_0x2f6c8e(0x13a)]&&(_0x92b399=!![]),document['getElementById'](_0x2f6c8e(0xf0))[_0x2f6c8e(0x3fb)](_0x3dc587),_0x3dc587['innerHTML']+=_0x2f6c8e(0x128),_0x92b399&&(document['getElementById'](_0x2f6c8e(0xf0))[_0x2f6c8e(0x61c)][0x0][_0x2f6c8e(0x13a)]=!![]);},_0x29b987['send']();}async function _0x5bf5b9(_0x395b99=![]){var _0x3b8319=_0x2c19,_0x4044d2=new Date(),_0x486684=_0x4044d2[_0x3b8319(0x2f8)]();urlParams[_0x3b8319(0x5c8)]('tz')&&(_0x486684=parseInt(urlParams['get']('tz'))||_0x486684),fetch('https://meshcast.io/servers.json?ts='+Date[_0x3b8319(0x5a8)]())[_0x3b8319(0x1f1)](_0xd2c480=>_0xd2c480[_0x3b8319(0x1b4)]())[_0x3b8319(0x1f1)](async _0x5b7937=>{var _0x5a80e0=_0x3b8319;for(var _0x2e321a=0x0;_0x2e321a<_0x5b7937[_0x5a80e0(0x425)];_0x2e321a++){var _0x20e36e=Math['abs'](_0x5b7937[_0x2e321a]['tz']-_0x486684);Math[_0x5a80e0(0x1d1)](_0x20e36e-0x3c*0x18)<_0x20e36e&&(_0x20e36e=Math[_0x5a80e0(0x1d1)](_0x20e36e-0x3c*0x18)),_0x5b7937[_0x2e321a]['delta']=_0x20e36e,session[_0x5a80e0(0x1f6)]!==_0x5b7937[_0x2e321a][_0x5a80e0(0x50a)]&&(_0x5b7937[_0x2e321a][_0x5a80e0(0x313)]+=0x3e8);}_0x5b7937['sort'](compare_deltas);for(var _0x2e321a=0x0;_0x2e321a<_0x5b7937[_0x5a80e0(0x425)];_0x2e321a++){var _0x3ae658=document[_0x5a80e0(0x2d0)](_0x5a80e0(0x343));_0x3ae658[_0x5a80e0(0x50a)]=_0x5b7937[_0x2e321a]['code'],_0x3ae658['url']=_0x5b7937[_0x2e321a]['url'],_0x3ae658['innerHTML']=_0x5b7937[_0x2e321a]['label'],_0x2f68db(_0x3ae658,_0x5b7937[_0x2e321a][_0x5a80e0(0x248)]+_0x5a80e0(0x93e)),document[_0x5a80e0(0x1a8)]('edgelist')[_0x5a80e0(0x3fb)](_0x3ae658);}meshcastServer=_0x5b7937[0x0],_0x395b99&&_0x395b99();});}if(_0x33c3b3){_0x5bf5b9();return;}if(!session[_0x12930d(0x1f6)])return;if(!session[_0x12930d(0x792)][_0x12930d(0x2b5)]||!session['videoElement']['srcObject']['getTracks']()[_0x12930d(0x425)])return;if(session[_0x12930d(0x647)]!==![])return;session[_0x12930d(0x647)]=null,errorlog(_0x12930d(0x37c));var _0x3c4e9b=![];if(session[_0x12930d(0x648)]&&session['meshcastScreenShareCodec'])_0x3c4e9b=session['meshcastScreenShareCodec'];else session['meshcastCodec']&&(_0x3c4e9b=session[_0x12930d(0x923)]);function _0x44f090(_0x5d8bec){var _0x2c5fe5=_0x12930d;warnlog(_0x2c5fe5(0x4ae)),warnlog(_0x5d8bec);try{session['mc'][_0x2c5fe5(0x933)]()[_0x2c5fe5(0x1f1)](function(_0x2a1a75){var _0x32309d=_0x2c5fe5;return _0x2a1a75['sdp']=CodecsHandler[_0x32309d(0x779)](_0x2a1a75[_0x32309d(0x74a)],{'stereo':0x1}),!_0x3c4e9b&&(_0x2a1a75['sdp']=_0x2a1a75[_0x32309d(0x74a)][_0x32309d(0x3e2)](/42001f/gi,_0x32309d(0x8e2)),_0x2a1a75[_0x32309d(0x74a)]=_0x2a1a75[_0x32309d(0x74a)][_0x32309d(0x3e2)](/420029/gi,'42e01f')),warnlog(_0x2a1a75),session['mc'][_0x32309d(0x5b4)](_0x2a1a75);})[_0x2c5fe5(0x1f1)](function(){var _0xd0649=_0x2c5fe5;log(session['mc'][_0xd0649(0x788)]),_0x3fce1c(session['mc'][_0xd0649(0x788)][_0xd0649(0x74a)],_0xd0649(0x74a));})['catch'](function(_0x4e455e){});}catch(_0x4f940c){errorlog(_0x4f940c);}}try{var _0x4c09cb=[],_0x428034=session[_0x12930d(0x4fd)](0xe);async function _0x146841(){var _0x1f84c4=_0x12930d;document['getElementById'](_0x1f84c4(0xf0))['disabled']=!![],document['getElementById'](_0x1f84c4(0xf0))[_0x1f84c4(0x212)]=_0x1f84c4(0x2ee);!session[_0x1f84c4(0x669)]&&await chooseBestTURN();try{session['mc']=new RTCPeerConnection(session[_0x1f84c4(0x669)]),session['mc'][_0x1f84c4(0x27b)]={},session['mc'][_0x1f84c4(0x3d8)]=null,session['mc'][_0x1f84c4(0x7bf)]=![];}catch(_0x49468e){!session[_0x1f84c4(0x50b)]&&warnUser(_0x1f84c4(0x148));}try{var _0x3ee6f0=![];session[_0x1f84c4(0x792)][_0x1f84c4(0x2b5)]&&(_0x3ee6f0=session[_0x1f84c4(0x792)][_0x1f84c4(0x2b5)][_0x1f84c4(0x2df)]());if(!_0x3ee6f0||!_0x3ee6f0[_0x1f84c4(0x425)]){var _0xf7bfa1=new AudioContext(),_0xaca89d=_0xf7bfa1[_0x1f84c4(0x46e)]();_0xaca89d['stream'][_0x1f84c4(0x2df)]()['forEach'](_0x4f0de7=>{_0x3ee6f0=_0x4f0de7;});}else _0x3ee6f0=_0x3ee6f0[0x0];if(session[_0x1f84c4(0x61e)]&&_0x3ee6f0[_0x1f84c4(0x7d2)]===_0x1f84c4(0x6e1))try{_0x3ee6f0[_0x1f84c4(0x28e)]=session[_0x1f84c4(0x61e)];}catch(_0x5a3248){errorlog(_0x5a3248);}session['mc'][_0x1f84c4(0x233)](_0x3ee6f0);var _0x3ee6f0=![];session[_0x1f84c4(0x792)]['srcObject']&&(_0x3ee6f0=session['videoElement']['srcObject']['getVideoTracks']());!_0x3ee6f0||!_0x3ee6f0[_0x1f84c4(0x425)]?_0x3ee6f0=getMeshcastCanvasTrack():_0x3ee6f0=_0x3ee6f0[0x0];if(session['screenShareState']&&session['screenshareContentHint']&&_0x3ee6f0[_0x1f84c4(0x7d2)]===_0x1f84c4(0x81e))try{_0x3ee6f0['contentHint']=session[_0x1f84c4(0x389)];}catch(_0x445f36){errorlog(_0x445f36);}else{if(session['contentHint']&&_0x3ee6f0['kind']===_0x1f84c4(0x81e))try{_0x3ee6f0[_0x1f84c4(0x28e)]=session[_0x1f84c4(0x28e)];}catch(_0x6aa13){errorlog(_0x6aa13);}}session['mc'][_0x1f84c4(0x233)](_0x3ee6f0),session['mc'][_0x1f84c4(0x263)]=_0x44f090,session['mc']['onicecandidate']=function(_0x28d004){var _0x1f1664=_0x1f84c4;if(_0x28d004['candidate']==null)return;log(_0x28d004[_0x1f1664(0x663)]),_0x4c09cb[_0x1f1664(0x6d6)](_0x28d004[_0x1f1664(0x663)]);};}catch(_0x27a25d){errorlog(_0x27a25d);}}!meshcastServer?_0x5bf5b9(_0x146841):_0x146841();}catch(_0x4f8e38){errorlog(_0x4f8e38);}function _0x3fce1c(_0x5b328f,_0x587147,_0x3fb5b5=![]){var _0x4e64ad=_0x12930d;try{var _0x26edc2=new XMLHttpRequest();_0x26edc2[_0x4e64ad(0x76b)]=function(){var _0x1419ad=_0x4e64ad;if(this['readyState']==0x4&&this[_0x1419ad(0x869)]==0xc8){var _0x5bf208=this[_0x1419ad(0x5b9)]('content-type');if(_0x5bf208==_0x1419ad(0x91a)){var _0x5db93d={};_0x5db93d[_0x1419ad(0x74a)]=this['responseText'],_0x5db93d[_0x1419ad(0x373)]=_0x1419ad(0x62b);var _0x2bbba5={};session['stereo']&&session['stereo']!==0x2?_0x2bbba5[_0x1419ad(0x3b4)]=0x1:_0x2bbba5[_0x1419ad(0x3b4)]=0x0;session[_0x1419ad(0x6aa)]&&(session[_0x1419ad(0x6aa)]>0x1fe&&(session[_0x1419ad(0x6aa)]=0x1fe),_0x2bbba5[_0x1419ad(0x8ab)]=session[_0x1419ad(0x6aa)]*0x400,_0x2bbba5[_0x1419ad(0x33f)]=0x1,_0x2bbba5['cbr']=session[_0x1419ad(0x887)]);_0x5db93d[_0x1419ad(0x74a)]=CodecsHandler[_0x1419ad(0x779)](_0x5db93d[_0x1419ad(0x74a)],_0x2bbba5);if(!_0x3c4e9b)_0x5db93d[_0x1419ad(0x74a)]=_0x5db93d['sdp'][_0x1419ad(0x3e2)](/42001f/gi,_0x1419ad(0x8e2)),_0x5db93d[_0x1419ad(0x74a)]=_0x5db93d[_0x1419ad(0x74a)][_0x1419ad(0x3e2)](/420029/gi,_0x1419ad(0x8e2));else _0x3c4e9b[_0x1419ad(0x425)]==0x6&&(_0x5db93d['sdp']=_0x5db93d[_0x1419ad(0x74a)]['replace'](/42e01f/gi,_0x3c4e9b),_0x5db93d[_0x1419ad(0x74a)]=_0x5db93d[_0x1419ad(0x74a)][_0x1419ad(0x3e2)](/42001f/gi,_0x3c4e9b),_0x5db93d[_0x1419ad(0x74a)]=_0x5db93d[_0x1419ad(0x74a)][_0x1419ad(0x3e2)](/420029/gi,_0x3c4e9b),_0x5db93d[_0x1419ad(0x74a)]=_0x5db93d[_0x1419ad(0x74a)][_0x1419ad(0x3e2)](/42a01e/gi,_0x3c4e9b),_0x5db93d['sdp']=_0x5db93d[_0x1419ad(0x74a)][_0x1419ad(0x3e2)](/42a014/gi,_0x3c4e9b),_0x5db93d['sdp']=_0x5db93d['sdp'][_0x1419ad(0x3e2)](/42a00b/gi,_0x3c4e9b),_0x5db93d[_0x1419ad(0x74a)]=_0x5db93d[_0x1419ad(0x74a)][_0x1419ad(0x3e2)](/640c1f/gi,_0x3c4e9b));session['mc'][_0x1419ad(0x684)](_0x5db93d)[_0x1419ad(0x1f1)](function(){var _0x48cbcd=_0x1419ad;if(_0x4c09cb['length']){var _0x5ed907=JSON[_0x48cbcd(0x924)](_0x4c09cb[_0x48cbcd(0x7ec)]());_0x3fce1c(_0x5ed907,_0x48cbcd(0x374),function(){var _0x3b48b0=_0x48cbcd;session[_0x3b48b0(0x146)](),_0x274e54();});}})[_0x1419ad(0x49b)](function(_0x3fdb5e){log(_0x3fdb5e);});}else{if(_0x5bf208=='application/error')this[_0x1419ad(0x904)]==0x1b0?warnUser(_0x1419ad(0x868)):warnUser(_0x1419ad(0x582));else _0x3fb5b5&&_0x3fb5b5();}}};var _0x34d3fb=0x9c4;session['meshcastBitrate']!==![]&&(_0x34d3fb=session[_0x4e64ad(0x856)]);session[_0x4e64ad(0x648)]&&session['meshcastScreenShareBitrate']!==![]&&(_0x34d3fb=session['meshcastScreenShareBitrate']);session['mc'][_0x4e64ad(0x85c)]=_0x34d3fb,session['mc'][_0x4e64ad(0x68a)]=_0x34d3fb;var _0x2f50bd=parseInt(0x61a8/_0x34d3fb)||0xa,_0x368c0a='';_0x3c4e9b&&(_0x3c4e9b[_0x4e64ad(0x425)]==0x6?_0x368c0a=_0x4e64ad(0x538):_0x368c0a='/'+_0x3c4e9b),_0x26edc2['open'](_0x4e64ad(0x4ba),meshcastServer[_0x4e64ad(0x248)]+'/'+_0x2f50bd+_0x368c0a,!![]),_0x26edc2['setRequestHeader'](_0x4e64ad(0x7e2),_0x4e64ad(0x447)+_0x587147+';\x20charset=utf-8'),_0x26edc2[_0x4e64ad(0x735)](_0x4e64ad(0x2da),_0x4e64ad(0x6ea)+_0x428034),_0x26edc2['onerror']=function(_0x3e32e4){var _0x5a0867=_0x4e64ad;errorlog(_0x3e32e4),warnUser(_0x5a0867(0x244));},_0x26edc2[_0x4e64ad(0x37d)](_0x5b328f);}catch(_0x3b2c42){errorlog(_0x3b2c42);}}async function _0x274e54(){var _0x43f945=_0x12930d;if(meshcastServer[_0x43f945(0x50a)])var _0x35c62f=_0x43f945(0x5a7)+meshcastServer[_0x43f945(0x50a)]+'&id='+_0x428034;else var _0x35c62f='https://meshcast.io/view.html?id='+_0x428034;console[_0x43f945(0x16b)]('MESHCAST\x20LINK:\x20'+_0x35c62f),await sleep(0x1f4),session[_0x43f945(0x647)]={'token':_0x428034,'url':meshcastServer[_0x43f945(0x248)]};for(var _0x2319fa in session[_0x43f945(0x77a)]){if(session[_0x43f945(0x77a)][_0x2319fa][_0x43f945(0x1f6)]===null){var _0x4427ba={};_0x4427ba['meshcast']={'token':_0x428034,'url':meshcastServer[_0x43f945(0x248)]},session[_0x43f945(0x70a)](_0x4427ba,_0x2319fa)&&(session[_0x43f945(0x77a)][_0x2319fa]['meshcast']=!![]);}}}}async function meshcastWatch(_0x3461f3,_0x256e96){var _0x22bc4f=_0x12766c;!(_0x3461f3 in session[_0x22bc4f(0x51f)])&&(session[_0x22bc4f(0x51f)][_0x3461f3]={},session[_0x22bc4f(0x51f)][_0x3461f3][_0x22bc4f(0x27b)]={},session[_0x22bc4f(0x51f)][_0x3461f3][_0x22bc4f(0x715)]=![],session[_0x22bc4f(0x51f)][_0x3461f3]['inboundAudioPipeline']={},session['rpcs'][_0x3461f3][_0x22bc4f(0x459)]=![],session[_0x22bc4f(0x51f)][_0x3461f3][_0x22bc4f(0x472)]=![],session[_0x22bc4f(0x51f)][_0x3461f3][_0x22bc4f(0x110)]=![],session[_0x22bc4f(0x51f)][_0x3461f3]['lockedVideoBitrate']=![],session['rpcs'][_0x3461f3][_0x22bc4f(0x915)]=![],errorlog('RPCS\x20for\x20MESHCAST\x20ISNT\x20MADE\x20YET??'));var _0x33f5d2=!![],_0x320865=!![];if(session['novideo']!==![]&&!session['novideo']['includes'](session[_0x22bc4f(0x51f)][_0x3461f3][_0x22bc4f(0x562)]))_0x33f5d2=![];else session[_0x22bc4f(0x51f)][_0x3461f3][_0x22bc4f(0x110)]&&!session[_0x22bc4f(0x51f)][_0x3461f3][_0x22bc4f(0x110)][_0x22bc4f(0x81e)]&&(_0x33f5d2=![]);if(session[_0x22bc4f(0x655)]!==![]&&!session[_0x22bc4f(0x655)][_0x22bc4f(0x4ee)](session[_0x22bc4f(0x51f)][_0x3461f3][_0x22bc4f(0x562)]))_0x320865=![];else session[_0x22bc4f(0x51f)][_0x3461f3][_0x22bc4f(0x110)]&&!session[_0x22bc4f(0x51f)][_0x3461f3][_0x22bc4f(0x110)][_0x22bc4f(0x6e1)]&&(_0x320865=![]);if(!_0x320865&&!_0x33f5d2){errorlog(_0x22bc4f(0x78a));return;}!session['configuration']&&await chooseBestTURN();try{session[_0x22bc4f(0x51f)][_0x3461f3]['mc']=new RTCPeerConnection(session[_0x22bc4f(0x669)]);}catch(_0x2e4336){!session['cleanOutput']&&warnUser('An\x20RTC\x20error\x20occured');}session[_0x22bc4f(0x51f)][_0x3461f3]['mc'][_0x22bc4f(0x1c2)]=function(_0x582578){var _0x4126d0=_0x22bc4f;session[_0x4126d0(0x406)](_0x582578,_0x3461f3);};var _0x219c79=session['generateStreamID'](0xe),_0x9a9be={};_0x9a9be[_0x22bc4f(0x562)]=_0x256e96[_0x22bc4f(0x7b7)],_0x9a9be[_0x22bc4f(0x5f9)]=_0x219c79;function _0x2cba28(_0x5e7ca8){var _0x208488=_0x22bc4f,_0x6f2f5e=new XMLHttpRequest();_0x6f2f5e[_0x208488(0x76b)]=function(){var _0xa5cca5=_0x208488;if(this[_0xa5cca5(0x298)]==0x4&&this['status']==0xc8){var _0x4c6e5e=this['getResponseHeader'](_0xa5cca5(0x4f7));if(_0x4c6e5e==_0xa5cca5(0x91a)){var _0x590917={};_0x590917[_0xa5cca5(0x74a)]=this['responseText'],_0x590917[_0xa5cca5(0x373)]='offer',session['rpcs'][_0x3461f3]['mc']['setRemoteDescription'](_0x590917)[_0xa5cca5(0x1f1)](function(){_0x2bd413();})['catch'](function(_0x5da6b8){log(_0x5da6b8);});}}else log(this);},_0x6f2f5e[_0x208488(0x2ef)]('POST',_0x256e96[_0x208488(0x248)],!![]),_0x6f2f5e[_0x208488(0x735)](_0x208488(0x7e2),_0x208488(0x745)),_0x6f2f5e[_0x208488(0x735)]('Authorization',_0x208488(0x6ea)+_0x256e96[_0x208488(0x7b7)]),_0x6f2f5e[_0x208488(0x37d)](JSON[_0x208488(0x924)](_0x5e7ca8));}function _0x2bd413(){var _0x276da1=_0x22bc4f;session['rpcs'][_0x3461f3]['mc'][_0x276da1(0x8d5)]()[_0x276da1(0x1f1)](function(_0xbd4e4d){var _0x5d7153=_0x276da1;return _0xbd4e4d[_0x5d7153(0x74a)]=CodecsHandler['setOpusAttributes'](_0xbd4e4d[_0x5d7153(0x74a)],{'stereo':0x1}),session[_0x5d7153(0x51f)][_0x3461f3]['mc'][_0x5d7153(0x5b4)](_0xbd4e4d);})[_0x276da1(0x1f1)](function(){var _0x4fe0da=_0x276da1,_0x2c668d={};_0x2c668d[_0x4fe0da(0x5f9)]=_0x219c79,_0x2c668d['answer']=session['rpcs'][_0x3461f3]['mc']['localDescription'][_0x4fe0da(0x74a)],_0x2cba28(_0x2c668d);})[_0x276da1(0x49b)](function(_0x5c37d9){});}_0x2cba28(_0x9a9be);}(function(){'use strict';var _0x362e30=_0x12766c;let _0x5b51c2=function(_0x466d65){var _0x2f2646=_0x2c19;this[_0x2f2646(0x4b6)]=new Uint8Array(_0x466d65),this['pos']=0x0;};_0x5b51c2[_0x362e30(0x884)][_0x362e30(0x801)]=function(_0x52d75e){this['pos']=_0x52d75e;},_0x5b51c2[_0x362e30(0x884)][_0x362e30(0x871)]=function(_0x2bc2ca){var _0x5d73ce=_0x362e30;for(let _0x40e433=0x0;_0x40e433<_0x2bc2ca['length'];_0x40e433++){this[_0x5d73ce(0x4b6)][this['pos']++]=_0x2bc2ca[_0x40e433];}},_0x5b51c2[_0x362e30(0x884)][_0x362e30(0x35c)]=function(_0xda3f4d){var _0x1f52d3=_0x362e30;this[_0x1f52d3(0x4b6)][this[_0x1f52d3(0x6bf)]++]=_0xda3f4d;},_0x5b51c2[_0x362e30(0x884)]['writeU8']=_0x5b51c2[_0x362e30(0x884)][_0x362e30(0x35c)],_0x5b51c2[_0x362e30(0x884)][_0x362e30(0x73e)]=function(_0x480d98){var _0x273dd7=_0x362e30;this[_0x273dd7(0x4b6)][this[_0x273dd7(0x6bf)]++]=_0x480d98>>0x8,this[_0x273dd7(0x4b6)][this['pos']++]=_0x480d98;},_0x5b51c2[_0x362e30(0x884)][_0x362e30(0x25c)]=function(_0x9147e3){var _0x3ee0cb=_0x362e30;let _0x11c16e=new Uint8Array(new Float64Array([_0x9147e3])[_0x3ee0cb(0x845)]);for(let _0x422dc8=_0x11c16e[_0x3ee0cb(0x425)]-0x1;_0x422dc8>=0x0;_0x422dc8--){this[_0x3ee0cb(0x35c)](_0x11c16e[_0x422dc8]);}},_0x5b51c2[_0x362e30(0x884)][_0x362e30(0x4f8)]=function(_0x4f94fa){var _0x1dddd5=_0x362e30;let _0x148447=new Uint8Array(new Float32Array([_0x4f94fa])[_0x1dddd5(0x845)]);for(let _0x422d2b=_0x148447[_0x1dddd5(0x425)]-0x1;_0x422d2b>=0x0;_0x422d2b--){this[_0x1dddd5(0x35c)](_0x148447[_0x422d2b]);}},_0x5b51c2['prototype'][_0x362e30(0x284)]=function(_0x720d1d){var _0x4cbae1=_0x362e30;for(let _0x27c3fe=0x0;_0x27c3fe<_0x720d1d[_0x4cbae1(0x425)];_0x27c3fe++){this[_0x4cbae1(0x4b6)][this[_0x4cbae1(0x6bf)]++]=_0x720d1d[_0x4cbae1(0x38b)](_0x27c3fe);}},_0x5b51c2[_0x362e30(0x884)][_0x362e30(0x20f)]=function(_0x19c9d2,_0x3dfbb8){var _0x39b382=_0x362e30;switch(_0x3dfbb8){case 0x1:this['writeU8'](0x1<<0x7|_0x19c9d2);break;case 0x2:this[_0x39b382(0x55f)](0x1<<0x6|_0x19c9d2>>0x8),this[_0x39b382(0x55f)](_0x19c9d2);break;case 0x3:this[_0x39b382(0x55f)](0x1<<0x5|_0x19c9d2>>0x10),this['writeU8'](_0x19c9d2>>0x8),this[_0x39b382(0x55f)](_0x19c9d2);break;case 0x4:this[_0x39b382(0x55f)](0x1<<0x4|_0x19c9d2>>0x18),this[_0x39b382(0x55f)](_0x19c9d2>>0x10),this[_0x39b382(0x55f)](_0x19c9d2>>0x8),this[_0x39b382(0x55f)](_0x19c9d2);break;case 0x5:this[_0x39b382(0x55f)](0x1<<0x3|_0x19c9d2/0x100000000&0x7),this[_0x39b382(0x55f)](_0x19c9d2>>0x18),this[_0x39b382(0x55f)](_0x19c9d2>>0x10),this[_0x39b382(0x55f)](_0x19c9d2>>0x8),this[_0x39b382(0x55f)](_0x19c9d2);break;default:throw new Error('Bad\x20EBML\x20VINT\x20size\x20'+_0x3dfbb8);}},_0x5b51c2[_0x362e30(0x884)][_0x362e30(0x666)]=function(_0x4e6621){if(_0x4e6621<(0x1<<0x7)-0x1)return 0x1;else{if(_0x4e6621<(0x1<<0xe)-0x1)return 0x2;else{if(_0x4e6621<(0x1<<0x15)-0x1)return 0x3;else{if(_0x4e6621<(0x1<<0x1c)-0x1)return 0x4;else{if(_0x4e6621<0x7ffffffff)return 0x5;else throw new Error('EBML\x20VINT\x20size\x20not\x20supported\x20'+_0x4e6621);}}}}},_0x5b51c2[_0x362e30(0x884)][_0x362e30(0x602)]=function(_0x35aa97){var _0x4e16c6=_0x362e30;this[_0x4e16c6(0x20f)](_0x35aa97,this['measureEBMLVarInt'](_0x35aa97));},_0x5b51c2[_0x362e30(0x884)][_0x362e30(0x701)]=function(_0x24b9a7,_0x3e9721){var _0x40e3fa=_0x362e30;_0x3e9721===undefined&&(_0x3e9721=this[_0x40e3fa(0x72f)](_0x24b9a7));switch(_0x3e9721){case 0x5:this[_0x40e3fa(0x55f)](Math[_0x40e3fa(0x579)](_0x24b9a7/0x100000000));case 0x4:this[_0x40e3fa(0x55f)](_0x24b9a7>>0x18);case 0x3:this[_0x40e3fa(0x55f)](_0x24b9a7>>0x10);case 0x2:this[_0x40e3fa(0x55f)](_0x24b9a7>>0x8);case 0x1:this['writeU8'](_0x24b9a7);break;default:throw new Error(_0x40e3fa(0x5d4)+_0x3e9721);}},_0x5b51c2[_0x362e30(0x884)][_0x362e30(0x72f)]=function(_0x3a9b07){if(_0x3a9b07<0x1<<0x8)return 0x1;else{if(_0x3a9b07<0x1<<0x10)return 0x2;else{if(_0x3a9b07<0x1<<0x18)return 0x3;else return _0x3a9b07<0x100000000?0x4:0x5;}}},_0x5b51c2[_0x362e30(0x884)][_0x362e30(0x10d)]=function(){var _0x4ecc94=_0x362e30;if(this[_0x4ecc94(0x6bf)]this[_0x44499c(0x425)])throw new Error(_0x44499c(0xf3));this[_0x44499c(0x6bf)]=_0x295e3e;},this[_0x4e9240(0x436)]=function(_0x4e5a4a){var _0x3c199b=_0x4e9240;let _0x14025a={'offset':this[_0x3c199b(0x6bf)],'data':_0x4e5a4a,'length':_0x1d5f8b(_0x4e5a4a)},_0x48a6d6=_0x14025a[_0x3c199b(0x48e)]>=this[_0x3c199b(0x425)];this[_0x3c199b(0x6bf)]+=_0x14025a['length'],this[_0x3c199b(0x425)]=Math[_0x3c199b(0x376)](this[_0x3c199b(0x425)],this[_0x3c199b(0x6bf)]),_0x411fd9=_0x411fd9[_0x3c199b(0x1f1)](async function(){var _0x4ee204=_0x3c199b;if(_0xd60d25)return new Promise(function(_0x57d637,_0x41ec27){var _0xd43462=_0x2c19;_0x379680(_0x14025a[_0xd43462(0x4b6)])[_0xd43462(0x1f1)](function(_0x34b692){var _0x2a0602=_0xd43462;let _0x298bd9=0x0,_0x440b58=Buffer[_0x2a0602(0x51b)](_0x34b692[_0x2a0602(0x845)]),_0x184243=function(_0x4e8199,_0x2b1910,_0x246b28){var _0x4176b9=_0x2a0602;_0x298bd9+=_0x2b1910,_0x298bd9>=_0x246b28['length']?_0x57d637():_0x2363a3[_0x4176b9(0x436)](_0xd60d25,_0x246b28,_0x298bd9,_0x246b28[_0x4176b9(0x425)]-_0x298bd9,_0x14025a[_0x4176b9(0x48e)]+_0x298bd9,_0x184243);};_0x2363a3[_0x2a0602(0x436)](_0xd60d25,_0x440b58,0x0,_0x440b58[_0x2a0602(0x425)],_0x14025a[_0x2a0602(0x48e)],_0x184243);});});else{if(_0xf4b9b6)return new Promise(function(_0x21936b,_0x9e8341){var _0x2f8b87=_0x2c19;_0xf4b9b6[_0x2f8b87(0x801)](_0x14025a[_0x2f8b87(0x48e)])[_0x2f8b87(0x1f1)](()=>{var _0x1dc817=_0x2f8b87;_0xf4b9b6[_0x1dc817(0x436)](new Blob([_0x14025a[_0x1dc817(0x4b6)]]));})['then'](()=>{_0x21936b();});});else{if(!_0x48a6d6)for(let _0x3de148=0x0;_0x3de148<_0x303643[_0x4ee204(0x425)];_0x3de148++){let _0xd01e09=_0x303643[_0x3de148];if(!(_0x14025a[_0x4ee204(0x48e)]+_0x14025a[_0x4ee204(0x425)]<=_0xd01e09[_0x4ee204(0x48e)]||_0x14025a[_0x4ee204(0x48e)]>=_0xd01e09[_0x4ee204(0x48e)]+_0xd01e09[_0x4ee204(0x425)])){if(_0x14025a['offset']<_0xd01e09[_0x4ee204(0x48e)]||_0x14025a['offset']+_0x14025a[_0x4ee204(0x425)]>_0xd01e09[_0x4ee204(0x48e)]+_0xd01e09[_0x4ee204(0x425)])throw new Error(_0x4ee204(0x100));if(_0x14025a['offset']==_0xd01e09[_0x4ee204(0x48e)]&&_0x14025a[_0x4ee204(0x425)]==_0xd01e09[_0x4ee204(0x425)]){_0xd01e09['data']=_0x14025a[_0x4ee204(0x4b6)];return;}else return _0x379680(_0xd01e09[_0x4ee204(0x4b6)])['then'](function(_0x1174f4){var _0xa81dd8=_0x4ee204;return _0xd01e09[_0xa81dd8(0x4b6)]=_0x1174f4,_0x379680(_0x14025a['data']);})[_0x4ee204(0x1f1)](function(_0xd75f10){var _0x3cb380=_0x4ee204;_0x14025a[_0x3cb380(0x4b6)]=_0xd75f10,_0xd01e09[_0x3cb380(0x4b6)][_0x3cb380(0x7b2)](_0x14025a[_0x3cb380(0x4b6)],_0x14025a['offset']-_0xd01e09[_0x3cb380(0x48e)]);});}}}}_0x303643[_0x4ee204(0x6d6)](_0x14025a);});},this['complete']=function(_0x55c9fd){var _0x37f17d=_0x4e9240;return _0xd60d25||_0xf4b9b6?_0x411fd9=_0x411fd9['then'](function(){return null;}):_0x411fd9=_0x411fd9[_0x37f17d(0x1f1)](function(){var _0x36f998=_0x37f17d;let _0x5437ee=[];for(let _0x1eaef9=0x0;_0x1eaef9<_0x303643[_0x36f998(0x425)];_0x1eaef9++){_0x5437ee[_0x36f998(0x6d6)](_0x303643[_0x1eaef9][_0x36f998(0x4b6)]);}return new Blob(_0x5437ee,{'type':_0x55c9fd});}),_0x411fd9;};};};window['BlobBuffer']=_0x282f9e(null);}()),(function(){'use strict';var _0x32cf1d=_0x12766c;function _0x2068ee(_0x1aa606){var _0x428fb0=_0x2c19;this[_0x428fb0(0x4a2)]=_0x1aa606;}function _0x3606ab(_0x2be858,_0x2a74a2){var _0x1ca3c9=_0x2c19;let _0x3dd5a3={};return[_0x2be858,_0x2a74a2][_0x1ca3c9(0x21a)](function(_0x289d3e){var _0x54cf3e=_0x1ca3c9;for(let _0x34782b in _0x289d3e){Object[_0x54cf3e(0x884)][_0x54cf3e(0x8ee)][_0x54cf3e(0x444)](_0x289d3e,_0x34782b)&&(_0x3dd5a3[_0x34782b]=_0x289d3e[_0x34782b]);}}),_0x3dd5a3;}function _0x3d1e47(_0x7d0763,_0x1eaa56,_0x1de517){var _0xf6cc66=_0x2c19;if(Array['isArray'](_0x1de517))for(let _0x4ff9ba=0x0;_0x4ff9ba<_0x1de517[_0xf6cc66(0x425)];_0x4ff9ba++){_0x3d1e47(_0x7d0763,_0x1eaa56,_0x1de517[_0x4ff9ba]);}else{if(typeof _0x1de517===_0xf6cc66(0x77f))_0x7d0763['writeString'](_0x1de517);else{if(_0x1de517 instanceof Uint8Array)_0x7d0763[_0xf6cc66(0x871)](_0x1de517);else{if(_0x1de517['id']){_0x1de517[_0xf6cc66(0x48e)]=_0x7d0763[_0xf6cc66(0x6bf)]+_0x1eaa56,_0x7d0763[_0xf6cc66(0x701)](_0x1de517['id']);if(Array['isArray'](_0x1de517['data'])){let _0x541b27,_0x458ef9,_0x119778;_0x1de517[_0xf6cc66(0x671)]===-0x1?_0x7d0763[_0xf6cc66(0x35c)](0xff):(_0x541b27=_0x7d0763[_0xf6cc66(0x6bf)],_0x7d0763[_0xf6cc66(0x871)]([0x0,0x0,0x0,0x0])),_0x458ef9=_0x7d0763[_0xf6cc66(0x6bf)],_0x1de517[_0xf6cc66(0x7d6)]=_0x458ef9+_0x1eaa56,_0x3d1e47(_0x7d0763,_0x1eaa56,_0x1de517[_0xf6cc66(0x4b6)]),_0x1de517[_0xf6cc66(0x671)]!==-0x1&&(_0x119778=_0x7d0763[_0xf6cc66(0x6bf)],_0x1de517['size']=_0x119778-_0x458ef9,_0x7d0763[_0xf6cc66(0x801)](_0x541b27),_0x7d0763[_0xf6cc66(0x20f)](_0x1de517[_0xf6cc66(0x671)],0x4),_0x7d0763[_0xf6cc66(0x801)](_0x119778));}else{if(typeof _0x1de517[_0xf6cc66(0x4b6)]==='string')_0x7d0763[_0xf6cc66(0x602)](_0x1de517[_0xf6cc66(0x4b6)][_0xf6cc66(0x425)]),_0x1de517[_0xf6cc66(0x7d6)]=_0x7d0763['pos']+_0x1eaa56,_0x7d0763['writeString'](_0x1de517[_0xf6cc66(0x4b6)]);else{if(typeof _0x1de517[_0xf6cc66(0x4b6)]===_0xf6cc66(0x703))!_0x1de517[_0xf6cc66(0x671)]&&(_0x1de517[_0xf6cc66(0x671)]=_0x7d0763[_0xf6cc66(0x72f)](_0x1de517[_0xf6cc66(0x4b6)])),_0x7d0763['writeEBMLVarInt'](_0x1de517[_0xf6cc66(0x671)]),_0x1de517[_0xf6cc66(0x7d6)]=_0x7d0763[_0xf6cc66(0x6bf)]+_0x1eaa56,_0x7d0763[_0xf6cc66(0x701)](_0x1de517['data'],_0x1de517[_0xf6cc66(0x671)]);else{if(_0x1de517[_0xf6cc66(0x4b6)]instanceof _0x2068ee)_0x7d0763[_0xf6cc66(0x602)](0x8),_0x1de517[_0xf6cc66(0x7d6)]=_0x7d0763['pos']+_0x1eaa56,_0x7d0763[_0xf6cc66(0x25c)](_0x1de517[_0xf6cc66(0x4b6)][_0xf6cc66(0x4a2)]);else{if(_0x1de517[_0xf6cc66(0x4b6)]instanceof _0x2068ee)_0x7d0763[_0xf6cc66(0x602)](0x4),_0x1de517['dataOffset']=_0x7d0763['pos']+_0x1eaa56,_0x7d0763['writeFloatBE'](_0x1de517[_0xf6cc66(0x4b6)][_0xf6cc66(0x4a2)]);else{if(_0x1de517[_0xf6cc66(0x4b6)]instanceof Uint8Array)_0x7d0763[_0xf6cc66(0x602)](_0x1de517[_0xf6cc66(0x4b6)][_0xf6cc66(0x310)]),_0x1de517['dataOffset']=_0x7d0763[_0xf6cc66(0x6bf)]+_0x1eaa56,_0x7d0763[_0xf6cc66(0x871)](_0x1de517[_0xf6cc66(0x4b6)]);else throw new Error(_0xf6cc66(0x8e1)+typeof _0x1de517[_0xf6cc66(0x4b6)]);}}}}}}else throw new Error(_0xf6cc66(0x8e1)+typeof _0x1de517['data']);}}}}let _0x435f0a=function(_0x1a7f75,_0x5984f5){return function(_0x366202){var _0x4b0f7a=_0x2c19;let _0x357e4b=0x1388,_0x30e0d1=![],_0x4a96b1=0x0,_0x2fb485=0x0,_0x142a72=!![],_0x308156=0x0,_0x5188d5=0xbb80,_0xd1617f=0x1,_0x291f8d=[],_0x2e4d34=0x0,_0x375584=0x0,_0x24bd2b=0x0,_0x55df10={'fileWriter':null,'codec':_0x4b0f7a(0x553)},_0x2c3f6d,_0x396841={'id':0x4489,'data':new _0x2068ee(0x0)},_0x12633b=new _0x5984f5(_0x366202[_0x4b0f7a(0x58c)]);function _0x2501d5(_0x364355,_0x2a10a8){var _0x18890b=_0x4b0f7a;return _0x2a10a8=new Uint8Array(_0x2a10a8),_0x5b3ec5(_0xb53632(_0x364355),_0xae7e4d(_0x2a10a8[_0x18890b(0x310)]),_0x2a10a8);}function _0x5b3ec5(){var _0x5c655e=_0x4b0f7a,_0xf0769d,_0x32a27b=0x0,_0x322306;for(_0xf0769d=0x0;_0xf0769d>>0x18&0xff,_0x4cf3ec>>>0x10&0xff,_0x4cf3ec>>>0x8&0xff,_0x4cf3ec&0xff]);if((_0x4cf3ec&0xff0000)!=0x0)return new Uint8Array([_0x4cf3ec>>>0x10&0xff,_0x4cf3ec>>>0x8&0xff,_0x4cf3ec&0xff]);if((_0x4cf3ec&0xff00)!=0x0)return new Uint8Array([_0x4cf3ec>>>0x8&0xff,_0x4cf3ec&0xff]);if((_0x4cf3ec&0xff)!=0x0)return new Uint8Array([_0x4cf3ec&0xff]);throw'InvalidOperationException';}function _0xae7e4d(_0xcc40d7){if(_0xcc40d7<=0x7f)return new Uint8Array([0x80|_0xcc40d7&0x7f]);if(_0xcc40d7<=0x3fff)return new Uint8Array([0x40|_0xcc40d7>>0x8&0x3f,_0xcc40d7&0xff]);return new Uint8Array([0x8,_0xcc40d7>>>0x18&0xff,_0xcc40d7>>>0x10&0xff,_0xcc40d7>>>0x8&0xff,_0xcc40d7&0xff]);}function _0x461c7d(_0x3089f0,_0x5340b2){var _0x838534=_0x4b0f7a,_0x40caad=new DataView(new ArrayBuffer(0x4));return _0x40caad[_0x838534(0x681)](0x0,_0x5340b2,![]),_0x2501d5(_0x3089f0,new Uint8Array(_0x40caad[_0x838534(0x845)]));}function _0x5392bc(_0x21d553){var _0x4944ab=_0x4b0f7a;if(_0x21d553<=0xff)return new Uint8Array([_0x21d553&0xff]);if(_0x21d553<=0xffff)return new Uint8Array([_0x21d553>>>0x8&0xff,_0x21d553&0xff]);if(_0x21d553<=0xffffff)return new Uint8Array([_0x21d553>>0x10&0xff,_0x21d553>>0x8&0xff,_0x21d553&0xff]);return new Uint8Array([_0x21d553>>>0x18&0xff,_0x21d553>>>0x10&0xff,_0x21d553>>>0x8&0xff,_0x21d553&0xff]);var _0x248cfa=new DataView(new ArrayBuffer(0x4));return _0x248cfa[_0x4944ab(0x35a)](0x0,_0x21d553,![]),_0x248cfa;}function _0x5aa66a(_0x4f0ce5,_0x52b5dd){return _0x2501d5(_0x4f0ce5,_0x5392bc(_0x52b5dd));}function _0x484056(_0x54d510,_0xcd1c0e){var _0x31c91b=_0x4b0f7a;return _0x2501d5(_0x54d510,new TextEncoder()[_0x31c91b(0x72b)](_0xcd1c0e));}function _0x223b98(){var _0x304507=_0x4b0f7a;let _0x212a53={'id':0x1a45dfa3,'data':[_0x5aa66a(0x4286,0x1),_0x5aa66a(0x42f7,0x1),_0x5aa66a(0x42f2,0x4),_0x5aa66a(0x42f3,0x8),_0x484056(0x4282,'webm'),_0x5aa66a(0x4287,0x4),_0x5aa66a(0x4285,0x2)]},_0x559af5={'id':0x1549a966,'data':[_0x5aa66a(0x2ad7b1,0xf4240),_0x484056(0x4d80,_0x304507(0x32a)),_0x484056(0x5741,_0x304507(0x32a)),_0x396841]},_0x358e16=[{'id':0xb0,'data':_0x4a96b1},{'id':0xba,'data':_0x2fb485}],_0x45740d={'id':0x1654ae6b,'data':[{'id':0xae,'data':[_0x5aa66a(0xd7,0x1),_0x5aa66a(0x73c5,0x1),_0x5aa66a(0x9c,0x0),_0x484056(0x22b59c,_0x304507(0x20d)),_0x484056(0x86,'V_'+_0x366202['codec']),_0x5aa66a(0x83,0x1),{'id':0xe0,'data':[_0x5aa66a(0xb0,_0x4a96b1),_0x5aa66a(0xba,_0x2fb485)]}]},{'id':0xae,'data':[_0x5aa66a(0xd7,0x2),_0x5aa66a(0x73c5,0x2),_0x5aa66a(0x9c,0x0),_0x484056(0x22b59c,_0x304507(0x20d)),_0x484056(0x86,'A_OPUS'),_0x5aa66a(0x83,0x2),{'id':0xe1,'data':[_0x461c7d(0xb5,_0x5188d5),_0x5aa66a(0x9f,_0xd1617f)]},_0x2501d5(0x63a2,new Uint8Array(['O'[_0x304507(0x38b)](0x0),'p'[_0x304507(0x38b)](0x0),'u'[_0x304507(0x38b)](0x0),'s'[_0x304507(0x38b)](0x0),'H'['charCodeAt'](0x0),'e'[_0x304507(0x38b)](0x0),'a'[_0x304507(0x38b)](0x0),'d'[_0x304507(0x38b)](0x0),0x1,_0xd1617f&0xff,0x38,0x1,_0x5188d5>>>0x0&0xff,_0x5188d5>>>0x8&0xff,_0x5188d5>>>0x10&0xff,_0x5188d5>>>0x18&0xff,0x0,0x0,0x0]))]}]};_0x2c3f6d={'id':0x18538067,'size':-0x1,'data':[_0x559af5,_0x45740d]};let _0x46165e=new _0x1a7f75(0x200);_0x3d1e47(_0x46165e,_0x12633b['pos'],[_0x212a53,_0x2c3f6d]),_0x12633b[_0x304507(0x436)](_0x46165e['getAsDataArray']()),_0x30e0d1=!![];}function _0x42e90b(_0x3a7b8e){var _0x90939=_0x4b0f7a;let _0x288cb8=new _0x1a7f75(0x1+0x2+0x1);if(!(_0x3a7b8e[_0x90939(0x3a1)]>0x0&&_0x3a7b8e[_0x90939(0x3a1)]<0x7f))throw new Error(_0x90939(0x59d));return _0x288cb8[_0x90939(0x602)](_0x3a7b8e[_0x90939(0x3a1)]),_0x288cb8[_0x90939(0x73e)](_0x3a7b8e[_0x90939(0x6b2)]),_0x288cb8[_0x90939(0x35c)]((_0x3a7b8e[_0x90939(0x373)]=='key'?0x1:0x0)<<0x7),{'id':0xa3,'data':[_0x288cb8[_0x90939(0x10d)](),_0x3a7b8e[_0x90939(0x3ec)]]};}function _0x41feca(_0x15dcc0){var _0x42f855=_0x4b0f7a;return{'id':0x1f43b675,'data':[{'id':0xe7,'data':Math[_0x42f855(0x357)](_0x15dcc0['timecode'])}]};}function _0x3e0ee6(){var _0x50a158=_0x4b0f7a;if(_0x291f8d[_0x50a158(0x425)]===0x0)return;let _0x27ec2d=0x0;for(let _0x50afa3=0x0;_0x50afa3<_0x291f8d[_0x50a158(0x425)];_0x50afa3++){_0x27ec2d+=_0x291f8d[_0x50afa3][_0x50a158(0x3ec)][_0x50a158(0x310)];}let _0x54dfa6=new _0x1a7f75(_0x27ec2d+_0x291f8d[_0x50a158(0x425)]*0x40),_0x1a2adb=_0x41feca({'timecode':Math[_0x50a158(0x357)](_0x2e4d34)});for(let _0x296fb5=0x0;_0x296fb5<_0x291f8d['length'];_0x296fb5++){_0x1a2adb[_0x50a158(0x4b6)]['push'](_0x42e90b(_0x291f8d[_0x296fb5]));}_0x3d1e47(_0x54dfa6,_0x12633b[_0x50a158(0x6bf)],_0x1a2adb),_0x12633b[_0x50a158(0x436)](_0x54dfa6['getAsDataArray']()),_0x291f8d=[],_0x375584=0x0;}function _0x1908e0(_0x158319,_0x39c90d){var _0x3c5820=_0x4b0f7a;_0x158319[_0x3c5820(0x3a1)]=_0x39c90d;var _0x290836=_0x158319['intime']/0x3e8;_0x142a72?(_0x308156=_0x290836,_0x290836=0x0,_0x142a72=![]):_0x290836=_0x290836-_0x308156;_0x24bd2b=_0x290836;if(_0x375584==0x0)_0x2e4d34=_0x290836;_0x158319['timecode']=Math[_0x3c5820(0x357)](_0x290836-_0x2e4d34),_0x291f8d[_0x3c5820(0x6d6)](_0x158319),_0x375584=_0x158319[_0x3c5820(0x6b2)]+0x1,_0x375584>=_0x357e4b&&_0x3e0ee6();}function _0x3d757f(){var _0x53b8c7=_0x4b0f7a;let _0x5a412f=new _0x1a7f75(seekHead[_0x53b8c7(0x671)]),_0x4dddd8=_0x12633b[_0x53b8c7(0x6bf)];_0x3d1e47(_0x5a412f,seekHead[_0x53b8c7(0x7d6)],seekHead[_0x53b8c7(0x4b6)]),_0x12633b[_0x53b8c7(0x801)](seekHead[_0x53b8c7(0x7d6)]),_0x12633b[_0x53b8c7(0x436)](_0x5a412f['getAsDataArray']()),_0x12633b[_0x53b8c7(0x801)](_0x4dddd8);}function _0x35d1fe(){var _0x499afa=_0x4b0f7a;let _0x1c44a2=new _0x1a7f75(0x8),_0x3d3ecf=_0x12633b['pos'];_0x1c44a2[_0x499afa(0x25c)](_0x24bd2b),_0x12633b['seek'](_0x396841['dataOffset']),_0x12633b[_0x499afa(0x436)](_0x1c44a2[_0x499afa(0x10d)]()),_0x12633b['seek'](_0x3d3ecf);}this[_0x4b0f7a(0x4f9)]=function(_0x5321df){var _0x4eb5bb=_0x4b0f7a;!_0x30e0d1&&(_0x4a96b1=_0x366202[_0x4eb5bb(0x5f0)],_0x2fb485=_0x366202[_0x4eb5bb(0x165)],_0x5188d5=_0x366202[_0x4eb5bb(0x23f)],_0xd1617f=_0x366202[_0x4eb5bb(0x431)],_0x223b98());if(_0x5321df[_0x4eb5bb(0x618)][_0x4eb5bb(0x911)]=='EncodedVideoChunk'){let _0x335988=new Uint8Array(_0x5321df['byteLength']);_0x5321df[_0x4eb5bb(0x42b)](_0x335988),_0x1908e0({'frame':_0x335988,'intime':_0x5321df['timestamp'],'type':_0x5321df['type']},0x1);return;}else{if(_0x5321df[_0x4eb5bb(0x618)][_0x4eb5bb(0x911)]==_0x4eb5bb(0x499)){let _0x3215de=new Uint8Array(_0x5321df[_0x4eb5bb(0x310)]);_0x5321df[_0x4eb5bb(0x42b)](_0x3215de),_0x1908e0({'frame':_0x3215de,'intime':_0x5321df[_0x4eb5bb(0x2a2)],'type':_0x5321df[_0x4eb5bb(0x373)]},0x2);return;}}},this[_0x4b0f7a(0x79b)]=function(){var _0x176a91=_0x4b0f7a;return!_0x30e0d1&&_0x223b98(),_0x142a72=!![],_0x3e0ee6(),_0x35d1fe(),_0x12633b[_0x176a91(0x79b)](_0x176a91(0x54f));},this[_0x4b0f7a(0x6f3)]=function(){return _0x12633b['length'];},_0x366202=_0x3606ab(_0x55df10,_0x366202||{});};};window[_0x32cf1d(0x8f9)]=_0x435f0a(window[_0x32cf1d(0x3b7)],window[_0x32cf1d(0x628)]);}()); \ No newline at end of file +var _0x13826c=_0x5f31;(function(_0x206e6d,_0xa58aee){var _0x1fccad=_0x5f31,_0x2e30ca=_0x206e6d();while(!![]){try{var _0xfb2c4f=-parseInt(_0x1fccad(0x693))/0x1+parseInt(_0x1fccad(0x2cc))/0x2+-parseInt(_0x1fccad(0x992))/0x3*(parseInt(_0x1fccad(0x7e5))/0x4)+parseInt(_0x1fccad(0x605))/0x5+parseInt(_0x1fccad(0x53b))/0x6*(-parseInt(_0x1fccad(0x23b))/0x7)+-parseInt(_0x1fccad(0x7a8))/0x8*(-parseInt(_0x1fccad(0x928))/0x9)+-parseInt(_0x1fccad(0x314))/0xa*(-parseInt(_0x1fccad(0xa4e))/0xb);if(_0xfb2c4f===_0xa58aee)break;else _0x2e30ca['push'](_0x2e30ca['shift']());}catch(_0x5caf14){_0x2e30ca['push'](_0x2e30ca['shift']());}}}(_0xf6f0,0xe53c3));function log(_0x2f8dd4){var _0x205cf3=_0x5f31;if(debugSocket){if(debugSocket[_0x205cf3(0x464)]===debugSocket[_0x205cf3(0x592)])for(var _0x580a82=0x0;_0x580a82_0x42284c[_0x5297e6(0xa8b)]())[_0x5297e6(0x63c)](function(_0x5baf0b){var _0xfb75f4=_0x5297e6;_0x5baf0b[_0xfb75f4(0x975)][_0xfb75f4(0xa17)](_0x43efeb=>{var _0x3ca102=_0xfb75f4;try{if(session['forceTcpMode']&&_0x43efeb[_0x3ca102(0x386)]){}else _0x30c587[_0x3ca102(0x68a)](_0x43efeb);}catch(_0x495a75){errorlog(_0x495a75);}});if(isIFrame&&_0x5baf0b['options']&&session['speedtest']&&!session['view'])pokeIframeAPI('available-speedtest-servers',_0x5baf0b['options']);else!session[_0xfb75f4(0x48a)]&&setStorage(_0xfb75f4(0x83e),_0x5baf0b['servers'],0x1);})[_0x5297e6(0x341)](function(_0x11465e){var _0xd59235=_0x5297e6;warnlog(_0x11465e),_0x30c587=[{'username':'steve','credential':_0xd59235(0x748),'urls':[_0xd59235(0x24f)],'tz':0x12c,'udp':![],'locale':_0xd59235(0x6ed)},{'username':'steve','credential':_0xd59235(0x748),'urls':[_0xd59235(0xa29)],'tz':0x12c,'udp':!![],'locale':_0xd59235(0x6ed)},{'username':'vdoninja','credential':_0xd59235(0x57a),'urls':[_0xd59235(0x670)],'tz':0x1e0,'udp':!![],'locale':_0xd59235(0x2f2)},{'username':_0xd59235(0x5f6),'credential':_0xd59235(0x6d5),'urls':[_0xd59235(0x598)],'tz':-0x46,'udp':!![],'locale':'pol1'},{'username':_0xd59235(0x454),'credential':_0xd59235(0x6c9),'urls':[_0xd59235(0x81b)],'tz':-0x3c,'udp':!![],'locale':_0xd59235(0x9f6)},{'username':_0xd59235(0x74e),'credential':'setupYourOwnPlease','urls':[_0xd59235(0x7c5)],'tz':-0x3c,'udp':![],'locale':'de1'},{'username':_0xd59235(0x74e),'credential':_0xd59235(0x748),'urls':['turn:turn-eu1.vdo.ninja:3478'],'tz':-0x3c,'udp':!![],'locale':_0xd59235(0x2fd)},{'username':'vdoninja','credential':'IchBinSteveDerNinja','urls':[_0xd59235(0x7b4)],'tz':-0x3c,'udp':!![],'locale':_0xd59235(0xa0a)},{'username':_0xd59235(0x5f6),'credential':_0xd59235(0x4af),'urls':[_0xd59235(0x72f)],'tz':-0x3c,'udp':![],'locale':_0xd59235(0xa0a)},{'username':_0xd59235(0x5f6),'credential':_0xd59235(0x7fb),'urls':[_0xd59235(0x6d0)],'tz':0x12c,'udp':!![],'locale':'use1'}],_0x30c587=processTURNs(_0x30c587);}),!session[_0x5297e6(0x230)]&&(session[_0x5297e6(0x230)]=[]),session[_0x5297e6(0x6fd)]={'iceServers':session[_0x5297e6(0x230)],'sdpSemantics':_0x5297e6(0x91e)},session[_0x5297e6(0x42b)]&&(session[_0x5297e6(0x6fd)]['iceTransportPolicy']='relay'),!_0x30c587&&(_0x30c587=[]),session['configuration']['iceServers']=session['configuration']['iceServers']['concat'](_0x30c587),log(_0x5297e6(0x914)),!![];}var TURNPromise=null;async function chooseBestTURN(){var _0x12bebe=_0x13826c;if(session[_0x12bebe(0x6fd)])return;return!TURNPromise?TURNPromise=getTURNList():warnlog(_0x12bebe(0x842)),await TURNPromise;}var WebRTC={};WebRTC[_0x13826c(0x4a1)]=(function(){var _0x204338=_0x13826c,_0x164142={};function _0x2abfb7(){var _0x5c22eb=_0x5f31,_0x2d3d4f,_0x3fcc48,_0xe7737d=new Promise((_0x197e9a,_0x27c271)=>{_0x2d3d4f=_0x197e9a,_0x3fcc48=_0x27c271;});return _0xe7737d[_0x5c22eb(0x1fa)]=_0x2d3d4f,_0xe7737d[_0x5c22eb(0x619)]=_0x3fcc48,_0xe7737d;}_0x164142[_0x204338(0x60d)]=function(_0x3983c6=0x7){var _0x1736d7=_0x204338,_0x208a79='',_0x497667=_0x1736d7(0x7f7);for(var _0x25e632=0x0;_0x25e632<_0x3983c6;_0x25e632++){_0x208a79+=_0x497667[_0x1736d7(0x532)](Math[_0x1736d7(0x437)](Math[_0x1736d7(0x44c)]()*_0x497667[_0x1736d7(0x7e9)]));}try{_0x208a79=_0x208a79[_0x1736d7(0x278)]('AD',_0x1736d7(0x739)),_0x208a79=_0x208a79[_0x1736d7(0x278)]('Ad',_0x1736d7(0x8e8)),_0x208a79=_0x208a79[_0x1736d7(0x278)]('ad',_0x1736d7(0x98b)),_0x208a79=_0x208a79[_0x1736d7(0x278)]('aD','vDav');}catch(_0x5b6697){errorlog(_0x5b6697);}return log(_0x208a79),_0x208a79;},_0x164142[_0x204338(0x5cd)]=function(_0x4120a6=0x7){var _0x2875e6=_0x204338,_0x724ded='',_0x27c7e3=[_0x2875e6(0x8e1),'of','to',_0x2875e6(0x3f5),'a','in','is','it',_0x2875e6(0x86e),_0x2875e6(0xa43),'he',_0x2875e6(0x473),_0x2875e6(0x1e3),'on',_0x2875e6(0x38a),_0x2875e6(0x874),'as','I',_0x2875e6(0x6dc),_0x2875e6(0x993),'be','at',_0x2875e6(0x223),_0x2875e6(0x986),'this',_0x2875e6(0x8c5),'or',_0x2875e6(0xa2e),'by',_0x2875e6(0x7ed),'but',_0x2875e6(0x807),_0x2875e6(0x340),'we',_0x2875e6(0x99f),_0x2875e6(0x92a),_0x2875e6(0x49a),_0x2875e6(0x8f8),_0x2875e6(0x41c),'there','when','up','use','your','how','said','an',_0x2875e6(0x541),_0x2875e6(0x31c),_0x2875e6(0x3cb),'do',_0x2875e6(0x4b3),_0x2875e6(0x77c),'if',_0x2875e6(0x347),'way',_0x2875e6(0x820),_0x2875e6(0x2eb),'then',_0x2875e6(0x5e0),_0x2875e6(0x6a9),_0x2875e6(0x477),_0x2875e6(0x824),'so',_0x2875e6(0x211),_0x2875e6(0x8d9),_0x2875e6(0x5cb),_0x2875e6(0x351),'thing',_0x2875e6(0x41d),_0x2875e6(0x7eb),_0x2875e6(0x4c5),_0x2875e6(0x2b9),'look',_0x2875e6(0x988),_0x2875e6(0x271),'could','go','come',_0x2875e6(0x65c),'number',_0x2875e6(0x3cf),'no',_0x2875e6(0x74f),_0x2875e6(0x1f5),'my','over','know',_0x2875e6(0x639),_0x2875e6(0x53e),'call',_0x2875e6(0x3f0),_0x2875e6(0x4f6),_0x2875e6(0x771),_0x2875e6(0x5a9),_0x2875e6(0x50c),'been',_0x2875e6(0xa19),'find',_0x2875e6(0x237),'new',_0x2875e6(0x3d9),_0x2875e6(0x5af),_0x2875e6(0x623),_0x2875e6(0x9e0),_0x2875e6(0xa12),'made','live',_0x2875e6(0x446),_0x2875e6(0x972),'back','little',_0x2875e6(0x3c5),'round','man',_0x2875e6(0x451),_0x2875e6(0x911),'show',_0x2875e6(0x86b),_0x2875e6(0x224),'me',_0x2875e6(0x8aa),_0x2875e6(0x736),_0x2875e6(0x560),_0x2875e6(0x50f),_0x2875e6(0x9f9),_0x2875e6(0x5e8),_0x2875e6(0x98d),_0x2875e6(0x337),'sentence','great',_0x2875e6(0x2d5),_0x2875e6(0x98e),_0x2875e6(0x24c),'low',_0x2875e6(0x97f),_0x2875e6(0x4b2),'turn',_0x2875e6(0x91c),'much','mean',_0x2875e6(0x7d4),'move',_0x2875e6(0x4ac),_0x2875e6(0x500),_0x2875e6(0x901),'too',_0x2875e6(0x42f),_0x2875e6(0x2e6),'does','set',_0x2875e6(0x93c),_0x2875e6(0x5c2),_0x2875e6(0x6e4),_0x2875e6(0x8e4),_0x2875e6(0x8af),'play',_0x2875e6(0x585),_0x2875e6(0x768),_0x2875e6(0x44a),_0x2875e6(0x3fd),_0x2875e6(0x611),_0x2875e6(0x59d),_0x2875e6(0x710),_0x2875e6(0x334),_0x2875e6(0x6a4),_0x2875e6(0x22f),'even',_0x2875e6(0x232),'here',_0x2875e6(0x294),_0x2875e6(0x67c),_0x2875e6(0x637),_0x2875e6(0x46e),_0x2875e6(0x987),_0x2875e6(0x261),'why','ask',_0x2875e6(0x6dd),_0x2875e6(0x240),_0x2875e6(0x575),_0x2875e6(0x680),_0x2875e6(0x79e),_0x2875e6(0x6ee),'need',_0x2875e6(0x8ff),_0x2875e6(0x38b),_0x2875e6(0x4b5),'us',_0x2875e6(0x789),'animal',_0x2875e6(0x33c),_0x2875e6(0x7ea),_0x2875e6(0x9a8),_0x2875e6(0x61b),_0x2875e6(0x1f1),_0x2875e6(0x6cf),'earth','father',_0x2875e6(0x497),'stand',_0x2875e6(0x8ea),_0x2875e6(0x38f),_0x2875e6(0x74a),'country',_0x2875e6(0x242),_0x2875e6(0x615),_0x2875e6(0x471),_0x2875e6(0x6a6),'study','still',_0x2875e6(0x85d),_0x2875e6(0x6c4),_0x2875e6(0x9c7),_0x2875e6(0x345),_0x2875e6(0x8ee),'four',_0x2875e6(0x3f8),_0x2875e6(0x87c),'keep','eye','never','last',_0x2875e6(0x68c),_0x2875e6(0x36a),_0x2875e6(0x313),_0x2875e6(0x47e),_0x2875e6(0x909),_0x2875e6(0x253),_0x2875e6(0x269),_0x2875e6(0x317),'might',_0x2875e6(0x3a7),_0x2875e6(0x490),'far',_0x2875e6(0x6ae),_0x2875e6(0x663),_0x2875e6(0x600),_0x2875e6(0xa68),_0x2875e6(0x5c9),_0x2875e6(0x225),_0x2875e6(0xa8e),_0x2875e6(0x263),_0x2875e6(0x4f8),_0x2875e6(0x266),_0x2875e6(0x2e4),_0x2875e6(0x856),_0x2875e6(0x724),_0x2875e6(0x976),_0x2875e6(0x39f),_0x2875e6(0x7fe),'together',_0x2875e6(0x370),_0x2875e6(0x6d6),_0x2875e6(0x475),_0x2875e6(0x59f),_0x2875e6(0x3a2),_0x2875e6(0x584),_0x2875e6(0x8f6),_0x2875e6(0x510),_0x2875e6(0x772),_0x2875e6(0x285),'always','music',_0x2875e6(0xa6a),_0x2875e6(0x421),_0x2875e6(0x353),_0x2875e6(0x861),_0x2875e6(0x6a2),_0x2875e6(0x685),'mile','river',_0x2875e6(0x766),_0x2875e6(0x7e3),_0x2875e6(0x413),_0x2875e6(0x655),_0x2875e6(0x267),_0x2875e6(0xa1d),_0x2875e6(0x8c4),_0x2875e6(0x95f),_0x2875e6(0x9f8),_0x2875e6(0x6d3),_0x2875e6(0x52b),_0x2875e6(0x63b),_0x2875e6(0x635),_0x2875e6(0x8dd),'mountain',_0x2875e6(0x967),'once','base',_0x2875e6(0x206),_0x2875e6(0xa59),'cut',_0x2875e6(0x7f9),_0x2875e6(0x800),_0x2875e6(0x934),_0x2875e6(0x292),_0x2875e6(0x662),_0x2875e6(0x9ba),_0x2875e6(0x59c),'plain',_0x2875e6(0x4ad),_0x2875e6(0x80f),_0x2875e6(0x45f),_0x2875e6(0x401),'above',_0x2875e6(0x806),_0x2875e6(0x83d),'list',_0x2875e6(0x7d8),_0x2875e6(0xa7e),'talk',_0x2875e6(0x470),_0x2875e6(0x280),'body','dog',_0x2875e6(0x5e9),_0x2875e6(0x665),_0x2875e6(0x58e),_0x2875e6(0x37e),_0x2875e6(0x476),_0x2875e6(0x9dd),_0x2875e6(0x495),_0x2875e6(0x482),_0x2875e6(0x7d5),_0x2875e6(0x2af),_0x2875e6(0x973),_0x2875e6(0x8a5),'wind','question',_0x2875e6(0x6bc),_0x2875e6(0x2d9),'ship',_0x2875e6(0x52e),_0x2875e6(0x6da),_0x2875e6(0x955),'order',_0x2875e6(0x7bc),_0x2875e6(0x32e),_0x2875e6(0xa62),'piece','told',_0x2875e6(0xa39),_0x2875e6(0x44e),_0x2875e6(0x74b),_0x2875e6(0x440),'whole',_0x2875e6(0xa0b),_0x2875e6(0x376),_0x2875e6(0x7b1),_0x2875e6(0x9b5),_0x2875e6(0x5bf),'better',_0x2875e6(0x4d3),'during','hundred','five',_0x2875e6(0x7d3),_0x2875e6(0x66a),_0x2875e6(0xa2c),_0x2875e6(0x474),_0x2875e6(0x4fd),'ground',_0x2875e6(0x610),_0x2875e6(0x260),_0x2875e6(0x202),'verb',_0x2875e6(0x7c1),_0x2875e6(0x55b),_0x2875e6(0x3dd),_0x2875e6(0x9a1),_0x2875e6(0x81a),_0x2875e6(0x654),_0x2875e6(0x980),'ten',_0x2875e6(0x2f0),_0x2875e6(0x4ee),_0x2875e6(0x902),_0x2875e6(0x457),_0x2875e6(0x3d7),_0x2875e6(0x2c5),'against',_0x2875e6(0xa05),_0x2875e6(0x6b3),_0x2875e6(0x5f7),'love',_0x2875e6(0x453),_0x2875e6(0x831),'serve',_0x2875e6(0xa20),_0x2875e6(0x3c8),_0x2875e6(0x28c),'rain','rule',_0x2875e6(0x7ad),'pull',_0x2875e6(0x88d),'notice',_0x2875e6(0x1f9),_0x2875e6(0x367),_0x2875e6(0x388),'town','fine',_0x2875e6(0x5bb),_0x2875e6(0x996),'fall',_0x2875e6(0x3f6),'cry',_0x2875e6(0x897),_0x2875e6(0x30e),'note','wait',_0x2875e6(0x9f3),_0x2875e6(0x32c),_0x2875e6(0x4db),_0x2875e6(0x97c),_0x2875e6(0x328),_0x2875e6(0x633),_0x2875e6(0xa33),'correct','able','pound',_0x2875e6(0x7cd),_0x2875e6(0x920),_0x2875e6(0x9db),_0x2875e6(0x85a),'contain',_0x2875e6(0x445),_0x2875e6(0x7ab),_0x2875e6(0x8cc),_0x2875e6(0x694),'gave',_0x2875e6(0x5be),'oh',_0x2875e6(0xa24),_0x2875e6(0x50b),'ocean',_0x2875e6(0x46a),_0x2875e6(0x4ef),_0x2875e6(0x379),_0x2875e6(0x894),'special',_0x2875e6(0x60c),_0x2875e6(0x364),_0x2875e6(0x70d),_0x2875e6(0x913),_0x2875e6(0x279),'fact',_0x2875e6(0x86f),_0x2875e6(0x76c),_0x2875e6(0x2d3),_0x2875e6(0x236),_0x2875e6(0x2b3),_0x2875e6(0x56e),_0x2875e6(0x873),'full',_0x2875e6(0x2da),_0x2875e6(0x429),_0x2875e6(0x750),_0x2875e6(0x6f9),'surface',_0x2875e6(0x568),'moon',_0x2875e6(0x465),_0x2875e6(0x488),_0x2875e6(0x8ef),_0x2875e6(0x81d),_0x2875e6(0x3bb),_0x2875e6(0x1ec),_0x2875e6(0x40f),'common',_0x2875e6(0x841),_0x2875e6(0x2c4),'plane',_0x2875e6(0x272),_0x2875e6(0xa32),_0x2875e6(0x402),_0x2875e6(0x2a8),_0x2875e6(0x3ff),_0x2875e6(0x455),_0x2875e6(0xa93),_0x2875e6(0x569),'game','shape',_0x2875e6(0x667),_0x2875e6(0x300),_0x2875e6(0x969),'brought',_0x2875e6(0x855),_0x2875e6(0x7d9),_0x2875e6(0x306),_0x2875e6(0x90e),'yes',_0x2875e6(0x8d4),_0x2875e6(0x946),_0x2875e6(0xa1f),_0x2875e6(0x9ee),_0x2875e6(0x506),_0x2875e6(0x6fe),_0x2875e6(0x8d7),_0x2875e6(0x24d),'yet',_0x2875e6(0x89b),_0x2875e6(0x9ef),_0x2875e6(0x468),'am',_0x2875e6(0x433),_0x2875e6(0x702),_0x2875e6(0x4a6),_0x2875e6(0x2c7),_0x2875e6(0x596),_0x2875e6(0x658),_0x2875e6(0x2a4),_0x2875e6(0x7cb),'material',_0x2875e6(0x4cc),_0x2875e6(0x4c9),_0x2875e6(0x9f5),_0x2875e6(0x937),_0x2875e6(0x20d),_0x2875e6(0x64c),'ice',_0x2875e6(0x28b),_0x2875e6(0x217),_0x2875e6(0x6ab),'include',_0x2875e6(0x82f),'syllable','felt','perhaps',_0x2875e6(0x2f6),_0x2875e6(0x594),_0x2875e6(0x83f),_0x2875e6(0x67e),'reason','length',_0x2875e6(0x8d5),_0x2875e6(0x9ad),_0x2875e6(0x8fe),'region',_0x2875e6(0x54a),'hunt',_0x2875e6(0x29a),'bed',_0x2875e6(0x7f5),_0x2875e6(0x708),_0x2875e6(0x3ee),_0x2875e6(0x923),_0x2875e6(0x983),_0x2875e6(0x26d),_0x2875e6(0x5ea),_0x2875e6(0x629),_0x2875e6(0x26f),_0x2875e6(0x5dd),_0x2875e6(0x7bb),_0x2875e6(0x985),_0x2875e6(0x72d),_0x2875e6(0x547),'prove','lone',_0x2875e6(0x8c6),_0x2875e6(0x88b),_0x2875e6(0x785),_0x2875e6(0x341),_0x2875e6(0x830),_0x2875e6(0x3a1),_0x2875e6(0xa72),_0x2875e6(0x5cf),'joy',_0x2875e6(0xa40),_0x2875e6(0x6f0),_0x2875e6(0x2c8),_0x2875e6(0x4d9),_0x2875e6(0x833),'kept',_0x2875e6(0x836),_0x2875e6(0x587),_0x2875e6(0x330),_0x2875e6(0x507),'edge',_0x2875e6(0x511),_0x2875e6(0x4da),'past',_0x2875e6(0xa89),_0x2875e6(0x5e5),_0x2875e6(0x67b),_0x2875e6(0x41b),_0x2875e6(0x4e8),_0x2875e6(0x603),_0x2875e6(0x4f9),'bear',_0x2875e6(0x94f),_0x2875e6(0x7c7),_0x2875e6(0x834),_0x2875e6(0x759),_0x2875e6(0x504),_0x2875e6(0x3ad),_0x2875e6(0xa06),'jump',_0x2875e6(0x767),_0x2875e6(0x5a3),_0x2875e6(0x866),_0x2875e6(0x82a),_0x2875e6(0x9a5),_0x2875e6(0x2e9),_0x2875e6(0x301),_0x2875e6(0x6fc),'metal',_0x2875e6(0x441),_0x2875e6(0x68a),_0x2875e6(0x6b9),_0x2875e6(0x9c2),_0x2875e6(0x617),_0x2875e6(0x494),_0x2875e6(0x66e),'hair',_0x2875e6(0x8c3),_0x2875e6(0x877),_0x2875e6(0x437),_0x2875e6(0x342),_0x2875e6(0x758),_0x2875e6(0x21c),_0x2875e6(0xa08),_0x2875e6(0x8a1),_0x2875e6(0x3ec),'century',_0x2875e6(0x5ff),'type','law',_0x2875e6(0x6d1),_0x2875e6(0x2bd),_0x2875e6(0x4ed),_0x2875e6(0x71d),_0x2875e6(0xa04),_0x2875e6(0x5bc),_0x2875e6(0x96c),_0x2875e6(0xa7a),'roll','temperature','finger',_0x2875e6(0x701),_0x2875e6(0x3c1),_0x2875e6(0x7ec),'lie',_0x2875e6(0x312),'excite',_0x2875e6(0x50a),_0x2875e6(0x76a),_0x2875e6(0x339),_0x2875e6(0x7ba),_0x2875e6(0x62f),'quite',_0x2875e6(0x564),_0x2875e6(0x787),_0x2875e6(0x4b8),_0x2875e6(0xa4d),_0x2875e6(0x291),_0x2875e6(0xa55),_0x2875e6(0x524),'scale',_0x2875e6(0x21a),_0x2875e6(0x8ce),'observe',_0x2875e6(0x3cc),_0x2875e6(0x646),_0x2875e6(0x1e4),_0x2875e6(0x2e1),_0x2875e6(0x73b),_0x2875e6(0x8d3),'speed','method',_0x2875e6(0x480),_0x2875e6(0x6aa),_0x2875e6(0x6e0),'section',_0x2875e6(0x407),_0x2875e6(0x94c),'surprise','quiet',_0x2875e6(0x917),_0x2875e6(0x329),_0x2875e6(0x7bd),_0x2875e6(0x201),_0x2875e6(0xa94),'poor','lot','experiment',_0x2875e6(0x5a6),_0x2875e6(0x39d),_0x2875e6(0x76b),_0x2875e6(0x382),_0x2875e6(0x83a),_0x2875e6(0x7df),_0x2875e6(0x839),_0x2875e6(0x997),_0x2875e6(0x398),_0x2875e6(0x75b),_0x2875e6(0x70e),'trade','melody','trip',_0x2875e6(0x661),_0x2875e6(0x326),_0x2875e6(0x883),_0x2875e6(0x9e7),_0x2875e6(0x92e),_0x2875e6(0x8cb),_0x2875e6(0x35e),'least',_0x2875e6(0x3aa),_0x2875e6(0x45d),_0x2875e6(0x7b7),'wrote',_0x2875e6(0x362),_0x2875e6(0x7ff),_0x2875e6(0x764),_0x2875e6(0x316),_0x2875e6(0x995),_0x2875e6(0x238),_0x2875e6(0x687),_0x2875e6(0xa41),'rise',_0x2875e6(0x979),'blow','oil',_0x2875e6(0xa95),_0x2875e6(0x3c4),_0x2875e6(0x72e),_0x2875e6(0x870),_0x2875e6(0x70a),_0x2875e6(0x77b),'wire',_0x2875e6(0x439),_0x2875e6(0x21e),_0x2875e6(0x638),'wear','garden',_0x2875e6(0x9b1),_0x2875e6(0x368),_0x2875e6(0x7ee),_0x2875e6(0x68d),'fit',_0x2875e6(0xa7c),_0x2875e6(0x743),'bank',_0x2875e6(0xa3f),_0x2875e6(0x7b9),_0x2875e6(0x281),_0x2875e6(0x34e),_0x2875e6(0x740),'woman',_0x2875e6(0x336),'practice',_0x2875e6(0x53a),_0x2875e6(0x33d),_0x2875e6(0x875),_0x2875e6(0x2f1),'protect',_0x2875e6(0x857),_0x2875e6(0x41e),_0x2875e6(0x704),_0x2875e6(0x44f),_0x2875e6(0x354),'insect',_0x2875e6(0x8c0),_0x2875e6(0x210),_0x2875e6(0x59e),_0x2875e6(0x717),'spoke',_0x2875e6(0x50e),_0x2875e6(0x726),_0x2875e6(0x321),_0x2875e6(0xa75),_0x2875e6(0x45c),_0x2875e6(0x423),'crop',_0x2875e6(0x46b),'element','hit',_0x2875e6(0x5d0),_0x2875e6(0x72a),_0x2875e6(0x753),_0x2875e6(0x39c),_0x2875e6(0x8c7),_0x2875e6(0x60b),'imagine',_0x2875e6(0x2d7),'agree',_0x2875e6(0x3b1),_0x2875e6(0x3df),_0x2875e6(0x425),_0x2875e6(0x4de),_0x2875e6(0xa31),'fruit',_0x2875e6(0x698),_0x2875e6(0x89a),'soldier',_0x2875e6(0xa00),_0x2875e6(0x938),_0x2875e6(0x443),_0x2875e6(0x47a),_0x2875e6(0xa3e),_0x2875e6(0x2cb),_0x2875e6(0x467),_0x2875e6(0xa4a),_0x2875e6(0x682),'bat',_0x2875e6(0x5b7),_0x2875e6(0x55f),_0x2875e6(0x20a),_0x2875e6(0x8d8),_0x2875e6(0x9b4),_0x2875e6(0x854),_0x2875e6(0x5d8),_0x2875e6(0x2b2),_0x2875e6(0x5a0),'rub',_0x2875e6(0x86a),'famous','dollar',_0x2875e6(0x5cc),_0x2875e6(0x80e),_0x2875e6(0x715),_0x2875e6(0x469),_0x2875e6(0x8c8),_0x2875e6(0x92d),_0x2875e6(0x850),'chief',_0x2875e6(0x2d0),_0x2875e6(0x7f6),'mine',_0x2875e6(0x349),_0x2875e6(0x88f),_0x2875e6(0x37a),_0x2875e6(0x2ed),_0x2875e6(0x73d),'send',_0x2875e6(0x825),_0x2875e6(0x531),_0x2875e6(0x544),_0x2875e6(0x5ce),_0x2875e6(0x499),_0x2875e6(0x2d8),_0x2875e6(0x3e8),_0x2875e6(0xa92),_0x2875e6(0xa23),_0x2875e6(0x562),_0x2875e6(0x412),_0x2875e6(0xa4c),_0x2875e6(0x2f7),_0x2875e6(0xa7f),_0x2875e6(0x3ed),'sell','success',_0x2875e6(0x9fe),'subtract',_0x2875e6(0x675),'particular','deal',_0x2875e6(0x8da),_0x2875e6(0x601),'opposite','wife','shoe','shoulder',_0x2875e6(0x3d5),_0x2875e6(0x51a),'camp',_0x2875e6(0x71f),_0x2875e6(0x812),_0x2875e6(0x5fb),'determine',_0x2875e6(0x6b5),_0x2875e6(0x40d),_0x2875e6(0x829),_0x2875e6(0x7c8),_0x2875e6(0x75d),_0x2875e6(0x3c6),'gather',_0x2875e6(0x7a3),_0x2875e6(0x5e3),'throw',_0x2875e6(0x4dd),_0x2875e6(0x6be),_0x2875e6(0x87b),'molecule',_0x2875e6(0x950),'wrong',_0x2875e6(0x50d),_0x2875e6(0x557),_0x2875e6(0x755),_0x2875e6(0x29e),_0x2875e6(0x853),_0x2875e6(0x73e),_0x2875e6(0x618),_0x2875e6(0x484),'anger',_0x2875e6(0x2dd),_0x2875e6(0xa1c),'oxygen',_0x2875e6(0x732),_0x2875e6(0x448),_0x2875e6(0xa30),_0x2875e6(0x363),_0x2875e6(0x889),_0x2875e6(0x4c3),_0x2875e6(0x2bc),'magnet',_0x2875e6(0x981),'thank',_0x2875e6(0x9fa),_0x2875e6(0x582),_0x2875e6(0x2c2),_0x2875e6(0x25d),_0x2875e6(0x3fb),_0x2875e6(0x415),_0x2875e6(0x41a),'sister',_0x2875e6(0x7fd),_0x2875e6(0x6a0),_0x2875e6(0x6ef),_0x2875e6(0x7b3),'guide',_0x2875e6(0x94e),_0x2875e6(0x212),_0x2875e6(0x67f),_0x2875e6(0x6f4),_0x2875e6(0x27e),_0x2875e6(0x891),_0x2875e6(0x1e8),_0x2875e6(0x718),_0x2875e6(0x4a8),_0x2875e6(0x62c),_0x2875e6(0x9cb),_0x2875e6(0x7e2),_0x2875e6(0x668),_0x2875e6(0x590),_0x2875e6(0xa2f),_0x2875e6(0x52a),_0x2875e6(0x95c),_0x2875e6(0x630),_0x2875e6(0x522),_0x2875e6(0x778),_0x2875e6(0x7c2),_0x2875e6(0x5c1),_0x2875e6(0x55e),_0x2875e6(0x31a),_0x2875e6(0x219),'arrive',_0x2875e6(0x550),_0x2875e6(0x79c),'parent',_0x2875e6(0x832),'division',_0x2875e6(0xa36),_0x2875e6(0x8c2),_0x2875e6(0x214),_0x2875e6(0x769),_0x2875e6(0x788),_0x2875e6(0x9ae),_0x2875e6(0x447),_0x2875e6(0x8dc),_0x2875e6(0x46c),_0x2875e6(0x5f1),'share','station',_0x2875e6(0x287),_0x2875e6(0x3fc),_0x2875e6(0x34f),_0x2875e6(0x9f0),_0x2875e6(0x277),_0x2875e6(0x8ec),_0x2875e6(0x486),_0x2875e6(0x521),_0x2875e6(0x984),_0x2875e6(0x9df),'market',_0x2875e6(0x78f),_0x2875e6(0x404),_0x2875e6(0x369),_0x2875e6(0x529),_0x2875e6(0x520),_0x2875e6(0x7cf),_0x2875e6(0x9bf),_0x2875e6(0x696),_0x2875e6(0x9d8),_0x2875e6(0x733),_0x2875e6(0x845),_0x2875e6(0x676),_0x2875e6(0x978),_0x2875e6(0x5a7),'path',_0x2875e6(0x373),'log',_0x2875e6(0x583),'quotient',_0x2875e6(0x742),'shell','neck'];for(var _0x1e9c6e=0x0;_0x1e9c6e<0x2;_0x1e9c6e++){try{var _0x399564=parseInt(Math['random']()*0x3e8);_0x724ded+=_0x27c7e3[_0x399564];}catch(_0x1342c9){}}var _0x47550a=_0x2875e6(0x7f7);_0x724ded+=_0x47550a['charAt'](Math['floor'](Math['random']()*_0x47550a[_0x2875e6(0x7e9)]));while(_0x724ded[_0x2875e6(0x7e9)]<_0x4120a6){_0x724ded+=_0x47550a[_0x2875e6(0x532)](Math[_0x2875e6(0x437)](Math[_0x2875e6(0x44c)]()*_0x47550a['length']));}try{_0x724ded=_0x724ded['replaceAll']('AD',_0x2875e6(0x739)),_0x724ded=_0x724ded[_0x2875e6(0x278)]('Ad',_0x2875e6(0x8e8)),_0x724ded=_0x724ded[_0x2875e6(0x278)]('ad',_0x2875e6(0x98b)),_0x724ded=_0x724ded[_0x2875e6(0x278)]('aD',_0x2875e6(0x644));}catch(_0x4aa8d8){errorlog(_0x4aa8d8);}return log(_0x724ded),_0x724ded;},_0x164142[_0x204338(0x97d)]=_0x204338(0x29f),_0x164142[_0x204338(0x7c6)]=null,_0x164142[_0x204338(0x79a)]=![],_0x164142['noaudio']=![],_0x164142[_0x204338(0x310)]=![],_0x164142['activeSpeaker']=![],_0x164142[_0x204338(0x7b6)]=![],_0x164142[_0x204338(0x69c)]=!![],_0x164142[_0x204338(0x58b)]=![],_0x164142[_0x204338(0x452)]=0x32,_0x164142['audioChannels']=0x8,_0x164142[_0x204338(0x390)]=![],_0x164142[_0x204338(0x835)]=![],_0x164142[_0x204338(0x614)]=![],_0x164142[_0x204338(0xa07)]=![],_0x164142[_0x204338(0x730)]=![],_0x164142[_0x204338(0x9fd)]=![],_0x164142[_0x204338(0x2d2)]=![],_0x164142['autoSyncObject']=![],_0x164142[_0x204338(0x6c2)]=![],_0x164142[_0x204338(0x604)]={},_0x164142[_0x204338(0x8a9)]=!![],_0x164142['audioEffects']=null,_0x164142['audioInputChannels']=![],_0x164142['autorecord']=![],_0x164142[_0x204338(0x7a4)]=![],_0x164142[_0x204338(0xa57)]=![],_0x164142['autostart']=![],_0x164142['audioCtx']=new AudioContext(),_0x164142['avatar']=![],_0x164142[_0x204338(0x561)]=![],_0x164142[_0x204338(0x626)]=null,_0x164142[_0x204338(0x3a6)]=null,_0x164142[_0x204338(0x4d5)]=null,_0x164142[_0x204338(0x8ae)]=![],_0x164142[_0x204338(0x3e5)]=![],_0x164142[_0x204338(0x4e9)]=![],_0x164142['broadcastIFrame']=![],_0x164142[_0x204338(0x64d)]=![],_0x164142[_0x204338(0x7ca)]=![],_0x164142[_0x204338(0x64a)]=![],_0x164142[_0x204338(0x79f)]=![],_0x164142[_0x204338(0x52d)]=![],_0x164142[_0x204338(0x9c1)]=![],_0x164142[_0x204338(0x1ef)]=0x0,_0x164142[_0x204338(0x229)]=0x0,_0x164142[_0x204338(0x9c5)]='#000',_0x164142[_0x204338(0x93f)]=0x0,_0x164142[_0x204338(0x659)]=![],_0x164142[_0x204338(0x6b0)]=![],_0x164142['bitrate_set']=![],_0x164142[_0x204338(0x803)]=![],_0x164142['badStreamList']=[],_0x164142[_0x204338(0x7ac)]=null,_0x164142[_0x204338(0x779)]=![],_0x164142[_0x204338(0x1ff)]=null,_0x164142[_0x204338(0x656)]=null,_0x164142[_0x204338(0x75a)]=null,_0x164142['cpuLimited']=![],_0x164142[_0x204338(0x49d)]=![],_0x164142[_0x204338(0xa66)]=![],_0x164142['cleanOutput']=![],_0x164142[_0x204338(0xa09)]=![],_0x164142[_0x204338(0x586)]=![],_0x164142[_0x204338(0x6fd)]=![],_0x164142['compressor']=![],_0x164142[_0x204338(0x707)]=![],_0x164142[_0x204338(0x9dc)]='',_0x164142[_0x204338(0x6eb)]='',_0x164142['screenshareContentHint']='',_0x164142[_0x204338(0x7af)]=![],_0x164142[_0x204338(0x71b)]=null,_0x164142[_0x204338(0x78e)]=![],_0x164142[_0x204338(0x4e4)]=0x1,_0x164142['cover']=![],_0x164142[_0x204338(0x69f)]=null,_0x164142['cameraConstraints']={},_0x164142[_0x204338(0x689)]=![],_0x164142[_0x204338(0x31e)]={},_0x164142[_0x204338(0x9de)]={},_0x164142[_0x204338(0x23c)]=0x0,_0x164142[_0x204338(0x93e)]=0x25a,_0x164142[_0x204338(0x5a5)]=![],_0x164142[_0x204338(0x688)]=![],_0x164142[_0x204338(0x8b7)]=![],_0x164142[_0x204338(0x46d)]=null,_0x164142['sitePassword']=_0x164142[_0x204338(0x8b7)],_0x164142['dataMode']=![],_0x164142[_0x204338(0x82c)]=![],_0x164142[_0x204338(0x209)]=![],_0x164142[_0x204338(0x8fc)]=![],_0x164142[_0x204338(0x752)]=![],_0x164142[_0x204338(0x1fb)]=![],_0x164142[_0x204338(0x85f)]=![],_0x164142[_0x204338(0x5ba)]=![],_0x164142['disableMouseEvents']=![],_0x164142['directorChat']=![],_0x164142[_0x204338(0x8d1)]=0x23,_0x164142[_0x204338(0x1e2)]=![],_0x164142[_0x204338(0x356)]=null,_0x164142[_0x204338(0x722)]=null,_0x164142[_0x204338(0x4f1)]=[],_0x164142[_0x204338(0x4ff)]=![],_0x164142[_0x204338(0x609)]=![],_0x164142['directorUUID']=![],_0x164142[_0x204338(0x479)]=null,_0x164142[_0x204338(0x81e)]=![],_0x164142[_0x204338(0x38e)]=!![],_0x164142[_0x204338(0x7fa)]=![],_0x164142['effect']=![],_0x164142[_0x204338(0xa37)]=![],_0x164142[_0x204338(0x9a0)]=![],_0x164142['fakeUser']=![],_0x164142[_0x204338(0x3a4)]=![],_0x164142[_0x204338(0x22c)]=![],_0x164142[_0x204338(0xa5c)]=![],_0x164142['forceRetry']=0xe10,_0x164142['equalizer']=![],_0x164142[_0x204338(0x958)]=new TextEncoder('utf-8'),_0x164142[_0x204338(0x4b9)]=![],_0x164142[_0x204338(0x502)]=![],_0x164142[_0x204338(0x6f2)]=![],_0x164142[_0x204338(0x804)]=![],_0x164142[_0x204338(0x749)]=[],_0x164142['hostedTransfers']=[],_0x164142['hangupbutton']=null,_0x164142[_0x204338(0x6d8)]=![],_0x164142[_0x204338(0x827)]=![],_0x164142['frameRate']=![],_0x164142[_0x204338(0x29b)]=![],_0x164142[_0x204338(0x921)]=![],_0x164142[_0x204338(0x8ba)]=null,_0x164142[_0x204338(0x514)]=![],_0x164142[_0x204338(0x953)]=![],_0x164142[_0x204338(0x727)]=![],_0x164142[_0x204338(0x295)]=![],_0x164142['noisegate']=null,_0x164142[_0x204338(0x285)]=[],_0x164142[_0x204338(0x977)]=![],_0x164142[_0x204338(0x226)]=![],_0x164142['guestFeeds']=null,_0x164142['grabFaceData']=![],_0x164142[_0x204338(0x6e5)]=![],_0x164142['hash']=![],_0x164142[_0x204338(0x93b)]=![],_0x164142[_0x204338(0xa18)]=![],_0x164142[_0x204338(0x89c)]=![],_0x164142[_0x204338(0x6cc)]=![],_0x164142[_0x204338(0x230)]=[{'urls':['stun:stun.l.google.com:19302',_0x204338(0x672)]}],_0x164142[_0x204338(0x8fb)]=![],_0x164142[_0x204338(0x36c)]=[],_0x164142['noiframe']=![],_0x164142[_0x204338(0x536)]=![],_0x164142[_0x204338(0xa5d)]=![],_0x164142[_0x204338(0x9bb)]=0x1,_0x164142[_0x204338(0x4fa)]=![],_0x164142[_0x204338(0x648)]=![],_0x164142[_0x204338(0xa4f)]=![],_0x164142[_0x204338(0xa69)]=![],_0x164142[_0x204338(0x3ab)]={},_0x164142[_0x204338(0x5f4)]=![],_0x164142[_0x204338(0x9a7)]=![],_0x164142[_0x204338(0x62d)]=![],_0x164142[_0x204338(0x2ec)]={},_0x164142[_0x204338(0x78d)]=[],_0x164142['noisegateSettings']=![],_0x164142[_0x204338(0x360)]=!![],_0x164142[_0x204338(0x765)]=![],_0x164142['micIsolated']=[],_0x164142[_0x204338(0x7da)]=![],_0x164142[_0x204338(0x6d2)]=![],_0x164142['maxBandwidth']=![],_0x164142[_0x204338(0x323)]=![],_0x164142[_0x204338(0xa49)]=![],_0x164142[_0x204338(0x239)]=![],_0x164142[_0x204338(0x4d1)]=![],_0x164142[_0x204338(0x6ba)]=![],_0x164142['maxsamplerate']=![],_0x164142[_0x204338(0xa76)]=![],_0x164142[_0x204338(0x57e)]=![],_0x164142[_0x204338(0x52f)]=![],_0x164142[_0x204338(0x9b2)]=0x15e,_0x164142[_0x204338(0x6ca)]=0x23,_0x164142[_0x204338(0x375)]=![],_0x164142[_0x204338(0x485)]=![],_0x164142[_0x204338(0x616)]=![],_0x164142['layout']=![],_0x164142[_0x204338(0x9e4)]=![],_0x164142[_0x204338(0x684)]=![],_0x164142[_0x204338(0x5dc)]=_0x164142[_0x204338(0x60d)](0x5),_0x164142[_0x204338(0x4be)]=![],_0x164142[_0x204338(0x9a9)]=![],_0x164142[_0x204338(0x798)]=null,_0x164142[_0x204338(0xa64)]=![],_0x164142[_0x204338(0x608)]=![],_0x164142[_0x204338(0x566)]=![],_0x164142[_0x204338(0x9c0)]=![],_0x164142[_0x204338(0x577)]=![],_0x164142[_0x204338(0xa34)]=![],_0x164142[_0x204338(0x426)]=0x17,_0x164142[_0x204338(0xa8f)]=![],_0x164142[_0x204338(0x78c)]=![],_0x164142[_0x204338(0x3a3)]=![],_0x164142[_0x204338(0xa1a)]=![],_0x164142['msg']=[],_0x164142['meshcast']=![],_0x164142[_0x204338(0x523)]=![],_0x164142[_0x204338(0x3c9)]=![],_0x164142[_0x204338(0x432)]=![],_0x164142['miconly']=![],_0x164142[_0x204338(0xa47)]=![],_0x164142[_0x204338(0xa91)]=![],_0x164142['muted_savedState']=![],_0x164142['mono']=![],_0x164142[_0x204338(0x4ca)]={},_0x164142['noREMB']=![],_0x164142[_0x204338(0xa50)]=![],_0x164142['noPLIs']=![],_0x164142['nocursor']=![],_0x164142[_0x204338(0x3b9)]=![],_0x164142[_0x204338(0x918)]=![],_0x164142['obsfix']=![],_0x164142[_0x204338(0x35b)]=![],_0x164142[_0x204338(0x54b)]=![],_0x164142[_0x204338(0x543)]=![],_0x164142[_0x204338(0x43b)]=![],_0x164142[_0x204338(0x620)]=![],_0x164142[_0x204338(0x496)]={},_0x164142['obsState']['visibility']=null,_0x164142[_0x204338(0x496)][_0x204338(0x61e)]=null,_0x164142['obsState']['recording']=null,_0x164142['obsState'][_0x204338(0x3b6)]=null,_0x164142['obsState'][_0x204338(0x964)]=null,_0x164142['meshcastScale']=![],_0x164142[_0x204338(0x515)]=![],_0x164142['outboundAudioBitrate']=![],_0x164142['orderby']=![],_0x164142[_0x204338(0x47f)]=![],_0x164142['panning']=![],_0x164142[_0x204338(0x4c8)]=![],_0x164142[_0x204338(0x30c)]=![],_0x164142['forceRotate']=![],_0x164142[_0x204338(0x96f)]=![],_0x164142[_0x204338(0x817)]=null,_0x164142[_0x204338(0x3b3)]=![],_0x164142[_0x204338(0x331)]=0x5dc,_0x164142[_0x204338(0x2f9)]={},_0x164142[_0x204338(0x653)]=![],_0x164142[_0x204338(0x1fd)]=![],_0x164142['customWSS']=![],_0x164142['mc']=![],_0x164142[_0x204338(0x517)]=![],_0x164142[_0x204338(0x63d)]=![],_0x164142[_0x204338(0x892)]=![],_0x164142[_0x204338(0x86d)]=![],_0x164142[_0x204338(0x846)]=0x1e,_0x164142['postURL']='https://temp.vdo.ninja/',_0x164142[_0x204338(0x42b)]=![],_0x164142[_0x204338(0x41f)]=![],_0x164142[_0x204338(0x847)]=null,_0x164142[_0x204338(0x5d9)]=null,_0x164142['promptAccess']=![],_0x164142[_0x204338(0x21d)]=!![],_0x164142[_0x204338(0x393)]=![],_0x164142[_0x204338(0x848)]=[],_0x164142[_0x204338(0x92f)]=![],_0x164142[_0x204338(0x9ff)]=![],_0x164142[_0x204338(0xa80)]=![],_0x164142['recordLocal']=![],_0x164142[_0x204338(0x538)]=![],_0x164142[_0x204338(0x4c6)]=0x1770,_0x164142[_0x204338(0x87a)]=![],_0x164142[_0x204338(0x865)]=0x1388,_0x164142[_0x204338(0x868)]=![],_0x164142[_0x204338(0x763)]=![],_0x164142[_0x204338(0x4fe)]=![],_0x164142['roomid']=![],_0x164142['roombitrate']=![],_0x164142['rotate']=![],_0x164142[_0x204338(0x249)]=![],_0x164142[_0x204338(0x2b4)]=![],_0x164142[_0x204338(0x207)]={},_0x164142['sampleRate']=![],_0x164142[_0x204338(0x305)]=![],_0x164142['scale']=![],_0x164142[_0x204338(0x2c0)]=![],_0x164142[_0x204338(0x761)]=![],_0x164142['showall']=![],_0x164142[_0x204338(0x3d6)]=![],_0x164142[_0x204338(0x49f)]='*',_0x164142['scene']=![],_0x164142[_0x204338(0x246)]=![],_0x164142['sceneList']={},_0x164142[_0x204338(0x5e6)]=![],_0x164142['signalMeter']=null,_0x164142[_0x204338(0x2f3)]=![],_0x164142['screenShareElement']=![],_0x164142[_0x204338(0x2ab)]=![],_0x164142[_0x204338(0x509)]=![],_0x164142[_0x204338(0x2ac)]=![],_0x164142[_0x204338(0x48f)]=![],_0x164142[_0x204338(0x4ce)]=![],_0x164142[_0x204338(0x9d9)]=![],_0x164142[_0x204338(0x720)]=![],_0x164142[_0x204338(0x528)]=![],_0x164142['studioSoftware']=![],_0x164142[_0x204338(0x783)]=![],_0x164142[_0x204338(0x4a7)]=![],_0x164142[_0x204338(0x487)]=![],_0x164142[_0x204338(0x589)]=![],_0x164142[_0x204338(0x4e7)]=['pos','lin',_0x204338(0x5b8),_0x204338(0x821),_0x204338(0x745),_0x204338(0x6b1)],_0x164142['seedAttempts']=0x0,_0x164142[_0x204338(0x290)]=![],_0x164142['showlabels']=![],_0x164142[_0x204338(0x250)]=![],_0x164142[_0x204338(0x418)]=null,_0x164142[_0x204338(0x88a)]=![],_0x164142[_0x204338(0x4bc)]=[],_0x164142[_0x204338(0x5f5)]=![],_0x164142[_0x204338(0x366)]=![],_0x164142[_0x204338(0x1e5)]=!![],_0x164142[_0x204338(0x896)]=![],_0x164142[_0x204338(0x3d4)]=![],_0x164142[_0x204338(0x518)]=![],_0x164142['speakerMuted']=![],_0x164142[_0x204338(0x2e7)]=null,_0x164142[_0x204338(0x62b)]=![],_0x164142[_0x204338(0x3e9)]={},_0x164142[_0x204338(0x55a)]=![],_0x164142[_0x204338(0x931)]=![],_0x164142[_0x204338(0x26c)]=![],_0x164142[_0x204338(0x864)]=![],_0x164142[_0x204338(0x427)]=![],_0x164142[_0x204338(0x365)]=![],_0x164142[_0x204338(0x456)]=![],_0x164142[_0x204338(0x8e2)]=0xbb8,_0x164142[_0x204338(0x7bb)]=![],_0x164142['stereo']=![],_0x164142[_0x204338(0x200)]=null,_0x164142[_0x204338(0x307)]=null,_0x164142[_0x204338(0x7be)]=null,_0x164142[_0x204338(0x96d)]=![],_0x164142[_0x204338(0x399)]=![],_0x164142['forceTcpMode']=![],_0x164142[_0x204338(0x744)]=![],_0x164142[_0x204338(0x851)]=0x1f4,_0x164142['totalSceneBitrate']=![],_0x164142[_0x204338(0x925)]=null,_0x164142[_0x204338(0x669)]=[_0x204338(0x84d),'./media/bg_sample2.webp'],_0x164142[_0x204338(0x4e0)]=![],_0x164142['tfliteModule']=![],_0x164142['tz']=![],_0x164142[_0x204338(0x9d5)]=![],_0x164142[_0x204338(0x371)]=![],_0x164142[_0x204338(0x554)]=![],_0x164142['transferred']=![],_0x164142[_0x204338(0x49e)]=![],_0x164142['videoElement']=![],_0x164142[_0x204338(0x9b3)]=![],_0x164142[_0x204338(0x4ae)]=![],_0x164142['videoMutedFlag']=![],_0x164142[_0x204338(0x76a)]=![],_0x164142[_0x204338(0x8e9)]=![],_0x164142['volume']=![],_0x164142[_0x204338(0x2ae)]=![],_0x164142[_0x204338(0xa3d)]=![],_0x164142[_0x204338(0x352)]=![],_0x164142[_0x204338(0x782)]={},_0x164142[_0x204338(0x90c)]={},_0x164142[_0x204338(0x5eb)]=![],_0x164142[_0x204338(0x4f2)]=![],_0x164142['waitImage']=![],_0x164142[_0x204338(0x63e)]=0x1388,_0x164142['waitImageTimeoutObject']=![],_0x164142[_0x204338(0x27f)]={},_0x164142['webp']=![],_0x164142['webPquality']=![],_0x164142['ws']=null,_0x164142[_0x204338(0x1ee)]=![],_0x164142['wssid']=null,_0x164142['website']=![],_0x164142['welcomeMessage']=![],_0x164142['defaultIframeSrc']='',_0x164142[_0x204338(0x790)]=null,_0x164142[_0x204338(0x959)]=![],_0x164142[_0x204338(0x63a)]=![],_0x164142[_0x204338(0x5f3)]=null,_0x164142[_0x204338(0x2ef)]=![],_0x164142[_0x204338(0x7fc)]=getById(_0x204338(0xa6c))[_0x204338(0x8bd)](!![]),_0x164142['localMuteElement'][_0x204338(0x96d)]['top']=_0x204338(0x327),_0x164142[_0x204338(0x7fc)][_0x204338(0x96d)][_0x204338(0x4ac)]=_0x204338(0x327),_0x164142[_0x204338(0x7fc)]['id']=_0x204338(0x7fc),_0x164142['voiceMeter']=getById('voiceMeterTemplate')[_0x204338(0x8bd)](!![]),_0x164142['voiceMeter']['id']=_0x204338(0x2b8),_0x164142[_0x204338(0x76d)][_0x204338(0x96d)]['opacity']=0x0,_0x164142['voiceMeter']['dataset'][_0x204338(0x75d)]=0x0,_0x164142[_0x204338(0x76d)]['style'][_0x204338(0x2ae)]=_0x204338(0x69a),_0x164142[_0x204338(0x76d)][_0x204338(0x96d)]['height']=_0x204338(0x69a),_0x164142[_0x204338(0x76d)]['style'][_0x204338(0x440)]=_0x204338(0x422),_0x164142[_0x204338(0x76d)]['style'][_0x204338(0x4ac)]=_0x204338(0x69a),_0x164142['screensharebutton']=!![],_0x164142['introOnClean']=![],_0x164142['codirector_transfer']=!![],_0x164142[_0x204338(0x898)]=!![],_0x164142['salt']=location[_0x204338(0x36e)]['split']('.')[_0x204338(0x59b)](-0x2)[_0x204338(0x764)]('.'),_0x164142['encryptMessage']=function(_0x4accd5,_0x3eb2bf=_0x164142[_0x204338(0x4c8)]+_0x164142[_0x204338(0x73e)]){var _0x9f8619=_0x204338,_0x3852f1=crypto[_0x9f8619(0x25e)](new Uint8Array(0x10));return crypto['subtle']['digest']({'name':'SHA-256'},convertStringToArrayBufferView(_0x3eb2bf))[_0x9f8619(0x63c)](function(_0x4d5138){var _0x44cb6f=_0x9f8619;return window[_0x44cb6f(0x4e5)][_0x44cb6f(0x8e7)][_0x44cb6f(0x725)](_0x44cb6f(0x32d),_0x4d5138,{'name':_0x44cb6f(0x6ea)},![],[_0x44cb6f(0x245),'decrypt'])[_0x44cb6f(0x63c)](function(_0x368369){var _0x3bbf6c=_0x44cb6f;return crypto[_0x3bbf6c(0x8e7)][_0x3bbf6c(0x245)]({'name':'AES-CBC','iv':_0x3852f1},_0x368369,convertStringToArrayBufferView(_0x4accd5))[_0x3bbf6c(0x63c)](function(_0x372620){return encrypted_data=new Uint8Array(_0x372620),encrypted_data=toHexString(encrypted_data),_0x3852f1=toHexString(_0x3852f1),[encrypted_data,_0x3852f1];},function(_0x2f35f8){var _0x26c20e=_0x3bbf6c;return errorlog(_0x2f35f8[_0x26c20e(0x526)]),![];});},function(_0x25aebd){return errorlog(_0x25aebd),![];});})[_0x9f8619(0x341)](errorlog);},_0x164142[_0x204338(0x957)]=function(_0x327a74,_0x47b468,_0x1ecdd6=_0x164142['password']+_0x164142[_0x204338(0x73e)]){var _0x1b4949=_0x204338;return _0x327a74=toByteArray(_0x327a74),_0x47b468=toByteArray(_0x47b468),crypto['subtle']['digest']({'name':_0x1b4949(0xa25)},convertStringToArrayBufferView(_0x1ecdd6))[_0x1b4949(0x63c)](function(_0x58abc1){var _0x42587e=_0x1b4949;return window[_0x42587e(0x4e5)][_0x42587e(0x8e7)][_0x42587e(0x725)]('raw',_0x58abc1,{'name':_0x42587e(0x6ea)},![],[_0x42587e(0x245),_0x42587e(0x378)])[_0x42587e(0x63c)](function(_0x1f1cc8){var _0x5c2624=_0x42587e;return crypto['subtle']['decrypt']({'name':_0x5c2624(0x6ea),'iv':_0x47b468},_0x1f1cc8,_0x327a74)[_0x5c2624(0x63c)](function(_0x109de3){var _0x3e6ac7=_0x5c2624,_0x1f5487=new Uint8Array(_0x109de3),_0x2ff1c4='';for(var _0x36ed94=0x0;_0x36ed94<_0x1f5487[_0x3e6ac7(0x6c6)];_0x36ed94++){_0x2ff1c4+=String[_0x3e6ac7(0x68e)](_0x1f5487[_0x36ed94]);}return _0x2ff1c4;},function(_0x53bc16){return errorlog(_0x53bc16),![];});});})[_0x1b4949(0x341)](errorlog);},_0x164142[_0x204338(0xa7d)]=async function(_0xdbde60){var _0x5dd6e5=_0x204338;if(typeof _0xdbde60[_0x5dd6e5(0x538)]!==_0x5dd6e5(0x750))return _0xdbde60;try{_0xdbde60['remote'][_0x5dd6e5(0x7e9)]==0x2&&(!_0x164142[_0x5dd6e5(0x620)]&&(_0x164142['remoteHash']=await generateHash(_0x164142[_0x5dd6e5(0x538)]+_0x164142[_0x5dd6e5(0x73e)],0xc)),_0xdbde60[_0x5dd6e5(0x538)]=await _0x164142[_0x5dd6e5(0x957)](_0xdbde60['remote'][0x0],_0xdbde60[_0x5dd6e5(0x538)][0x1],_0x164142[_0x5dd6e5(0x620)]),_0xdbde60[_0x5dd6e5(0x538)]?log('Remote\x20request\x20decoded\x20successfully'):warnlog(_0x5dd6e5(0x241)),log(_0xdbde60));}catch(_0x3878c6){errorlog(_0x3878c6);}return _0xdbde60;},_0x164142[_0x204338(0x5ac)]=async function(_0x3edfe4){var _0x24a1f9=_0x204338;try{if(_0x3edfe4[_0x24a1f9(0x538)]&&typeof _0x3edfe4[_0x24a1f9(0x538)]===_0x24a1f9(0x854)){var _0x324775=await generateHash(_0x3edfe4[_0x24a1f9(0x538)]+_0x164142[_0x24a1f9(0x73e)],0xc);_0x3edfe4[_0x24a1f9(0x538)]=await _0x164142[_0x24a1f9(0x9b8)](_0x3edfe4[_0x24a1f9(0x538)],_0x324775);}}catch(_0x2b6dc6){errorlog(_0x2b6dc6);}return _0x3edfe4;},_0x164142['decodeInvite']=function(_0x5f5679){var _0x207127=_0x204338;try{_0x5f5679=decodeURIComponent(_0x5f5679),_0x5f5679=CryptoJS[_0x207127(0x2ce)][_0x207127(0x378)](_0x5f5679,_0x207127(0x23d)),_0x5f5679=_0x5f5679['toString'](CryptoJS[_0x207127(0x958)]['Utf8']);if(_0x5f5679){if(_0x5f5679[_0x207127(0x5d5)](_0x207127(0x76f)))_0x5f5679=_0x5f5679[_0x207127(0x276)](_0x207127(0x76f),'');else{if(_0x5f5679['startsWith'](_0x207127(0x90f)))_0x5f5679=_0x5f5679[_0x207127(0x276)](_0x207127(0x90f),'');else{if(_0x5f5679[_0x207127(0x5d5)]('/'))_0x5f5679=_0x5f5679['replace']('/','');else{if(_0x5f5679[_0x207127(0x5d5)]('obs.ninja/'))_0x5f5679=_0x5f5679[_0x207127(0x276)](_0x207127(0x9f2),'');else{if(_0x5f5679[_0x207127(0x5d5)](_0x207127(0x9af)))_0x5f5679=_0x5f5679['replace'](_0x207127(0x9af),'');else _0x5f5679[_0x207127(0x5d5)](_0x207127(0x908))&&(_0x5f5679=_0x5f5679[_0x207127(0x276)](_0x207127(0x908),''));}}}}_0x5f5679=_0x5f5679['split']('?')[_0x207127(0x2a7)](0x1)['join']('?'),_0x5f5679=_0x5f5679[_0x207127(0x276)](/\?/g,'&'),_0x5f5679=_0x5f5679[_0x207127(0x276)](/\&/,'?'),_0x5f5679&&(_0x164142[_0x207127(0x8fc)]='?'+_0x5f5679);}}catch(_0x2b235e){warnlog(_0x2b235e);}},_0x164142['requestKeyframe']=function(_0x253ebe,_0x1a450c=![]){var _0x24bc6c=_0x204338,_0x5731e5={};_0x5731e5[_0x24bc6c(0xa5e)]=!![],_0x5731e5[_0x24bc6c(0x7dd)]=!![],_0x164142[_0x24bc6c(0x7a9)](_0x5731e5,_0x253ebe);},_0x164142['requestAudioRateLimit']=function(_0x55940e,_0x4f3ad0,_0xc58ec9=null){var _0x325dbe=_0x204338;if(!_0x164142[_0x325dbe(0x207)][_0x4f3ad0])return![];var _0x2d046e={};if(_0xc58ec9!==null)_0x164142[_0x325dbe(0x207)][_0x4f3ad0][_0x325dbe(0x9e6)]=_0xc58ec9||![];else{if(_0x164142[_0x325dbe(0x207)][_0x4f3ad0]['lockedAudioBitrate']){warnlog(_0x325dbe(0x8f4));return;}}_0x2d046e[_0x325dbe(0x714)]=_0x55940e,log(_0x2d046e),_0x164142[_0x325dbe(0x7a9)](_0x2d046e,_0x4f3ad0);},_0x164142[_0x204338(0x3dc)]=function(_0x97ef10,_0x53fa14,_0x15294f=![],_0x4acbbb=null){var _0x4a34db=_0x204338;log(_0x4a34db(0x960)+_0x15294f);if(!_0x164142[_0x4a34db(0x207)][_0x53fa14])return![];if(_0x4acbbb!==null)_0x164142['rpcs'][_0x53fa14][_0x4a34db(0x463)]=_0x4acbbb||![];else{if(_0x164142[_0x4a34db(0x207)][_0x53fa14][_0x4a34db(0x463)]){warnlog(_0x4a34db(0x60f));return;}}if(_0x97ef10===![]){}else _0x164142[_0x4a34db(0x207)][_0x53fa14][_0x4a34db(0x3fe)]=_0x97ef10;var _0xb74e80=-0x1;_0x164142['rpcs'][_0x53fa14][_0x4a34db(0x7a7)]!==![]?_0x97ef10=parseInt(_0x164142['rpcs'][_0x53fa14][_0x4a34db(0x7a7)]):_0x97ef10=parseInt(_0x164142['rpcs'][_0x53fa14][_0x4a34db(0x3fe)]);if(_0x164142['obsState'][_0x4a34db(0x1f8)]===![]){if(_0x164142[_0x4a34db(0x543)]!==![]){if(window[_0x4a34db(0x491)])return![];}}_0x97ef10===0x0&&_0x164142['rpcs'][_0x53fa14][_0x4a34db(0x9a4)]&&(_0x97ef10=0x1);if(_0x164142[_0x4a34db(0x207)][_0x53fa14][_0x4a34db(0x7e0)]===_0x97ef10)return![];log(_0x4a34db(0x681)+_0x97ef10);var _0x3db0d2={};_0x3db0d2['bitrate']=_0x97ef10;if(_0x15294f===null){}else{if(_0x15294f)_0x97ef10===0x0?(warnlog(_0x4a34db(0x438)),_0x3db0d2[_0x4a34db(0x714)]=0x0):_0xb74e80<0x10&&_0xb74e80>=0x0?_0x3db0d2[_0x4a34db(0x714)]=_0xb74e80:_0x3db0d2[_0x4a34db(0x714)]=0x10;else _0x4acbbb===null&&(_0x3db0d2['audioBitrate']=_0xb74e80);}return _0x164142[_0x4a34db(0x7a9)](_0x3db0d2,_0x53fa14)?(_0x164142[_0x4a34db(0x207)][_0x53fa14][_0x4a34db(0x7e0)]=_0x97ef10,!![]):(setTimeout(function _0x373228(){var _0x528f21=_0x4a34db;_0x164142[_0x528f21(0x3dc)](![],_0x53fa14);},0x1388),warnlog(_0x4a34db(0xa53)),![]);},_0x164142[_0x204338(0x731)]=function(_0x4233e5,_0x43270b=![],_0x137743=![],_0x3d1f00=![]){var _0x2d0d96=_0x204338,_0x40571b=![],_0x1d9c20={};_0x1d9c20['pipe']=_0x4233e5;try{if(!_0x43270b&&!_0x137743){if(_0x3d1f00==_0x2d0d96(0x207))_0x164142['sendRequest'](_0x1d9c20);else _0x3d1f00==_0x2d0d96(0x2f9)?_0x164142[_0x2d0d96(0xa46)](_0x1d9c20):_0x164142['sendPeers'](_0x1d9c20);_0x40571b=!![];}else{if(_0x43270b){_0x43270b=_0x43270b+'';if(_0x3d1f00==_0x2d0d96(0x207))_0x164142[_0x2d0d96(0x7a9)](_0x1d9c20,_0x43270b);else _0x3d1f00==_0x2d0d96(0x2f9)?_0x164142[_0x2d0d96(0xa46)](_0x1d9c20,_0x43270b):_0x164142[_0x2d0d96(0x9be)](_0x1d9c20,_0x43270b);_0x40571b=!![];}else{if(_0x137743){_0x137743=_0x137743+'';for(var _0x43c371 in _0x164142['rpcs']){if(_0x164142['rpcs'][_0x43c371][_0x2d0d96(0x200)]===_0x137743){if(_0x3d1f00=='rpcs')_0x164142['sendRequest'](_0x1d9c20,_0x43c371);else _0x3d1f00==_0x2d0d96(0x2f9)?_0x164142[_0x2d0d96(0xa46)](_0x1d9c20,_0x43c371):_0x164142[_0x2d0d96(0x9be)](_0x1d9c20,_0x43c371);_0x40571b=!![];}}}}}return _0x40571b;}catch(_0x2cccf7){return![];}},_0x164142['gotGenericData']=function(_0x3785c0,_0x379587){var _0xd34405=_0x204338,_0x2024a4={};_0x2024a4[_0xd34405(0x613)]={},_0x2024a4[_0xd34405(0x613)]=_0x3785c0,_0x379587!==null&&(_0x2024a4[_0xd34405(0x2ef)]=_0x379587),_0x3785c0[_0xd34405(0x4d2)]&&getChatMessage(_0x3785c0['overlayNinja'][_0xd34405(0x56a)],_0x3785c0[_0xd34405(0x4d2)]['chatname'],![],![]),isIFrame&&parent[_0xd34405(0x545)](_0x2024a4,_0x164142[_0xd34405(0x49f)]);},_0x164142[_0x204338(0x308)]=function(){var _0x4b3fe1=_0x204338;if(_0x164142[_0x4b3fe1(0x356)]===null)return;for(var _0xe6003c in _0x164142['rpcs']){try{var _0x344074=getReceivers2(_0xe6003c);for(var _0x2026f6=0x0;_0x2026f6<_0x344074[_0x4b3fe1(0x7e9)];_0x2026f6++){_0x344074[_0x2026f6]['track']['kind']==_0x4b3fe1(0x33f)&&(_0x344074[_0x2026f6][_0x4b3fe1(0x79c)]['enabled']=!_0x164142[_0x4b3fe1(0x356)]);}}catch(_0x52157f){}}_0x164142['directorSpeakerMuted']&&(getById('videosource')[_0x4b3fe1(0xa47)]=!![]);},_0x164142['directorDisplayMute']=function(){var _0x34e2a8=_0x204338;if(_0x164142[_0x34e2a8(0x722)]===null)return;_0x164142[_0x34e2a8(0x722)]?(getById(_0x34e2a8(0x534))[_0x34e2a8(0x96d)][_0x34e2a8(0x622)]='none',!_0x164142['cleanOutput']&&warnUser(_0x34e2a8(0x1f4),![],![])):(getById(_0x34e2a8(0x534))[_0x34e2a8(0x96d)]['display']='',!_0x164142[_0x34e2a8(0x56f)]&&closeModal());for(var _0x36e25d in _0x164142[_0x34e2a8(0x207)]){try{var _0x43e605=getReceivers2(_0x36e25d);for(var _0x4d4e85=0x0;_0x4d4e85<_0x43e605[_0x34e2a8(0x7e9)];_0x4d4e85++){_0x43e605[_0x4d4e85][_0x34e2a8(0x79c)][_0x34e2a8(0x79e)]==_0x34e2a8(0x513)&&(_0x43e605[_0x4d4e85]['track'][_0x34e2a8(0x4cf)]=!_0x164142[_0x34e2a8(0x722)]);}}catch(_0x13cfff){errorlog(_0x13cfff);}}_0x164142[_0x34e2a8(0x722)]&&(getById('videosource')[_0x34e2a8(0xa47)]=!![]);},_0x164142['remoteFocusZoomRequest']=function(_0x546ec3){var _0xc4fefc=_0x204338;_0x546ec3[_0xc4fefc(0x45a)]();var _0x1002a1=parseFloat(_0x546ec3['deltaY']*-0.001);log(_0x546ec3[_0xc4fefc(0x251)]),_0x546ec3[_0xc4fefc(0x21f)]||_0x546ec3[_0xc4fefc(0x3e4)]?_0x164142[_0xc4fefc(0x381)](_0x1002a1,_0x546ec3[_0xc4fefc(0x251)]['dataset'][_0xc4fefc(0x2ef)]):_0x164142[_0xc4fefc(0x299)](_0x1002a1,_0x546ec3[_0xc4fefc(0x251)][_0xc4fefc(0x7d6)]['UUID']);},_0x164142[_0x204338(0x299)]=async function(_0x184dab,_0x244a65,_0x4d5dab=_0x164142['remote']){var _0x19facb=_0x204338;log(_0x19facb(0x6a8)+_0x184dab),log(_0x244a65);var _0x33d00b={};_0x33d00b[_0x19facb(0xa3d)]=_0x184dab,_0x33d00b[_0x19facb(0x538)]=_0x4d5dab,_0x33d00b=await _0x164142[_0x19facb(0x5ac)](_0x33d00b),_0x164142[_0x19facb(0x7a9)](_0x33d00b,_0x244a65)?log(_0x19facb(0x699)):errorlog(_0x19facb(0x23f));},_0x164142[_0x204338(0x381)]=async function(_0x4c4dc9,_0x2e35ab,_0x27cad5=_0x164142[_0x204338(0x538)]){var _0x167a39=_0x204338;log('request\x20focus\x20change:\x20'+_0x4c4dc9);var _0x164c59={};_0x164c59[_0x167a39(0x551)]=_0x4c4dc9,_0x164c59[_0x167a39(0x538)]=_0x27cad5,_0x164c59=await _0x164142[_0x167a39(0x5ac)](_0x164c59),_0x164142[_0x167a39(0x7a9)](_0x164c59,_0x2e35ab)?log(_0x167a39(0x5b5)):errorlog(_0x167a39(0x6ff));},_0x164142[_0x204338(0x384)]=async function(){var _0xe3f8f5=_0x204338;await _0x164142[_0xe3f8f5(0x769)]();if(_0x164142[_0xe3f8f5(0x5f4)]!==![])_0x164142[_0xe3f8f5(0x5f4)]=_0xe3f8f5(0x75c),log(_0xe3f8f5(0x62e));else{if(_0x164142['doNotSeed'])return;else{var _0x559fbb={};_0x559fbb[_0xe3f8f5(0x8f2)]=_0xe3f8f5(0x362),_0x559fbb[_0xe3f8f5(0x200)]=_0x164142[_0xe3f8f5(0x200)],_0x164142[_0xe3f8f5(0x444)](_0x559fbb),log(_0xe3f8f5(0x99c)),pokeAPI(_0xe3f8f5(0x487),!![]),pokeIframeAPI('seeding-started',!![]),pokeIframeAPI(_0xe3f8f5(0x487),!![]);}}await meshcast();},_0x164142[_0x204338(0x8d2)]=function(){var _0x19176a=_0x204338;getById('coDirectorEnable')['disabled']=!![],getById('coDirectorEnable')[_0x19176a(0xa73)]='Only\x20the\x20main\x20director\x20can\x20use\x20this\x20setting',getById(_0x19176a(0x6c5))['style'][_0x19176a(0x622)]=_0x19176a(0xa3c),_0x164142[_0x19176a(0x4ff)]&&(_0x164142['directorHash']?_0x164142['directorUUID']&&(_0x164142['directorUUID']in _0x164142[_0x19176a(0x207)]&&(_0x164142['rpcs'][_0x164142[_0x19176a(0x54f)]][_0x19176a(0x679)]===![]&&_0x164142[_0x19176a(0x9b8)](_0x164142['directorHash'],_0x164142[_0x19176a(0x609)])['then'](function(_0x1b6831){var _0x59b4f3=_0x19176a,_0x4d811f={};_0x4d811f[_0x59b4f3(0x2ef)]=_0x164142[_0x59b4f3(0x54f)],_0x4d811f['requestCoDirector']=_0x1b6831[0x0],_0x4d811f[_0x59b4f3(0x899)]=_0x1b6831[0x1],_0x164142[_0x59b4f3(0x207)][_0x164142['directorUUID']][_0x59b4f3(0x679)]===![]&&(_0x164142['sendRequest'](_0x4d811f,_0x4d811f[_0x59b4f3(0x2ef)])&&(_0x164142[_0x59b4f3(0x207)][_0x164142[_0x59b4f3(0x54f)]]['codirectorRequested']=!![]));})[_0x19176a(0x341)](errorlog))):generateHash(_0x164142[_0x19176a(0x4ff)]+_0x164142[_0x19176a(0x73e)]+_0x19176a(0x1f2),0xc)[_0x19176a(0x63c)](function(_0x490a4a){var _0x58e85f=_0x19176a;_0x164142[_0x58e85f(0x609)]=_0x490a4a;_0x164142[_0x58e85f(0x54f)]&&(_0x164142[_0x58e85f(0x207)][_0x164142[_0x58e85f(0x54f)]][_0x58e85f(0x679)]===![]&&_0x164142['encryptMessage'](_0x164142[_0x58e85f(0x609)],_0x164142[_0x58e85f(0x609)])['then'](function(_0xd6eb6b){var _0x25e04d=_0x58e85f,_0x198e31={};_0x198e31['UUID']=_0x164142[_0x25e04d(0x54f)],_0x198e31['requestCoDirector']=_0xd6eb6b[0x0],_0x198e31[_0x25e04d(0x899)]=_0xd6eb6b[0x1],_0x164142[_0x25e04d(0x207)][_0x164142[_0x25e04d(0x54f)]][_0x25e04d(0x679)]===![]&&(_0x164142[_0x25e04d(0x7a9)](_0x198e31,_0x198e31[_0x25e04d(0x2ef)])&&(_0x164142[_0x25e04d(0x207)][_0x164142[_0x25e04d(0x54f)]][_0x25e04d(0x679)]=!![]));})[_0x58e85f(0x341)](errorlog));return;})[_0x19176a(0x341)](errorlog));},_0x164142[_0x204338(0x61f)]=function(_0x8d0652,_0x1f558e){return _0x8d0652;},_0x164142[_0x204338(0x729)]=function(){var _0x9b538e=_0x204338;log(_0x9b538e(0x933));for(var _0x2a0d7d in _0x164142[_0x9b538e(0x2f9)]){setTimeout(function(_0x38ee45){var _0x40df0e=_0x9b538e;if(_0x164142[_0x40df0e(0x2f9)][_0x38ee45][_0x40df0e(0x9ca)]!==![])log('resolution\x20scale'),_0x164142[_0x40df0e(0x7a5)](_0x38ee45,_0x164142[_0x40df0e(0x2f9)][_0x38ee45][_0x40df0e(0x559)],_0x164142[_0x40df0e(0x2f9)][_0x38ee45][_0x40df0e(0xa74)],_0x164142[_0x40df0e(0x2f9)][_0x38ee45]['scaleSnap']);else _0x164142[_0x40df0e(0x2f9)][_0x38ee45][_0x40df0e(0x8b9)]!==![]&&(log(_0x40df0e(0x297)),_0x164142[_0x40df0e(0x75e)](_0x38ee45,_0x164142['pcs'][_0x38ee45][_0x40df0e(0x8b9)]));},0x0,_0x2a0d7d);}},_0x164142['mcSetScale']=function(_0x455b7a=_0x164142['meshcastScale']){var _0x5c0ff5=_0x204338;warnlog(_0x5c0ff5(0x818));if(_0x164142['mc'][_0x5c0ff5(0x8b9)]!==_0x455b7a){if(_0x455b7a==null){try{var _0x38ee80=_0x164142['mc']['getSenders']()[_0x5c0ff5(0x968)](function(_0x581c94){var _0x4a4ed7=_0x5c0ff5;return _0x581c94['track']&&_0x581c94[_0x4a4ed7(0x79c)][_0x4a4ed7(0x79e)]==_0x4a4ed7(0x513);});}catch(_0x3c1e2a){errorlog(_0x3c1e2a);}if(!_0x38ee80){warnlog(_0x5c0ff5(0x43c));return;}var _0x372e54=_0x38ee80[_0x5c0ff5(0x4e6)]();(!_0x372e54['encodings']||_0x372e54['encodings']['length']==0x0)&&(_0x372e54['encodings']=[{}]),_0x5c0ff5(0x784)in _0x372e54[_0x5c0ff5(0x651)][0x0]?(_0x455b7a=0x64/_0x372e54[_0x5c0ff5(0x651)][0x0][_0x5c0ff5(0x784)],_0x455b7a=_0x455b7a*0.95):_0x455b7a=0x5f;}else _0x164142['mc'][_0x5c0ff5(0x8b9)]=_0x455b7a;try{if(SafariVersion&&SafariVersion<=0xd&&(iOS||iPad))log('iOS\x20devices\x20do\x20not\x20support\x20dynamic\x20bitrates\x20correctly;\x20skipping');else{if('RTCRtpSender'in window&&_0x5c0ff5(0x4a5)in window['RTCRtpSender'][_0x5c0ff5(0x78b)]){try{var _0x38ee80=_0x164142['mc'][_0x5c0ff5(0xa82)]()[_0x5c0ff5(0x968)](function(_0x17e02a){var _0x3fa6fa=_0x5c0ff5;return _0x17e02a[_0x3fa6fa(0x79c)]&&_0x17e02a[_0x3fa6fa(0x79c)]['kind']==_0x3fa6fa(0x513);});}catch(_0x187926){errorlog(_0x187926);}if(!_0x38ee80){warnlog(_0x5c0ff5(0x43c));return;}var _0x372e54=_0x38ee80[_0x5c0ff5(0x4e6)]();(!_0x372e54[_0x5c0ff5(0x651)]||_0x372e54[_0x5c0ff5(0x651)][_0x5c0ff5(0x7e9)]==0x0)&&(_0x372e54['encodings']=[{}]);if(_0x455b7a<=0x0||_0x455b7a==0x64){var _0x31855e=getChromeVersion();_0x31855e>0x50?_0x5c0ff5(0x784)in _0x372e54[_0x5c0ff5(0x651)][0x0]&&delete _0x372e54['encodings'][0x0]['scaleResolutionDownBy']:_0x372e54[_0x5c0ff5(0x651)][0x0][_0x5c0ff5(0x784)]=0x1;}else _0x372e54[_0x5c0ff5(0x651)][0x0][_0x5c0ff5(0x784)]=0x64/_0x455b7a;_0x38ee80[_0x5c0ff5(0x4a5)](_0x372e54)[_0x5c0ff5(0x63c)](()=>{var _0x2c8994=_0x5c0ff5;log('scale\x20set!'),log(_0x38ee80[_0x2c8994(0x4e6)]()),pokeIframeAPI(_0x2c8994(0x4cd),_0x455b7a,'meshcast'),pokeIframeAPI(_0x2c8994(0xa58),_0x455b7a,_0x2c8994(0x80c));})[_0x5c0ff5(0x341)](warnlog),_0x164142['mc'][_0x5c0ff5(0x3e9)][_0x5c0ff5(0x37c)]=parseInt(_0x455b7a)+'%';return;}}}catch(_0x5a5be2){errorlog(_0x5a5be2);}}},_0x164142[_0x204338(0x75e)]=function(_0x27aa57,_0x47b01a){var _0x37a636=_0x204338;warnlog(_0x37a636(0x999));if(_0x164142[_0x37a636(0x2f9)][_0x27aa57][_0x37a636(0x8b9)]===_0x47b01a)return;if(_0x47b01a==null){try{var _0x2db632=getSenders2(_0x27aa57)[_0x37a636(0x968)](function(_0x4a1dae){var _0x3cf23b=_0x37a636;return _0x4a1dae[_0x3cf23b(0x79c)]&&_0x4a1dae['track']['kind']==_0x3cf23b(0x513);});}catch(_0x623592){errorlog(_0x623592);}if(!_0x2db632){warnlog(_0x37a636(0x43c));return;}var _0x4f3165=_0x2db632[_0x37a636(0x4e6)]();(!_0x4f3165['encodings']||_0x4f3165[_0x37a636(0x651)][_0x37a636(0x7e9)]==0x0)&&(_0x4f3165[_0x37a636(0x651)]=[{}]),_0x37a636(0x784)in _0x4f3165['encodings'][0x0]?(_0x47b01a=0x64/_0x4f3165[_0x37a636(0x651)][0x0][_0x37a636(0x784)],_0x47b01a=_0x47b01a*0.95):_0x47b01a=0x5f;}else _0x164142[_0x37a636(0x2f9)][_0x27aa57][_0x37a636(0x8b9)]=_0x47b01a;try{if(SafariVersion&&SafariVersion<=0xd&&(iOS||iPad))log(_0x37a636(0x29c));else{if('RTCRtpSender'in window&&'setParameters'in window[_0x37a636(0x85e)][_0x37a636(0x78b)]){try{var _0x2db632=getSenders2(_0x27aa57)[_0x37a636(0x968)](function(_0x587140){var _0x25f274=_0x37a636;return _0x587140[_0x25f274(0x79c)]&&_0x587140[_0x25f274(0x79c)]['kind']==_0x25f274(0x513);});}catch(_0x104110){errorlog(_0x104110);}if(!_0x2db632){warnlog(_0x37a636(0x43c));return;}_0x47b01a=_0x164142[_0x37a636(0x802)](_0x27aa57,![],_0x47b01a);var _0x4f3165=_0x2db632[_0x37a636(0x4e6)]();(!_0x4f3165[_0x37a636(0x651)]||_0x4f3165[_0x37a636(0x651)][_0x37a636(0x7e9)]==0x0)&&(_0x4f3165[_0x37a636(0x651)]=[{}]);if(_0x47b01a<=0x0||_0x47b01a==0x64){var _0x40fa49=getChromeVersion();_0x40fa49>0x50?_0x37a636(0x784)in _0x4f3165[_0x37a636(0x651)][0x0]&&delete _0x4f3165[_0x37a636(0x651)][0x0][_0x37a636(0x784)]:_0x4f3165[_0x37a636(0x651)][0x0][_0x37a636(0x784)]=0x1;}else _0x4f3165[_0x37a636(0x651)][0x0]['scaleResolutionDownBy']=0x64/_0x47b01a;_0x2db632['setParameters'](_0x4f3165)[_0x37a636(0x63c)](()=>{var _0x3058d0=_0x37a636;log(_0x3058d0(0x4d0)),log(_0x2db632['getParameters']()),pokeIframeAPI('setVideoScale',_0x47b01a,_0x27aa57),pokeIframeAPI(_0x3058d0(0xa58),_0x47b01a,_0x27aa57);})[_0x37a636(0x341)](warnlog),_0x164142['pcs'][_0x27aa57]['stats']['scaleFactor']=parseInt(_0x47b01a)+'%';return;}}}catch(_0x24e2e2){errorlog(_0x24e2e2);}},_0x164142[_0x204338(0x8a6)]=function(_0x111177,_0x5cd717,_0x344e01,_0x5129a5=![],_0x46d3b0=![]){var _0x36a9d4=_0x204338;if(!(_0x111177 in _0x164142[_0x36a9d4(0x207)]))return;_0x5cd717=parseInt(Math[_0x36a9d4(0x2d6)](_0x5cd717)),_0x344e01=parseInt(Math[_0x36a9d4(0x2d6)](_0x344e01));var _0x54e0a5=![];_0x164142['rpcs'][_0x111177][_0x36a9d4(0x559)]!=_0x5cd717&&(_0x164142[_0x36a9d4(0x207)][_0x111177][_0x36a9d4(0x559)]=_0x5cd717,_0x54e0a5=!![]);_0x164142['rpcs'][_0x111177][_0x36a9d4(0xa74)]!=_0x344e01&&(_0x164142['rpcs'][_0x111177][_0x36a9d4(0xa74)]=_0x344e01,_0x54e0a5=!![]);_0x164142[_0x36a9d4(0x207)][_0x111177][_0x36a9d4(0x903)]!=_0x5129a5&&(_0x164142['rpcs'][_0x111177]['scaleSnap']=_0x5129a5,_0x54e0a5=!![]);if(_0x54e0a5){var _0x53c486={};_0x53c486[_0x36a9d4(0x2ef)]=_0x111177,_0x53c486[_0x36a9d4(0x8a6)]={'w':_0x5cd717,'h':_0x344e01,'s':_0x5129a5},_0x46d3b0&&(_0x53c486['requestAs']=_0x46d3b0),log(_0x5cd717+'\x20'+_0x344e01),_0x164142['sendRequest'](_0x53c486,_0x111177);}_0x5129a5?_0x164142['rpcs'][_0x111177][_0x36a9d4(0x3e9)][_0x36a9d4(0x275)]='~\x20'+parseInt(_0x5cd717)+_0x36a9d4(0x53d)+parseInt(_0x344e01):_0x164142[_0x36a9d4(0x207)][_0x111177][_0x36a9d4(0x3e9)][_0x36a9d4(0x275)]=parseInt(_0x5cd717)+_0x36a9d4(0x53d)+parseInt(_0x344e01);},_0x164142[_0x204338(0x802)]=function(_0x422f8f,_0x3f4134=![],_0x1cd823=![]){var _0x331edc=_0x204338;if(_0x1cd823){}else _0x164142[_0x331edc(0x2f9)][_0x422f8f][_0x331edc(0x8b9)]?_0x1cd823=_0x164142[_0x331edc(0x2f9)][_0x422f8f][_0x331edc(0x8b9)]:_0x1cd823=0x64;_0x164142[_0x331edc(0x2f9)][_0x422f8f][_0x331edc(0x9ca)]&&_0x1cd823>_0x164142[_0x331edc(0x2f9)][_0x422f8f][_0x331edc(0x9ca)]&&(_0x1cd823=_0x164142[_0x331edc(0x2f9)][_0x422f8f][_0x331edc(0x9ca)]);if(_0x3f4134)_0x1cd823=_0x4de611(_0x422f8f,_0x1cd823,_0x3f4134);else _0x164142['pcs'][_0x422f8f][_0x331edc(0x5f0)]&&_0x164142[_0x331edc(0x2f9)][_0x422f8f][_0x331edc(0x5f0)]<_0x1cd823&&(_0x1cd823=_0x164142[_0x331edc(0x2f9)][_0x422f8f][_0x331edc(0x5f0)]);if(_0x164142[_0x331edc(0x48f)]&&_0x164142[_0x331edc(0x2f9)][_0x422f8f][_0x331edc(0x903)]){if(_0x1cd823>0x55)_0x1cd823=0x64;else _0x1cd823>0x2a&&_0x1cd823<0x32&&(_0x1cd823=0x32);}return _0x1cd823=_0x164142['pixelFix'](_0x1cd823,_0x422f8f),_0x1cd823;},_0x164142[_0x204338(0x7a5)]=function(_0x1d78b7=![],_0x2fe01a=null,_0x12729e=null,_0x5d388c=![]){var _0x81a4ce=_0x204338;if(_0x1d78b7&&!(_0x1d78b7 in _0x164142['pcs']))return;else{if(!_0x1d78b7){for(var _0x594456 in _0x164142[_0x81a4ce(0x2f9)]){_0x164142[_0x81a4ce(0x7a5)](_0x594456);}return;}}if(_0x2fe01a===null&&_0x12729e===null){if(!_0x164142[_0x81a4ce(0x2f9)][_0x1d78b7][_0x81a4ce(0x559)]&&!_0x164142['pcs'][_0x1d78b7][_0x81a4ce(0xa74)])return;else _0x2fe01a=_0x164142['pcs'][_0x1d78b7]['scaleWidth']||0x64,_0x12729e=_0x164142[_0x81a4ce(0x2f9)][_0x1d78b7][_0x81a4ce(0xa74)]||0x64;}else _0x164142[_0x81a4ce(0x2f9)][_0x1d78b7][_0x81a4ce(0x559)]=_0x2fe01a,_0x164142[_0x81a4ce(0x2f9)][_0x1d78b7]['scaleHeight']=_0x12729e,_0x164142[_0x81a4ce(0x2f9)][_0x1d78b7][_0x81a4ce(0x903)]=_0x5d388c;if(SafariVersion&&SafariVersion<=0xd&&(iOS||iPad))return;if(_0x81a4ce(0x85e)in window&&_0x81a4ce(0x4a5)in window[_0x81a4ce(0x85e)][_0x81a4ce(0x78b)]){var _0x52990d=getSenders2(_0x1d78b7)[_0x81a4ce(0x968)](function(_0x54ba39){var _0x2c2b7e=_0x81a4ce;return _0x54ba39['track']&&_0x54ba39[_0x2c2b7e(0x79c)]['kind']==_0x2c2b7e(0x513);});if(!_0x52990d){warnlog(_0x81a4ce(0x268));return;}var _0x555af4=_0x52990d[_0x81a4ce(0x4e6)]();(!_0x555af4[_0x81a4ce(0x651)]||_0x555af4['encodings'][_0x81a4ce(0x7e9)]==0x0)&&(_0x555af4[_0x81a4ce(0x651)]=[{}]);if(_0x81a4ce(0x2ff)in _0x164142['pcs'][_0x1d78b7]){var _0x5e53ad=_0x164142[_0x81a4ce(0x427)][_0x81a4ce(0x8de)]();if(_0x5e53ad['length'])var _0x258b91=_0x5e53ad[0x0]['getSettings'](),_0x3d335d=_0x258b91[_0x81a4ce(0x93b)],_0x1e98eb=_0x258b91[_0x81a4ce(0x2ae)];else return;}else{if(_0x164142[_0x81a4ce(0x570)]&&_0x164142[_0x81a4ce(0x570)][_0x81a4ce(0x2f4)]){var _0x5e53ad=_0x164142['videoElement']['srcObject'][_0x81a4ce(0x8de)]();if(_0x5e53ad['length'])var _0x258b91=_0x5e53ad[0x0][_0x81a4ce(0x548)](),_0x3d335d=_0x258b91[_0x81a4ce(0x93b)],_0x1e98eb=_0x258b91[_0x81a4ce(0x2ae)];else return;}else return;}var _0x59b225=0x64*_0x2fe01a/_0x1e98eb,_0xa97483=0x64*_0x12729e/_0x3d335d;log(_0x59b225+_0x81a4ce(0x53d)+_0xa97483);var _0x3f65e6=0x64;_0x59b225>_0xa97483?_0x3f65e6=_0xa97483:_0x3f65e6=_0x59b225;_0x3f65e6>0x64&&(_0x3f65e6=0x64);log(_0x81a4ce(0x9d6)+_0x3f65e6),_0x164142[_0x81a4ce(0x2f9)][_0x1d78b7]['scaleResolution']=_0x3f65e6;var _0x1a547f=_0x164142[_0x81a4ce(0x802)](_0x1d78b7);if(_0x1a547f<=0x0||_0x1a547f==0x64){var _0x77f229=getChromeVersion();if(_0x77f229>0x50)_0x81a4ce(0x784)in _0x555af4[_0x81a4ce(0x651)][0x0]&&delete _0x555af4[_0x81a4ce(0x651)][0x0]['scaleResolutionDownBy'];else{if(_0x555af4[_0x81a4ce(0x651)][0x0][_0x81a4ce(0x784)]&&_0x555af4['encodings'][0x0][_0x81a4ce(0x784)]==0x1){_0x164142[_0x81a4ce(0x2f9)][_0x1d78b7][_0x81a4ce(0x3e9)]['scaleFactor']=parseInt(_0x1a547f)+'%';return;}else _0x555af4[_0x81a4ce(0x651)][0x0]['scaleResolutionDownBy']=0x1;}}else{if('scaleResolutionDownBy'in _0x555af4[_0x81a4ce(0x651)][0x0]&&_0x555af4[_0x81a4ce(0x651)][0x0][_0x81a4ce(0x784)]==0x64/_0x1a547f){_0x164142['pcs'][_0x1d78b7][_0x81a4ce(0x3e9)][_0x81a4ce(0x37c)]=parseInt(_0x1a547f)+'%';return;}else _0x555af4[_0x81a4ce(0x651)][0x0]['scaleResolutionDownBy']=0x64/_0x1a547f;}_0x52990d[_0x81a4ce(0x4a5)](_0x555af4)[_0x81a4ce(0x63c)](()=>{var _0x59eff1=_0x81a4ce;log(_0x59eff1(0x4d0)),log(_0x555af4),pokeIframeAPI(_0x59eff1(0x4cd),_0x1a547f,_0x1d78b7),pokeIframeAPI('set-video-scale',_0x1a547f,_0x1d78b7);})['catch'](warnlog),_0x164142[_0x81a4ce(0x2f9)][_0x1d78b7]['stats'][_0x81a4ce(0x37c)]=parseInt(_0x1a547f)+'%';return;}},_0x164142['forcePLI']=function(_0x532ea1=null,_0x574ea4=null){var _0x28657b=_0x204338;_0x574ea4&&_0x574ea4[_0x28657b(0x25b)]();_0x1e14ad&&(_0x1e14ad[_0x28657b(0x4a0)]=!![],log(_0x28657b(0x5ad)+_0x532ea1));if(iOS||iPad)return log(_0x28657b(0x29c)),![];else{if('RTCRtpSender'in window&&_0x28657b(0x4a5)in window[_0x28657b(0x85e)][_0x28657b(0x78b)]){log(_0x28657b(0x735)+_0x532ea1);if(_0x532ea1==null){for(_0x532ea1 in _0x164142[_0x28657b(0x2f9)]){_0x164142[_0x28657b(0x572)](_0x532ea1);}return![];}if(!(_0x532ea1 in _0x164142[_0x28657b(0x2f9)]))return![];_0x164142[_0x28657b(0x2f9)][_0x532ea1]['keyframeRate']&&(_0x164142[_0x28657b(0x2f9)][_0x532ea1][_0x28657b(0x5c4)]&&(clearTimeout(_0x164142[_0x28657b(0x2f9)][_0x532ea1][_0x28657b(0x5c4)]),_0x164142['pcs'][_0x532ea1][_0x28657b(0x5c4)]=null),_0x164142[_0x28657b(0x2f9)][_0x532ea1][_0x28657b(0x5c4)]=setTimeout(function(_0x50e63e){var _0xfd2d10=_0x28657b;!_0x164142[_0xfd2d10(0x2f9)][_0x50e63e]?clearInterval(this):_0x164142[_0xfd2d10(0x572)](_0x50e63e);},parseInt(_0x164142[_0x28657b(0x2f9)][_0x532ea1][_0x28657b(0x62d)]),_0x532ea1));try{var _0x44bacc=getSenders2(_0x532ea1)[_0x28657b(0x968)](function(_0x436106){var _0x1ca632=_0x28657b;return _0x436106[_0x1ca632(0x79c)]&&_0x436106['track']['kind']==_0x1ca632(0x513);});if(!_0x44bacc)return warnlog(_0x28657b(0x268)),![];var _0x39a181=_0x44bacc['getParameters']();(!_0x39a181['encodings']||_0x39a181[_0x28657b(0x651)][_0x28657b(0x7e9)]==0x0)&&(_0x39a181[_0x28657b(0x651)]=[{}]);var _0x5bc167=![];return _0x39a181[_0x28657b(0x651)][0x0][_0x28657b(0x784)]=0xa,_0x44bacc['setParameters'](_0x39a181)[_0x28657b(0x63c)](()=>{var _0x4fbab0=_0x28657b,_0x34f945=_0x164142[_0x4fbab0(0x802)](_0x532ea1),_0x4c94eb=_0x44bacc['getParameters']();if(_0x34f945<=0x0||_0x34f945==0x64){var _0x249a63=getChromeVersion();_0x249a63>0x50?_0x4fbab0(0x784)in _0x4c94eb[_0x4fbab0(0x651)][0x0]&&delete _0x4c94eb[_0x4fbab0(0x651)][0x0][_0x4fbab0(0x784)]:_0x4c94eb[_0x4fbab0(0x651)][0x0][_0x4fbab0(0x784)]=0x1;}else _0x4c94eb['encodings'][0x0][_0x4fbab0(0x784)]=0x64/_0x34f945;_0x44bacc['setParameters'](_0x4c94eb)[_0x4fbab0(0x63c)](()=>{var _0xbf3415=_0x4fbab0;log(_0xbf3415(0x3f3));})[_0x4fbab0(0x341)](warnlog);})['catch'](warnlog),!![];}catch(_0x42aaf4){errorlog(_0x42aaf4);}}}return![];},_0x164142[_0x204338(0x8b2)]=function(_0x1e8839){var _0x5a5678=_0x204338;log(_0x5a5678(0x74d));var _0x4e9e31=getSenders2(_0x1e8839)['find'](function(_0x1e0bb7){var _0x3476fe=_0x5a5678;return _0x1e0bb7[_0x3476fe(0x79c)]&&_0x1e0bb7[_0x3476fe(0x79c)][_0x3476fe(0x79e)]==_0x3476fe(0x33f);});if(!_0x4e9e31)return log(_0x5a5678(0x3a8)),![];var _0xd673e0=_0x4e9e31[_0x5a5678(0x4e6)]();(!_0xd673e0[_0x5a5678(0x651)]||_0xd673e0['encodings'][_0x5a5678(0x7e9)]==0x0)&&(_0xd673e0[_0x5a5678(0x651)]=[{}]);try{_0xd673e0['encodings'][0x0][_0x5a5678(0x215)]='high',_0xd673e0[_0x5a5678(0x651)][0x0]['priority']=_0x5a5678(0x637),_0xd673e0[_0x5a5678(0x651)][0x0][_0x5a5678(0x55d)]=!![],_0x4e9e31['setParameters'](_0xd673e0)[_0x5a5678(0x63c)](()=>{var _0x24083f=_0x5a5678;log(_0x24083f(0x6e1)),pokeIframeAPI(_0x24083f(0x75f),!![],_0x1e8839);});}catch(_0x358dbd){errorlog(_0x358dbd);}},_0x164142['degradationPreference']=function(_0x1ed4f8,_0x5c6aab=_0x204338(0x7e7)){var _0x1689a2=_0x204338,_0x2af54f=getSenders2(_0x1ed4f8)['find'](function(_0xdd9a99){var _0x114de9=_0x5f31;return _0xdd9a99[_0x114de9(0x79c)]&&_0xdd9a99[_0x114de9(0x79c)][_0x114de9(0x79e)]==_0x114de9(0x513);});if(!_0x2af54f)return log('no\x20video\x20track\x20to\x20control'),![];var _0x383be1=_0x2af54f[_0x1689a2(0x4e6)]();(!_0x383be1[_0x1689a2(0x651)]||_0x383be1[_0x1689a2(0x651)][_0x1689a2(0x7e9)]==0x0)&&(_0x383be1['encodings']=[{}]);try{_0x5c6aab===!![]?(_0x383be1[_0x1689a2(0x651)][0x0][_0x1689a2(0x82d)]=_0x1689a2(0x7e7),log('done\x20setting\x20degrad\x20to\x20maintain-framerate')):(_0x383be1[_0x1689a2(0x651)][0x0][_0x1689a2(0x82d)]=_0x5c6aab,log(_0x1689a2(0x3f9)+_0x5c6aab)),_0x2af54f['setParameters'](_0x383be1)['then'](()=>{var _0xcccbab=_0x1689a2;log(_0xcccbab(0x6d9));});}catch(_0x56a368){errorlog(_0x56a368);}},_0x164142[_0x204338(0x489)]=function(_0x184455,_0x11fd5c,_0xe80dd=![]){var _0x45cb83=_0x204338;log('session.limitMaxBandwidth\x20running:\x20'+_0x184455+_0x45cb83(0x7b2)+_0xe80dd);if(_0x164142[_0x45cb83(0x503)]===![])return;_0x11fd5c[_0x45cb83(0x503)]=parseInt(_0x164142[_0x45cb83(0x503)]/0x64*_0x184455),_0xe80dd?_0x164142[_0x45cb83(0x632)](null):(console[_0x45cb83(0x3af)](_0x11fd5c[_0x45cb83(0x2ef)]),_0x164142[_0x45cb83(0x886)](_0x11fd5c[_0x45cb83(0x2ef)],null));},_0x164142[_0x204338(0xa6e)]=function(_0x8e7393,_0x25c271=0x7d00,_0x301cf7=0x3e8){var _0xf1cb84=_0x204338;log('encodering\x20being\x20kicked');var _0x1e2e87=getSenders2(_0x8e7393)['find'](function(_0x49de75){var _0x159490=_0x5f31;return _0x49de75['track']&&_0x49de75[_0x159490(0x79c)]['kind']==_0x159490(0x33f);});if(!_0x1e2e87)return log('no\x20audio\x20track\x20to\x20poke'),![];var _0x519ea4=_0x1e2e87['getParameters']();(!_0x519ea4[_0xf1cb84(0x651)]||_0x519ea4[_0xf1cb84(0x651)][_0xf1cb84(0x7e9)]==0x0)&&(_0x519ea4['encodings']=[{}]),_0x519ea4['encodings'][0x0][_0xf1cb84(0x505)]=_0x25c271,_0x1e2e87[_0xf1cb84(0x4a5)](_0x519ea4)[_0xf1cb84(0x63c)](()=>{var _0x15f5e6=_0xf1cb84;pokeIframeAPI(_0x15f5e6(0x4a9),_0x25c271,_0x8e7393),_0x301cf7>0x0&&setTimeout(function(){var _0x4923b5=_0x15f5e6;try{if(_0x8e7393 in _0x164142[_0x4923b5(0x2f9)])var _0x21eb7e=getSenders2(_0x8e7393)['find'](function(_0x4d8344){var _0x378b22=_0x4923b5;return _0x4d8344['track']&&_0x4d8344[_0x378b22(0x79c)][_0x378b22(0x79e)]==_0x378b22(0x33f);});else return![];if(!_0x21eb7e)return log(_0x4923b5(0x3a8)),![];var _0x3a070e=_0x21eb7e[_0x4923b5(0x4e6)]();delete _0x3a070e[_0x4923b5(0x651)][0x0]['maxBitrate'],_0x21eb7e['setParameters'](_0x3a070e)[_0x4923b5(0x63c)](()=>{log('done\x20clearing\x20audio');});}catch(_0x3bf4c1){errorlog(_0x3bf4c1);}},_0x301cf7,_0x8e7393);});},_0x164142['directMigrateIssue']=function(_0x22326b,_0x3396ba,_0x54ea9b){var _0x5331fb=_0x204338;pokeIframeAPI(_0x5331fb(0x34b),_0x22326b,_0x54ea9b);if(_0x164142[_0x5331fb(0x4c8)])return generateHash(_0x22326b+_0x164142[_0x5331fb(0x4c8)]+_0x164142[_0x5331fb(0x73e)],0x10)[_0x5331fb(0x63c)](function(_0x1c33f0){var _0x11cd94=_0x5331fb,_0xf47495={};_0x3396ba['updateurl']&&(_0x3396ba['roomenc']=_0x1c33f0);if(_0x164142[_0x11cd94(0x752)]&&_0x164142['directorUUID'])_0xf47495[_0x11cd94(0x949)]=_0x54ea9b,_0xf47495['roomid']=_0x1c33f0,_0xf47495[_0x11cd94(0x9ce)]=_0x3396ba,_0x164142[_0x11cd94(0x7a9)](_0xf47495,_0x164142[_0x11cd94(0x54f)]),log(_0xf47495);else{if(_0x3396ba[_0x11cd94(0x991)]){_0xf47495['request']=_0x11cd94(0x949),_0xf47495[_0x11cd94(0x9ce)]=_0x3396ba,log(_0xf47495);if(_0x164142[_0x11cd94(0x7a9)](_0xf47495,_0x54ea9b)){var _0xf47495={};_0xf47495[_0x11cd94(0x8f2)]=_0x11cd94(0x949),_0xf47495[_0x11cd94(0x7aa)]=_0x1c33f0,_0xf47495[_0x11cd94(0x247)]=_0x54ea9b,_0x164142['sendMsg'](_0xf47495);}log(_0xf47495);}else{if(_0x11cd94(0x8ae)in _0x3396ba){_0xf47495[_0x11cd94(0x8f2)]=_0x11cd94(0x949),_0xf47495[_0x11cd94(0x9ce)]=_0x3396ba,delete _0xf47495[_0x11cd94(0x9ce)][_0x11cd94(0x7aa)],delete _0xf47495[_0x11cd94(0x9ce)][_0x11cd94(0x4fe)],log(_0xf47495);if(_0x164142[_0x11cd94(0x7a9)](_0xf47495,_0x54ea9b)){var _0xf47495={};_0xf47495[_0x11cd94(0x8f2)]='migrate',_0xf47495[_0x11cd94(0x7aa)]=_0x1c33f0,_0xf47495[_0x11cd94(0x247)]=_0x54ea9b,_0x164142[_0x11cd94(0x444)](_0xf47495);}log(_0xf47495);}else _0xf47495[_0x11cd94(0x8f2)]=_0x11cd94(0x949),_0xf47495['roomid']=_0x1c33f0,_0xf47495[_0x11cd94(0x247)]=_0x54ea9b,_0x164142[_0x11cd94(0x444)](_0xf47495);}}})[_0x5331fb(0x341)](errorlog);else{_0x3396ba['updateurl']&&(_0x3396ba['roomenc']=_0x22326b);var _0x13e453={};if(_0x164142[_0x5331fb(0x752)]&&_0x164142[_0x5331fb(0x54f)])_0x13e453[_0x5331fb(0x949)]=_0x54ea9b,_0x13e453[_0x5331fb(0x7aa)]=_0x22326b,_0x13e453[_0x5331fb(0x9ce)]=_0x3396ba,_0x164142[_0x5331fb(0x7a9)](_0x13e453,_0x164142[_0x5331fb(0x54f)]),log(_0x13e453);else{if(_0x3396ba['updateurl']){_0x13e453[_0x5331fb(0x8f2)]='migrate',_0x13e453[_0x5331fb(0x9ce)]=_0x3396ba;if(_0x164142['sendRequest'](_0x13e453,_0x54ea9b)){log(_0x13e453);var _0x13e453={};_0x13e453[_0x5331fb(0x8f2)]='migrate',_0x13e453['roomid']=_0x22326b,_0x13e453[_0x5331fb(0x247)]=_0x54ea9b,_0x164142[_0x5331fb(0x444)](_0x13e453);}}else{if(_0x5331fb(0x8ae)in _0x3396ba){_0x13e453['request']=_0x5331fb(0x949),_0x13e453[_0x5331fb(0x9ce)]=_0x3396ba,delete _0x13e453['transferSettings']['roomid'],delete _0x13e453[_0x5331fb(0x9ce)]['roomenc'];if(_0x164142[_0x5331fb(0x7a9)](_0x13e453,_0x54ea9b)){warnlog(_0x13e453);var _0x13e453={};_0x13e453[_0x5331fb(0x8f2)]=_0x5331fb(0x949),_0x13e453[_0x5331fb(0x7aa)]=rid,_0x13e453[_0x5331fb(0x247)]=_0x54ea9b,_0x164142[_0x5331fb(0x444)](_0x13e453);}}else _0x13e453[_0x5331fb(0x8f2)]='migrate',_0x13e453[_0x5331fb(0x7aa)]=_0x22326b,_0x13e453[_0x5331fb(0x247)]=_0x54ea9b,_0x164142[_0x5331fb(0x444)](_0x13e453);}}}},_0x164142['limitAudioBitrate']=function(_0x20f002,_0x324188){var _0x53477f=_0x204338;_0x324188=parseInt(_0x324188);try{var _0xf616c8=getSenders2(_0x20f002)[_0x53477f(0x968)](function(_0xf39aa){var _0x32960b=_0x53477f;return _0xf39aa[_0x32960b(0x79c)]&&_0xf39aa[_0x32960b(0x79c)][_0x32960b(0x79e)]==_0x32960b(0x33f);});if(!_0xf616c8){warnlog(_0x53477f(0x998));return;}var _0x460a7c=_0xf616c8[_0x53477f(0x4e6)]();(!_0x460a7c[_0x53477f(0x651)]||_0x460a7c['encodings'][_0x53477f(0x7e9)]==0x0)&&(_0x460a7c[_0x53477f(0x651)]=[{}]);if(_0x324188<0x0){_0x460a7c[_0x53477f(0x651)][0x0]['active']==![]&&(_0x460a7c[_0x53477f(0x651)][0x0][_0x53477f(0xa70)]=!![]);if(SafariVersion&&SafariVersion<=0xd&&(iOS||iPad)){_0x324188=0x20;if(_0x164142[_0x53477f(0x2f9)][_0x20f002]['setAudioBitrate']!==![])_0x324188=_0x164142[_0x53477f(0x2f9)][_0x20f002][_0x53477f(0x4a9)];else _0x164142[_0x53477f(0x58b)]&&(_0x324188=_0x164142['audiobitrate']);_0x460a7c[_0x53477f(0x651)][0x0][_0x53477f(0x505)]=_0x324188*0x400;}else _0x164142[_0x53477f(0x2f9)][_0x20f002][_0x53477f(0x4a9)]!==![]?(_0x324188=_0x164142['pcs'][_0x20f002]['setAudioBitrate'],_0x460a7c[_0x53477f(0x651)][0x0]['maxBitrate']=_0x324188*0x400):delete _0x460a7c[_0x53477f(0x651)][0x0][_0x53477f(0x505)];}else _0x324188===0x0?_0x460a7c[_0x53477f(0x651)][0x0][_0x53477f(0xa70)]=![]:(_0x460a7c[_0x53477f(0x651)][0x0][_0x53477f(0xa70)]==![]&&(_0x460a7c[_0x53477f(0x651)][0x0][_0x53477f(0xa70)]=!![]),_0x460a7c[_0x53477f(0x651)][0x0]['maxBitrate']=_0x324188*0x400);_0xf616c8[_0x53477f(0x4a5)](_0x460a7c)[_0x53477f(0x63c)](()=>{var _0x311667=_0x53477f;pokeIframeAPI(_0x311667(0x4a9),_0x324188,_0x20f002),log('audio\x20bandwidth\x20set\x20f!');})[_0x53477f(0x341)](warnlog);}catch(_0x227f31){errorlog(_0x227f31),log(_0x20f002),log(_0x164142[_0x53477f(0x2f9)][_0x20f002]);}},_0x164142[_0x204338(0x8cd)]=function(_0x461700){var _0x1ff0ea=_0x204338;if(_0x164142[_0x1ff0ea(0xa18)]&&_0x164142[_0x1ff0ea(0x2f9)][_0x461700]['allowIframe']===!![])_0x164142[_0x1ff0ea(0x886)](_0x461700,0x0),_0x164142[_0x1ff0ea(0x2f9)][_0x461700][_0x1ff0ea(0x9b0)]===0x0&&(_0x164142['pcs'][_0x461700][_0x1ff0ea(0x887)]===![]?_0x164142[_0x1ff0ea(0x38c)](_0x461700,0x0):_0x164142[_0x1ff0ea(0x38c)](_0x461700,-0x1));else{if(_0x164142['pcs'][_0x461700]&&_0x164142[_0x1ff0ea(0x2f9)][_0x461700][_0x1ff0ea(0x9b0)]!==![]){if(_0x164142[_0x1ff0ea(0x2f9)][_0x461700]['obsVisibility']===![]){var _0x11f62f=_0x164142[_0x1ff0ea(0x2f9)][_0x461700][_0x1ff0ea(0x9b0)];_0x164142[_0x1ff0ea(0x2f9)][_0x461700][_0x1ff0ea(0x3e2)]&&_0x164142['pcs'][_0x461700]['savedBitrate']>0x0&&(_0x164142[_0x1ff0ea(0x2f9)][_0x461700][_0x1ff0ea(0x3e2)]<_0x164142['pcs'][_0x461700][_0x1ff0ea(0x9b0)]&&(_0x11f62f=_0x164142[_0x1ff0ea(0x2f9)][_0x461700][_0x1ff0ea(0x3e2)])),_0x164142[_0x1ff0ea(0x886)](_0x461700,_0x11f62f),_0x164142[_0x1ff0ea(0x2f9)][_0x461700][_0x1ff0ea(0x9b0)]===0x0&&_0x164142[_0x1ff0ea(0x38c)](_0x461700,0x0);}else _0x164142[_0x1ff0ea(0x2f9)][_0x461700]['optimizedBitrate']===0x0&&(_0x164142[_0x1ff0ea(0x38c)](_0x461700,-0x1),_0x164142[_0x1ff0ea(0xa44)](),_0x164142[_0x1ff0ea(0x6ba)]&&_0x164142['limitBitrate'](_0x461700,null));}else _0x164142[_0x1ff0ea(0xa44)](),_0x164142[_0x1ff0ea(0x6ba)]&&_0x164142[_0x1ff0ea(0x886)](_0x461700,null);}},_0x164142[_0x204338(0xa44)]=function(_0x2df08b=0x0,_0x317978=![]){var _0x535b5a=_0x204338;if(!_0x164142[_0x535b5a(0x616)])return _0x2df08b;if(!_0x164142['roomid']||_0x164142[_0x535b5a(0x7dd)]!==![])return _0x2df08b;if((iOS||iPad)&&SafariVersion&&SafariVersion<=0xd)return _0x2df08b;var _0x2a59a4=_0x2df08b;if(_0x317978===![])_0x2a59a4=0x0;else _0x2a59a4<0x0&&(_0x2a59a4=_0x164142[_0x535b5a(0x2f9)][_0x317978][_0x535b5a(0xa54)]||_0x164142[_0x535b5a(0x515)]||_0x164142[_0x535b5a(0x2f9)][_0xe4fca7]['maxBandwidth']||0x9c4);var _0x15860d=0x0;for(var _0xe4fca7 in _0x164142['pcs']){if(_0x317978===_0xe4fca7)continue;if(!_0x164142[_0x535b5a(0x2f9)][_0xe4fca7]['guest'])continue;try{var _0x7c84d9=getSenders2(_0xe4fca7)[_0x535b5a(0x968)](function(_0x20cda5){var _0x3e12dc=_0x535b5a;return _0x20cda5[_0x3e12dc(0x79c)]&&_0x20cda5[_0x3e12dc(0x79c)]['kind']==_0x3e12dc(0x513);});if(!_0x7c84d9)continue;var _0x8bf642=_0x7c84d9['getParameters']();if(!_0x8bf642['encodings']||_0x8bf642[_0x535b5a(0x651)][_0x535b5a(0x7e9)]==0x0){_0x164142[_0x535b5a(0x2f9)][_0xe4fca7][_0x535b5a(0xa54)]<0x0?_0x2a59a4+=_0x164142['outboundVideoBitrate']||_0x164142['pcs'][_0xe4fca7]['maxBandwidth']||0x9c4:_0x2a59a4+=_0x164142['pcs'][_0xe4fca7][_0x535b5a(0xa54)]||_0x164142[_0x535b5a(0x515)]||_0x164142[_0x535b5a(0x2f9)][_0xe4fca7]['maxBandwidth']||0x9c4;warnlog(_0x2a59a4),_0x15860d+=0x1;continue;}if(_0x8bf642[_0x535b5a(0x651)][0x0][_0x535b5a(0xa70)]==![])continue;if(_0x8bf642[_0x535b5a(0x651)][0x0][_0x535b5a(0x505)])'preLimitedBitrate'in _0x164142[_0x535b5a(0x2f9)][_0xe4fca7]?_0x2a59a4+=parseInt(_0x164142[_0x535b5a(0x2f9)][_0xe4fca7][_0x535b5a(0xa60)]):_0x2a59a4+=parseInt(_0x8bf642[_0x535b5a(0x651)][0x0][_0x535b5a(0x505)])/0x400;else _0x164142[_0x535b5a(0x2f9)][_0xe4fca7][_0x535b5a(0xa54)]<0x0?_0x2a59a4+=_0x164142['outboundVideoBitrate']||_0x164142[_0x535b5a(0x2f9)][_0xe4fca7]['maxBandwidth']||0x9c4:(_0x2a59a4+=_0x164142[_0x535b5a(0x2f9)][_0xe4fca7]['setBitrate']||_0x164142['outboundVideoBitrate']||_0x164142['pcs'][_0xe4fca7][_0x535b5a(0x503)]||0x9c4,warnlog(_0x2a59a4));_0x15860d+=0x1;}catch(_0x21e051){errorlog(_0x21e051);}}if(!_0x2a59a4)return _0x2a59a4;warnlog('totalBitrate:\x20'+_0x2a59a4);var _0x389def=parseFloat(_0x2a59a4/_0x164142['limitTotalBitrate']);_0x389def<0x1&&(_0x389def=0x1);for(var _0xe4fca7 in _0x164142['pcs']){if(_0x317978===_0xe4fca7)continue;if(!_0x164142[_0x535b5a(0x2f9)][_0xe4fca7][_0x535b5a(0x3b2)])continue;try{var _0x7c84d9=getSenders2(_0xe4fca7)[_0x535b5a(0x968)](function(_0x2fe097){var _0x426df3=_0x535b5a;return _0x2fe097[_0x426df3(0x79c)]&&_0x2fe097[_0x426df3(0x79c)]['kind']==_0x426df3(0x513);});if(!_0x7c84d9)continue;var _0x8bf642=_0x7c84d9['getParameters']();if(!_0x8bf642['encodings']||_0x8bf642[_0x535b5a(0x651)][_0x535b5a(0x7e9)]==0x0){if(_0x164142[_0x535b5a(0x2f9)][_0xe4fca7][_0x535b5a(0xa54)]<0x0)var _0x51c4c5=_0x164142[_0x535b5a(0x515)]||_0x164142['pcs'][_0xe4fca7]['maxBandwidth']||0x9c4;else var _0x51c4c5=_0x164142[_0x535b5a(0x2f9)][_0xe4fca7][_0x535b5a(0xa54)]||_0x164142[_0x535b5a(0x515)]||_0x164142[_0x535b5a(0x2f9)][_0xe4fca7][_0x535b5a(0x503)]||0x9c4;var _0xef7c1d=parseInt(_0x51c4c5/_0x389def);_0x164142[_0x535b5a(0x886)](_0xe4fca7,_0xef7c1d,!![]);continue;}if(_0x8bf642[_0x535b5a(0x651)][0x0][_0x535b5a(0xa70)]==![])continue;if(_0x8bf642[_0x535b5a(0x651)][0x0][_0x535b5a(0x505)]){if(_0x535b5a(0xa60)in _0x164142[_0x535b5a(0x2f9)][_0xe4fca7])var _0x51c4c5=parseInt(_0x164142[_0x535b5a(0x2f9)][_0xe4fca7]['preLimitedBitrate']);else var _0x51c4c5=parseInt(parseInt(_0x8bf642[_0x535b5a(0x651)][0x0][_0x535b5a(0x505)])/0x400);var _0xef7c1d=parseInt(_0x51c4c5/_0x389def);_0x164142[_0x535b5a(0x886)](_0xe4fca7,_0xef7c1d,!![]);}else{if(_0x164142[_0x535b5a(0x2f9)][_0xe4fca7][_0x535b5a(0xa54)]<0x0)var _0x51c4c5=_0x164142[_0x535b5a(0x515)]||_0x164142[_0x535b5a(0x2f9)][_0xe4fca7][_0x535b5a(0x503)]||0x9c4;else var _0x51c4c5=_0x164142[_0x535b5a(0x2f9)][_0xe4fca7][_0x535b5a(0xa54)]||_0x164142[_0x535b5a(0x515)]||_0x164142['pcs'][_0xe4fca7][_0x535b5a(0x503)]||0x9c4;var _0xef7c1d=parseInt(_0x51c4c5/_0x389def);_0x164142['limitBitrate'](_0xe4fca7,_0xef7c1d,!![]);}}catch(_0x376e85){errorlog(_0x376e85);}}return parseInt(_0x2df08b/_0x389def);},_0x164142[_0x204338(0x80a)]=function(_0x1d254f=0x0,_0x50cea5=![]){var _0xe03098=_0x204338;if(!_0x164142['limitTotalBitrate'])return _0x1d254f;if((iOS||iPad)&&SafariVersion&&SafariVersion<=0xd)return _0x1d254f;var _0x110d00=_0x1d254f;if(_0x50cea5===![])_0x110d00=0x0;else _0x110d00<0x0&&(_0x110d00=_0x164142[_0xe03098(0x2f9)][_0x50cea5][_0xe03098(0xa54)]||_0x164142['outboundVideoBitrate']||_0x164142[_0xe03098(0x2f9)][_0x12d83b][_0xe03098(0x503)]||0x9c4);var _0x46617a=0x0;for(var _0x12d83b in _0x164142[_0xe03098(0x2f9)]){if(_0x50cea5===_0x12d83b)continue;try{var _0xb5755f=getSenders2(_0x12d83b)[_0xe03098(0x968)](function(_0x27e5a0){var _0x6d14d3=_0xe03098;return _0x27e5a0['track']&&_0x27e5a0[_0x6d14d3(0x79c)][_0x6d14d3(0x79e)]=='video';});if(!_0xb5755f)continue;var _0x263778=_0xb5755f[_0xe03098(0x4e6)]();if(!_0x263778['encodings']||_0x263778[_0xe03098(0x651)][_0xe03098(0x7e9)]==0x0){_0x164142[_0xe03098(0x2f9)][_0x12d83b]['setBitrate']<0x0?_0x110d00+=_0x164142[_0xe03098(0x515)]||_0x164142['pcs'][_0x12d83b][_0xe03098(0x503)]||0x9c4:_0x110d00+=_0x164142['pcs'][_0x12d83b][_0xe03098(0xa54)]||_0x164142[_0xe03098(0x515)]||_0x164142['pcs'][_0x12d83b]['maxBandwidth']||0x9c4;warnlog(_0x110d00),_0x46617a+=0x1;continue;}if(_0x263778[_0xe03098(0x651)][0x0][_0xe03098(0xa70)]==![])continue;if(_0x263778['encodings'][0x0][_0xe03098(0x505)])'preLimitedBitrate'in _0x164142['pcs'][_0x12d83b]?_0x110d00+=parseInt(_0x164142[_0xe03098(0x2f9)][_0x12d83b]['preLimitedBitrate']):_0x110d00+=parseInt(_0x263778['encodings'][0x0][_0xe03098(0x505)])/0x400;else _0x164142[_0xe03098(0x2f9)][_0x12d83b][_0xe03098(0xa54)]<0x0?_0x110d00+=_0x164142[_0xe03098(0x515)]||_0x164142[_0xe03098(0x2f9)][_0x12d83b][_0xe03098(0x503)]||0x9c4:(_0x110d00+=_0x164142['pcs'][_0x12d83b][_0xe03098(0xa54)]||_0x164142[_0xe03098(0x515)]||_0x164142[_0xe03098(0x2f9)][_0x12d83b]['maxBandwidth']||0x9c4,warnlog(_0x110d00));_0x46617a+=0x1;}catch(_0x2ce487){errorlog(_0x2ce487);}}if(!_0x110d00)return _0x110d00;warnlog(_0xe03098(0x9e2)+_0x110d00);var _0x5cb7e9=parseFloat(_0x110d00/_0x164142[_0xe03098(0x616)]);_0x5cb7e9<0x1&&(_0x5cb7e9=0x1);for(var _0x12d83b in _0x164142['pcs']){if(_0x50cea5===_0x12d83b)continue;try{var _0xb5755f=getSenders2(_0x12d83b)['find'](function(_0x5d7f0d){var _0x38583d=_0xe03098;return _0x5d7f0d[_0x38583d(0x79c)]&&_0x5d7f0d[_0x38583d(0x79c)][_0x38583d(0x79e)]==_0x38583d(0x513);});if(!_0xb5755f)continue;var _0x263778=_0xb5755f[_0xe03098(0x4e6)]();if(!_0x263778[_0xe03098(0x651)]||_0x263778['encodings'][_0xe03098(0x7e9)]==0x0){if(_0x164142[_0xe03098(0x2f9)][_0x12d83b]['setBitrate']<0x0)var _0x4331c3=_0x164142['outboundVideoBitrate']||_0x164142[_0xe03098(0x2f9)][_0x12d83b][_0xe03098(0x503)]||0x9c4;else var _0x4331c3=_0x164142[_0xe03098(0x2f9)][_0x12d83b][_0xe03098(0xa54)]||_0x164142[_0xe03098(0x515)]||_0x164142['pcs'][_0x12d83b][_0xe03098(0x503)]||0x9c4;var _0x6d2873=parseInt(_0x4331c3/_0x5cb7e9);_0x164142['limitBitrate'](_0x12d83b,_0x6d2873,!![]);continue;}if(_0x263778[_0xe03098(0x651)][0x0][_0xe03098(0xa70)]==![])continue;if(_0x263778[_0xe03098(0x651)][0x0]['maxBitrate']){if('preLimitedBitrate'in _0x164142[_0xe03098(0x2f9)][_0x12d83b])var _0x4331c3=parseInt(_0x164142[_0xe03098(0x2f9)][_0x12d83b][_0xe03098(0xa60)]);else var _0x4331c3=parseInt(parseInt(_0x263778[_0xe03098(0x651)][0x0][_0xe03098(0x505)])/0x400);var _0x6d2873=parseInt(_0x4331c3/_0x5cb7e9);_0x164142[_0xe03098(0x886)](_0x12d83b,_0x6d2873,!![]);}else{if(_0x164142[_0xe03098(0x2f9)][_0x12d83b][_0xe03098(0xa54)]<0x0)var _0x4331c3=_0x164142[_0xe03098(0x515)]||_0x164142[_0xe03098(0x2f9)][_0x12d83b][_0xe03098(0x503)]||0x9c4;else var _0x4331c3=_0x164142[_0xe03098(0x2f9)][_0x12d83b][_0xe03098(0xa54)]||_0x164142[_0xe03098(0x515)]||_0x164142[_0xe03098(0x2f9)][_0x12d83b][_0xe03098(0x503)]||0x9c4;var _0x6d2873=parseInt(_0x4331c3/_0x5cb7e9);_0x164142['limitBitrate'](_0x12d83b,_0x6d2873,!![]);}}catch(_0x51f770){errorlog(_0x51f770);}}return parseInt(_0x1d254f/_0x5cb7e9);},_0x164142[_0x204338(0x936)]=function(_0x213a88,_0x3d63ad=![]){var _0x13f877=_0x204338,_0x44755c={};_0x44755c[_0x13f877(0x1e7)]={},_0x44755c[_0x13f877(0x1e7)][_0x13f877(0x647)]=[_0x213a88],_0x164142['sendPeers'](_0x44755c,_0x3d63ad);},_0x164142[_0x204338(0x632)]=function(_0x27af29=null){var _0x9d3870=_0x204338;if(!_0x164142['mc'])return;_0x164142['mc'][_0x9d3870(0x888)]&&(clearInterval(_0x164142['mc'][_0x9d3870(0x888)]),_0x164142['mc'][_0x9d3870(0x888)]=null);if(_0x27af29===null){if(_0x164142['mc']['savedBitrate']===![])return;_0x27af29=_0x164142['mc']['savedBitrate'];}_0x27af29=parseInt(_0x27af29);if(_0x164142['mc'][_0x9d3870(0xa54)]&&_0x27af29>_0x164142['mc']['setBitrate'])_0x27af29=_0x164142['mc'][_0x9d3870(0xa54)];else _0x164142['mc']['setBitrate']===![]&&(_0x27af29<0x0&&(_0x164142[_0x9d3870(0x515)]?_0x27af29=_0x164142[_0x9d3870(0x515)]:_0x27af29=0x9c4));_0x164142[_0x9d3870(0x6ba)]&&(_0x27af29>_0x164142[_0x9d3870(0x6ba)]&&(_0x27af29=_0x164142['maxvideobitrate']));_0x164142['mc']['savedBitrate']=_0x27af29;_0x164142['mc'][_0x9d3870(0x9b0)]!==![]&&(_0x164142['mc']['obsVisibility']===![]&&(_0x27af29>_0x164142['mc'][_0x9d3870(0x9b0)]&&(_0x164142['mc'][_0x9d3870(0x3e2)]=_0x27af29,_0x27af29=parseInt(_0x164142['mc'][_0x9d3870(0x9b0)])||0x0)));if(_0x164142['mc']['maxBandwidth']!==null){if(_0x164142['mc'][_0x9d3870(0x503)]<_0x27af29)_0x27af29=_0x164142['mc']['maxBandwidth'],_0x164142['mc'][_0x9d3870(0x3e9)][_0x9d3870(0x57b)]=_0x27af29,warnlog(_0x9d3870(0x5a8)+_0x27af29+'-kbps');else _0x164142['mc'][_0x9d3870(0x3e9)]&&(_0x164142['mc'][_0x9d3870(0x3e9)][_0x9d3870(0x57b)]=![]);}else _0x9d3870(0x57b)in _0x164142['mc'][_0x9d3870(0x3e9)]&&(_0x164142['mc'][_0x9d3870(0x3e9)][_0x9d3870(0x57b)]=![]);if(_0x27af29===0x0){var _0x4338d6=Date[_0x9d3870(0xa19)]()-_0x164142['mc'][_0x9d3870(0x7d0)];_0x4338d6<_0x164142[_0x9d3870(0x4c6)]&&(_0x27af29=_0x164142['preloadbitrate'],log(_0x9d3870(0x34a)+(Date['now']()-_0x164142['mc']['startTime'])),_0x164142['mc'][_0x9d3870(0x888)]=setTimeout(function(){var _0x2a037c=_0x9d3870;try{warnlog(_0x2a037c(0x792)+(Date['now']()-_0x164142['mc'][_0x2a037c(0x7d0)])),_0x164142['limitMeshcastBitrate'](null);}catch(_0x297487){};},_0x164142[_0x9d3870(0x4c6)]-_0x4338d6+0x5));}try{if((iOS||iPad)&&SafariVersion&&SafariVersion<=0xd){log('iOS\x20devices\x20do\x20not\x20support\x20dynamic\x20bitrates\x20correctly;\x20skipping');var _0x397e53=_0x164142['mc'][_0x9d3870(0xa82)]()[_0x9d3870(0x968)](function(_0x4e0a2c){var _0x424358=_0x9d3870;return _0x4e0a2c['track']&&_0x4e0a2c['track'][_0x424358(0x79e)]==_0x424358(0x513);});if(!_0x397e53){warnlog('can\x27t\x20change\x20bitrate;\x20no\x20video\x20sender\x20found');return;}var _0xa61320=_0x397e53['getParameters']();(!_0xa61320[_0x9d3870(0x651)]||_0xa61320[_0x9d3870(0x651)][_0x9d3870(0x7e9)]==0x0)&&(_0xa61320[_0x9d3870(0x651)]=[{}]);if(_0x27af29<0x0)_0xa61320[_0x9d3870(0x651)][0x0]['active']==![]&&(_0xa61320[_0x9d3870(0x651)][0x0][_0x9d3870(0xa70)]=!![]),_0x27af29=0x9c4,_0x164142['bitrate']&&(_0x27af29=_0x164142[_0x9d3870(0x6b0)]),_0x164142[_0x9d3870(0x6ba)]&&(_0x27af29>_0x164142[_0x9d3870(0x6ba)]&&(_0x27af29=_0x164142[_0x9d3870(0x6ba)])),_0xa61320[_0x9d3870(0x651)][0x0][_0x9d3870(0x505)]=_0x27af29*0x400;else _0x27af29===0x0?_0xa61320[_0x9d3870(0x651)][0x0]['active']=![]:(_0xa61320[_0x9d3870(0x651)][0x0]['active']==![]&&(_0xa61320[_0x9d3870(0x651)][0x0][_0x9d3870(0xa70)]=!![]),_0xa61320[_0x9d3870(0x651)][0x0][_0x9d3870(0x505)]=_0x27af29*0x400);_0x397e53[_0x9d3870(0x4a5)](_0xa61320)[_0x9d3870(0x63c)](()=>{var _0x3b294b=_0x9d3870;pokeIframeAPI('setMeshcastVideoBitrate',_0x27af29),log(_0x3b294b(0x346)+_0x27af29);})[_0x9d3870(0x341)](warnlog);return;}else{if(_0x9d3870(0x85e)in window&&_0x9d3870(0x4a5)in window[_0x9d3870(0x85e)][_0x9d3870(0x78b)]){var _0x397e53=_0x164142['mc']['getSenders']()[_0x9d3870(0x968)](function(_0x2bb16e){return _0x2bb16e['track']&&_0x2bb16e['track']['kind']=='video';});if(!_0x397e53){warnlog(_0x9d3870(0x268));return;}var _0xa61320=_0x397e53[_0x9d3870(0x4e6)]();(!_0xa61320['encodings']||_0xa61320[_0x9d3870(0x651)][_0x9d3870(0x7e9)]==0x0)&&(_0xa61320[_0x9d3870(0x651)]=[{}]);if(_0x27af29<0x0)_0xa61320[_0x9d3870(0x651)][0x0][_0x9d3870(0xa70)]==![]&&(_0xa61320[_0x9d3870(0x651)][0x0][_0x9d3870(0xa70)]=!![]),delete _0xa61320[_0x9d3870(0x651)][0x0][_0x9d3870(0x505)];else _0x27af29===0x0?(_0xa61320[_0x9d3870(0x651)][0x0][_0x9d3870(0xa70)]=![],Firefox&&(_0xa61320[_0x9d3870(0x651)][0x0][_0x9d3870(0x505)]=0x1)):(_0xa61320[_0x9d3870(0x651)][0x0][_0x9d3870(0xa70)]==![]&&(_0xa61320[_0x9d3870(0x651)][0x0][_0x9d3870(0xa70)]=!![]),_0xa61320[_0x9d3870(0x651)][0x0][_0x9d3870(0x505)]=_0x27af29*0x400);iPad||iOS||Firefox?_0x164142['mc'][_0x9d3870(0x43f)]?(clearInterval(_0x164142['mc'][_0x9d3870(0x43f)]),_0x164142['mc'][_0x9d3870(0x43f)]=setTimeout(function(){var _0xc5f5a9=_0x9d3870;log(_0xc5f5a9(0x87f)+_0x27af29),_0x164142['mc'][_0xc5f5a9(0x43f)]=![],_0x164142[_0xc5f5a9(0x632)](null);},0x1f4)):(_0x164142['mc'][_0x9d3870(0x43f)]=setTimeout(function(){var _0x3fbcf7=_0x9d3870;_0x164142['mc'][_0x3fbcf7(0x43f)]=![];},0x1f4),_0x397e53[_0x9d3870(0x4a5)](_0xa61320)[_0x9d3870(0x63c)](()=>{var _0x388120=_0x9d3870;log(_0x388120(0x84a)+_0x27af29),log(_0xa61320),pokeIframeAPI(_0x388120(0x51f),_0x27af29);})[_0x9d3870(0x341)](warnlog)):_0x397e53[_0x9d3870(0x4a5)](_0xa61320)['then'](()=>{var _0x3d164a=_0x9d3870;log('bandwidth\x20set\x20i!\x20'+_0x27af29),pokeIframeAPI(_0x3d164a(0x51f),_0x27af29);})[_0x9d3870(0x341)](warnlog);return;}else warnlog(_0x9d3870(0x3c7));}}catch(_0x2ba769){errorlog(_0x2ba769);}},_0x164142[_0x204338(0x8ac)]=function(_0x5d1396,_0x13e921){var _0x5acabc=_0x204338;_0x13e921===![]?(_0x164142[_0x5acabc(0x2f9)][_0x5d1396]['setBitrate']=![],_0x164142[_0x5acabc(0x886)](_0x5d1396,-0x1)):(_0x13e921=parseInt(_0x13e921)||-0x1,_0x13e921>=0x0&&(_0x164142['pcs'][_0x5d1396][_0x5acabc(0xa54)]=_0x13e921,_0x164142[_0x5acabc(0x886)](_0x5d1396,_0x13e921)));},_0x164142[_0x204338(0x881)]=function(_0x3b9863,_0x22e5c0){var _0x48731a=_0x204338;_0x22e5c0===![]?(_0x164142[_0x48731a(0x2f9)][_0x3b9863][_0x48731a(0x4a9)]=![],_0x164142[_0x48731a(0x38c)](_0x3b9863,-0x1)):(_0x22e5c0=parseInt(_0x22e5c0)||-0x1,_0x22e5c0>=0x0&&(_0x164142[_0x48731a(0x2f9)][_0x3b9863]['setAudioBitrate']=_0x22e5c0,_0x164142[_0x48731a(0x38c)](_0x3b9863,_0x22e5c0)));},_0x164142[_0x204338(0x886)]=function(_0x49208f,_0x2aacd3=null,_0x550f43=![]){var _0xc6789d=_0x204338;if(!(_0x49208f in _0x164142[_0xc6789d(0x2f9)]))return;_0x164142[_0xc6789d(0x2f9)][_0x49208f][_0xc6789d(0x888)]&&(clearInterval(_0x164142[_0xc6789d(0x2f9)][_0x49208f][_0xc6789d(0x888)]),_0x164142[_0xc6789d(0x2f9)][_0x49208f][_0xc6789d(0x888)]=null);var _0x40da7d=!![];if(_0x2aacd3===null){if(_0x164142[_0xc6789d(0x2f9)][_0x49208f][_0xc6789d(0x3e2)]===![]){if(_0x164142[_0xc6789d(0x2f9)][_0x49208f]['maxBandwidth']===null)return;else _0x2aacd3=_0x164142[_0xc6789d(0x2f9)][_0x49208f][_0xc6789d(0x503)],_0x40da7d=![];}else _0x2aacd3=_0x164142[_0xc6789d(0x2f9)][_0x49208f]['savedBitrate'];}_0x2aacd3=parseInt(_0x2aacd3);if(_0x164142[_0xc6789d(0x2f9)][_0x49208f][_0xc6789d(0xa54)]&&_0x2aacd3>_0x164142[_0xc6789d(0x2f9)][_0x49208f][_0xc6789d(0xa54)])_0x2aacd3=_0x164142['pcs'][_0x49208f][_0xc6789d(0xa54)];else _0x2aacd3<0x0&&(_0x2aacd3=_0x164142[_0xc6789d(0x2f9)][_0x49208f][_0xc6789d(0xa54)]||_0x164142[_0xc6789d(0x515)]||0x9c4);_0x164142['maxvideobitrate']&&(_0x2aacd3>_0x164142[_0xc6789d(0x6ba)]&&(_0x2aacd3=_0x164142[_0xc6789d(0x6ba)]));_0x40da7d&&!_0x550f43&&(_0x164142[_0xc6789d(0x2f9)][_0x49208f][_0xc6789d(0x3e2)]=_0x2aacd3);_0x164142['pcs'][_0x49208f][_0xc6789d(0x9b0)]!==![]&&(_0x164142[_0xc6789d(0x2f9)][_0x49208f][_0xc6789d(0x887)]===![]&&(_0x2aacd3>_0x164142[_0xc6789d(0x2f9)][_0x49208f][_0xc6789d(0x9b0)]&&(_0x40da7d&&(_0x164142[_0xc6789d(0x2f9)][_0x49208f][_0xc6789d(0x3e2)]=_0x2aacd3),_0x2aacd3=parseInt(_0x164142[_0xc6789d(0x2f9)][_0x49208f][_0xc6789d(0x9b0)])||0x0)));if(_0x164142[_0xc6789d(0x2f9)][_0x49208f][_0xc6789d(0x503)]!==null){if(_0x164142['pcs'][_0x49208f][_0xc6789d(0x503)]<_0x2aacd3)_0x2aacd3=_0x164142[_0xc6789d(0x2f9)][_0x49208f][_0xc6789d(0x503)],_0x164142[_0xc6789d(0x2f9)][_0x49208f]['stats'][_0xc6789d(0x57b)]=_0x2aacd3,warnlog(_0xc6789d(0x5a8)+_0x2aacd3+_0xc6789d(0x808));else _0x164142[_0xc6789d(0x2f9)][_0x49208f][_0xc6789d(0x503)]===_0x2aacd3&&!_0x40da7d?(_0x164142[_0xc6789d(0x2f9)][_0x49208f][_0xc6789d(0x3e9)][_0xc6789d(0x57b)]=_0x2aacd3,warnlog(_0xc6789d(0x257)+_0x2aacd3+_0xc6789d(0x808))):(warnlog(_0xc6789d(0x30f)+_0x2aacd3+_0xc6789d(0x808)),_0x164142['pcs'][_0x49208f][_0xc6789d(0x3e9)][_0xc6789d(0x57b)]=![]);}else _0xc6789d(0x57b)in _0x164142[_0xc6789d(0x2f9)][_0x49208f]['stats']&&(_0x164142['pcs'][_0x49208f]['stats'][_0xc6789d(0x57b)]=![]);_0x550f43===![]&&(_0x164142[_0xc6789d(0x616)]&&(_0x164142['pcs'][_0x49208f][_0xc6789d(0xa60)]=_0x2aacd3,_0x2aacd3=_0x164142[_0xc6789d(0xa44)](_0x2aacd3,_0x49208f)));if(_0x2aacd3===0x0){var _0x14c5af=Date['now']()-_0x164142[_0xc6789d(0x2f9)][_0x49208f][_0xc6789d(0x7d0)];_0x14c5af<_0x164142['rampUpTime']&&(_0x2aacd3=_0x164142['preloadbitrate'],log(_0xc6789d(0x34a)+(Date[_0xc6789d(0xa19)]()-_0x164142[_0xc6789d(0x2f9)][_0x49208f][_0xc6789d(0x7d0)])),_0x164142['pcs'][_0x49208f]['bitrateTimeout']=setTimeout(function(_0x22b1ea){var _0x2278ca=_0xc6789d;try{warnlog(_0x2278ca(0x792)+(Date[_0x2278ca(0xa19)]()-_0x164142[_0x2278ca(0x2f9)][_0x22b1ea][_0x2278ca(0x7d0)])),_0x164142[_0x2278ca(0x886)](_0x22b1ea,null);}catch(_0xcc2608){};},_0x164142[_0xc6789d(0x4c6)]-_0x14c5af+0x5,_0x49208f));}try{if((iOS||iPad)&&SafariVersion&&SafariVersion<=0xd){log(_0xc6789d(0x29c));if(_0x164142['pcs'][_0x49208f]['guest']==!![]&&_0x164142['pcs'][_0x49208f]['forceios']==![])return;var _0x83a596=getSenders2(_0x49208f)[_0xc6789d(0x968)](function(_0x589adc){var _0x4f5171=_0xc6789d;return _0x589adc[_0x4f5171(0x79c)]&&_0x589adc['track']['kind']==_0x4f5171(0x513);});if(!_0x83a596){warnlog(_0xc6789d(0x268));return;}var _0x1912c7=_0x83a596['getParameters']();(!_0x1912c7['encodings']||_0x1912c7[_0xc6789d(0x651)][_0xc6789d(0x7e9)]==0x0)&&(_0x1912c7[_0xc6789d(0x651)]=[{}]);_0x2aacd3===0x0?_0x1912c7[_0xc6789d(0x651)][0x0]['active']=![]:(_0x1912c7[_0xc6789d(0x651)][0x0]['active']==![]&&(_0x1912c7[_0xc6789d(0x651)][0x0][_0xc6789d(0xa70)]=!![]),_0x1912c7[_0xc6789d(0x651)][0x0][_0xc6789d(0x505)]=_0x2aacd3*0x400);_0x83a596[_0xc6789d(0x4a5)](_0x1912c7)[_0xc6789d(0x63c)](()=>{var _0x22bbc2=_0xc6789d;pokeIframeAPI(_0x22bbc2(0x8a8),_0x2aacd3,_0x49208f),log('bandwidth\x20set\x20a!\x20'+_0x2aacd3);})[_0xc6789d(0x341)](warnlog);return;}else{if('RTCRtpSender'in window&&'setParameters'in window[_0xc6789d(0x85e)][_0xc6789d(0x78b)]){var _0x83a596=getSenders2(_0x49208f)[_0xc6789d(0x968)](function(_0x28a1f3){var _0x36e2f1=_0xc6789d;return _0x28a1f3[_0x36e2f1(0x79c)]&&_0x28a1f3[_0x36e2f1(0x79c)]['kind']==_0x36e2f1(0x513);});if(!_0x83a596){warnlog('can\x27t\x20change\x20bitrate;\x20no\x20video\x20sender\x20found');return;}var _0x1912c7=_0x83a596[_0xc6789d(0x4e6)]();(!_0x1912c7[_0xc6789d(0x651)]||_0x1912c7[_0xc6789d(0x651)][_0xc6789d(0x7e9)]==0x0)&&(_0x1912c7[_0xc6789d(0x651)]=[{}]);_0x2aacd3===0x0?(_0x1912c7[_0xc6789d(0x651)][0x0][_0xc6789d(0xa70)]=![],Firefox&&(_0x1912c7[_0xc6789d(0x651)][0x0]['maxBitrate']=0x1,_0x1912c7['encodings'][0x0][_0xc6789d(0x784)]=0x3e8)):(_0x1912c7['encodings'][0x0][_0xc6789d(0xa70)]==![]&&(_0x1912c7[_0xc6789d(0x651)][0x0][_0xc6789d(0xa70)]=!![]),_0x1912c7[_0xc6789d(0x651)][0x0][_0xc6789d(0x505)]=_0x2aacd3*0x400);if(_0x2aacd3!==0x0){var _0x4b51d0=_0x164142['calculateScale'](_0x49208f,_0x2aacd3);if(_0x4b51d0<=0x0||_0x4b51d0==0x64){var _0x353360=getChromeVersion();_0x353360>0x50?_0xc6789d(0x784)in _0x1912c7[_0xc6789d(0x651)][0x0]?delete _0x1912c7[_0xc6789d(0x651)][0x0][_0xc6789d(0x784)]:_0x1912c7[_0xc6789d(0x651)][0x0]['scaleResolutionDownBy']=0x1:_0x1912c7['encodings'][0x0][_0xc6789d(0x784)]=0x1;}else _0x1912c7[_0xc6789d(0x651)][0x0][_0xc6789d(0x784)]=0x64/_0x4b51d0;iPad||iOS||Firefox?_0x164142[_0xc6789d(0x2f9)][_0x49208f][_0xc6789d(0x43f)]?(clearInterval(_0x164142['pcs'][_0x49208f][_0xc6789d(0x43f)]),_0x164142[_0xc6789d(0x2f9)][_0x49208f][_0xc6789d(0x43f)]=setTimeout(function(_0xedf6da,_0x5aecc2){var _0x1b0872=_0xc6789d;log(_0x1b0872(0x87f)+_0x2aacd3),_0x164142[_0x1b0872(0x2f9)][_0xedf6da]['bitrateTimeoutFirefox']=![],_0x164142['limitBitrate'](_0xedf6da,null,_0x5aecc2);},0x1f4,_0x49208f,_0x550f43)):(_0x164142[_0xc6789d(0x2f9)][_0x49208f]['bitrateTimeoutFirefox']=setTimeout(function(_0x546dfc){var _0x26a0c3=_0xc6789d;_0x164142[_0x26a0c3(0x2f9)][_0x546dfc][_0x26a0c3(0x43f)]=![];},0x1f4,_0x49208f),_0x83a596[_0xc6789d(0x4a5)](_0x1912c7)[_0xc6789d(0x63c)](()=>{var _0x534196=_0xc6789d;log('bandwidth\x20set\x20b!\x20'+_0x2aacd3),log(_0x1912c7),_0x164142[_0x534196(0x2f9)][_0x49208f][_0x534196(0x3e9)][_0x534196(0x37c)]=parseInt(_0x4b51d0)+'%',pokeIframeAPI(_0x534196(0x8a8),_0x2aacd3,_0x49208f),pokeIframeAPI(_0x534196(0x4cd),_0x4b51d0,_0x49208f);})['catch'](warnlog)):_0x83a596['setParameters'](_0x1912c7)[_0xc6789d(0x63c)](()=>{var _0xb8a5c9=_0xc6789d;log(_0xb8a5c9(0x374)+_0x2aacd3),_0x164142['pcs'][_0x49208f][_0xb8a5c9(0x3e9)]['scaleFactor']=parseInt(_0x4b51d0)+'%',pokeIframeAPI(_0xb8a5c9(0x8a8),_0x2aacd3,_0x49208f),pokeIframeAPI(_0xb8a5c9(0x4cd),_0x4b51d0,_0x49208f);})[_0xc6789d(0x341)](warnlog);}else iPad||iOS||Firefox?_0x164142[_0xc6789d(0x2f9)][_0x49208f][_0xc6789d(0x43f)]?(clearInterval(_0x164142[_0xc6789d(0x2f9)][_0x49208f][_0xc6789d(0x43f)]),_0x164142[_0xc6789d(0x2f9)][_0x49208f][_0xc6789d(0x43f)]=setTimeout(function(_0x188190,_0x4b09f3){var _0x27cf02=_0xc6789d;log(_0x27cf02(0x87f)+_0x2aacd3),_0x164142['pcs'][_0x188190][_0x27cf02(0x43f)]=![],_0x164142['limitBitrate'](_0x188190,null,_0x4b09f3);},0x1f4,_0x49208f,_0x550f43)):(_0x164142[_0xc6789d(0x2f9)][_0x49208f]['bitrateTimeoutFirefox']=setTimeout(function(_0x48c705){var _0x46e5a7=_0xc6789d;_0x164142['pcs'][_0x48c705][_0x46e5a7(0x43f)]=![];},0x1f4,_0x49208f),_0x83a596[_0xc6789d(0x4a5)](_0x1912c7)[_0xc6789d(0x63c)](()=>{var _0x266598=_0xc6789d;log(_0x266598(0x9c3)+_0x2aacd3),log(_0x1912c7),pokeIframeAPI(_0x266598(0x8a8),_0x2aacd3,_0x49208f);})[_0xc6789d(0x341)](warnlog)):_0x83a596[_0xc6789d(0x4a5)](_0x1912c7)['then'](()=>{log('bandwidth\x20set\x20e!\x20'+_0x2aacd3),pokeIframeAPI('setVideoBitrate',_0x2aacd3,_0x49208f);})['catch'](warnlog);}else warnlog('BROWER\x20DID\x20NOT\x20SUPPORT\x20LIMIT\x20BITRATE');}}catch(_0x2a9ee6){errorlog(_0x2a9ee6);}};function _0x4de611(_0x436832,_0x1faa00,_0x2670ca){var _0x451f1b=_0x204338;if(_0x164142[_0x451f1b(0x761)])return _0x1faa00;warnlog(_0x451f1b(0x862)+_0x1faa00+_0x451f1b(0x2b5)+_0x2670ca);if(_0x2670ca<0x0)_0x164142[_0x451f1b(0x2f9)][_0x436832][_0x451f1b(0x5f0)]=0x64;else{if(_0x2670ca>=0x259)_0x164142[_0x451f1b(0x2f9)][_0x436832][_0x451f1b(0x5f0)]=0x64;else{if(_0x451f1b(0x2ff)in _0x164142['pcs'][_0x436832])_0x164142[_0x451f1b(0x2f9)][_0x436832][_0x451f1b(0x5f0)]=0x64;else{if(_0x164142[_0x451f1b(0x48f)])_0x164142['pcs'][_0x436832][_0x451f1b(0x5f0)]=0x64;else{var _0xe4f580=getNativeOutputResolution();if(_0xe4f580)try{_0xe4f580=_0xe4f580[_0x451f1b(0x2ae)]*_0xe4f580[_0x451f1b(0x93b)],_0xe4f580=Math[_0x451f1b(0x863)](_0xe4f580,0.5);}catch(_0x102269){_0xe4f580=![];}warnlog(_0x451f1b(0x99e)+_0xe4f580);if(_0x2670ca>=0x15e){if(_0xe4f580&&_0xe4f580<=0x1e0)_0x164142[_0x451f1b(0x2f9)][_0x436832]['scaleDueToBitrate']=0x64;else{if(_0x164142[_0x451f1b(0xa49)]){if(_0xe4f580&&_0xe4f580>=0x5a0)_0x164142['pcs'][_0x436832]['scaleDueToBitrate']=0x64/0x3;else _0x164142[_0x451f1b(0x536)]?_0xe4f580&&_0xe4f580>=0x3c0?_0x164142['pcs'][_0x436832][_0x451f1b(0x5f0)]=0x64/0x2:_0x164142[_0x451f1b(0x2f9)][_0x436832][_0x451f1b(0x5f0)]=0x64:_0x164142[_0x451f1b(0x2f9)][_0x436832][_0x451f1b(0x5f0)]=0x64/0x2;}else{if(_0xe4f580&&_0xe4f580>=0x5a0)_0x164142[_0x451f1b(0x2f9)][_0x436832][_0x451f1b(0x5f0)]=0x64/2.5;else _0xe4f580&&_0xe4f580>=0x3c0?_0x164142[_0x451f1b(0x2f9)][_0x436832][_0x451f1b(0x5f0)]=0x64/0x2:_0x164142[_0x451f1b(0x2f9)][_0x436832][_0x451f1b(0x5f0)]=0x64;}}}else{if(_0x2670ca>=0xc9){if(_0xe4f580&&_0xe4f580<0x1e0)_0x164142[_0x451f1b(0x2f9)][_0x436832][_0x451f1b(0x5f0)]=0x64;else{if(_0x164142[_0x451f1b(0xa49)]){if(_0xe4f580&&_0xe4f580>=0x5a0)_0x164142[_0x451f1b(0x2f9)][_0x436832][_0x451f1b(0x5f0)]=0x64/0x4;else _0x164142[_0x451f1b(0x536)]?_0x164142[_0x451f1b(0x2f9)][_0x436832]['scaleDueToBitrate']=0x64/0x2:_0x164142[_0x451f1b(0x2f9)][_0x436832][_0x451f1b(0x5f0)]=0x64/2.5;}else _0xe4f580&&_0xe4f580>=0x5a0?_0x164142['pcs'][_0x436832][_0x451f1b(0x5f0)]=0x64/0x3:_0x164142[_0x451f1b(0x2f9)][_0x436832][_0x451f1b(0x5f0)]=0x64/0x2;}}else{if(_0xe4f580&&_0xe4f580<=0xf0)_0x164142[_0x451f1b(0x2f9)][_0x436832][_0x451f1b(0x5f0)]=0x64;else{if(_0x2670ca>=0x51){if(_0x164142[_0x451f1b(0xa49)]){if(_0xe4f580&&_0xe4f580>=0x5a0)_0x164142['pcs'][_0x436832][_0x451f1b(0x5f0)]=0x64/0x6;else _0x164142[_0x451f1b(0x536)]?_0x164142[_0x451f1b(0x2f9)][_0x436832]['scaleDueToBitrate']=0x64/0x3:_0x164142['pcs'][_0x436832][_0x451f1b(0x5f0)]=0x64/0x4;}else _0xe4f580&&_0xe4f580>=0x5a0?_0x164142[_0x451f1b(0x2f9)][_0x436832][_0x451f1b(0x5f0)]=0x64/0x4:_0x164142[_0x451f1b(0x2f9)][_0x436832][_0x451f1b(0x5f0)]=0x64/0x3;}else{if(_0x164142[_0x451f1b(0xa49)]){if(_0xe4f580&&_0xe4f580>=0x3c0)_0x164142['pcs'][_0x436832][_0x451f1b(0x5f0)]=0x64/0x6;else _0x164142[_0x451f1b(0x536)]?_0x164142[_0x451f1b(0x2f9)][_0x436832][_0x451f1b(0x5f0)]=0x64/0x4:_0x164142[_0x451f1b(0x2f9)][_0x436832][_0x451f1b(0x5f0)]=0x64/0x5;}else _0xe4f580&&_0xe4f580>=0x5a0?_0x164142['pcs'][_0x436832][_0x451f1b(0x5f0)]=0x64/0x5:_0x164142[_0x451f1b(0x2f9)][_0x436832]['scaleDueToBitrate']=0x64/0x4;}}}}}}}}return _0x164142[_0x451f1b(0x2f9)][_0x436832][_0x451f1b(0x5f0)]<_0x1faa00&&(_0x1faa00=_0x164142[_0x451f1b(0x2f9)][_0x436832][_0x451f1b(0x5f0)]),_0x1faa00;}function _0x1a8f3a(_0x2d49ed,_0x3d2daa=0x2710){var _0x891877=_0x204338;_0x3d2daa=parseInt(_0x3d2daa);if(_0x164142[_0x891877(0x58b)])_0x3d2daa+=_0x164142['audiobitrate'];else{if(_0x164142[_0x891877(0x752)]&&_0x164142[_0x891877(0x4ba)]==0x5)_0x3d2daa+=0x20;else _0x164142['stereo']&&_0x164142['stereo']!=0x3?_0x3d2daa+=0x100:_0x3d2daa+=0x20;}return log(_0x891877(0x8bb)+_0x3d2daa),_0x3d2daa<0x1&&(_0x3d2daa=0x1),_0x2d49ed=CodecsHandler[_0x891877(0x77f)](_0x2d49ed,{'min':_0x3d2daa||0x1,'max':_0x3d2daa||0x1},_0x164142[_0x891877(0x7af)]),_0x2d49ed;}_0x164142[_0x204338(0x60a)]=function(_0x54a16c,_0x48d690){var _0x5a557a=_0x204338;log(_0x54a16c),_0x164142[_0x5a557a(0x4ca)]==={}&&log(_0x5a557a(0x6a3)),window[_0x5a557a(0x4e5)][_0x5a557a(0x8e7)][_0x5a557a(0x511)]({'name':_0x5a557a(0x904)},_0x164142[_0x5a557a(0x4ca)][_0x5a557a(0x24e)],_0x164142[_0x5a557a(0x958)][_0x5a557a(0x5c6)](_0x54a16c))[_0x5a557a(0x63c)](function(_0x15d68a){var _0x53c49f=_0x5a557a;_0x15d68a=new Uint8Array(_0x15d68a),_0x15d68a=_0x15d68a[_0x53c49f(0x318)]((_0xa3d3d6,_0x1b6ee8)=>_0xa3d3d6+_0x1b6ee8[_0x53c49f(0x3ea)](0x10)[_0x53c49f(0x44d)](0x2,'0'),''),_0x48d690(_0x54a16c,_0x15d68a),log(JSON[_0x53c49f(0x776)](_0x15d68a));})[_0x5a557a(0x341)](errorlog);},_0x164142['verifyData']=function(_0x2a545e,_0x597ec3){var _0x3bd53f=_0x204338;_0x2a545e['signature']=new Uint8Array(_0x2a545e[_0x3bd53f(0x7dc)]['match'](/.{1,2}/g)[_0x3bd53f(0x28c)](_0x4c0c08=>parseInt(_0x4c0c08,0x10)));if(_0x164142['keys'][_0x597ec3][_0x3bd53f(0x8b5)])return window[_0x3bd53f(0x4e5)][_0x3bd53f(0x8e7)][_0x3bd53f(0x8bc)]({'name':_0x3bd53f(0x904)},_0x164142['keys'][_0x597ec3]['publicKey'],_0x2a545e[_0x3bd53f(0x7dc)],_0x164142['enc'][_0x3bd53f(0x5c6)](_0x2a545e[_0x3bd53f(0x7db)]))[_0x3bd53f(0x63c)](function(_0x31588b){return _0x31588b;})['catch'](function(_0x241995){return errorlog(_0x241995),![];});},_0x164142[_0x204338(0x621)]=function(_0x13cdbf){var _0x1a5c50=_0x204338;if(_0x164142[_0x1a5c50(0x4c8)])return _0x164142['hash']!==![]?(_0x13cdbf=_0x13cdbf[_0x1a5c50(0x59b)](0x0,-0x1*_0x164142['hash']['length']),_0x13cdbf):generateHash(_0x164142['password']+_0x164142[_0x1a5c50(0x73e)],0x6)[_0x1a5c50(0x63c)](function(_0x2357a9){var _0x221867=_0x1a5c50;return _0x164142[_0x221867(0x4b1)]=_0x2357a9,_0x13cdbf=_0x13cdbf[_0x221867(0x59b)](0x0,-0x1*_0x164142[_0x221867(0x4b1)]['length']),_0x13cdbf;})['catch'](errorlog);return _0x13cdbf;},_0x164142['ping']=function(){var _0x3ba70c=_0x204338;if(_0x164142['customWSS'])return;clearTimeout(_0x164142[_0x3ba70c(0x847)]);if(!_0x164142['ws']||_0x164142['ws'][_0x3ba70c(0x464)]!==0x1)return;_0x164142[_0x3ba70c(0x847)]=setTimeout(function(){var _0x41bf01=_0x3ba70c;log(_0x41bf01(0x916));var _0xa3ae75={};_0xa3ae75['request']=_0x41bf01(0x9fb),_0x164142['sendMsg'](_0xa3ae75);},0xbb8);},_0x164142[_0x204338(0x1e9)]=async function(_0x4832ed){var _0x162df2=_0x204338;await _0x164142[_0x162df2(0x769)]();if(_0x4832ed[_0x162df2(0x7e9)]>0x0){if(_0x4832ed===_0x164142[_0x162df2(0x200)]){warnlog('Can\x27t\x20play\x20your\x20own\x20stream\x20ID');return;}var _0x40d3fd={};_0x40d3fd[_0x162df2(0x8f2)]=_0x162df2(0x5ef),_0x40d3fd[_0x162df2(0x200)]=_0x4832ed,_0x164142[_0x162df2(0x444)](_0x40d3fd),_0x164142[_0x162df2(0x27f)][_0x4832ed]=!![],pokeIframeAPI(_0x162df2(0x23e),_0x4832ed);}else log('stream\x20ID\x20is\x200\x20length');},_0x164142[_0x204338(0x671)]=async function _0x3eea66(_0x1750b2){var _0x201b63=_0x204338;await _0x164142[_0x201b63(0x769)]();var _0x53177f={};return _0x53177f[_0x201b63(0x8f2)]=_0x201b63(0x941),_0x164142[_0x201b63(0x752)]&&!_0x164142[_0x201b63(0x1fb)]&&(_0x53177f[_0x201b63(0x2dd)]=!![]),_0x164142['customWSS']&&(_0x53177f['streamID']=_0x164142[_0x201b63(0x200)]),_0x164142[_0x201b63(0x5f4)]===![]&&(_0x164142['joiningRoom']=!![]),_0x164142[_0x201b63(0x4c8)]?_0x164142[_0x201b63(0x4b1)]?generateHash(_0x1750b2+_0x164142[_0x201b63(0x4c8)]+_0x164142[_0x201b63(0x73e)],0x10)[_0x201b63(0x63c)](function(_0x11c42f){var _0x265c43=_0x201b63;return _0x164142[_0x265c43(0x8e3)]&&(_0x164142['roomenc']=_0x11c42f),_0x53177f[_0x265c43(0x7aa)]=_0x11c42f,_0x164142[_0x265c43(0x444)](_0x53177f),_0x164142[_0x265c43(0xa5b)]=_0x2abfb7(),log(_0x265c43(0x79b)),pokeIframeAPI(_0x265c43(0x880),_0x1750b2),_0x164142[_0x265c43(0xa5b)];})[_0x201b63(0x341)](errorlog):generateHash(_0x164142[_0x201b63(0x4c8)]+_0x164142[_0x201b63(0x73e)],0x6)['then'](function(_0x48896b){var _0x278567=_0x201b63;return _0x164142[_0x278567(0x4b1)]=_0x48896b,log(_0x278567(0x394)+_0x48896b),log(_0x278567(0x286)),_0x164142[_0x278567(0x671)](_0x1750b2);})['catch'](errorlog):(_0x164142[_0x201b63(0x8e3)]&&(_0x164142[_0x201b63(0x4fe)]=_0x1750b2),_0x53177f[_0x201b63(0x7aa)]=_0x1750b2,_0x164142[_0x201b63(0x444)](_0x53177f),_0x164142[_0x201b63(0xa5b)]=_0x2abfb7(),log(_0x201b63(0x501)),pokeIframeAPI(_0x201b63(0x880),_0x1750b2),_0x164142[_0x201b63(0xa5b)]);},_0x164142[_0x204338(0x444)]=function(_0x515a07,_0x10f53c=![]){var _0xa15fdb=_0x204338;_0x10f53c&&(_0x515a07['UUID']=_0x10f53c);if(_0x164142[_0xa15fdb(0x8e3)]){_0x164142[_0xa15fdb(0x2ef)]?_0x515a07[_0xa15fdb(0x8c5)]=_0x164142[_0xa15fdb(0x2ef)]:(_0x164142[_0xa15fdb(0x2ef)]=_0x164142['generateStreamID'](0x14),_0x515a07[_0xa15fdb(0x8c5)]=_0x164142[_0xa15fdb(0x2ef)]);if(_0x515a07[_0xa15fdb(0x2ef)]&&_0x515a07[_0xa15fdb(0x8c5)]===_0x515a07[_0xa15fdb(0x2ef)])return;_0x164142[_0xa15fdb(0x752)]&&(_0x515a07['director']=!![]),!('roomid'in _0x515a07)&&(_0x164142['roomenc']&&(_0x515a07[_0xa15fdb(0x7aa)]=_0x164142[_0xa15fdb(0x4fe)]));}clearTimeout(_0x164142['pingTimeout']);try{if(_0x164142[_0xa15fdb(0x4c8)]){if(_0x515a07[_0xa15fdb(0x200)]){if(_0x164142[_0xa15fdb(0x4b1)]!==![]){if(_0x164142['ws']===null||(typeof _0x164142['ws']!==_0xa15fdb(0x750)||_0x164142['ws'][_0xa15fdb(0x464)]!==0x1))log(_0x515a07,'could\x20not\x20be\x20sent;\x20queuing\x20it'),_0x164142[_0xa15fdb(0x4d7)][_0xa15fdb(0x68a)](_0x515a07);else{_0x515a07[_0xa15fdb(0x200)]=_0x515a07[_0xa15fdb(0x200)][_0xa15fdb(0x8c9)](0x0,0x2c)+_0x164142[_0xa15fdb(0x4b1)][_0xa15fdb(0x8c9)](0x0,0x6);var _0x3344b5=JSON[_0xa15fdb(0x776)](_0x515a07);if(_0x3344b5[_0xa15fdb(0x7e9)]>0x3a98){errorlog('msg\x20size\x20error'),errorlog(_0x515a07),errorlog(_0x3344b5['length']);return;}_0x164142['ws'][_0xa15fdb(0x640)](_0x3344b5);}}else return generateHash(_0x164142['password']+_0x164142['salt'],0x6)['then'](function(_0x3dd55c){var _0x5d2f84=_0xa15fdb;_0x164142[_0x5d2f84(0x4b1)]=_0x3dd55c;if(typeof _0x164142['ws']!==_0x5d2f84(0x750)||_0x164142['ws'][_0x5d2f84(0x464)]!==0x1)log(_0x515a07,'could\x20not\x20be\x20sent;\x20queuing\x20it'),_0x164142[_0x5d2f84(0x4d7)]['push'](_0x515a07);else{_0x515a07[_0x5d2f84(0x200)]=_0x515a07[_0x5d2f84(0x200)]['substring'](0x0,0x2c)+_0x164142['hash'][_0x5d2f84(0x8c9)](0x0,0x6);var _0x5a7efc=JSON['stringify'](_0x515a07);if(_0x5a7efc['length']>0x3a98){errorlog(_0x5d2f84(0x34c));return;}_0x164142['ws'][_0x5d2f84(0x640)](_0x5a7efc);}})[_0xa15fdb(0x341)](errorlog);}else{if(_0x164142['ws']===null||(typeof _0x164142['ws']!==_0xa15fdb(0x750)||_0x164142['ws'][_0xa15fdb(0x464)]!==0x1))log(_0x515a07,_0xa15fdb(0x9d3)),_0x164142['msg']['push'](_0x515a07);else{var _0x3344b5=JSON[_0xa15fdb(0x776)](_0x515a07);if(_0x3344b5['length']>0x3a98){errorlog('msg\x20size\x20error');return;}_0x164142['ws'][_0xa15fdb(0x640)](_0x3344b5);}}}else{if(typeof _0x164142['ws']!==_0xa15fdb(0x750)||_0x164142['ws'][_0xa15fdb(0x464)]!==0x1)warnlog('message\x20could\x20not\x20be\x20sent;\x20queuing\x20it'),_0x164142[_0xa15fdb(0x4d7)][_0xa15fdb(0x68a)](_0x515a07);else{var _0x3344b5=JSON[_0xa15fdb(0x776)](_0x515a07);if(_0x3344b5[_0xa15fdb(0x7e9)]>0x3a98){errorlog('msg\x20size\x20error');return;}_0x164142['ws']['send'](_0x3344b5);}}}catch(_0x272e89){errorlog(_0x272e89);}},_0x164142[_0x204338(0x9be)]=function(_0x3d1177,_0x1a7efb=![]){var _0x39b3cc=_0x204338,_0x5a5704=[],_0x4cf8dc=JSON[_0x39b3cc(0x776)](_0x3d1177);for(var _0xd27afb in _0x164142[_0x39b3cc(0x2f9)]){if(_0x1a7efb&&_0x1a7efb!==_0xd27afb)continue;try{_0x164142[_0x39b3cc(0x2f9)][_0xd27afb]['sendChannel'][_0x39b3cc(0x640)](_0x4cf8dc),_0x5a5704[_0x39b3cc(0x68a)](_0xd27afb);}catch(_0x39be7f){warnlog(_0x39b3cc(0x66b));}if(_0x1a7efb&&_0x1a7efb===_0xd27afb)return _0x5a5704[_0x39b3cc(0x7e9)];}for(var _0xd27afb in _0x164142[_0x39b3cc(0x207)]){if(_0x1a7efb&&_0x1a7efb!==_0xd27afb)continue;if(_0x5a5704[_0x39b3cc(0x6b6)](_0xd27afb))continue;try{if('realUUID'in _0x164142[_0x39b3cc(0x207)][_0xd27afb]){var _0x577376=JSON[_0x39b3cc(0x90a)](_0x3d1177);_0x577376[_0x39b3cc(0x5d2)]=!![],_0x577376=JSON['stringify'](_0x577376),_0x164142[_0x39b3cc(0x207)][_0x164142['rpcs'][_0xd27afb][_0x39b3cc(0x2ff)]]['receiveChannel'][_0x39b3cc(0x640)](_0x577376);}else _0x164142[_0x39b3cc(0x207)][_0xd27afb][_0x39b3cc(0x573)][_0x39b3cc(0x640)](_0x4cf8dc);_0x5a5704[_0x39b3cc(0x68a)](_0xd27afb);}catch(_0x388b23){warnlog(_0x39b3cc(0x58f));}}return _0x5a5704['length'];},_0x164142[_0x204338(0x2a9)]=function(_0x276e69,_0x244614=![]){var _0x2f04a7=_0x204338,_0x18e333=![];if('UUID'in _0x276e69)_0x18e333=_0x164142[_0x2f04a7(0xa46)](_0x276e69,_0x276e69['UUID']),_0x18e333?(log(_0x276e69),log(_0x2f04a7(0x3e6))):(log(_0x2f04a7(0x9c8)),_0x164142[_0x2f04a7(0x444)](_0x276e69));else _0x244614?(_0x18e333=_0x164142[_0x2f04a7(0xa46)](_0x276e69),_0x18e333?(log(_0x276e69),log(_0x2f04a7(0xa65))):(log(_0x2f04a7(0x3a0)),_0x164142[_0x2f04a7(0x444)](_0x276e69))):(_0x164142['sendMsg'](_0x276e69),warnlog(_0x2f04a7(0x71c)),warnlog(_0x276e69));},_0x164142[_0x204338(0x3cd)]=function(_0x656109,_0x52a37e=![]){var _0x2696bf=_0x204338,_0x48f7ae=![];if(_0x2696bf(0x2ef)in _0x656109)_0x48f7ae=_0x164142[_0x2696bf(0x7a9)](_0x656109,_0x656109['UUID']),_0x48f7ae?log(_0x2696bf(0x3e6)):(log(_0x2696bf(0x9c8)),_0x164142[_0x2696bf(0x444)](_0x656109));else _0x52a37e?(_0x48f7ae=_0x164142['sendRequest'](_0x656109),_0x48f7ae?log('successfully\x20sent\x20message\x20vis\x20WebRTC\x20instead\x20of\x20WSS\x20to\x20all\x20RTC\x20Peers'):(log(_0x2696bf(0x3a0)),_0x164142[_0x2696bf(0x444)](_0x656109))):(_0x164142[_0x2696bf(0x444)](_0x656109),warnlog('sending\x20request\x20via\x20server'),warnlog(_0x656109));},_0x164142['directorActions']=function(_0x392a2b){var _0x4f6375=_0x204338;log(_0x392a2b);if(_0x4f6375(0x2b7)in _0x392a2b){if(_0x4f6375(0x247)in _0x392a2b){if(_0x4f6375(0x7dd)in _0x392a2b){if(_0x164142[_0x4f6375(0x7dd)]!==![]){var _0xa78ada=![],_0x293927=0x0;for(var _0x592de6 in _0x164142[_0x4f6375(0x207)]){_0x293927+=0x1;if(_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x200)]===_0x392a2b[_0x4f6375(0x247)]){if('value'in _0x392a2b){if(_0x392a2b[_0x4f6375(0x2b7)]==_0x4f6375(0xa10))_0x392a2b[_0x4f6375(0x3c1)]==0x1?(log('Mute\x20video\x203306'),_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x51c)]=!![],applyMuteState(_0x592de6)):(log('Unmute\x20video'),_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x51c)]=![],applyMuteState(_0x592de6)),_0x164142['sceneSync'](_0x592de6);else{if(_0x392a2b[_0x4f6375(0x2b7)]==_0x4f6375(0x622)){if(_0x164142[_0x4f6375(0x76a)])return;;if(_0x164142[_0x4f6375(0x7dd)]===_0x392a2b[_0x4f6375(0x7dd)]){if(_0x164142['sceneType']==0x2){if(_0x392a2b[_0x4f6375(0x3c1)]==0x0){_0x164142['rpcs'][_0x592de6][_0x4f6375(0x8f9)]=!![],applyMuteState(_0x592de6);_0x164142['rpcs'][_0x592de6][_0x4f6375(0x570)]&&(_0x164142['rpcs'][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x96d)][_0x4f6375(0x622)]&&_0x164142['rpcs'][_0x592de6]['videoElement'][_0x4f6375(0x96d)][_0x4f6375(0x622)]!=='none'&&(_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x96d)]['display']=_0x4f6375(0xa3c),_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x311)]=![],_0xa78ada=!![]));_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x89c)]&&_0x164142['rpcs'][_0x592de6][_0x4f6375(0x89c)][_0x4f6375(0x96d)][_0x4f6375(0x622)]&&_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x89c)][_0x4f6375(0x96d)][_0x4f6375(0x622)]!=='none'&&(_0x164142['rpcs'][_0x592de6][_0x4f6375(0x89c)][_0x4f6375(0x96d)][_0x4f6375(0x622)]=_0x4f6375(0xa3c),_0x164142[_0x4f6375(0x207)][_0x592de6]['iframeEle'][_0x4f6375(0x311)]=![],_0xa78ada=!![]);var _0x3ad5f0=0x0,_0x45c9fd=![];for(var _0x1bf8fa in _0x164142['rpcs']){_0x1bf8fa!==_0x592de6&&(_0x164142['rpcs'][_0x1bf8fa][_0x4f6375(0x570)]&&_0x164142[_0x4f6375(0x207)][_0x1bf8fa]['videoElement']['sceneType2']&&(_0x164142[_0x4f6375(0x207)][_0x1bf8fa][_0x4f6375(0x570)][_0x4f6375(0x311)]>_0x3ad5f0&&(_0x3ad5f0=_0x164142['rpcs'][_0x1bf8fa][_0x4f6375(0x570)][_0x4f6375(0x311)],_0x45c9fd=_0x1bf8fa)),_0x164142['rpcs'][_0x1bf8fa][_0x4f6375(0x89c)]&&_0x164142[_0x4f6375(0x207)][_0x1bf8fa][_0x4f6375(0x89c)][_0x4f6375(0x311)]&&(_0x164142['rpcs'][_0x1bf8fa][_0x4f6375(0x89c)][_0x4f6375(0x311)]>_0x3ad5f0&&(_0x3ad5f0=_0x164142[_0x4f6375(0x207)][_0x1bf8fa][_0x4f6375(0x89c)]['sceneType2'],_0x45c9fd=_0x1bf8fa)));}_0x45c9fd&&(_0x164142[_0x4f6375(0x207)][_0x45c9fd]['mutedStateScene']=![],applyMuteState(_0x45c9fd),_0x164142[_0x4f6375(0x207)][_0x45c9fd][_0x4f6375(0x570)]&&(_0x164142[_0x4f6375(0x207)][_0x45c9fd][_0x4f6375(0x570)]['style']['display']&&_0x164142[_0x4f6375(0x207)][_0x45c9fd]['videoElement'][_0x4f6375(0x96d)]['display']!==_0x4f6375(0x2f7)&&(_0x164142[_0x4f6375(0x207)][_0x45c9fd][_0x4f6375(0x570)]['style'][_0x4f6375(0x622)]='block',_0x164142[_0x4f6375(0x207)][_0x45c9fd][_0x4f6375(0x570)][_0x4f6375(0x311)]=Date[_0x4f6375(0xa19)](),_0xa78ada=!![]),_0x164142['rpcs'][_0x45c9fd][_0x4f6375(0x570)][_0x4f6375(0x3b8)]&&clearInterval(_0x164142['rpcs'][_0x45c9fd][_0x4f6375(0x570)][_0x4f6375(0x3b8)]),_0x164142[_0x4f6375(0x207)][_0x45c9fd][_0x4f6375(0x570)]['controls']=![],_0x164142[_0x4f6375(0x207)][_0x45c9fd]['videoElement'][_0x4f6375(0x3b8)]=setTimeout(showControlBar[_0x4f6375(0x5ca)](null,_0x164142[_0x4f6375(0x207)][_0x45c9fd][_0x4f6375(0x570)]),0xbb8)),_0x164142['rpcs'][_0x45c9fd][_0x4f6375(0x89c)]&&_0x164142[_0x4f6375(0x207)][_0x45c9fd]['iframeEle'][_0x4f6375(0x96d)][_0x4f6375(0x622)]&&_0x164142[_0x4f6375(0x207)][_0x45c9fd][_0x4f6375(0x89c)][_0x4f6375(0x96d)][_0x4f6375(0x622)]!==_0x4f6375(0x2f7)&&(_0x164142[_0x4f6375(0x207)][_0x45c9fd][_0x4f6375(0x89c)][_0x4f6375(0x96d)][_0x4f6375(0x622)]=_0x4f6375(0x2f7),_0x164142[_0x4f6375(0x207)][_0x45c9fd]['iframeEle'][_0x4f6375(0x311)]=Date[_0x4f6375(0xa19)](),_0xa78ada=!![]));}else{for(var _0x1bf8fa in _0x164142[_0x4f6375(0x207)]){_0x1bf8fa!==_0x592de6&&(_0x164142[_0x4f6375(0x207)][_0x1bf8fa][_0x4f6375(0x8f9)]=!![],applyMuteState(_0x1bf8fa),_0x164142[_0x4f6375(0x207)][_0x1bf8fa]['videoElement']&&(_0x164142[_0x4f6375(0x207)][_0x1bf8fa][_0x4f6375(0x570)]['style'][_0x4f6375(0x622)]&&_0x164142[_0x4f6375(0x207)][_0x1bf8fa]['videoElement'][_0x4f6375(0x96d)]['display']!==_0x4f6375(0xa3c)&&(_0x164142[_0x4f6375(0x207)][_0x1bf8fa][_0x4f6375(0x570)][_0x4f6375(0x96d)]['display']=_0x4f6375(0xa3c),_0xa78ada=!![])),_0x164142[_0x4f6375(0x207)][_0x1bf8fa]['iframeEle']&&_0x164142['rpcs'][_0x1bf8fa][_0x4f6375(0x89c)][_0x4f6375(0x96d)][_0x4f6375(0x622)]&&_0x164142[_0x4f6375(0x207)][_0x1bf8fa][_0x4f6375(0x89c)][_0x4f6375(0x96d)][_0x4f6375(0x622)]!==_0x4f6375(0xa3c)&&(_0x164142['rpcs'][_0x1bf8fa]['iframeEle'][_0x4f6375(0x96d)][_0x4f6375(0x622)]=_0x4f6375(0xa3c),_0xa78ada=!![]));}_0x164142['rpcs'][_0x592de6][_0x4f6375(0x8f9)]=![],applyMuteState(_0x592de6),_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x570)]&&(_0x164142['rpcs'][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x96d)][_0x4f6375(0x622)]&&_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x96d)][_0x4f6375(0x622)]!=='block'&&(_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x96d)]['display']=_0x4f6375(0x2f7),_0x164142[_0x4f6375(0x207)][_0x592de6]['videoElement'][_0x4f6375(0x311)]=Date['now'](),_0xa78ada=!![]),_0x164142['rpcs'][_0x592de6]['videoElement'][_0x4f6375(0x3b8)]&&clearInterval(_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x3b8)]),_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x33e)]=![],_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x570)]['controlTimer']=setTimeout(showControlBar[_0x4f6375(0x5ca)](null,_0x164142[_0x4f6375(0x207)][_0x592de6]['videoElement']),0xbb8)),_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x89c)]&&_0x164142[_0x4f6375(0x207)][_0x592de6]['iframeEle'][_0x4f6375(0x96d)][_0x4f6375(0x622)]&&_0x164142['rpcs'][_0x592de6][_0x4f6375(0x89c)][_0x4f6375(0x96d)][_0x4f6375(0x622)]!==_0x4f6375(0x2f7)&&(_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x89c)][_0x4f6375(0x96d)]['display']=_0x4f6375(0x2f7),_0x164142['rpcs'][_0x592de6][_0x4f6375(0x89c)]['sceneType2']=Date['now'](),_0xa78ada=!![]);}}else{if(_0x164142[_0x4f6375(0x55a)]==0x1){if(_0x392a2b[_0x4f6375(0x3c1)]==0x0)_0x164142['rpcs'][_0x592de6]['videoElement']&&(_0x164142['rpcs'][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x96d)][_0x4f6375(0x622)]&&_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x96d)][_0x4f6375(0x622)]!=='none'&&(_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x96d)][_0x4f6375(0x622)]=_0x4f6375(0xa3c),_0xa78ada=!![])),_0x164142[_0x4f6375(0x207)][_0x592de6]['iframeEle']&&_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x89c)]['style'][_0x4f6375(0x622)]&&_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x89c)][_0x4f6375(0x96d)][_0x4f6375(0x622)]!==_0x4f6375(0xa3c)&&(_0x164142['rpcs'][_0x592de6][_0x4f6375(0x89c)]['style'][_0x4f6375(0x622)]=_0x4f6375(0xa3c),_0xa78ada=!![]);else{for(var _0x1bf8fa in _0x164142['rpcs']){_0x1bf8fa!==_0x592de6&&(_0x164142['rpcs'][_0x1bf8fa][_0x4f6375(0x570)]&&(_0x164142[_0x4f6375(0x207)][_0x1bf8fa]['videoElement'][_0x4f6375(0x96d)][_0x4f6375(0x622)]&&_0x164142[_0x4f6375(0x207)][_0x1bf8fa][_0x4f6375(0x570)][_0x4f6375(0x96d)]['display']!==_0x4f6375(0xa3c)&&(_0x164142['rpcs'][_0x1bf8fa][_0x4f6375(0x570)][_0x4f6375(0x96d)][_0x4f6375(0x622)]=_0x4f6375(0xa3c),_0xa78ada=!![])),_0x164142['rpcs'][_0x1bf8fa][_0x4f6375(0x89c)]&&_0x164142[_0x4f6375(0x207)][_0x1bf8fa][_0x4f6375(0x89c)][_0x4f6375(0x96d)][_0x4f6375(0x622)]&&_0x164142[_0x4f6375(0x207)][_0x1bf8fa][_0x4f6375(0x89c)][_0x4f6375(0x96d)]['display']!==_0x4f6375(0xa3c)&&(_0x164142[_0x4f6375(0x207)][_0x1bf8fa][_0x4f6375(0x89c)][_0x4f6375(0x96d)]['display']=_0x4f6375(0xa3c),_0xa78ada=!![]));}_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x570)]&&(_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x96d)][_0x4f6375(0x622)]&&_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x570)]['style'][_0x4f6375(0x622)]!==_0x4f6375(0x2f7)&&(_0x164142['rpcs'][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x96d)]['display']=_0x4f6375(0x2f7),_0xa78ada=!![]),_0x164142['rpcs'][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x3b8)]&&clearInterval(_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x3b8)]),_0x164142['rpcs'][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x33e)]=![],_0x164142['rpcs'][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x3b8)]=setTimeout(showControlBar[_0x4f6375(0x5ca)](null,_0x164142['rpcs'][_0x592de6][_0x4f6375(0x570)]),0xbb8)),_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x89c)]&&_0x164142['rpcs'][_0x592de6][_0x4f6375(0x89c)][_0x4f6375(0x96d)][_0x4f6375(0x622)]&&_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x89c)][_0x4f6375(0x96d)]['display']!==_0x4f6375(0x2f7)&&(_0x164142['rpcs'][_0x592de6][_0x4f6375(0x89c)][_0x4f6375(0x96d)]['display']=_0x4f6375(0x2f7),_0xa78ada=!![]);}}else _0x392a2b['value']==0x0?(_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x8f9)]=!![],applyMuteState(_0x592de6),_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x570)]&&(_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x96d)][_0x4f6375(0x622)]&&_0x164142['rpcs'][_0x592de6][_0x4f6375(0x570)]['style']['display']!==_0x4f6375(0xa3c)&&(_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x96d)]['display']=_0x4f6375(0xa3c),_0xa78ada=!![])),_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x89c)]&&_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x89c)][_0x4f6375(0x96d)][_0x4f6375(0x622)]&&_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x89c)][_0x4f6375(0x96d)]['display']!==_0x4f6375(0xa3c)&&(_0x164142['rpcs'][_0x592de6][_0x4f6375(0x89c)][_0x4f6375(0x96d)][_0x4f6375(0x622)]=_0x4f6375(0xa3c),_0xa78ada=!![])):(_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x8f9)]=![],applyMuteState(_0x592de6),_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x570)]&&(_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x96d)]['display']&&_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x96d)][_0x4f6375(0x622)]!=='block'&&(_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x96d)]['display']=_0x4f6375(0x2f7),_0xa78ada=!![]),_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x3b8)]&&clearInterval(_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x3b8)]),_0x164142[_0x4f6375(0x207)][_0x592de6]['videoElement'][_0x4f6375(0x33e)]=![],_0x164142['rpcs'][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x3b8)]=setTimeout(showControlBar[_0x4f6375(0x5ca)](null,_0x164142['rpcs'][_0x592de6][_0x4f6375(0x570)]),0xbb8)),_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x89c)]&&_0x164142[_0x4f6375(0x207)][_0x592de6]['iframeEle'][_0x4f6375(0x96d)][_0x4f6375(0x622)]&&_0x164142['rpcs'][_0x592de6][_0x4f6375(0x89c)][_0x4f6375(0x96d)][_0x4f6375(0x622)]!==_0x4f6375(0x2f7)&&(_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x89c)][_0x4f6375(0x96d)]['display']=_0x4f6375(0x2f7),_0xa78ada=!![]));}}_0x164142[_0x4f6375(0x5d4)](_0x592de6);}else _0x392a2b[_0x4f6375(0x2b7)]==_0x4f6375(0x35d)&&(log(parseInt(_0x392a2b['value'])/0x64),_0x164142[_0x4f6375(0x207)][_0x592de6]['videoElement']&&(_0x164142[_0x4f6375(0x207)][_0x592de6][_0x4f6375(0x570)][_0x4f6375(0x35d)]=parseInt(_0x392a2b[_0x4f6375(0x3c1)])/0x64,log(_0x4f6375(0x39b))));}}}}_0xa78ada&&updateMixer();}}else{if(_0x392a2b[_0x4f6375(0x2b7)]==_0x4f6375(0x949)){}else{if(_0x392a2b['action']==_0x4f6375(0x9a6)){}}}}else _0x392a2b[_0x4f6375(0x2b7)]===_0x4f6375(0x64e)&&(warnlog('custom\x20layout\x20being\x20applied'),log(_0x392a2b),_0x164142[_0x4f6375(0x64e)]=_0x392a2b['value'],pokeIframeAPI('layout-updated',_0x164142[_0x4f6375(0x64e)]),updateMixer());}},_0x164142[_0x204338(0x757)]=function(){var _0x4506b8=_0x204338;_0x164142[_0x4506b8(0x54f)]in _0x164142[_0x4506b8(0x2f9)]&&(_0x164142[_0x4506b8(0x2f9)][_0x164142[_0x4506b8(0x54f)]][_0x4506b8(0x3e9)]['info']&&(_0x164142[_0x4506b8(0x2f9)][_0x164142['directorUUID']][_0x4506b8(0x3e9)][_0x4506b8(0x3ab)][_0x4506b8(0x752)]=!![])),_0x164142[_0x4506b8(0x54f)]in _0x164142[_0x4506b8(0x207)]&&(_0x164142['rpcs'][_0x164142[_0x4506b8(0x54f)]][_0x4506b8(0x3e9)][_0x4506b8(0x3ab)]&&(_0x164142[_0x4506b8(0x207)][_0x164142[_0x4506b8(0x54f)]][_0x4506b8(0x3e9)][_0x4506b8(0x3ab)]['director']=!![]),_0x164142[_0x4506b8(0x752)]&&(getById(_0x4506b8(0xa11)+_0x164142['directorUUID'])[_0x4506b8(0x645)][_0x4506b8(0x22f)](_0x4506b8(0x642)),_0x164142[_0x4506b8(0x207)][_0x164142[_0x4506b8(0x54f)]][_0x4506b8(0x9a7)]===![]&&(getById(_0x4506b8(0x4cb)+_0x164142[_0x4506b8(0x54f)])['innerText']=miscTranslations[_0x4506b8(0x20e)]))),_0x164142[_0x4506b8(0x8d2)](),updateUserList();},_0x164142[_0x204338(0x769)]=async function _0x6cd631(_0x2f5fb3=![]){var _0x5bbca9=_0x204338;if(_0x164142[_0x5bbca9(0x371)]===!![]){log(_0x5bbca9(0x595));return;}if(_0x164142['ws']!==null){log(_0x5bbca9(0x3f7));return;}_0x164142[_0x5bbca9(0x1ee)]==![]&&(_0x164142[_0x5bbca9(0x41f)]!==![]?_0x164142[_0x5bbca9(0x1ee)]=_0x5bbca9(0x450):_0x164142[_0x5bbca9(0x1ee)]=_0x5bbca9(0x9cf));if(!RTCPeerConnection){console['error'](miscTranslations[_0x5bbca9(0x25c)]);!_0x164142['cleanOutput']&&warnUser(miscTranslations[_0x5bbca9(0x25c)],![],![]);return;}_0x164142['ws']===null&&(_0x164142['ws']=![],await chooseBestTURN());if(_0x164142['customWSS']===![]){_0x164142[_0x5bbca9(0x481)]=_0x164142[_0x5bbca9(0x60d)](0xc);for(var _0x31ed67 in _0x164142[_0x5bbca9(0x207)]){warnlog(_0x5bbca9(0x411)),_0x164142[_0x5bbca9(0x207)][_0x31ed67][_0x5bbca9(0x431)]===_0x5bbca9(0x858)&&(_0x164142['closeRPC'](_0x31ed67),warnlog(_0x5bbca9(0x6c3)));}}_0x164142[_0x5bbca9(0x30c)]?(_0x164142['ws']={},_0x164142['ws'][_0x5bbca9(0x464)]=0x1,_0x164142['ws']['send']=function(_0x45da76){var _0x176271=_0x5bbca9;parent[_0x176271(0x545)]({'bypass':_0x45da76},_0x164142['iframetarget']);},setTimeout(function(){var _0x1707cd=_0x5bbca9;_0x164142['ws'][_0x1707cd(0x3ac)]();},0xa)):_0x164142['ws']=new WebSocket(_0x164142['wss']),_0x2f5fb3==![]&&(_0x164142[_0x5bbca9(0x677)]=setTimeout(function(){var _0x4a905c=_0x5bbca9;pokeIframeAPI('hssConnection','timeout'),errorlog(_0x4a905c(0x298)),!_0x164142[_0x4a905c(0x56f)]&&(!_0x164142[_0x4a905c(0x3b4)]&&setTimeout(function(){warnUser(miscTranslations['site-not-responsive'],![],![]);},0x1));},0x7530)),_0x164142['ws']['onopen']=function _0x1cabbc(){var _0x235223=_0x5bbca9;clearTimeout(_0x164142[_0x235223(0x847)]),clearInterval(_0x164142[_0x235223(0x677)]),log(_0x235223(0x828)),checkConnection();if(_0x164142[_0x235223(0xa7b)]){errorlog(_0x235223(0x809));for(_0x20fba8 in _0x164142[_0x235223(0x207)]){try{_0x164142[_0x235223(0x207)][_0x20fba8][_0x235223(0x4f8)]();}catch(_0xb7119a){}}for(_0x20fba8 in _0x164142[_0x235223(0x2f9)]){try{_0x164142[_0x235223(0x2f9)][_0x20fba8][_0x235223(0x4f8)]();}catch(_0xb5889f){}}_0x164142[_0x235223(0xa7b)]=![],_0x164142[_0x235223(0x51e)]=![];}if(_0x164142['msg']!==[])try{var _0x3b45fd=_0x164142[_0x235223(0x4d7)]['slice'](-0x1e);_0x164142['msg']=[];for(var _0x188074 in _0x3b45fd){log('resending\x20message'),_0x164142[_0x235223(0x444)](_0x3b45fd[_0x188074]);}}catch(_0x2b083c){errorlog(_0x2b083c);}if(_0x2f5fb3==!![]){pokeIframeAPI(_0x235223(0x939),'reconnected');_0x164142['seeding']&&_0x164142[_0x235223(0x384)]();if(_0x164142[_0x235223(0x7aa)]!==![]){if(_0x164142[_0x235223(0x7aa)]===''&&(!_0x164142[_0x235223(0x76a)]||_0x164142[_0x235223(0x76a)]==='')){}else log('ROOMID\x20EANBLED'),log('Update\x20Mixer\x20Event\x20on\x20REsize\x20SET'),joinRoom(_0x164142[_0x235223(0x7aa)]);if(_0x164142[_0x235223(0x36c)][_0x235223(0x7e9)]){var _0x46d399=Object[_0x235223(0x2ec)](_0x164142['waitingWatchList']);for(var _0x20fba8 in _0x46d399){_0x164142[_0x235223(0x36c)]['includes'](_0x46d399[_0x20fba8])&&(log(_0x235223(0x8e6)+_0x46d399[_0x20fba8]),_0x164142[_0x235223(0x1e9)](_0x46d399[_0x20fba8]));}}}else{var _0x46d399=Object['keys'](_0x164142[_0x235223(0x27f)]);for(var _0x20fba8 in _0x46d399){log(_0x235223(0x8e6)+_0x46d399[_0x20fba8]),_0x164142[_0x235223(0x1e9)](_0x46d399[_0x20fba8]);}}}else pokeIframeAPI(_0x235223(0x939),'connected');},_0x164142['requestStream']=function(_0x1f272f){var _0x532049=_0x5bbca9;for(var _0x4f5fcf in _0x164142[_0x532049(0x207)]){if(_0x164142[_0x532049(0x207)][_0x4f5fcf]['streamID']===_0x1f272f)return log(_0x532049(0x319)),![];}if(_0x164142[_0x532049(0x27f)][_0x1f272f])return log(_0x532049(0x3bf)),![];return _0x164142['watchStream'](_0x1f272f),log('requesting\x20stream'),!![];},_0x164142['ws'][_0x5bbca9(0x4bf)]=async function(_0xc9daa0){var _0x565500=_0x5bbca9;clearTimeout(_0x164142['pingTimeout']);try{var _0x4e80af=JSON[_0x565500(0x90a)](_0xc9daa0[_0x565500(0x7db)]);}catch(_0x57c484){try{var _0x4e80af=JSON[_0x565500(0x90a)](_0xc9daa0[_0x565500(0x7db)][_0x565500(0x3ea)]());}catch(_0x8205b0){errorlog(_0x8205b0);return;}}_0x565500(0x200)in _0x4e80af&&(_0x4e80af[_0x565500(0x200)]=_0x164142[_0x565500(0x621)](_0x4e80af['streamID']));if('remote'in _0x4e80af){_0x4e80af=await _0x164142[_0x565500(0xa7d)](_0x4e80af);if(!_0x4e80af)return;}if(_0x164142[_0x565500(0x8e3)]){if(_0x565500(0x8c5)in _0x4e80af&&_0x164142[_0x565500(0x2ef)]&&_0x4e80af[_0x565500(0x8c5)]===_0x164142[_0x565500(0x2ef)])return;else log(_0x4e80af);if(_0x565500(0x2ef)in _0x4e80af){if(_0x164142['UUID']){if(_0x4e80af['UUID']!==_0x164142[_0x565500(0x2ef)])return;}else return;delete _0x4e80af[_0x565500(0x2ef)];}if(_0x565500(0x7aa)in _0x4e80af){if(!_0x164142[_0x565500(0x4fe)])return;if(_0x565500(0x8f2)in _0x4e80af){if(_0x4e80af[_0x565500(0x8f2)]===_0x565500(0x949)){if(_0x565500(0x7aa)in _0x4e80af){if(_0x565500(0x247)in _0x4e80af){if(_0x4e80af[_0x565500(0x247)]==_0x164142['UUID']){_0x4e80af['request']=_0x565500(0xa7b),_0x164142[_0x565500(0x4fe)]=_0x4e80af[_0x565500(0x7aa)];var _0x769df5={};_0x769df5[_0x565500(0x8f2)]=_0x565500(0x941),_0x769df5[_0x565500(0x7aa)]=_0x164142[_0x565500(0x4fe)],_0x769df5['streamID']=_0x164142[_0x565500(0x200)],_0x164142[_0x565500(0x444)](_0x769df5);}else return;}else return;}else return;}else{if(_0x4e80af['roomid']!==_0x164142[_0x565500(0x4fe)])return;}}else{if(_0x4e80af[_0x565500(0x7aa)]!==_0x164142['roomenc'])return;}delete _0x4e80af[_0x565500(0x7aa)];}_0x565500(0x752)in _0x4e80af&&(_0x4e80af[_0x565500(0x8c5)]&&(_0x164142[_0x565500(0x54f)]=_0x4e80af['from'],_0x164142[_0x565500(0x4f1)]=[],_0x164142[_0x565500(0x4f1)][_0x565500(0x68a)](_0x164142[_0x565500(0x54f)]),_0x164142['newMainDirectorSetup']()),delete _0x4e80af[_0x565500(0x752)]);_0x565500(0x8c5)in _0x4e80af&&(_0x4e80af[_0x565500(0x2ef)]=_0x4e80af[_0x565500(0x8c5)],delete _0x4e80af['from']);if(_0x565500(0x8f2)in _0x4e80af){if(_0x4e80af['request']==='play'){if(_0x565500(0x200)in _0x4e80af){if(_0x4e80af[_0x565500(0x200)]===_0x164142[_0x565500(0x200)])_0x4e80af[_0x565500(0x8f2)]='offerSDP';else return;}}else{if(_0x4e80af[_0x565500(0x8f2)]===_0x565500(0x362)){if(_0x164142[_0x565500(0x8e9)]){if(_0x164142[_0x565500(0x8e9)][_0x565500(0x6b6)](_0x4e80af[_0x565500(0x200)])){play(_0x4e80af[_0x565500(0x200)]);return;}else return;}}else{if(_0x4e80af[_0x565500(0x8f2)]===_0x565500(0x941)){if(_0x565500(0x200)in _0x4e80af){if(_0x164142[_0x565500(0x8e9)]){if(_0x164142[_0x565500(0x8e9)]['includes'](_0x4e80af[_0x565500(0x200)]))play(_0x4e80af[_0x565500(0x200)]);else{}}else play(_0x4e80af[_0x565500(0x200)]);}_0x4e80af[_0x565500(0x8f2)]=_0x565500(0x259);}}}}else{if(_0x565500(0x200)in _0x4e80af){if(_0x164142[_0x565500(0x8e9)]){if(_0x164142[_0x565500(0x8e9)][_0x565500(0x6b6)](_0x4e80af[_0x565500(0x200)])){}else return;}else{if(_0x164142[_0x565500(0x76a)]){if(_0x164142['view']!==_0x4e80af[_0x565500(0x200)])return;else{}}}}}}if(_0x4e80af['request']){if(_0x4e80af[_0x565500(0x8f2)]==_0x565500(0x259)){if(_0x164142[_0x565500(0x393)]){if(_0x164142['directorList'][_0x565500(0x1f3)](_0x4e80af['UUID'])>=0x0)_0x164142[_0x565500(0x259)](_0x4e80af[_0x565500(0x2ef)]);else _0x164142['director']&&(_0x4e80af[_0x565500(0x2ef)]in _0x164142[_0x565500(0x207)]&&_0x164142[_0x565500(0x259)](_0x4e80af[_0x565500(0x2ef)]));}else _0x164142[_0x565500(0x259)](_0x4e80af['UUID']);}else{if(_0x4e80af[_0x565500(0x8f2)]==_0x565500(0x372))log(_0x4e80af),_0x565500(0x752)in _0x4e80af?(_0x164142[_0x565500(0x54f)]=_0x4e80af[_0x565500(0x752)],_0x164142['directorList']=[],_0x164142['directorList'][_0x565500(0x68a)](_0x164142['directorUUID']),_0x164142[_0x565500(0x757)]()):(_0x164142['directorUUID']=![],_0x164142[_0x565500(0x4f1)]=[]),_0x565500(0x2dd)in _0x4e80af&&(_0x4e80af[_0x565500(0x2dd)]==![]?(!_0x164142['cleanOutput']&&(getById(_0x565500(0x3f2))['innerHTML']=miscTranslations[_0x565500(0x6db)],_0x164142['directorPassword']?_0x164142[_0x565500(0x479)]===null&&warnUser(miscTranslations[_0x565500(0xa13)],![],![]):setTimeout(function(){var _0x47724f=_0x565500;warnUser(miscTranslations[_0x47724f(0x40b)],![],![]);},0x1)),_0x164142[_0x565500(0x479)]=![],pokeAPI(_0x565500(0x752),![]),pokeIframeAPI(_0x565500(0x752),![])):(_0x164142['directorState']=!![],pokeAPI(_0x565500(0x752),!![]),pokeIframeAPI('director',!![]))),_0x164142[_0x565500(0xa5b)]['resolve'](_0x4e80af[_0x565500(0x2fe)]);else{if(_0x4e80af['request']==_0x565500(0xa7b)){_0x164142[_0x565500(0x848)]=[],_0x164142['transferred']=!![],_0x164142[_0x565500(0x51e)]=![],log(_0x565500(0x537)),pokeIframeAPI(_0x565500(0xa7b));!_0x164142['director']&&(_0x164142[_0x565500(0x393)]=![]);log(_0x4e80af['list']);_0x565500(0x752)in _0x4e80af?(_0x164142[_0x565500(0x54f)]=_0x4e80af[_0x565500(0x752)],_0x164142['directorList']=[],_0x164142[_0x565500(0x4f1)][_0x565500(0x68a)](_0x164142[_0x565500(0x54f)]),_0x164142['newMainDirectorSetup']()):(_0x164142[_0x565500(0x54f)]=![],_0x164142['directorList']=[]);for(_0x47ad03 in _0x164142[_0x565500(0x207)]){try{!_0x164142[_0x565500(0x36c)][_0x565500(0x6b6)](_0x164142[_0x565500(0x207)][_0x47ad03][_0x565500(0x200)])&&_0x164142['closeRPC'](_0x47ad03);}catch(_0x4d57af){}}for(_0x47ad03 in _0x164142[_0x565500(0x2f9)]){try{log('closing\x204'),_0x164142['closePC'](_0x47ad03);}catch(_0x783d7d){}}youveBeenTransferred(),_0x164142[_0x565500(0x744)]=_0x164142[_0x565500(0x851)],updateMixer(),log(_0x565500(0x8ab)),log(_0x4e80af[_0x565500(0x2fe)]);for(var _0x47ad03 in _0x4e80af[_0x565500(0x2fe)]){if('UUID'in _0x4e80af[_0x565500(0x2fe)][_0x47ad03]){if('streamID'in _0x4e80af[_0x565500(0x2fe)][_0x47ad03]){if(_0x4e80af[_0x565500(0x2fe)][_0x47ad03][_0x565500(0x2ef)]in _0x164142[_0x565500(0x207)])log(_0x565500(0x42d));else{var _0x1d0c3e=_0x164142[_0x565500(0x621)](_0x4e80af[_0x565500(0x2fe)][_0x47ad03][_0x565500(0x200)]);log(_0x565500(0x99b)+_0x1d0c3e);if(_0x164142['queue']){if(_0x164142[_0x565500(0x4f1)][_0x565500(0x1f3)](_0x4e80af[_0x565500(0x2fe)][_0x47ad03][_0x565500(0x2ef)])>=0x0)play(_0x1d0c3e,_0x4e80af[_0x565500(0x2fe)][_0x47ad03]['UUID']);else{if(_0x164142[_0x565500(0x8e9)]&&_0x164142['view_set']['includes'](_0x1d0c3e))play(_0x1d0c3e,_0x4e80af[_0x565500(0x2fe)][_0x47ad03]['UUID']);else _0x164142['queueList'][_0x565500(0x7e9)]<0x1388&&(!(_0x1d0c3e in _0x164142[_0x565500(0x782)])&&!_0x164142[_0x565500(0x848)][_0x565500(0x6b6)](_0x1d0c3e)&&_0x164142[_0x565500(0x848)][_0x565500(0x68a)](_0x1d0c3e));}}else play(_0x1d0c3e,_0x4e80af['list'][_0x47ad03]['UUID']);}}}}updateQueue();}else{if(_0x4e80af['request']==_0x565500(0x86c))log(_0x4e80af),_0x565500(0x752)in _0x4e80af?(_0x164142['directorUUID']=_0x4e80af[_0x565500(0x752)],_0x164142[_0x565500(0x4f1)]=[],_0x164142[_0x565500(0x4f1)][_0x565500(0x68a)](_0x164142[_0x565500(0x54f)]),_0x164142['newMainDirectorSetup']()):(_0x164142[_0x565500(0x54f)]=![],_0x164142[_0x565500(0x4f1)]=[],errorlog(_0x565500(0x9b7))),updateUserList();else{if(_0x4e80af['request']==_0x565500(0x4fb)){log('Inbound\x20User-based\x20Message\x20from\x20Room'),log(_0x4e80af);try{_0x565500(0x752)in _0x4e80af&&(_0x4e80af[_0x565500(0x752)]==!![]&&_0x164142[_0x565500(0x25f)](_0x4e80af));}catch(_0x24bf67){errorlog(_0x24bf67);}}else{if(_0x4e80af[_0x565500(0x8f2)]==_0x565500(0x29d)){_0x4e80af[_0x565500(0x752)]&&(_0x164142[_0x565500(0x54f)]=_0x4e80af[_0x565500(0x2ef)],_0x164142['directorList']=[],_0x164142[_0x565500(0x4f1)][_0x565500(0x68a)](_0x164142['directorUUID']),_0x164142[_0x565500(0x757)]());if('streamID'in _0x4e80af){log(_0x565500(0x31d));if(_0x164142[_0x565500(0x393)]){if(_0x164142[_0x565500(0x4f1)]['indexOf'](_0x4e80af['UUID'])>=0x0)play(_0x1d0c3e,_0x4e80af[_0x565500(0x2ef)]);else{if(_0x164142[_0x565500(0x8e9)]&&_0x164142['view_set'][_0x565500(0x6b6)](_0x1d0c3e))play(_0x1d0c3e,_0x4e80af[_0x565500(0x2ef)]);else _0x164142['queueList'][_0x565500(0x7e9)]<0x1388&&(!(_0x4e80af[_0x565500(0x200)]in _0x164142[_0x565500(0x782)])&&!_0x164142[_0x565500(0x848)]['includes'](_0x4e80af['streamID'])&&(_0x164142['queueList'][_0x565500(0x68a)](_0x4e80af[_0x565500(0x200)]),updateQueue(!![])));}}else play(_0x4e80af[_0x565500(0x200)]);}else log(_0x565500(0x5b6));}else{if(_0x4e80af[_0x565500(0x8f2)]=='videoaddedtoroom'){log(_0x565500(0x80b)),log(_0x4e80af);if(_0x164142['queue']){if(_0x164142[_0x565500(0x4f1)][_0x565500(0x1f3)](_0x4e80af[_0x565500(0x2ef)])>=0x0)play(_0x1d0c3e,_0x4e80af[_0x565500(0x2ef)]);else{if(_0x164142[_0x565500(0x8e9)]&&_0x164142[_0x565500(0x8e9)]['includes'](_0x1d0c3e))play(_0x1d0c3e,_0x4e80af[_0x565500(0x2ef)]);else _0x164142[_0x565500(0x848)]['length']<0x1388&&(!(_0x4e80af[_0x565500(0x200)]in _0x164142[_0x565500(0x782)])&&!_0x164142[_0x565500(0x848)][_0x565500(0x6b6)](_0x4e80af[_0x565500(0x200)])&&(_0x164142[_0x565500(0x848)][_0x565500(0x68a)](_0x4e80af['streamID']),updateQueue(!![])));}}else play(_0x4e80af[_0x565500(0x200)]);}else{if(_0x4e80af[_0x565500(0x8f2)]==_0x565500(0x36f)){errorlog(_0x4e80af),pokeIframeAPI(_0x565500(0x36f),_0x4e80af[_0x565500(0x526)]);if(_0x164142['scene']===![]){if(_0x565500(0x526)in _0x4e80af){if(_0x4e80af[_0x565500(0x526)]===_0x565500(0xa1e))_0x164142[_0x565500(0x54e)]<0x2?(_0x164142[_0x565500(0x54e)]=parseInt(_0x164142[_0x565500(0x54e)])+0x1,setTimeout(function(){_0x164142['seedStream']();},0x1388)):(hangup(),!_0x164142['cleanOutput']&&setTimeout(function(){warnUser(miscTranslations['streamid-already-published'],![],![]);},0x1));else _0x4e80af[_0x565500(0x526)]===_0x565500(0x591)?(!_0x164142[_0x565500(0x56f)]&&(getById(_0x565500(0x3f2))['innerHTML']=miscTranslations[_0x565500(0x6db)],_0x164142[_0x565500(0x4ff)]?_0x164142[_0x565500(0x479)]===null&&warnUser(miscTranslations[_0x565500(0xa13)],![],![]):setTimeout(function(){var _0xb0ec74=_0x565500;warnUser(miscTranslations[_0xb0ec74(0x40b)],![],![]);},0x1)),_0x164142['directorState']=![],pokeAPI('director',![]),pokeIframeAPI(_0x565500(0x752),![])):!_0x164142[_0x565500(0x56f)]&&setTimeout(function(){warnUser(_0x4e80af['message']);},0x1);}}}else _0x4e80af[_0x565500(0x8f2)]==_0x565500(0x3af)?_0x565500(0x526)in _0x4e80af&&warnlog(_0x4e80af[_0x565500(0x526)]):log(_0x4e80af);}}}}}}}}else{if(_0x4e80af[_0x565500(0x40e)])'streamID'in _0x4e80af&&(_0x4e80af[_0x565500(0x200)]in _0x164142[_0x565500(0x782)]&&(clearTimeout(_0x164142[_0x565500(0x782)][_0x4e80af['streamID']]),delete _0x164142['watchTimeoutList'][_0x4e80af['streamID']])),_0x164142['processDescription'](_0x4e80af);else{if(_0x4e80af[_0x565500(0x408)])log('GOT\x20ICE!!'),_0x164142['processIce'](_0x4e80af);else{if(_0x4e80af[_0x565500(0x59a)])log('GOT\x20ICES!!'),_0x164142[_0x565500(0x4f5)](_0x4e80af);else _0x4e80af[_0x565500(0x8f2)]=='cleanup'?(warnlog('Clean\x20up'),_0x4e80af[_0x565500(0x2ef)]in _0x164142[_0x565500(0x2f9)]&&(warnlog(_0x565500(0xa62)),log(_0x565500(0x22d)),_0x164142[_0x565500(0x9fc)](_0x4e80af[_0x565500(0x2ef)])),_0x4e80af[_0x565500(0x2ef)]in _0x164142[_0x565500(0x207)]&&(warnlog('problem'),_0x164142[_0x565500(0x73f)](_0x4e80af[_0x565500(0x2ef)]))):log(_0x565500(0x713));}}}},_0x164142['ws'][_0x5bbca9(0x935)]=async function(_0x4860b7){var _0x2bb485=_0x5bbca9;clearTimeout(_0x164142['pingTimeout']),pokeIframeAPI(_0x2bb485(0x939),_0x2bb485(0x6c8));try{'code'in _0x4860b7&&(_0x4860b7['code']==0x1f7&&(_0x2f5fb3==![]&&(clearInterval(_0x164142[_0x2bb485(0x677)]),!_0x164142[_0x2bb485(0x56f)]&&warnUser(_0x2bb485(0x838),0x7530,![]))));}catch(_0x1c100f){errorlog(_0x1c100f);}warnlog(_0x2bb485(0x97b));if(_0x164142[_0x2bb485(0x4a7)]==![])try{_0x164142['ws'][_0x2bb485(0x464)]===WebSocket['CLOSED']&&(_0x164142['ws']=null,setTimeout(()=>{var _0x1871c7=_0x2bb485;try{_0x164142[_0x1871c7(0x769)](!![]);}catch(_0x5c2bd8){};},0x7d0));}catch(_0x5acec6){errorlog(_0x5acec6);}};},_0x164142[_0x204338(0xa46)]=function(_0x3ed419,_0x16ced3=null){var _0x554bdc=_0x204338;log('Messaging\x20sent'),warnlog(_0x3ed419),_0x3ed419=JSON[_0x554bdc(0x776)](_0x3ed419);if(_0x16ced3==null){for(var _0x48fd8f in _0x164142[_0x554bdc(0x2f9)]){try{_0x164142[_0x554bdc(0x2f9)][_0x48fd8f]['sendChannel'][_0x554bdc(0x640)](_0x3ed419);}catch(_0x74e665){warnlog(_0x554bdc(0x1ea));}}return!![];}else try{return _0x164142['pcs'][_0x16ced3][_0x554bdc(0x7a0)][_0x554bdc(0x640)](_0x3ed419),!![];}catch(_0x55d8f6){return warnlog(_0x554bdc(0x2ba)),warnlog(_0x3ed419),![];}return![];},_0x164142[_0x204338(0x7a9)]=function(_0x46059a,_0x45bd76=null){var _0x5a1212=_0x204338,_0x3cd065=JSON[_0x5a1212(0x776)](_0x46059a);if(_0x45bd76==null){var _0x260d48=[];for(var _0x1f1c7f in _0x164142['rpcs']){try{if(_0x5a1212(0x2ff)in _0x164142['rpcs'][_0x1f1c7f]){var _0x38b27f=_0x46059a;_0x38b27f['altUUID']=!![],_0x38b27f=JSON[_0x5a1212(0x776)](_0x38b27f),_0x164142[_0x5a1212(0x207)][_0x164142[_0x5a1212(0x207)][_0x1f1c7f]['realUUID']]['receiveChannel'][_0x5a1212(0x640)](_0x38b27f);}else _0x164142[_0x5a1212(0x207)][_0x1f1c7f]['receiveChannel']['send'](_0x3cd065);_0x260d48['push'](_0x1f1c7f);}catch(_0x596424){log(_0x5a1212(0x942));}}return _0x260d48['length'];}else try{if('realUUID'in _0x164142['rpcs'][_0x45bd76]){var _0x38b27f=_0x46059a;_0x38b27f[_0x5a1212(0x5d2)]=!![],_0x38b27f=JSON[_0x5a1212(0x776)](_0x38b27f),_0x164142['rpcs'][_0x164142[_0x5a1212(0x207)][_0x45bd76][_0x5a1212(0x2ff)]]['receiveChannel'][_0x5a1212(0x640)](_0x38b27f);}else _0x164142[_0x5a1212(0x207)][_0x45bd76][_0x5a1212(0x573)]['send'](_0x3cd065);return!![];}catch(_0x515d2a){return log('PUBLISHER\x27s\x20RTC\x20Connection\x20seems\x20to\x20be\x20dead?\x20'),![];}},_0x164142[_0x204338(0x9a6)]=function(_0x14f78c=![],_0x4d8986=![]){var _0x5abe4e=_0x204338;_0x4d8986&&recordLocalVideo(_0x5abe4e(0x650));_0x164142[_0x5abe4e(0x371)]=!![],warnlog(_0x5abe4e(0x628));try{recordLocalVideo(_0x5abe4e(0x967));}catch(_0x21b3c0){}try{var _0x38357f={};_0x38357f[_0x5abe4e(0x9b3)]=!![],_0x38357f['bye']=!![],_0x164142[_0x5abe4e(0xa46)](_0x38357f);}catch(_0x8a5c47){}try{_0x164142['ws'][_0x5abe4e(0x4f8)]();}catch(_0x288f92){}try{transferList['forEach'](_0x25f545=>{var _0x29ffc2=_0x5abe4e;_0x25f545['writer']&&_0x25f545['writer']['close'](),_0x25f545[_0x29ffc2(0x2c1)]&&_0x25f545[_0x29ffc2(0x869)];});}catch(_0x2f165e){errorlog(_0x2f165e);}try{_0x164142[_0x5abe4e(0x656)]&&_0x164142[_0x5abe4e(0x656)][_0x5abe4e(0x2f4)]&&_0x164142[_0x5abe4e(0x656)]['srcObject'][_0x5abe4e(0x3d2)]()[_0x5abe4e(0xa17)](function(_0x41f0f6){var _0x5e2a02=_0x5abe4e;_0x41f0f6[_0x5e2a02(0x967)](),_0x164142[_0x5e2a02(0x570)]['srcObject']['removeTrack'](_0x41f0f6),log('stopping\x20old\x20track');}),_0x164142['videoElement']&&_0x164142[_0x5abe4e(0x570)][_0x5abe4e(0x2f4)]&&_0x164142['videoElement'][_0x5abe4e(0x2f4)][_0x5abe4e(0x3d2)]()[_0x5abe4e(0xa17)](function(_0x154326){var _0x431d0a=_0x5abe4e;_0x154326[_0x431d0a(0x967)](),_0x164142['videoElement']['srcObject']['removeTrack'](_0x154326),log(_0x431d0a(0x26e));}),_0x164142[_0x5abe4e(0x307)]&&_0x164142[_0x5abe4e(0x307)]['getTracks']()[_0x5abe4e(0xa17)](function(_0x4dd5e8){var _0x463294=_0x5abe4e;_0x4dd5e8[_0x463294(0x967)](),_0x164142[_0x463294(0x570)][_0x463294(0x2f4)][_0x463294(0xa45)](_0x4dd5e8),log(_0x463294(0x26e));}),_0x164142[_0x5abe4e(0x427)]&&_0x164142[_0x5abe4e(0x427)]['getTracks']()[_0x5abe4e(0xa17)](function(_0x50c8c0){var _0x29bca9=_0x5abe4e;_0x50c8c0[_0x29bca9(0x967)](),_0x164142[_0x29bca9(0x427)][_0x29bca9(0xa45)](_0x50c8c0),log(_0x29bca9(0x26e));});}catch(_0x1eb0f3){errorlog(_0x1eb0f3);}try{for(i in _0x164142[_0x5abe4e(0x207)]){try{_0x164142[_0x5abe4e(0x207)][i][_0x5abe4e(0x570)]&&(_0x164142[_0x5abe4e(0x207)][i][_0x5abe4e(0x570)]['recording']&&recordLocalVideo('stop',null,_0x164142['rpcs'][i][_0x5abe4e(0x570)]));}catch(_0x2c8e83){}_0x164142[_0x5abe4e(0x73f)](i,!![]);}for(i in _0x164142[_0x5abe4e(0x2f9)]){log(_0x5abe4e(0x6ec)),_0x164142['closePC'](i);}}catch(_0x45386b){errorlog(_0x45386b);}for(var _0x367345 in _0x164142[_0x5abe4e(0x782)]){clearTimeout(_0x164142[_0x5abe4e(0x782)][_0x367345]);}if(_0x14f78c){reloadRequested(),warnlog(_0x5abe4e(0x92b));return;}else setTimeout(function(){for(i in _0x164142){try{delete _0x164142[i];}catch(_0x33d65c){}}delete _0x164142;},0x4b0),hangupComplete(),log(_0x5abe4e(0x233));},_0x164142[_0x204338(0x4a3)]=function(){var _0x249fbb=_0x204338;_0x164142[_0x249fbb(0x371)]=!![],_0x164142['screenShareState']=![],notifyOfScreenShare(),warnlog('hanging\x20up'),pokeIframeAPI(_0x249fbb(0x84c),![]),pokeIframeAPI('seeding',![]),pokeAPI(_0x249fbb(0x487),![]);try{_0x164142[_0x249fbb(0x570)]&&_0x164142[_0x249fbb(0x570)]['srcObject']&&_0x164142[_0x249fbb(0x570)][_0x249fbb(0x2f4)][_0x249fbb(0x3d2)]()[_0x249fbb(0xa17)](function(_0x198163){var _0x95f5e4=_0x249fbb;_0x198163[_0x95f5e4(0x967)](),_0x164142['videoElement'][_0x95f5e4(0x2f4)][_0x95f5e4(0xa45)](_0x198163),log(_0x95f5e4(0x26e));});_0x164142['streamSrc']&&_0x164142['streamSrc'][_0x249fbb(0x3d2)]()[_0x249fbb(0xa17)](function(_0x3a5cc4){var _0x11049b=_0x249fbb;_0x3a5cc4['stop'](),_0x164142[_0x11049b(0x307)][_0x11049b(0xa45)](_0x3a5cc4),log(_0x11049b(0x26e));});for(UUID in _0x164142[_0x249fbb(0x2f9)]){var _0x3c28fb=getSenders2(UUID);_0x3c28fb[_0x249fbb(0xa17)](_0x3c6eb4=>{var _0x47161b=_0x249fbb;_0x3c6eb4['track']&&(_0x3c6eb4[_0x47161b(0x79c)][_0x47161b(0x4cf)]=![]);});}var _0x156404={};_0x156404['videoMuted']=!![],_0x156404[_0x249fbb(0xa6d)]=!![],_0x164142[_0x249fbb(0xa46)](_0x156404),getById(_0x249fbb(0x962))[_0x249fbb(0x2e0)]();}catch(_0x27e5ea){errorlog('failed\x20to\x20disconnect');}log('HANG\x20UP\x202\x20COMPLETE');},_0x164142[_0x204338(0x3c0)]=function(_0x53a90f,_0x4ee86c=![]){var _0x49f98b=_0x204338;_0x164142[_0x49f98b(0x2f9)][_0x53a90f]['createOffer']({'iceRestart':_0x4ee86c})['then'](_0x287c8c=>{var _0x5a1126=_0x49f98b;log(_0x5a1126(0x9b6));if(SafariVersion&&SafariVersion<=0xd&&(iOS||iPad)){}else{if(_0x164142[_0x5a1126(0x4ba)]==0x3||_0x164142[_0x5a1126(0x4ba)]==0x5||_0x164142[_0x5a1126(0x4ba)]==0x1)_0x287c8c['sdp']=CodecsHandler[_0x5a1126(0x989)](_0x287c8c[_0x5a1126(0x2ee)],{'stereo':0x1}),log(_0x5a1126(0x627));else{if(iOS||iPad){}else _0x164142[_0x5a1126(0x4ba)]==0x4&&(_0x287c8c['sdp']=CodecsHandler['setOpusAttributes'](_0x287c8c['sdp'],{'stereo':0x2}),log(_0x5a1126(0x627)));}}if(_0x164142[_0x5a1126(0x2f9)][_0x53a90f][_0x5a1126(0x255)])try{_0x287c8c=CodecsHandler[_0x5a1126(0x87e)](_0x287c8c,_0x164142[_0x5a1126(0x2f9)][_0x53a90f]['preferVideoCodec']),log('Trying\x20to\x20set\x20'+_0x164142[_0x5a1126(0x2f9)][_0x53a90f]['preferVideoCodec']+_0x5a1126(0x5a4));}catch(_0x1779f3){warnlog('couldn\x27t\x20set\x20preferred\x20codec');}Android&&_0x164142[_0x5a1126(0x71b)]!==![]&&_0x164142[_0x5a1126(0x7b6)]&&(_0x287c8c[_0x5a1126(0x2ee)]=_0x287c8c[_0x5a1126(0x2ee)][_0x5a1126(0x276)](/42e01f/gi,_0x5a1126(0x6c7))),_0x164142[_0x5a1126(0x2f9)][_0x53a90f]['setLocalDescription'](_0x287c8c)['then'](function(){var _0x1abfb2=_0x5a1126;log(_0x1abfb2(0x4c1)+_0x53a90f);var _0x1eea9f={};_0x1eea9f[_0x1abfb2(0x2ef)]=_0x53a90f,_0x1eea9f[_0x1abfb2(0x200)]=_0x164142[_0x1abfb2(0x200)],_0x1eea9f[_0x1abfb2(0x40e)]=_0x164142[_0x1abfb2(0x2f9)][_0x53a90f][_0x1abfb2(0x462)],_0x1eea9f[_0x1abfb2(0x67a)]=_0x164142[_0x1abfb2(0x2f9)][_0x53a90f]['session'];_0x164142[_0x1abfb2(0x8e3)]&&(_0x1eea9f['isScene']=_0x164142[_0x1abfb2(0x7dd)]);if(_0x164142[_0x1abfb2(0x427)]!==![]){var _0x4902f9=_0x164142['screenStream'][_0x1abfb2(0x3d2)](),_0x19111b=_0x164142[_0x1abfb2(0x2f9)][_0x53a90f][_0x1abfb2(0xa82)](),_0x29acc7=[];for(var _0x204874=0x0;_0x204874<_0x19111b[_0x1abfb2(0x7e9)];_0x204874++){for(var _0x10ea88=0x0;_0x10ea88<_0x4902f9[_0x1abfb2(0x7e9)];_0x10ea88++){_0x19111b[_0x204874][_0x1abfb2(0x79c)]&&_0x19111b[_0x204874]['track']['id']==_0x4902f9[_0x10ea88]['id']&&_0x29acc7[_0x1abfb2(0x68a)](_0x204874);}}_0x29acc7[_0x1abfb2(0x7e9)]&&(_0x1eea9f[_0x1abfb2(0x4c0)]=_0x29acc7);}_0x164142[_0x1abfb2(0x4c8)]?_0x164142[_0x1abfb2(0x9b8)](JSON[_0x1abfb2(0x776)](_0x1eea9f[_0x1abfb2(0x40e)]))['then'](function(_0x2b4ea1){var _0x209901=_0x1abfb2;_0x1eea9f[_0x209901(0x40e)]=_0x2b4ea1[0x0],_0x1eea9f[_0x209901(0x899)]=_0x2b4ea1[0x1],_0x164142[_0x209901(0x2a9)](_0x1eea9f);})['catch'](errorlog):_0x164142['anysend'](_0x1eea9f);})[_0x5a1126(0x341)](errorlog);})[_0x49f98b(0x341)](errorlog);},_0x164142['sendKeyFrameScenes']=function(){var _0x565ec0=_0x204338;for(var _0x24cf0e in _0x164142['pcs']){_0x164142[_0x565ec0(0x2f9)][_0x24cf0e][_0x565ec0(0x7dd)]!==![]?(_0x164142[_0x565ec0(0x572)](_0x24cf0e),log('FORCE\x20KEYFRAME\x20FOR\x20SCENE')):log(_0x565ec0(0x3de));}},_0x164142['closePC']=function(_0x4c1130,_0x2a71e6=!![]){var _0x2ed9e7=_0x204338;log(_0x2ed9e7(0x9fc));if(!(_0x4c1130 in _0x164142['pcs']))return;clearTimeout(_0x164142[_0x2ed9e7(0x2f9)][_0x4c1130][_0x2ed9e7(0x879)]),clearTimeout(_0x164142[_0x2ed9e7(0x2f9)][_0x4c1130][_0x2ed9e7(0x254)]),clearInterval(_0x164142[_0x2ed9e7(0x2f9)][_0x4c1130][_0x2ed9e7(0x530)]),pokeIframeAPI('push-connection',![],_0x4c1130);if('realUUID'in _0x164142[_0x2ed9e7(0x2f9)][_0x4c1130]){delete _0x164142[_0x2ed9e7(0x2f9)][_0x4c1130],applySceneState();return;}_0x4c1130+_0x2ed9e7(0x47c)in _0x164142[_0x2ed9e7(0x2f9)]&&_0x164142[_0x2ed9e7(0x2f9)][_0x4c1130+_0x2ed9e7(0x47c)][_0x2ed9e7(0x2ff)]&&_0x164142[_0x2ed9e7(0x2f9)][_0x4c1130+_0x2ed9e7(0x47c)]['realUUID']===_0x4c1130&&(clearTimeout(_0x164142['pcs'][_0x4c1130+_0x2ed9e7(0x47c)][_0x2ed9e7(0x879)]),clearTimeout(_0x164142[_0x2ed9e7(0x2f9)][_0x4c1130+_0x2ed9e7(0x47c)]['closeTimeout']),clearInterval(_0x164142[_0x2ed9e7(0x2f9)][_0x4c1130+_0x2ed9e7(0x47c)][_0x2ed9e7(0x530)]),_0x164142[_0x2ed9e7(0x2f9)][_0x4c1130+'_screen']=null,delete _0x164142[_0x2ed9e7(0x2f9)][_0x4c1130+'_screen']);try{_0x164142[_0x2ed9e7(0xa46)]({'bye':!![]},_0x4c1130);}catch(_0x1ca860){}try{_0x164142[_0x2ed9e7(0x2f9)][_0x4c1130][_0x2ed9e7(0x4f8)]();}catch(_0x422333){}_0x164142[_0x2ed9e7(0x2f9)][_0x4c1130]['guest']&&(_0x164142[_0x2ed9e7(0x779)]&&(_0x2a71e6&&(warnlog(_0x2ed9e7(0x652)),playtone(![],_0x2ed9e7(0x53f))))),_0x164142['pcs'][_0x4c1130]=null,_0x164142[_0x2ed9e7(0x4a7)]&&(!_0x164142['cleanOutput']&&setTimeout(function _0x2626c2(){warnUser('Remote\x20peer\x20disconnected.\x20Due\x20to\x20enhanced\x20security,\x20please\x20refresh\x20to\x20create\x20a\x20new\x20connection.');},0x1)),delete _0x164142[_0x2ed9e7(0x2f9)][_0x4c1130],_0x164142['applySoloChat'](),applySceneState();},_0x164142[_0x204338(0x73f)]=function(_0x3a2da0,_0xf3fe3e=![]){var _0x3e9291=_0x204338;log(_0x3e9291(0x73f));if(!(_0x3a2da0 in _0x164142[_0x3e9291(0x207)])){log('UUID\x20not\x20found;\x20cant\x27\x20close');return;}clearInterval(_0x164142[_0x3e9291(0x207)][_0x3a2da0][_0x3e9291(0x254)]);try{_0x164142[_0x3e9291(0x7a9)]({'bye':!![]},_0x3a2da0),warnlog('SEND\x20BYE');}catch(_0xfd3cc3){}try{var _0x2fd2dc=_0x164142[_0x3e9291(0x207)][_0x3a2da0][_0x3e9291(0x200)];}catch(_0x22d234){}try{_0x164142['rpcs'][_0x3a2da0][_0x3e9291(0x4f8)]();}catch(_0x29c40f){warnlog(_0x3e9291(0x91a));}try{_0x164142[_0x3e9291(0x207)][_0x3a2da0]['streamSrc']&&_0x164142[_0x3e9291(0x207)][_0x3a2da0][_0x3e9291(0x307)][_0x3e9291(0x3d2)]()[_0x3e9291(0xa17)](function(_0x3d89a9){_0x3d89a9['stop'](),log('Track\x20stopped');});}catch(_0x15461d){}if(_0x164142['director'])try{_0x164142[_0x3e9291(0x207)][_0x3a2da0][_0x3e9291(0x570)]&&'recorder'in _0x164142[_0x3e9291(0x207)][_0x3a2da0][_0x3e9291(0x570)]&&_0x164142[_0x3e9291(0x207)][_0x3a2da0]['videoElement']['recorder'][_0x3e9291(0x967)]();}catch(_0x2c1400){warnlog(_0x2c1400);}else!_0x164142[_0x3e9291(0x7aa)]&&(_0x164142[_0x3e9291(0x779)]&&playtone(![],_0x3e9291(0x53f)));try{document['getElementById'](_0x3e9291(0xa11)+_0x3a2da0)&&(getById(_0x3e9291(0xa11)+_0x3a2da0)['parentNode']['removeChild'](getById(_0x3e9291(0xa11)+_0x3a2da0)),updateLockedElements());}catch(_0xc3f555){warnlog(_0xc3f555);}try{_0x164142['rpcs'][_0x3a2da0][_0x3e9291(0x570)]&&_0x164142['rpcs'][_0x3a2da0][_0x3e9291(0x570)][_0x3e9291(0x2e0)]();}catch(_0x14c942){}try{if(_0x164142[_0x3e9291(0x8ae)]!==![]){if(_0x164142[_0x3e9291(0x207)][_0x3a2da0][_0x3e9291(0x89c)]){try{_0x164142[_0x3e9291(0x207)][_0x3a2da0][_0x3e9291(0x89c)][_0x3e9291(0x2e0)]();}catch(_0x1d87c6){errorlog(_0x1d87c6);}_0x164142['rpcs'][_0x3a2da0][_0x3e9291(0x89c)][_0x3e9291(0x2e0)]();}}}catch(_0x2d8f43){}try{_0x164142[_0x3e9291(0x207)][_0x3a2da0][_0x3e9291(0x1ff)]&&_0x164142['rpcs'][_0x3a2da0]['canvas'][_0x3e9291(0x2e0)]();}catch(_0xf76bd2){}try{_0x164142[_0x3e9291(0x207)][_0x3a2da0][_0x3e9291(0x30d)]&&_0x164142[_0x3e9291(0x207)][_0x3a2da0][_0x3e9291(0x30d)][_0x3e9291(0x2e0)]();}catch(_0x2c1f10){}_0x3e9291(0x430)in _0x164142[_0x3e9291(0x207)][_0x3a2da0]&&clearInterval(_0x164142[_0x3e9291(0x207)][_0x3a2da0][_0x3e9291(0x430)]);pokeIframeAPI('view-connection',![],_0x3a2da0),pokeAPI(_0x3e9291(0x32a),_0x164142[_0x3e9291(0x207)][_0x3a2da0][_0x3e9291(0x200)]);try{_0x164142[_0x3e9291(0x207)][_0x3a2da0]=null,delete _0x164142[_0x3e9291(0x207)][_0x3a2da0];}catch(_0x136087){}_0x164142[_0x3e9291(0x73f)](_0x3a2da0+'_screen');(!_0x164142[_0x3e9291(0x752)]||_0x164142['switchMode'])&&setTimeout(function(){updateMixer();},0x1);if(typeof _0x2fd2dc=='undefined')return;try{warnlog(_0x3e9291(0xa5f)),_0x2fd2dc in _0x164142['watchTimeoutList']&&(log(_0x3e9291(0x527)+_0x2fd2dc),clearTimeout(_0x164142['watchTimeoutList'][_0x2fd2dc]),delete _0x164142[_0x3e9291(0x782)][_0x2fd2dc]),_0x164142['watchTimeoutList'][_0x2fd2dc]=setTimeout(function(_0x30077e){var _0x5b707c=_0x3e9291;try{delete _0x164142[_0x5b707c(0x782)][_0x30077e];}catch(_0x9bfe37){warnlog(_0x5b707c(0x403));return;}log('watchTimeoutList2:'+_0x30077e);try{for(var _0x5c7218 in _0x164142[_0x5b707c(0x207)]){if(_0x164142[_0x5b707c(0x207)][_0x5c7218][_0x5b707c(0x200)]===_0x30077e){if(_0x164142[_0x5b707c(0x207)][_0x5c7218][_0x5b707c(0x431)]===_0x5b707c(0x53c)){warnlog(_0x5b707c(0x5bd));return;}}}}catch(_0xad3997){errorlog(_0xad3997);}warnlog('\x20---\x20we\x20will\x20ask\x20again'),_0x164142[_0x5b707c(0x1e9)](_0x30077e);},_0x164142[_0x3e9291(0x865)],_0x2fd2dc);}catch(_0x2882d4){errorlog(_0x2882d4);}pokeIframeAPI('new-view-connection',![],_0x3a2da0),_0x2fd2dc!==null?pokeIframeAPI('end-view-connection',_0x2fd2dc,_0x3a2da0):pokeIframeAPI('end-view-connection',!![],_0x3a2da0),updateUserList();},_0x164142[_0x204338(0x396)]=null,_0x164142[_0x204338(0x751)]=function(){var _0x3083db=_0x204338;if(_0x164142[_0x3083db(0x76a)]){if(_0x164142['ws']===null||(typeof _0x164142['ws']!==_0x3083db(0x750)||_0x164142['ws'][_0x3083db(0x464)]!==0x1)){}else{var _0x3a2e9c=_0x164142['view'][_0x3083db(0x2de)](',');for(var _0x11f527 in _0x3a2e9c){if(_0x3a2e9c[_0x11f527]){var _0x19d7c9=![];for(var _0x2101c3 in _0x164142[_0x3083db(0x207)]){if(_0x164142[_0x3083db(0x207)][_0x2101c3][_0x3083db(0x200)]&&_0x164142['rpcs'][_0x2101c3]['streamID']===_0x3a2e9c[_0x11f527]){_0x19d7c9=!![];break;}}_0x3a2e9c[_0x11f527]in _0x164142[_0x3083db(0x782)]&&(_0x19d7c9=!![]);if(_0x19d7c9)continue;_0x164142[_0x3083db(0x1e9)](_0x3a2e9c[_0x11f527]);}}}_0x164142[_0x3083db(0x6cd)]&&_0x164142['forceRetry']<0xa&&(_0x164142[_0x3083db(0x6cd)]=0xa),_0x164142[_0x3083db(0x6cd)]&&(clearTimeout(_0x164142[_0x3083db(0x396)]),_0x164142['forceRetryTimeout']=setTimeout(function(){var _0x174d61=_0x3083db;log(_0x174d61(0x762)),_0x164142['retryWatchInterval']();},_0x164142[_0x3083db(0x6cd)]*0x3e8));}},_0x164142[_0x204338(0x259)]=async function(_0xf4df9){var _0x10444e=_0x204338;if(_0xf4df9 in _0x164142[_0x10444e(0x2f9)]){if(_0x164142['pcs'][_0xf4df9]['connectionState']===_0x10444e(0x858)||_0x164142['pcs'][_0xf4df9][_0x10444e(0x431)]===_0x10444e(0x6c8))log('closing\x206'),_0x164142['closePC'](_0xf4df9),warnlog(_0x10444e(0x6c3));else{if(iPad||iOS)log(_0x10444e(0x990)),_0x164142[_0x10444e(0x9fc)](_0xf4df9),warnlog(_0x10444e(0x5fc));else{warnlog(_0x10444e(0x325)+_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x431)]);return;}}}else log('Create\x20a\x20new\x20RTC\x20connection;\x20offering\x20SDP\x20on\x20request');if(_0x164142[_0x10444e(0x7da)]!==![]){if(Object['keys'](_0x164142[_0x10444e(0x2f9)])['length']>_0x164142['maxviewers']){log(_0x10444e(0x4d8)),log(_0x10444e(0x945)),_0x164142[_0x10444e(0x9fc)](_0xf4df9);return;}}else{if(_0x164142[_0x10444e(0x323)]!==![]){if(Object[_0x10444e(0x2ec)](_0x164142[_0x10444e(0x207)])[_0x10444e(0x7e9)]+Object[_0x10444e(0x2ec)](_0x164142['pcs'])['length']>_0x164142[_0x10444e(0x323)]){log('closing\x202'),log('closing\x209'),_0x164142[_0x10444e(0x9fc)](_0xf4df9);return;}}}!_0x164142[_0x10444e(0x6fd)]&&await chooseBestTURN();try{_0x164142['pcs'][_0xf4df9]=new RTCPeerConnection(_0x164142[_0x10444e(0x6fd)]);}catch(_0x347ce2){!_0x164142[_0x10444e(0x56f)]&&warnUser(_0x10444e(0x77e));errorlog(_0x347ce2);return;}if(_0x164142[_0x10444e(0x4a7)]){if(Object[_0x10444e(0x2ec)](_0x164142[_0x10444e(0x2f9)])[_0x10444e(0x7e9)]>0x1){log(_0x10444e(0x57c)),log('closing\x2010'),_0x164142[_0x10444e(0x9fc)](_0xf4df9);return;}}_0x164142[_0x10444e(0x2f9)][_0xf4df9]['stats']={},_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x67a)]=_0x164142[_0x10444e(0x5dc)]+_0x164142[_0x10444e(0x60d)](0x5),_0x164142['pcs'][_0xf4df9][_0x10444e(0x823)]=null,_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x777)]=null,_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x496)]={},_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x496)][_0x10444e(0x1f8)]=null,_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x496)][_0x10444e(0x964)]=null,_0x164142['pcs'][_0xf4df9][_0x10444e(0x496)]['streaming']=null,_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x496)][_0x10444e(0x5a1)]=null,_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x496)][_0x10444e(0x3b6)]=null,_0x164142[_0x10444e(0x2f9)][_0xf4df9]['optimizedBitrate']=![],_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x3e2)]=![],_0x164142[_0x10444e(0x2f9)][_0xf4df9]['solo']=null,_0x164142['pcs'][_0xf4df9][_0x10444e(0x64e)]=null,_0x164142[_0x10444e(0x2f9)][_0xf4df9]['bitrateTimeout']=null,_0x164142['pcs'][_0xf4df9][_0x10444e(0x503)]=null,_0x164142['pcs'][_0xf4df9][_0x10444e(0x43f)]=![],_0x164142[_0x10444e(0x2f9)][_0xf4df9]['coDirector']=![],_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0xa54)]=![],_0x164142['pcs'][_0xf4df9]['setAudioBitrate']=![],_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x3b2)]=![],_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x8fa)]=![],_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x25a)]=![],_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x82d)]=![],_0x164142[_0x10444e(0x2f9)][_0xf4df9]['encoder']=null,_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x953)]=![],_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x220)]=![],_0x164142[_0x10444e(0x2f9)][_0xf4df9]['allowAudio']=![],_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x7d1)]=![],_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0xa61)]=![],_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x5da)]=![],_0x164142[_0x10444e(0x2f9)][_0xf4df9]['allowMIDI']=![],_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x1ed)]=![],_0x164142['pcs'][_0xf4df9]['allowScreen']=![],_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x80c)]=null,_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x2ef)]=_0xf4df9,_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x8b9)]=![],_0x164142[_0x10444e(0x2f9)][_0xf4df9]['scaleDueToBitrate']=![],_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x559)]=![],_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0xa74)]=![],_0x164142['pcs'][_0xf4df9][_0x10444e(0x903)]=![],_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x9ca)]=![],_0x164142[_0x10444e(0x2f9)][_0xf4df9]['showDirector']=null,_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x7dd)]=![],_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x62d)]=![],_0x164142['pcs'][_0xf4df9]['keyframeTimeout']=null,_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x9a7)]=![],_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x47f)]=![],_0x164142['pcs'][_0xf4df9][_0x10444e(0x255)]=![],_0x164142['pcs'][_0xf4df9][_0x10444e(0x254)]=null,_0x164142[_0x10444e(0x2f9)][_0xf4df9]['wssid']=_0x164142[_0x10444e(0x481)],_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x7d0)]=Date[_0x10444e(0xa19)]();function _0x1d83db(_0x36b788=![]){var _0x5f0dd4=_0x10444e;if(_0x36b788)return;_0x164142['pcs'][_0xf4df9][_0x5f0dd4(0x7a0)]=_0x164142[_0x5f0dd4(0x2f9)][_0xf4df9]['createDataChannel'](_0x5f0dd4(0x7a0)),_0x164142[_0x5f0dd4(0x2f9)][_0xf4df9][_0x5f0dd4(0x7a0)][_0x5f0dd4(0x2ef)]=_0xf4df9,_0x164142[_0x5f0dd4(0x2f9)][_0xf4df9][_0x5f0dd4(0x7a0)][_0x5f0dd4(0x3ac)]=()=>{var _0x2744b2=_0x5f0dd4;if(_0x36b788)return;log('send\x20channel\x20open\x20pcs'),msg={},msg['info']={},msg[_0x2744b2(0x3ab)][_0x2744b2(0x9a7)]=_0x164142['label'],msg[_0x2744b2(0x3ab)][_0x2744b2(0x47f)]=_0x164142[_0x2744b2(0x47f)],msg[_0x2744b2(0x3ab)]['muted']=_0x164142[_0x2744b2(0xa47)];try{(_0x164142[_0x2744b2(0x285)][_0x2744b2(0x7e9)]||_0x164142[_0x2744b2(0x977)])&&(msg[_0x2744b2(0x3ab)]['initial_group']=_0x164142[_0x2744b2(0x285)]['join'](','));}catch(_0xd39b76){}msg[_0x2744b2(0x3ab)][_0x2744b2(0x356)]=_0x164142[_0x2744b2(0x356)],msg['info'][_0x2744b2(0x722)]=_0x164142[_0x2744b2(0x722)],msg[_0x2744b2(0x3ab)][_0x2744b2(0x4ae)]=_0x164142[_0x2744b2(0x4ae)],msg[_0x2744b2(0x3ab)][_0x2744b2(0x7bf)]=_0x164142[_0x2744b2(0x9b3)];_0x164142[_0x2744b2(0x7aa)]?msg[_0x2744b2(0x3ab)]['room_init']=!![]:msg[_0x2744b2(0x3ab)][_0x2744b2(0x87d)]=![];if(_0x164142[_0x2744b2(0x752)]){if(_0x164142[_0x2744b2(0x54f)]&&_0x164142[_0x2744b2(0x54f)]===_0xf4df9)_0x164142['newMainDirectorSetup']();else{msg['directorSettings']={},msg[_0x2744b2(0x1e7)][_0x2744b2(0x744)]=_0x164142['totalRoomBitrate'];_0x164142[_0x2744b2(0x4bc)][_0x2744b2(0x7e9)]&&!_0x164142[_0x2744b2(0x4bc)][_0x2744b2(0x6b6)](_0xf4df9)&&(msg[_0x2744b2(0x3ab)][_0x2744b2(0xa47)]=!![]);var _0x31aac8=[];for(var _0x36dfc3 in _0x164142[_0x2744b2(0x2f9)]){_0x164142[_0x2744b2(0x2f9)][_0x36dfc3]['coDirector']===!![]&&_0x31aac8[_0x2744b2(0x68a)](_0x36dfc3);}_0x164142[_0x2744b2(0x64d)]&&(msg[_0x2744b2(0x1e7)][_0x2744b2(0x927)]=!![]),_0x31aac8['length']&&(msg['directorSettings'][_0x2744b2(0x647)]=_0x31aac8);}_0x164142[_0x2744b2(0x3b7)]&&(msg[_0x2744b2(0x3ab)][_0x2744b2(0x5ed)]=_0x164142[_0x2744b2(0x3b7)]);}_0x164142[_0x2744b2(0x8ae)]!==![]?msg[_0x2744b2(0x3ab)]['broadcast_mode']=!![]:msg[_0x2744b2(0x3ab)][_0x2744b2(0x954)]=![];_0x164142[_0x2744b2(0x538)]?msg[_0x2744b2(0x3ab)][_0x2744b2(0x538)]=!![]:msg[_0x2744b2(0x3ab)][_0x2744b2(0x538)]=![];if(_0x164142[_0x2744b2(0x817)])msg['info'][_0x2744b2(0x28d)]=_0x164142[_0x2744b2(0x817)];else{if(_0x164142[_0x2744b2(0x817)]===![])msg[_0x2744b2(0x3ab)][_0x2744b2(0x28d)]=![];else _0x164142['roomid']&&!_0x164142[_0x2744b2(0x752)]?msg[_0x2744b2(0x3ab)][_0x2744b2(0x28d)]=![]:msg['info']['obs_control']=null;}_0x164142[_0x2744b2(0x1fd)]&&(msg[_0x2744b2(0x3ab)][_0x2744b2(0x1fd)]=!![]);msg[_0x2744b2(0x3ab)]['screenshare_url']=_0x164142[_0x2744b2(0x2f3)];_0x164142[_0x2744b2(0x360)]?msg[_0x2744b2(0x48f)]=_0x164142[_0x2744b2(0x48f)]:msg[_0x2744b2(0x48f)]=![];msg['info'][_0x2744b2(0x389)]=_0x164142[_0x2744b2(0x2ae)],msg[_0x2744b2(0x3ab)][_0x2744b2(0x37d)]=_0x164142[_0x2744b2(0x93b)],msg[_0x2744b2(0x3ab)][_0x2744b2(0x67d)]=_0x164142[_0x2744b2(0xa5d)],msg[_0x2744b2(0x3ab)][_0x2744b2(0x264)]=_0x164142[_0x2744b2(0x6ba)],msg[_0x2744b2(0x3ab)][_0x2744b2(0x56c)]=_0x164142['maxviewers'],msg[_0x2744b2(0x3ab)]['stereo_url']=_0x164142['stereo'],msg['info'][_0x2744b2(0x5b9)]=_0x164142[_0x2744b2(0x626)],msg['info']['agc_url']=_0x164142[_0x2744b2(0x3a6)],msg[_0x2744b2(0x3ab)][_0x2744b2(0x5d7)]=_0x164142[_0x2744b2(0x4d5)],msg[_0x2744b2(0x3ab)][_0x2744b2(0x790)]=_0x164142['version'],msg[_0x2744b2(0x3ab)][_0x2744b2(0x9c9)]=_0x164142[_0x2744b2(0x9fd)],msg[_0x2744b2(0x3ab)][_0x2744b2(0xa42)]=_0x164142['compressor'],msg[_0x2744b2(0x3ab)][_0x2744b2(0x6f5)]=_0x164142[_0x2744b2(0x561)],msg[_0x2744b2(0x3ab)][_0x2744b2(0x7d2)]=!_0x164142[_0x2744b2(0x352)],msg[_0x2744b2(0x3ab)][_0x2744b2(0x42a)]=_0x164142[_0x2744b2(0x65b)],msg[_0x2744b2(0x3ab)][_0x2744b2(0x66d)]=_0x164142[_0x2744b2(0x92c)],msg[_0x2744b2(0x3ab)]['playback_audio_volume_meter']=_0x164142[_0x2744b2(0x8a9)];_0x164142[_0x2744b2(0x3e9)]['network_type']&&(msg[_0x2744b2(0x3ab)][_0x2744b2(0x2a1)]=_0x164142[_0x2744b2(0x3e9)][_0x2744b2(0xa48)]);_0x164142['forceRotate']!==![]?_0x164142[_0x2744b2(0x7d7)]?msg['info'][_0x2744b2(0x68b)]=_0x164142['forceRotate']+parseInt(_0x164142[_0x2744b2(0x7d7)]):msg[_0x2744b2(0x3ab)]['rotate_video']=_0x164142['forceRotate']:msg['info'][_0x2744b2(0x68b)]=_0x164142[_0x2744b2(0x7d7)];msg[_0x2744b2(0x3ab)]['rotate_video']&&msg[_0x2744b2(0x3ab)]['rotate_video']>=0x168&&(msg['info'][_0x2744b2(0x68b)]-=0x168);try{navigator&&navigator[_0x2744b2(0x994)]&&(msg[_0x2744b2(0x3ab)]['useragent']=navigator[_0x2744b2(0x994)]);navigator&&navigator['platform']&&(msg[_0x2744b2(0x3ab)][_0x2744b2(0x5db)]=navigator['platform']);msg['info'][_0x2744b2(0x871)]=gpgpuSupport;if(SafariVersion)msg['info'][_0x2744b2(0x678)]='Safari';else{if(getChromeVersion()>0x3c)msg[_0x2744b2(0x3ab)][_0x2744b2(0x678)]=_0x2744b2(0x65a)+getChromeVersion();else{if(userAgent[_0x2744b2(0x1f3)](_0x2744b2(0x47d))>=0x0)msg['info']['Browser']=_0x2744b2(0x47d);else userAgent[_0x2744b2(0x1f3)](_0x2744b2(0x775))>=0x0?msg[_0x2744b2(0x3ab)][_0x2744b2(0x678)]=_0x2744b2(0xa3b):msg[_0x2744b2(0x3ab)]['Browser']='Unknown';}}}catch(_0x237da3){};_0x164142[_0x2744b2(0x7ac)]&&(_0x2744b2(0x75d)in _0x164142['batteryState']&&(typeof _0x164142[_0x2744b2(0x7ac)]['level']=='number'?msg[_0x2744b2(0x3ab)][_0x2744b2(0x466)]=parseInt(_0x164142[_0x2744b2(0x7ac)][_0x2744b2(0x75d)]*0x64):msg[_0x2744b2(0x3ab)][_0x2744b2(0x466)]=_0x164142[_0x2744b2(0x7ac)][_0x2744b2(0x75d)]),_0x2744b2(0x70b)in _0x164142['batteryState']&&(msg[_0x2744b2(0x3ab)]['plugged_in']=_0x164142['batteryState'][_0x2744b2(0x70b)]));_0x164142[_0x2744b2(0x721)]&&(msg[_0x2744b2(0x3ab)][_0x2744b2(0x721)]=_0x164142[_0x2744b2(0x721)]);try{_0x164142[_0x2744b2(0x3ab)][_0x2744b2(0x92a)]&&(msg[_0x2744b2(0x296)]={},msg['miniInfo']['out']={},msg[_0x2744b2(0x296)][_0x2744b2(0x92a)]['c']=_0x164142[_0x2744b2(0x3ab)][_0x2744b2(0x92a)]['c']);}catch(_0x1a68e1){}_0x164142['sendMessage'](msg,_0xf4df9),pokeIframeAPI('new-push-connection',!![],_0xf4df9),pokeIframeAPI('push-connection',!![],_0xf4df9),updateUserList();},_0x164142['pcs'][_0xf4df9][_0x5f0dd4(0x7a0)][_0x5f0dd4(0x935)]=()=>{var _0x18c000=_0x5f0dd4;pokeIframeAPI('new-push-connection',![],_0xf4df9),_0x164142[_0x18c000(0x9fb)](),warnlog(_0x18c000(0x963));return;},_0x164142['pcs'][_0xf4df9][_0x5f0dd4(0x7a0)][_0x5f0dd4(0x4bf)]=async function(_0x3b27b1){var _0x2f176a=_0x5f0dd4;log(_0x2f176a(0x65d));try{var _0xb70420=JSON['parse'](_0x3b27b1['data']);}catch(_0x202338){warnlog(_0x2f176a(0x409)),log(_0x3b27b1[_0x2f176a(0x7db)]);try{var _0x51c7ca=new TextDecoder()['decode'](_0x3b27b1['data']),_0xb70420=JSON[_0x2f176a(0x90a)](_0x51c7ca);}catch(_0x31a652){try{var _0xb70420=await new Response(_0x3b27b1[_0x2f176a(0x7db)])[_0x2f176a(0x49c)]();_0xb70420=JSON[_0x2f176a(0x90a)](_0xb70420);}catch(_0x3ff85e){return;}}}log(_0xb70420);if('remote'in _0xb70420)try{_0xb70420=await _0x164142['decodeRemote'](_0xb70420);if(!_0xb70420)return;}catch(_0x1a39fe){errorlor(_0x1a39fe);}_0x2f176a(0x5d2)in _0xb70420?await _0x164142[_0x2f176a(0x525)](_0xb70420,_0xf4df9+_0x2f176a(0x47c)):await _0x164142['processPCSOnMessage'](_0xb70420,_0xf4df9);};}_0x1d83db(![]),_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x2ea)]=function(_0x4cd796){var _0xc65403=_0x10444e;warnlog(_0xc65403(0x84e)),warnlog(_0x4cd796);if(_0x4cd796['channel'][_0xc65403(0x9a7)]&&_0x4cd796[_0xc65403(0x5a2)][_0xc65403(0x9a7)]!==_0xc65403(0x7a0)){_0x164142[_0xc65403(0x5c5)](_0x164142[_0xc65403(0x207)],_0xf4df9,_0x4cd796[_0xc65403(0x5a2)]);return;}},_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x6c0)]=function(_0x467caf){var _0xabab52=_0x10444e;log(_0xabab52(0x97a)),_0x164142[_0xabab52(0x3c0)](_0xf4df9);},_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x461)]=_0x27d496=>{var _0x402d7a=_0x10444e;errorlog(_0x402d7a(0x9aa));},_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x879)]=null,_0x164142['pcs'][_0xf4df9][_0x10444e(0x273)]=[],_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x5aa)]=function(_0x2ba36a){var _0x24dfc8=_0x10444e;if(_0x2ba36a[_0x24dfc8(0x408)]==null){log(_0x24dfc8(0x3e3));return;}log(_0x2ba36a);try{if(_0x164142['icefilter']){if(_0x2ba36a['candidate']['candidate'][_0x24dfc8(0x1f3)](_0x164142['icefilter'])===-0x1){log('dropped\x20candidate\x20due\x20to\x20filter');return;}else log(_0x2ba36a[_0x24dfc8(0x408)]);}}catch(_0x371cab){errorlog(_0x371cab);}if(_0x164142[_0x24dfc8(0x2f9)][_0xf4df9][_0x24dfc8(0x879)]!==null){_0x164142[_0x24dfc8(0x2f9)][_0xf4df9][_0x24dfc8(0x273)]['push'](_0x2ba36a[_0x24dfc8(0x408)]);return;}_0x164142[_0x24dfc8(0x2f9)][_0xf4df9][_0x24dfc8(0x273)]['push'](_0x2ba36a[_0x24dfc8(0x408)]),_0x164142[_0x24dfc8(0x2f9)][_0xf4df9][_0x24dfc8(0x879)]=setTimeout(function(_0x1adad9){var _0x2622df=_0x24dfc8;try{_0x164142[_0x2622df(0x2f9)][_0x1adad9][_0x2622df(0x879)]=null;}catch(_0x142812){warnlog(_0x2622df(0x30a));return;}var _0x199289={};_0x199289[_0x2622df(0x2ef)]=_0x1adad9,_0x199289['type']=_0x2622df(0x7f3),_0x199289['candidates']=_0x164142[_0x2622df(0x2f9)][_0x1adad9]['iceBundle'],_0x199289[_0x2622df(0x67a)]=_0x164142[_0x2622df(0x2f9)][_0x1adad9][_0x2622df(0x67a)],_0x164142[_0x2622df(0x2f9)][_0x1adad9]['iceBundle']=[],_0x164142[_0x2622df(0x4c8)]?_0x164142['encryptMessage'](JSON[_0x2622df(0x776)](_0x199289[_0x2622df(0x59a)]))[_0x2622df(0x63c)](function(_0x36e1c8){var _0x3687aa=_0x2622df;_0x199289[_0x3687aa(0x59a)]=_0x36e1c8[0x0],_0x199289[_0x3687aa(0x899)]=_0x36e1c8[0x1],_0x164142[_0x3687aa(0x2a9)](_0x199289);})['catch'](errorlog):_0x164142[_0x2622df(0x2a9)](_0x199289);},0xc8,_0xf4df9);},_0x164142[_0x10444e(0x525)]=async function(_0x23faf3,_0x112ce5){var _0x5d2cce=_0x10444e;_0x23faf3[_0x5d2cce(0x2ef)]=_0x112ce5;if(_0x23faf3[_0x5d2cce(0x40e)]){_0x164142[_0x5d2cce(0xa86)](_0x23faf3);return;}else{if(_0x23faf3['candidate']){log(_0x5d2cce(0x4c2)),_0x164142[_0x5d2cce(0x478)](_0x23faf3);return;}else{if(_0x23faf3[_0x5d2cce(0x59a)]){log(_0x5d2cce(0x8a4)),_0x164142['processIceBundle'](_0x23faf3);return;}else{if(_0x5d2cce(0x9fb)in _0x23faf3){var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x377)]=_0x23faf3['ping'],_0x164142[_0x5d2cce(0xa46)](_0x4cbfa7,_0x112ce5),warnlog(_0x5d2cce(0x85c));return;}else{if(_0x5d2cce(0x377)in _0x23faf3){warnlog(_0x5d2cce(0x8e0));return;}else{if(_0x5d2cce(0x65e)in _0x23faf3){warnlog(_0x5d2cce(0x82b)),log(_0x5d2cce(0x498)),_0x164142['closePC'](_0x112ce5);return;}}}}}}if(_0x164142[_0x5d2cce(0x752)]){if('requestCoDirector'in _0x23faf3&&_0x5d2cce(0x899)in _0x23faf3){if(_0x164142[_0x5d2cce(0x4ff)])_0x164142[_0x5d2cce(0x609)]?_0x164142[_0x5d2cce(0x957)](_0x23faf3[_0x5d2cce(0x8d2)],_0x23faf3[_0x5d2cce(0x899)],_0x164142['directorHash'])['then'](function(_0x258786){var _0x53f151=_0x5d2cce;if(_0x258786===_0x164142[_0x53f151(0x609)]){_0x164142[_0x53f151(0x2f9)][_0x112ce5][_0x53f151(0x719)]=!![],getById(_0x53f151(0xa11)+_0x112ce5)[_0x53f151(0x645)][_0x53f151(0x22f)](_0x53f151(0x1fe)),_0x164142[_0x53f151(0x936)](_0x112ce5);var _0x349152={};_0x349152[_0x53f151(0x692)]=_0x53f151(0x8d2),_0x164142[_0x53f151(0xa46)](_0x349152,_0x112ce5);}else{warnlog(_0x53f151(0x48b));var _0x349152={};_0x349152['rejected']=_0x53f151(0x8d2),_0x164142[_0x53f151(0xa46)](_0x349152,_0x112ce5);}})[_0x5d2cce(0x341)](function(){var _0x21d6f7=_0x5d2cce;warnlog(_0x21d6f7(0xa3a));var _0x1922ed={};_0x1922ed[_0x21d6f7(0x508)]=_0x21d6f7(0x8d2),_0x164142[_0x21d6f7(0xa46)](_0x1922ed,_0x112ce5);}):generateHash(_0x164142[_0x5d2cce(0x4ff)]+_0x164142[_0x5d2cce(0x73e)]+_0x5d2cce(0x1f2),0xc)['then'](function(_0x4e9b3a){var _0x42bcb6=_0x5d2cce;_0x164142[_0x42bcb6(0x609)]=_0x4e9b3a,_0x164142[_0x42bcb6(0x957)](_0x23faf3[_0x42bcb6(0x8d2)],_0x23faf3[_0x42bcb6(0x899)],_0x164142[_0x42bcb6(0x609)])['then'](function(_0x1ab420){var _0x5cedc9=_0x42bcb6;if(_0x1ab420===_0x164142[_0x5cedc9(0x609)]){_0x164142[_0x5cedc9(0x2f9)][_0x112ce5][_0x5cedc9(0x719)]=!![],getById(_0x5cedc9(0xa11)+_0x112ce5)[_0x5cedc9(0x645)][_0x5cedc9(0x22f)](_0x5cedc9(0x1fe)),_0x164142[_0x5cedc9(0x936)](_0x112ce5);var _0x465693={};_0x465693[_0x5cedc9(0x692)]=_0x5cedc9(0x8d2),_0x164142[_0x5cedc9(0x7a9)](_0x465693,_0x112ce5);}else{warnlog(_0x5cedc9(0x48b));var _0x465693={};_0x465693['rejected']=_0x5cedc9(0x8d2),_0x164142['sendRequest'](_0x465693,_0x112ce5);}})['catch'](function(){var _0x2fdd66=_0x42bcb6;warnlog('Failed\x20attempt\x20to\x20connect\x20as\x20co-director');var _0x1430da={};_0x1430da[_0x2fdd66(0x508)]=_0x2fdd66(0x8d2),_0x164142[_0x2fdd66(0x7a9)](_0x1430da,_0x112ce5);});return;})[_0x5d2cce(0x341)](errorlog);else{warnlog(_0x5d2cce(0x929));var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x508)]=_0x5d2cce(0x8d2),_0x164142[_0x5d2cce(0x7a9)](_0x4cbfa7,_0x112ce5);}}if(_0x5d2cce(0x949)in _0x23faf3&&_0x5d2cce(0x7aa)in _0x23faf3){log(_0x5d2cce(0x7e8));if(_0x164142['codirector_transfer']){if(_0x112ce5 in _0x164142[_0x5d2cce(0x2f9)]&&_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x719)]===!![]){log(_0x5d2cce(0x61c));var _0x4cbfa7={};if(_0x23faf3['transferSettings']&&_0x23faf3['transferSettings'][_0x5d2cce(0x991)]){_0x4cbfa7[_0x5d2cce(0x8f2)]=_0x5d2cce(0x949),_0x4cbfa7[_0x5d2cce(0x9ce)]=_0x23faf3[_0x5d2cce(0x9ce)],log(_0x4cbfa7);if(_0x164142['sendMessage'](_0x4cbfa7,_0x23faf3[_0x5d2cce(0x949)]['toString']())){var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x8f2)]=_0x5d2cce(0x949),_0x4cbfa7[_0x5d2cce(0x7aa)]=_0x23faf3[_0x5d2cce(0x7aa)],_0x4cbfa7[_0x5d2cce(0x247)]=_0x23faf3['migrate']['toString'](),_0x164142[_0x5d2cce(0x444)](_0x4cbfa7);}log(_0x4cbfa7);}else{if(_0x23faf3['transferSettings']&&_0x5d2cce(0x8ae)in _0x23faf3['transferSettings']){_0x4cbfa7['request']='migrate',_0x4cbfa7[_0x5d2cce(0x9ce)]=_0x23faf3[_0x5d2cce(0x9ce)],delete _0x4cbfa7['transferSettings'][_0x5d2cce(0x7aa)],delete _0x4cbfa7[_0x5d2cce(0x9ce)][_0x5d2cce(0x4fe)],log(_0x4cbfa7);if(_0x164142['sendMessage'](_0x4cbfa7,_0x23faf3['migrate'][_0x5d2cce(0x3ea)]())){var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x8f2)]=_0x5d2cce(0x949),_0x4cbfa7[_0x5d2cce(0x7aa)]=_0x23faf3['roomid'],_0x4cbfa7[_0x5d2cce(0x247)]=_0x23faf3[_0x5d2cce(0x949)][_0x5d2cce(0x3ea)](),_0x164142[_0x5d2cce(0x444)](_0x4cbfa7);}log(_0x4cbfa7);}else _0x4cbfa7[_0x5d2cce(0x8f2)]='migrate',_0x4cbfa7[_0x5d2cce(0x7aa)]=_0x23faf3['roomid'],_0x4cbfa7[_0x5d2cce(0x247)]=_0x23faf3[_0x5d2cce(0x949)][_0x5d2cce(0x3ea)](),_0x164142['sendMsg'](_0x4cbfa7);}pokeIframeAPI('transfer',_0x23faf3[_0x5d2cce(0x7aa)],_0x23faf3[_0x5d2cce(0x949)][_0x5d2cce(0x3ea)]());}}else{var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x508)]=_0x5d2cce(0x5e7),_0x164142['sendRequest'](_0x4cbfa7,_0x112ce5);}}}if(_0x5d2cce(0x2d1)in _0x23faf3){if(!_0x23faf3[_0x5d2cce(0x2ef)]){log('no\x20UUID\x20in\x20msg');return;}var _0x29698f=_0x23faf3['requestAs'];if(!_0x164142['pcs'][_0x29698f]){log(_0x5d2cce(0xa27));return;}if(_0x164142[_0x5d2cce(0x4f1)][_0x5d2cce(0x1f3)](_0x29698f)>=0x0){var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x508)]='requestAs',_0x164142[_0x5d2cce(0xa46)](_0x4cbfa7,_0x23faf3[_0x5d2cce(0x2ef)]),warnlog('Remote\x20user\x20is\x20a\x20director');return;}if(_0x164142['remote']){if('remote'in _0x23faf3&&_0x23faf3['remote']===_0x164142[_0x5d2cce(0x538)]&&_0x164142['remote']){}else{if(_0x164142[_0x5d2cce(0x538)]===!![]){}}}else{if(_0x164142[_0x5d2cce(0x4f1)][_0x5d2cce(0x1f3)](_0x23faf3['UUID'])>=0x0){}else return;}'targetBitrate'in _0x23faf3&&_0x164142['targetBitrate'](_0x29698f,_0x23faf3[_0x5d2cce(0x8ac)]);_0x5d2cce(0x881)in _0x23faf3&&_0x164142['targetAudioBitrate'](_0x29698f,_0x23faf3[_0x5d2cce(0x881)]);if(_0x5d2cce(0x8a6)in _0x23faf3)try{_0x23faf3[_0x5d2cce(0x8a6)]['s']?_0x164142['setResolution'](_0x29698f,_0x23faf3[_0x5d2cce(0x8a6)]['w'],_0x23faf3['requestResolution']['h'],!![]):_0x164142[_0x5d2cce(0x7a5)](_0x29698f,_0x23faf3[_0x5d2cce(0x8a6)]['w'],_0x23faf3[_0x5d2cce(0x8a6)]['h'],![]);}catch(_0x34a40a){errorlog(_0x34a40a);}return;}try{if(_0x5d2cce(0x3ab)in _0x23faf3){_0x164142[_0x5d2cce(0x2f9)][_0x112ce5]['stats'][_0x5d2cce(0x3ab)]=_0x23faf3[_0x5d2cce(0x3ab)];_0x5d2cce(0x9a7)in _0x23faf3['info']&&(typeof _0x23faf3[_0x5d2cce(0x3ab)][_0x5d2cce(0x9a7)]==_0x5d2cce(0x854)?_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x9a7)]=sanitizeLabel(_0x23faf3[_0x5d2cce(0x3ab)][_0x5d2cce(0x9a7)]):_0x164142['pcs'][_0x112ce5][_0x5d2cce(0x9a7)]=![]);if(_0x112ce5===_0x164142[_0x5d2cce(0x54f)])try{_0x164142['pcs'][_0x112ce5]['stats']['info'][_0x5d2cce(0x752)]=!![];}catch(_0x5277f8){}else{if(_0x164142['directorList'][_0x5d2cce(0x1f3)](_0x112ce5)>=0x0)try{_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x3e9)]['info'][_0x5d2cce(0x719)]=!![];}catch(_0x1cf09e){}}if(Firefox)try{_0x5d2cce(0x970)in _0x23faf3['info']&&(_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x3e2)]===![]&&(_0x23faf3[_0x5d2cce(0x3ab)][_0x5d2cce(0x970)]&&parseInt(_0x23faf3['info'][_0x5d2cce(0x970)])>0x0&&(_0x164142['pcs'][_0x112ce5][_0x5d2cce(0x3e2)]=parseInt(_0x23faf3[_0x5d2cce(0x3ab)][_0x5d2cce(0x970)]),_0x164142[_0x5d2cce(0x2f9)][_0x112ce5]['bitrateTimeout']&&clearTimeout(_0x164142['pcs'][_0x112ce5][_0x5d2cce(0x888)]),_0x164142['pcs'][_0x112ce5][_0x5d2cce(0x888)]=setTimeout(function(_0x5588c4){var _0x1f373c=_0x5d2cce;_0x164142[_0x1f373c(0x886)](_0x5588c4,null);},0x3e8,_0x112ce5))));}catch(_0x5c65b8){errorlog(_0x5c65b8);}pokeIframeAPI(_0x5d2cce(0x943),_0x23faf3[_0x5d2cce(0x3ab)],_0x112ce5);}if(_0x5d2cce(0x799)in _0x23faf3){if(_0x164142['iframeSrc'])try{_0x164142[_0x5d2cce(0xa18)][_0x5d2cce(0x5d5)](_0x5d2cce(0x5c7))&&processIframeSyncFeedback(_0x23faf3[_0x5d2cce(0x799)],_0x112ce5);}catch(_0x3a7827){errorlog(_0x3a7827);}}_0x5d2cce(0x597)in _0x23faf3&&_0x164142[_0x5d2cce(0x2dc)](_0x23faf3['pipe'],_0x112ce5);_0x5d2cce(0x5ed)in _0x23faf3&&(_0x164142[_0x5d2cce(0x3b7)]=_0x23faf3[_0x5d2cce(0x5ed)],_0x164142[_0x5d2cce(0x4df)](_0x112ce5));_0x5d2cce(0x9b0)in _0x23faf3&&(_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x9b0)]=parseInt(_0x23faf3[_0x5d2cce(0x9b0)]));_0x5d2cce(0x714)in _0x23faf3&&_0x164142['limitAudioBitrate'](_0x112ce5,_0x23faf3['audioBitrate']);'bitrate'in _0x23faf3&&_0x164142['limitBitrate'](_0x112ce5,_0x23faf3['bitrate']);_0x5d2cce(0x8ac)in _0x23faf3&&_0x164142['targetBitrate'](_0x112ce5,_0x23faf3[_0x5d2cce(0x8ac)]);'targetAudioBitrate'in _0x23faf3&&_0x164142['targetAudioBitrate'](_0x112ce5,_0x23faf3[_0x5d2cce(0x881)]);if(_0x5d2cce(0x9a6)in _0x23faf3){if(_0x5d2cce(0x538)in _0x23faf3){if(_0x23faf3[_0x5d2cce(0x538)]===_0x164142[_0x5d2cce(0x538)]&&_0x164142[_0x5d2cce(0x538)]||_0x164142[_0x5d2cce(0x538)]===!![]){_0x164142[_0x5d2cce(0x9a6)]();return;}}}if(_0x5d2cce(0x26b)in _0x23faf3){if(_0x5d2cce(0x538)in _0x23faf3){if(_0x23faf3['remote']===_0x164142[_0x5d2cce(0x538)]&&_0x164142[_0x5d2cce(0x538)]||_0x164142['remote']===!![]){_0x164142[_0x5d2cce(0x9a6)](!![]);return;}}}if(_0x5d2cce(0x3bc)in _0x23faf3){if(_0x164142[_0x5d2cce(0x4f1)][_0x5d2cce(0x1f3)](_0x112ce5)>=0x0){var _0x53ecb1={};if(_0x164142['mc'][_0x5d2cce(0x3e9)])_0x53ecb1[_0x5d2cce(0x80c)]=_0x164142['mc'][_0x5d2cce(0x3e9)];else for(var _0x51c9e6 in _0x164142['pcs']){if(_0x51c9e6===_0x112ce5)continue;_0x53ecb1[_0x51c9e6]=_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x3e9)];}var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x21b)]=_0x53ecb1,_0x164142['sendMessage'](_0x4cbfa7,_0x112ce5);}else{if(_0x5d2cce(0x538)in _0x23faf3){if(_0x23faf3['remote']===_0x164142['remote']&&_0x164142[_0x5d2cce(0x538)]||_0x164142[_0x5d2cce(0x538)]===!![]){var _0x53ecb1={};if(_0x164142['mc'][_0x5d2cce(0x3e9)])_0x53ecb1[_0x5d2cce(0x80c)]=_0x164142['mc'][_0x5d2cce(0x3e9)];else for(var _0x51c9e6 in _0x164142[_0x5d2cce(0x2f9)]){if(_0x51c9e6===_0x112ce5)continue;_0x53ecb1[_0x51c9e6]=_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x3e9)];}var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x21b)]=_0x53ecb1,_0x164142[_0x5d2cce(0xa46)](_0x4cbfa7,_0x112ce5);}}else{var _0x53ecb1={};if(_0x164142['mc'][_0x5d2cce(0x3e9)])_0x53ecb1[_0x5d2cce(0x80c)]=_0x164142['mc'][_0x5d2cce(0x3e9)];else for(var _0x51c9e6 in _0x164142[_0x5d2cce(0x2f9)]){if(_0x51c9e6===_0x112ce5)continue;if(!_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x3e9)])continue;if(_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6]['guest'])continue;if(_0x164142[_0x5d2cce(0x7aa)]){if(_0x5d2cce(0x7dd)in _0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x3e9)]){if(_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x3e9)][_0x5d2cce(0x7dd)]===![])continue;}else continue;}_0x53ecb1[_0x51c9e6]={},_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6]['stats'][_0x5d2cce(0x493)]&&(_0x53ecb1[_0x51c9e6][_0x5d2cce(0x493)]=_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x3e9)][_0x5d2cce(0x493)]),_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x3e9)][_0x5d2cce(0x304)]&&(_0x53ecb1[_0x51c9e6]['nacks_per_second']=_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x3e9)][_0x5d2cce(0x304)]),_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x3e9)][_0x5d2cce(0x844)]&&(_0x53ecb1[_0x51c9e6]['available_outgoing_bitrate_kbps']=_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x3e9)][_0x5d2cce(0x844)]),_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6]['stats']['scene']&&(_0x53ecb1[_0x51c9e6][_0x5d2cce(0x7dd)]=_0x164142['pcs'][_0x51c9e6][_0x5d2cce(0x3e9)][_0x5d2cce(0x7dd)]),_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x9a7)]&&(_0x53ecb1[_0x51c9e6][_0x5d2cce(0x9a7)]=_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x9a7)]),_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x3e9)][_0x5d2cce(0x3db)]&&(_0x53ecb1[_0x51c9e6][_0x5d2cce(0x3db)]=_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x3e9)][_0x5d2cce(0x3db)]),_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6]['stats'][_0x5d2cce(0x624)]&&(_0x53ecb1[_0x51c9e6][_0x5d2cce(0x624)]=_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6]['stats']['video_encoder']);}var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x21b)]=_0x53ecb1,_0x164142['sendMessage'](_0x4cbfa7,_0x112ce5);}}}if(_0x5d2cce(0x4c7)in _0x23faf3){clearInterval(_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x530)]);if(_0x164142[_0x5d2cce(0x4f1)][_0x5d2cce(0x1f3)](_0x112ce5)>=0x0){if(_0x23faf3[_0x5d2cce(0x4c7)]){_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x530)]=setInterval(function(_0x53ebad){var _0x13b1d6=_0x5d2cce,_0x5b8b31={};if(_0x164142['mc'][_0x13b1d6(0x3e9)])_0x5b8b31[_0x13b1d6(0x80c)]=_0x164142['mc'][_0x13b1d6(0x3e9)];else for(var _0xe07ec7 in _0x164142[_0x13b1d6(0x2f9)]){if(_0xe07ec7===_0x53ebad)continue;if(!_0x164142[_0x13b1d6(0x2f9)][_0xe07ec7][_0x13b1d6(0x3e9)])continue;if(_0x164142[_0x13b1d6(0x2f9)][_0xe07ec7][_0x13b1d6(0x3b2)])continue;_0x5b8b31[_0xe07ec7]=_0x164142[_0x13b1d6(0x2f9)][_0xe07ec7][_0x13b1d6(0x3e9)];}var _0x1f4340={};_0x1f4340[_0x13b1d6(0x21b)]=_0x5b8b31,_0x164142[_0x13b1d6(0xa46)](_0x1f4340,_0x53ebad);},0xbb8,_0x112ce5);var _0x53ecb1={};if(_0x164142['mc']['stats'])_0x53ecb1['meshcast']=_0x164142['mc'][_0x5d2cce(0x3e9)];else for(var _0x51c9e6 in _0x164142['pcs']){if(_0x51c9e6===_0x112ce5)continue;if(!_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x3e9)])continue;if(_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x3b2)])continue;_0x53ecb1[_0x51c9e6]=_0x164142['pcs'][_0x51c9e6][_0x5d2cce(0x3e9)];}var _0x4cbfa7={};_0x4cbfa7['remoteStats']=_0x53ecb1,_0x164142['sendMessage'](_0x4cbfa7,_0x112ce5);}}else{if(_0x5d2cce(0x538)in _0x23faf3){if(_0x23faf3[_0x5d2cce(0x538)]===_0x164142[_0x5d2cce(0x538)]&&_0x164142[_0x5d2cce(0x538)]||_0x164142['remote']===!![]){if(_0x23faf3[_0x5d2cce(0x4c7)]){_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x530)]=setInterval(function(_0x233b34){var _0x53dd79=_0x5d2cce,_0x3db738={};if(_0x164142['mc']['stats'])_0x3db738[_0x53dd79(0x80c)]=_0x164142['mc'][_0x53dd79(0x3e9)];else for(var _0x22003d in _0x164142[_0x53dd79(0x2f9)]){if(_0x22003d===_0x233b34)continue;if(!_0x164142[_0x53dd79(0x2f9)][_0x22003d][_0x53dd79(0x3e9)])continue;if(_0x164142[_0x53dd79(0x2f9)][_0x22003d][_0x53dd79(0x3b2)])continue;_0x3db738[_0x22003d]=_0x164142[_0x53dd79(0x2f9)][_0x22003d][_0x53dd79(0x3e9)];}var _0x584d60={};_0x584d60[_0x53dd79(0x21b)]=_0x3db738,_0x164142[_0x53dd79(0xa46)](_0x584d60,_0x233b34);},0xbb8,_0x112ce5);var _0x53ecb1={};if(_0x164142['mc'][_0x5d2cce(0x3e9)])_0x53ecb1['meshcast']=_0x164142['mc'][_0x5d2cce(0x3e9)];else for(var _0x51c9e6 in _0x164142[_0x5d2cce(0x2f9)]){if(_0x51c9e6===_0x112ce5)continue;if(!_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x3e9)])continue;if(_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6]['guest'])continue;_0x53ecb1[_0x51c9e6]=_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6]['stats'];}var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x21b)]=_0x53ecb1,_0x164142[_0x5d2cce(0xa46)](_0x4cbfa7,_0x112ce5);}}}else{if(_0x23faf3[_0x5d2cce(0x4c7)]){_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x530)]=setInterval(function(_0x233aa3){var _0x1e639e=_0x5d2cce,_0x2524ec={};if(_0x164142['mc'][_0x1e639e(0x3e9)])_0x2524ec['meshcast']=_0x164142['mc'][_0x1e639e(0x3e9)];else for(var _0x4c476c in _0x164142[_0x1e639e(0x2f9)]){if(_0x4c476c===_0x233aa3)continue;if(!_0x164142[_0x1e639e(0x2f9)][_0x4c476c][_0x1e639e(0x3e9)])continue;if(_0x164142['pcs'][_0x4c476c][_0x1e639e(0x3b2)])continue;if(_0x164142[_0x1e639e(0x7aa)]){if(_0x1e639e(0x7dd)in _0x164142[_0x1e639e(0x2f9)][_0x4c476c]['stats']){if(_0x164142[_0x1e639e(0x2f9)][_0x4c476c][_0x1e639e(0x3e9)][_0x1e639e(0x7dd)]===![])continue;}else continue;}_0x2524ec[_0x4c476c]={},_0x164142[_0x1e639e(0x2f9)][_0x4c476c][_0x1e639e(0x3e9)][_0x1e639e(0x493)]&&(_0x2524ec[_0x4c476c][_0x1e639e(0x493)]=_0x164142[_0x1e639e(0x2f9)][_0x4c476c][_0x1e639e(0x3e9)][_0x1e639e(0x493)]),_0x164142[_0x1e639e(0x2f9)][_0x4c476c][_0x1e639e(0x3e9)][_0x1e639e(0x304)]&&(_0x2524ec[_0x4c476c][_0x1e639e(0x304)]=_0x164142['pcs'][_0x4c476c][_0x1e639e(0x3e9)]['nacks_per_second']),_0x164142['pcs'][_0x4c476c]['stats'][_0x1e639e(0x844)]&&(_0x2524ec[_0x4c476c]['available_outgoing_bitrate_kbps']=_0x164142[_0x1e639e(0x2f9)][_0x4c476c][_0x1e639e(0x3e9)][_0x1e639e(0x844)]),_0x164142['pcs'][_0x4c476c]['stats'][_0x1e639e(0x7dd)]&&(_0x2524ec[_0x4c476c]['scene']=_0x164142[_0x1e639e(0x2f9)][_0x4c476c][_0x1e639e(0x3e9)][_0x1e639e(0x7dd)]),_0x164142[_0x1e639e(0x2f9)][_0x4c476c]['label']&&(_0x2524ec[_0x4c476c][_0x1e639e(0x9a7)]=_0x164142['pcs'][_0x4c476c][_0x1e639e(0x9a7)]),_0x164142[_0x1e639e(0x2f9)][_0x4c476c][_0x1e639e(0x3e9)][_0x1e639e(0x3db)]&&(_0x2524ec[_0x4c476c][_0x1e639e(0x3db)]=_0x164142[_0x1e639e(0x2f9)][_0x4c476c]['stats']['resolution']),_0x164142[_0x1e639e(0x2f9)][_0x4c476c][_0x1e639e(0x3e9)][_0x1e639e(0x624)]&&(_0x2524ec[_0x4c476c][_0x1e639e(0x624)]=_0x164142[_0x1e639e(0x2f9)][_0x4c476c][_0x1e639e(0x3e9)]['video_encoder']);}var _0x54ce39={};_0x54ce39[_0x1e639e(0x21b)]=_0x2524ec,_0x164142[_0x1e639e(0xa46)](_0x54ce39,_0x233aa3);},0xbb8,_0x112ce5);var _0x53ecb1={};if(_0x164142['mc']['stats'])_0x53ecb1[_0x5d2cce(0x80c)]=_0x164142['mc']['stats'];else for(var _0x51c9e6 in _0x164142[_0x5d2cce(0x2f9)]){if(_0x51c9e6===_0x112ce5)continue;if(!_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x3e9)])continue;if(_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6]['guest'])continue;if(_0x164142[_0x5d2cce(0x7aa)]){if(_0x5d2cce(0x7dd)in _0x164142['pcs'][_0x51c9e6]['stats']){if(_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x3e9)][_0x5d2cce(0x7dd)]===![])continue;}else continue;}_0x53ecb1[_0x51c9e6]={},_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x3e9)][_0x5d2cce(0x493)]&&(_0x53ecb1[_0x51c9e6]['video_bitrate_kbps']=_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x3e9)][_0x5d2cce(0x493)]),_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6]['stats'][_0x5d2cce(0x304)]&&(_0x53ecb1[_0x51c9e6][_0x5d2cce(0x304)]=_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x3e9)][_0x5d2cce(0x304)]),_0x164142['pcs'][_0x51c9e6]['stats'][_0x5d2cce(0x844)]&&(_0x53ecb1[_0x51c9e6]['available_outgoing_bitrate_kbps']=_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x3e9)][_0x5d2cce(0x844)]),_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x3e9)]['scene']&&(_0x53ecb1[_0x51c9e6][_0x5d2cce(0x7dd)]=_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x3e9)]['scene']),_0x164142['pcs'][_0x51c9e6][_0x5d2cce(0x9a7)]&&(_0x53ecb1[_0x51c9e6]['label']=_0x164142['pcs'][_0x51c9e6][_0x5d2cce(0x9a7)]),_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6]['stats']['resolution']&&(_0x53ecb1[_0x51c9e6][_0x5d2cce(0x3db)]=_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6]['stats'][_0x5d2cce(0x3db)]),_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6][_0x5d2cce(0x3e9)][_0x5d2cce(0x624)]&&(_0x53ecb1[_0x51c9e6]['video_encoder']=_0x164142[_0x5d2cce(0x2f9)][_0x51c9e6]['stats'][_0x5d2cce(0x624)]);}var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x21b)]=_0x53ecb1,_0x164142[_0x5d2cce(0xa46)](_0x4cbfa7,_0x112ce5);}}}}if('requestResolution'in _0x23faf3)try{_0x23faf3[_0x5d2cce(0x8a6)]['s']?_0x164142[_0x5d2cce(0x7a5)](_0x23faf3['UUID'],_0x23faf3['requestResolution']['w'],_0x23faf3[_0x5d2cce(0x8a6)]['h'],!![]):_0x164142[_0x5d2cce(0x7a5)](_0x23faf3[_0x5d2cce(0x2ef)],_0x23faf3['requestResolution']['w'],_0x23faf3[_0x5d2cce(0x8a6)]['h'],![]);}catch(_0xfb6128){errorlog(_0xfb6128);}_0x5d2cce(0xa5e)in _0x23faf3&&(_0x23faf3[_0x5d2cce(0x7dd)]?_0x164142[_0x5d2cce(0x4f1)][_0x5d2cce(0x1f3)](_0x112ce5)>=0x0?_0x164142[_0x5d2cce(0x2fb)]():errorlog('Not\x20director'):_0x164142[_0x5d2cce(0x572)](_0x112ce5));if('chat'in _0x23faf3){var _0x49e8eb=![],_0x1bb310=![];_0x164142[_0x5d2cce(0x4f1)][_0x5d2cce(0x1f3)](_0x112ce5)>=0x0&&(_0x49e8eb=!![],_0x5d2cce(0x26a)in _0x23faf3&&(_0x23faf3[_0x5d2cce(0x26a)]==!![]&&(_0x1bb310=!![]))),log(_0x5d2cce(0x2be)+_0x49e8eb),getChatMessage(_0x23faf3[_0x5d2cce(0x707)],_0x164142['pcs'][_0x112ce5]['label'],_0x49e8eb,_0x1bb310);}if('order'in _0x23faf3){_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x47f)]=parseInt(_0x23faf3[_0x5d2cce(0x47f)])||0x0;_0x112ce5 in _0x164142[_0x5d2cce(0x207)]&&(_0x164142[_0x5d2cce(0x207)][_0x112ce5]['order']=_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x47f)]);if(_0x164142[_0x5d2cce(0x752)]){var _0x2a8f32=document['querySelectorAll'](_0x5d2cce(0x2ad)+_0x112ce5+'\x22]');log(_0x2a8f32),_0x2a8f32[0x0]&&(_0x2a8f32[0x0][_0x5d2cce(0x737)]=parseInt(_0x23faf3[_0x5d2cce(0x47f)])||0x0);}updateMixer();}_0x5d2cce(0x8b9)in _0x23faf3&&_0x164142[_0x5d2cce(0x75e)](_0x112ce5,parseFloat(_0x23faf3['scale'])||0x0);if(_0x164142['director']&&_0x164142[_0x5d2cce(0x2f9)][_0x112ce5]['coDirector']&&_0x5d2cce(0x479)in _0x23faf3){_0x164142[_0x5d2cce(0x5e6)]=_0x23faf3['directorState'];for(var _0x1400c9 in _0x164142[_0x5d2cce(0x5e6)]){syncSceneState(_0x1400c9),syncOtherState(_0x1400c9);}}if(_0x164142[_0x5d2cce(0x4f1)]['indexOf'](_0x112ce5)==-0x1){if('requestAudioHack'in _0x23faf3){var _0x4cbfa7={};_0x4cbfa7['rejected']=_0x5d2cce(0x6de),_0x164142[_0x5d2cce(0xa46)](_0x4cbfa7,_0x112ce5);}else{if(_0x5d2cce(0x8a3)in _0x23faf3){var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x508)]=_0x5d2cce(0x8a3),_0x164142[_0x5d2cce(0xa46)](_0x4cbfa7,_0x112ce5);}else{if(_0x5d2cce(0xa16)in _0x23faf3){var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x508)]=_0x5d2cce(0xa16),_0x164142[_0x5d2cce(0xa46)](_0x4cbfa7,_0x112ce5);}else{if(_0x5d2cce(0x78a)in _0x23faf3){var _0x4cbfa7={};_0x4cbfa7['rejected']=_0x5d2cce(0x78a),_0x164142[_0x5d2cce(0xa46)](_0x4cbfa7,_0x112ce5);}else{if(_0x5d2cce(0x8f7)in _0x23faf3){var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x508)]=_0x5d2cce(0x8f7),_0x164142['sendMessage'](_0x4cbfa7,_0x112ce5);}else{if('requestChangeEQ'in _0x23faf3){var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x508)]=_0x5d2cce(0x805),_0x164142[_0x5d2cce(0xa46)](_0x4cbfa7,_0x112ce5);}else{if(_0x5d2cce(0x3b0)in _0x23faf3){var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x508)]='requestChangeGating',_0x164142[_0x5d2cce(0xa46)](_0x4cbfa7,_0x112ce5);}else{if(_0x5d2cce(0x512)in _0x23faf3){var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x508)]=_0x5d2cce(0x512),_0x164142[_0x5d2cce(0xa46)](_0x4cbfa7,_0x112ce5);}else{if(_0x5d2cce(0x284)in _0x23faf3){var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x508)]=_0x5d2cce(0x284),_0x164142[_0x5d2cce(0xa46)](_0x4cbfa7,_0x112ce5);}else{if(_0x5d2cce(0x574)in _0x23faf3){var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x508)]='lowerhand',_0x164142['sendMessage'](_0x4cbfa7,_0x112ce5);}else{if(_0x5d2cce(0x9a6)in _0x23faf3){var _0x4cbfa7={};_0x4cbfa7['rejected']=_0x5d2cce(0x9a6),_0x164142['sendMessage'](_0x4cbfa7,_0x112ce5);}else{if('displayMute'in _0x23faf3){var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x508)]=_0x5d2cce(0x94b),_0x164142[_0x5d2cce(0xa46)](_0x4cbfa7,_0x112ce5);}else{if('speakerMute'in _0x23faf3){var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x508)]=_0x5d2cce(0x905),_0x164142[_0x5d2cce(0xa46)](_0x4cbfa7,_0x112ce5);}else{if(_0x5d2cce(0x35d)in _0x23faf3){var _0x4cbfa7={};_0x4cbfa7['rejected']=_0x5d2cce(0x35d),_0x164142[_0x5d2cce(0xa46)](_0x4cbfa7,_0x112ce5);}else{if(_0x5d2cce(0x6bd)in _0x23faf3){var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x508)]='micIsolated',_0x164142[_0x5d2cce(0xa46)](_0x4cbfa7,_0x112ce5);}else{if('requestUpload'in _0x23faf3){var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x508)]=_0x5d2cce(0x20f),_0x164142[_0x5d2cce(0xa46)](_0x4cbfa7,_0x112ce5);}}}}}}}}}}}}}}}}}else{if(_0x5d2cce(0x6de)in _0x23faf3){var _0x2ec5ac=_0x164142[_0x5d2cce(0x307)]['getAudioTracks']();_0x2ec5ac['length']&&(_0x5d2cce(0x930)in _0x23faf3?applyAudioHack(_0x23faf3[_0x5d2cce(0x31f)],_0x23faf3[_0x5d2cce(0x3c1)],_0x23faf3['deviceId']):applyAudioHack(_0x23faf3[_0x5d2cce(0x31f)],_0x23faf3[_0x5d2cce(0x3c1)]));}if(_0x5d2cce(0x8a3)in _0x23faf3){if(_0x23faf3['requestVideoRecord']){if(_0x164142[_0x5d2cce(0x570)]){var _0x386747=0x1770;_0x23faf3[_0x5d2cce(0x3c1)]&&(_0x386747=parseInt(_0x23faf3['value'])),recordLocalVideo(_0x5d2cce(0x317),_0x386747);}}else _0x164142[_0x5d2cce(0x570)]&&recordLocalVideo('stop');}if('changeOrder'in _0x23faf3){_0x164142[_0x5d2cce(0x47f)]==![]&&(_0x164142[_0x5d2cce(0x47f)]=0x0);_0x164142[_0x5d2cce(0x47f)]+=parseInt(_0x23faf3['changeOrder'])||0x0;var _0x4cbfa7={};_0x4cbfa7={},_0x4cbfa7[_0x5d2cce(0x47f)]=_0x164142[_0x5d2cce(0x47f)],_0x164142[_0x5d2cce(0x9be)](_0x4cbfa7),updateMixer();}'changeURL'in _0x23faf3&&changeURL(_0x23faf3[_0x5d2cce(0x78a)]);_0x5d2cce(0x234)in _0x23faf3&&stopClock();'pauseClock'in _0x23faf3&&pauseClock();_0x5d2cce(0x483)in _0x23faf3&&resumeClock();_0x5d2cce(0x636)in _0x23faf3&&setClock(_0x23faf3[_0x5d2cce(0x636)]);'hideClock'in _0x23faf3&&hideClock();_0x5d2cce(0x343)in _0x23faf3&&showClock();_0x5d2cce(0xa88)in _0x23faf3&&startClock();_0x5d2cce(0x20f)in _0x23faf3&&toggleFileshare(_0x112ce5);if(_0x5d2cce(0x285)in _0x23faf3)try{_0x164142['sendMessage']({'group':_0x23faf3[_0x5d2cce(0x285)]}),_0x23faf3['group']?_0x164142[_0x5d2cce(0x285)]=_0x23faf3[_0x5d2cce(0x285)]['split'](','):_0x164142[_0x5d2cce(0x285)]=[],updateMixer(),pokeIframeAPI(_0x5d2cce(0x4b4),_0x164142[_0x5d2cce(0x285)]);}catch(_0x20b21f){}if('changeLabel'in _0x23faf3){if(_0x5d2cce(0x3c1)in _0x23faf3){if(typeof _0x23faf3[_0x5d2cce(0x3c1)]=='string'){_0x164142[_0x5d2cce(0x9a7)]=sanitizeLabel(_0x23faf3[_0x5d2cce(0x3c1)]),log(_0x5d2cce(0x673)+_0x164142[_0x5d2cce(0x9a7)]);if(_0x164142[_0x5d2cce(0x752)]){var _0x2a8f32=getById(_0x5d2cce(0x4cb)+_0x112ce5);if(_0x164142['label'])_0x2a8f32[_0x5d2cce(0x737)]=_0x164142[_0x5d2cce(0x9a7)],_0x2a8f32[_0x5d2cce(0x645)][_0x5d2cce(0x2e0)](_0x5d2cce(0x274));else _0x164142['directorUUID']===_0x112ce5?(_0x2a8f32['innerText']=miscTranslations[_0x5d2cce(0x20e)],_0x2a8f32[_0x5d2cce(0x645)]['remove'](_0x5d2cce(0x274))):(_0x2a8f32['innerText']=miscTranslations[_0x5d2cce(0x8cf)],_0x2a8f32[_0x5d2cce(0x645)][_0x5d2cce(0x22f)](_0x5d2cce(0x274)));}else _0x164142['showlabels']&&updateMixer();!_0x164142[_0x5d2cce(0x752)]&&(_0x164142['label']?document[_0x5d2cce(0xa73)]=_0x164142['label']:document[_0x5d2cce(0xa73)]=location['hostname']);var _0x3d2d62=encodeURIComponent(_0x164142[_0x5d2cce(0x9a7)]);urlParams['has']('l')?updateURL('l='+_0x3d2d62,!![],![]):updateURL(_0x5d2cce(0x57d)+_0x3d2d62,!![],![]);var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x8f7)]=!![],_0x4cbfa7[_0x5d2cce(0x3c1)]=_0x164142[_0x5d2cce(0x9a7)],_0x164142[_0x5d2cce(0xa46)](_0x4cbfa7);}else{_0x164142[_0x5d2cce(0x9a7)]=![];var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x8f7)]=!![],_0x4cbfa7['value']=_0x164142[_0x5d2cce(0x9a7)],_0x164142['sendMessage'](_0x4cbfa7);if(_0x164142['director']){var _0x2a8f32=getById(_0x5d2cce(0x4cb)+_0x112ce5);_0x164142[_0x5d2cce(0x54f)]===_0x112ce5?(_0x2a8f32[_0x5d2cce(0x737)]=miscTranslations['main-director'],_0x2a8f32[_0x5d2cce(0x645)][_0x5d2cce(0x2e0)](_0x5d2cce(0x274))):(_0x2a8f32['innerText']=miscTranslations['add-a-label'],_0x2a8f32[_0x5d2cce(0x645)][_0x5d2cce(0x22f)]('addALabel'));}else _0x164142[_0x5d2cce(0x912)]?(document[_0x5d2cce(0xa73)]=location[_0x5d2cce(0x36e)],updateMixer()):document[_0x5d2cce(0xa73)]=location[_0x5d2cce(0x36e)];}}}if(_0x5d2cce(0x805)in _0x23faf3){if(_0x23faf3[_0x5d2cce(0x31f)]==_0x5d2cce(0x95a))changeLowEQ(parseFloat(_0x23faf3[_0x5d2cce(0x3c1)]),_0x23faf3[_0x5d2cce(0x79c)]);else{if(_0x23faf3['keyname']==_0x5d2cce(0x607))changeMidEQ(parseFloat(_0x23faf3[_0x5d2cce(0x3c1)]),_0x23faf3['track']);else _0x23faf3[_0x5d2cce(0x31f)]==_0x5d2cce(0x637)&&changeHighEQ(parseFloat(_0x23faf3[_0x5d2cce(0x3c1)]),_0x23faf3[_0x5d2cce(0x79c)]);}}if(_0x5d2cce(0x3b0)in _0x23faf3){var _0x455d8d=_0x164142[_0x5d2cce(0x40c)];if(_0x23faf3[_0x5d2cce(0x3c1)]===_0x5d2cce(0x3e7))_0x164142[_0x5d2cce(0x40c)]=![],log(_0x5d2cce(0x709));else _0x23faf3[_0x5d2cce(0x3c1)]===_0x5d2cce(0x666)?(_0x164142['noisegate']=!![],log(_0x5d2cce(0x7b8))):_0x164142[_0x5d2cce(0x40c)]=_0x23faf3[_0x5d2cce(0x3c1)];_0x164142[_0x5d2cce(0x40c)]!==_0x455d8d&&senderAudioUpdate();}if(_0x5d2cce(0x512)in _0x23faf3){var _0x455d8d=_0x164142['compressor'];if(_0x23faf3[_0x5d2cce(0x3c1)]===_0x5d2cce(0x3e7))_0x164142[_0x5d2cce(0x27c)]=![],log(_0x5d2cce(0x709));else{if(_0x23faf3[_0x5d2cce(0x3c1)]==='1')_0x164142['compressor']=0x1,log(_0x5d2cce(0x7b8));else _0x23faf3['value']==='2'?(_0x164142[_0x5d2cce(0x27c)]=0x2,log(_0x5d2cce(0x7b8))):_0x164142[_0x5d2cce(0x27c)]=parseInt(_0x23faf3[_0x5d2cce(0x3c1)])||![];}_0x164142[_0x5d2cce(0x27c)]!==_0x455d8d&&senderAudioUpdate();}_0x5d2cce(0x284)in _0x23faf3&&changeSubGain(parseFloat(_0x23faf3[_0x5d2cce(0x3c1)]),_0x23faf3[_0x5d2cce(0x930)]);'lowerhand'in _0x23faf3&&(_0x164142['raisehands']&&lowerhand());if(_0x5d2cce(0x822)in _0x23faf3){var _0x4cbfa7={};_0x4cbfa7[_0x5d2cce(0x2ef)]=_0x112ce5,_0x4cbfa7[_0x5d2cce(0x68f)]=listAudioSettingsPrep(),sendMediaDevices(_0x4cbfa7['UUID']),_0x164142[_0x5d2cce(0xa46)](_0x4cbfa7,_0x4cbfa7[_0x5d2cce(0x2ef)]);}if(_0x5d2cce(0x593)in _0x23faf3){var _0x4cbfa7={};_0x4cbfa7['UUID']=_0x112ce5,_0x4cbfa7['videoOptions']=listVideoSettingsPrep(),sendMediaDevices(_0x4cbfa7[_0x5d2cce(0x2ef)]),_0x164142['sendMessage'](_0x4cbfa7,_0x4cbfa7[_0x5d2cce(0x2ef)]);}_0x5d2cce(0x7b5)in _0x23faf3&&changeAudioOutputDeviceById(_0x23faf3[_0x5d2cce(0x7b5)],_0x112ce5);'changeMicrophone'in _0x23faf3&&changeAudioDeviceById(_0x23faf3[_0x5d2cce(0x9c4)],_0x112ce5);_0x5d2cce(0x359)in _0x23faf3&&changeVideoDeviceById(_0x23faf3[_0x5d2cce(0x359)],_0x112ce5);_0x5d2cce(0x88e)in _0x23faf3&&(_0x5d2cce(0xa35)in _0x23faf3&&_0x23faf3[_0x5d2cce(0xa35)]?updateCameraConstraints(_0x23faf3['keyname'],_0x23faf3[_0x5d2cce(0x3c1)],!![],_0x112ce5):updateCameraConstraints(_0x23faf3[_0x5d2cce(0x31f)],_0x23faf3[_0x5d2cce(0x3c1)],![],![]));_0x5d2cce(0xa52)in _0x23faf3&&changeLowCut(parseFloat(_0x23faf3[_0x5d2cce(0x3c1)]),_0x23faf3[_0x5d2cce(0x79c)]);_0x5d2cce(0xa52)in _0x23faf3&&changeLowCut(parseFloat(_0x23faf3[_0x5d2cce(0x3c1)]),_0x23faf3[_0x5d2cce(0x79c)]);_0x5d2cce(0x9a6)in _0x23faf3&&(_0x164142[_0x5d2cce(0x54f)]&&_0x164142['hangup']());if('mute'in _0x23faf3){}if(_0x5d2cce(0x35d)in _0x23faf3){var _0x436356=parseInt(_0x23faf3[_0x5d2cce(0x35d)])/0x64||0x0;_0x164142['audioGain']=parseInt(_0x23faf3[_0x5d2cce(0x35d)])||0x0;try{for(var _0x4f00c5 in _0x164142['webAudios']){log(_0x5d2cce(0x982)),_0x164142[_0x5d2cce(0x90c)][_0x4f00c5][_0x5d2cce(0x919)][_0x5d2cce(0xa77)][_0x5d2cce(0x716)](_0x436356,_0x164142[_0x5d2cce(0x90c)][_0x4f00c5][_0x5d2cce(0x7e1)]['currentTime']);}}catch(_0x12e989){}updateVolume(!![]);}if(_0x5d2cce(0x910)in _0x23faf3){if(_0x23faf3[_0x5d2cce(0x910)])_0x164142['directorList'][_0x5d2cce(0x1f3)](_0x112ce5)>=0x0&&(_0x164142[_0x5d2cce(0x6bd)][_0x5d2cce(0x68a)](_0x112ce5),_0x164142['applyIsolatedChat']());else{var _0x385cf=_0x164142[_0x5d2cce(0x6bd)][_0x5d2cce(0x1f3)](_0x112ce5);_0x385cf>-0x1&&(_0x164142['micIsolated'][_0x5d2cce(0x2a7)](_0x385cf,0x1),_0x164142[_0x5d2cce(0x915)]());}}if(_0x5d2cce(0x78d)in _0x23faf3){if(_0x23faf3['lowerVolume'])_0x164142[_0x5d2cce(0x4f1)][_0x5d2cce(0x1f3)](_0x112ce5)>=0x0&&(_0x164142[_0x5d2cce(0x78d)]['push'](_0x112ce5),_0x164142[_0x5d2cce(0x2c6)]());else{var _0x385cf=_0x164142[_0x5d2cce(0x78d)]['indexOf'](_0x112ce5);_0x385cf>-0x1&&(_0x164142[_0x5d2cce(0x78d)][_0x5d2cce(0x2a7)](_0x385cf,0x1),_0x164142[_0x5d2cce(0x2c6)]());}}if('delay'in _0x23faf3){var _0x4b22ef=parseFloat(_0x23faf3[_0x5d2cce(0x9cd)]/0x3e8)||0x0;_0x164142['micDelay']=parseInt(_0x23faf3[_0x5d2cce(0x9cd)])||0x0;for(var _0x4f00c5 in _0x164142[_0x5d2cce(0x90c)]){_0x164142[_0x5d2cce(0x90c)][_0x4f00c5][_0x5d2cce(0x765)][_0x5d2cce(0x392)][_0x5d2cce(0x716)](_0x4b22ef,_0x164142[_0x5d2cce(0x90c)][_0x4f00c5][_0x5d2cce(0x7e1)]['currentTime']);}}_0x5d2cce(0x905)in _0x23faf3&&(_0x23faf3[_0x5d2cce(0x905)]?(_0x164142[_0x5d2cce(0x356)]=!![],_0x164142[_0x5d2cce(0x308)]()):(_0x164142[_0x5d2cce(0x356)]=![],_0x164142[_0x5d2cce(0x308)]())),'displayMute'in _0x23faf3&&(_0x23faf3[_0x5d2cce(0x94b)]?(_0x164142['directorDisplayMuted']=!![],_0x164142[_0x5d2cce(0x85b)]()):(_0x164142['directorDisplayMuted']=![],_0x164142[_0x5d2cce(0x85b)]())),_0x5d2cce(0x417)in _0x23faf3&&applyNewParams(_0x23faf3[_0x5d2cce(0x417)]);}if(_0x164142['directorUUID']===_0x112ce5){_0x23faf3[_0x5d2cce(0x8f2)]==='migrate'&&(warnlog(_0x5d2cce(0x38d)),'transferSettings'in _0x23faf3&&(_0x5d2cce(0x4fe)in _0x23faf3['transferSettings']&&(_0x164142[_0x5d2cce(0x4fe)]=_0x23faf3[_0x5d2cce(0x4fe)]),_0x5d2cce(0x8ae)in _0x23faf3['transferSettings']&&(_0x23faf3[_0x5d2cce(0x9ce)]['broadcast']===!![]||_0x23faf3[_0x5d2cce(0x9ce)][_0x5d2cce(0x8ae)]===null?(_0x164142[_0x5d2cce(0x8ae)]=null,_0x164142[_0x5d2cce(0xa8f)]===![]&&(_0x164142[_0x5d2cce(0xa8f)]=0x2),_0x164142[_0x5d2cce(0x96d)]===![]&&(_0x164142['style']=0x1),_0x164142[_0x5d2cce(0x418)]===null&&(_0x164142[_0x5d2cce(0x418)]=!![])):_0x164142[_0x5d2cce(0x8ae)]=_0x23faf3[_0x5d2cce(0x9ce)][_0x5d2cce(0x8ae)],_0x23faf3['transferSettings'][_0x5d2cce(0x991)]&&(_0x164142[_0x5d2cce(0x8ae)]!==![]?updateURL(_0x5d2cce(0x8ae),!![]):updateURL('broadcast=false',!![]))),_0x5d2cce(0x7aa)in _0x23faf3['transferSettings']&&(_0x164142[_0x5d2cce(0x7aa)]=_0x23faf3[_0x5d2cce(0x9ce)]['roomid'],_0x23faf3[_0x5d2cce(0x9ce)][_0x5d2cce(0x991)]&&updateURL('room='+_0x164142[_0x5d2cce(0x7aa)],!![]))));try{if(_0x5d2cce(0x1e7)in _0x23faf3&&'addCoDirector'in _0x23faf3[_0x5d2cce(0x1e7)])for(var _0x50aa94=0x0;_0x50aa94<_0x23faf3[_0x5d2cce(0x1e7)][_0x5d2cce(0x647)]['length'];_0x50aa94++){if(!_0x164142[_0x5d2cce(0x4f1)][_0x5d2cce(0x6b6)](_0x23faf3[_0x5d2cce(0x1e7)][_0x5d2cce(0x647)][_0x50aa94][_0x5d2cce(0x3ea)])){_0x164142['directorList'][_0x5d2cce(0x68a)](_0x23faf3[_0x5d2cce(0x1e7)][_0x5d2cce(0x647)][_0x50aa94][_0x5d2cce(0x3ea)]());var _0x426240=getById('container_'+_0x23faf3['directorSettings'][_0x5d2cce(0x647)][_0x50aa94][_0x5d2cce(0x3ea)]());_0x426240&&_0x426240[_0x5d2cce(0x645)][_0x5d2cce(0x22f)](_0x5d2cce(0x1fe));}}}catch(_0xeb9843){errorlog(_0xeb9843);}}if(_0x5d2cce(0xa3d)in _0x23faf3){if(_0x164142['remote']){if(_0x5d2cce(0x538)in _0x23faf3&&_0x23faf3[_0x5d2cce(0x538)]===_0x164142[_0x5d2cce(0x538)]&&_0x164142['remote'])_0x164142[_0x5d2cce(0x6e8)](parseFloat(_0x23faf3[_0x5d2cce(0xa3d)]));else _0x164142[_0x5d2cce(0x538)]===!![]&&_0x164142[_0x5d2cce(0x6e8)](parseFloat(_0x23faf3[_0x5d2cce(0xa3d)]));}else{if(_0x164142['directorList']['indexOf'](_0x112ce5)>=0x0)_0x164142[_0x5d2cce(0x6e8)](parseFloat(_0x23faf3[_0x5d2cce(0xa3d)]));else return;}}if(_0x5d2cce(0x551)in _0x23faf3){if(_0x164142[_0x5d2cce(0x538)]){if(_0x5d2cce(0x538)in _0x23faf3&&_0x23faf3[_0x5d2cce(0x538)]===_0x164142['remote']&&_0x164142[_0x5d2cce(0x538)])_0x164142['remoteFocus'](parseFloat(_0x23faf3[_0x5d2cce(0x551)]));else _0x164142['remote']===!![]&&_0x164142[_0x5d2cce(0x884)](parseFloat(_0x23faf3[_0x5d2cce(0x551)]));}else{if(_0x164142[_0x5d2cce(0x4f1)][_0x5d2cce(0x1f3)](_0x112ce5)>=0x0)_0x164142[_0x5d2cce(0x884)](parseFloat(_0x23faf3['focus']));else return;}}if(_0x5d2cce(0x546)in _0x23faf3){log(_0x5d2cce(0x546));try{_0x164142[_0x5d2cce(0x683)](_0x112ce5,_0x23faf3['requestFile']);}catch(_0x55a266){errorlog(_0x55a266);}}_0x5d2cce(0x4f0)in _0x23faf3&&playbackMIDI(_0x23faf3[_0x5d2cce(0x4f0)],!![]);}catch(_0x402231){errorlog(_0x402231);}manageSceneState(_0x23faf3,_0x112ce5);if(_0x5d2cce(0x508)in _0x23faf3){if(_0x23faf3[_0x5d2cce(0x508)]=='obsCommand'){if(_0x164142['remote'])warnUser(_0x5d2cce(0x6f7),0xbb8);else document[_0x5d2cce(0xa2b)](_0x5d2cce(0x397))&&document[_0x5d2cce(0xa2b)]('#obsRemotePassword>input')['value']?warnUser('Invalid\x20remote\x20control\x20code.\x0a\x0aThe\x20remote\x20OBS\x20system\x20needs\x20a\x20matching\x20passcode\x20set\x20using\x20&remote.\x0a\x0aSee\x20the\x20documentation\x20for\x20help..',0x1b58):warnUser(_0x5d2cce(0x7de),0x2710);getById(_0x5d2cce(0xa51))['classList'][_0x5d2cce(0x2e0)](_0x5d2cce(0xa8d));}else{if(_0x164142[_0x5d2cce(0x752)])!_0x164142['cleanOutput']&&warnUser('The\x20request\x20('+_0x23faf3[_0x5d2cce(0x508)]+_0x5d2cce(0x711),0x1388);else!_0x164142[_0x5d2cce(0x56f)]&&(_0x164142[_0x5d2cce(0x538)]?warnUser(_0x5d2cce(0x705),0x1388):warnUser('The\x20remote\x20control\x20request\x20failed.',0x1388));}errorlog(_0x5d2cce(0x3ef)+_0x23faf3[_0x5d2cce(0x508)]+_0x5d2cce(0x235)+_0x164142[_0x5d2cce(0x752)]);}if('audio'in _0x23faf3||_0x5d2cce(0x513)in _0x23faf3){log(_0x5d2cce(0x6fb));_0x23faf3[_0x5d2cce(0x33f)]&&(_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x2b1)]=!![]);if(_0x164142[_0x5d2cce(0x420)]&&_0x5d2cce(0x9e1)in _0x23faf3&&_0x23faf3[_0x5d2cce(0x9e1)]!==![])_0x164142[_0x5d2cce(0x2f9)][_0x112ce5]['allowWebp']=_0x23faf3['allowwebp'],_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x220)]=![],setTimeout(function(){makeImages(!![]);},0x3e8);else _0x23faf3['video']&&(_0x164142['pcs'][_0x112ce5][_0x5d2cce(0x220)]=!![]);_0x5d2cce(0x8ae)in _0x23faf3&&_0x23faf3['broadcast']!==![]&&(_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x1ed)]=_0x23faf3[_0x5d2cce(0x8ae)]);_0x5d2cce(0xa2d)in _0x23faf3&&_0x23faf3['iframe']!==![]&&(_0x164142[_0x5d2cce(0x2f9)][_0x112ce5]['allowIframe']=_0x23faf3[_0x5d2cce(0xa2d)]);_0x5d2cce(0x641)in _0x23faf3&&_0x23faf3['allowmidi']!==![]&&(_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x588)]=_0x23faf3[_0x5d2cce(0x641)]);'downloads'in _0x23faf3&&_0x23faf3['downloads']!==![]&&(_0x164142['pcs'][_0x112ce5][_0x5d2cce(0x5da)]=_0x23faf3[_0x5d2cce(0x712)]);'allowscreen'in _0x23faf3&&_0x23faf3['allowscreen']!==![]&&(_0x164142['pcs'][_0x112ce5][_0x5d2cce(0x614)]=!![]);_0x5d2cce(0x255)in _0x23faf3&&_0x23faf3[_0x5d2cce(0x255)]!==![]&&(_0x164142[_0x5d2cce(0x2f9)][_0x112ce5]['preferVideoCodec']=_0x23faf3[_0x5d2cce(0x255)][_0x5d2cce(0x6d7)]());if(_0x164142[_0x5d2cce(0x80c)]){if(_0x164142[_0x5d2cce(0x80c)]==_0x5d2cce(0x513))_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x220)]=![];else{if(_0x164142[_0x5d2cce(0x80c)]==_0x5d2cce(0x33f))_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x2b1)]=![];else _0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x220)]==![]?_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x80c)]=![]:(_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x2b1)]=![],_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x220)]=![]);}}if(_0x164142[_0x5d2cce(0xa90)]){playtone(),window[_0x5d2cce(0x551)]();var _0x1d06e4=![];_0x112ce5 in _0x164142[_0x5d2cce(0x207)]&&_0x164142['rpcs'][_0x112ce5]['label']&&(_0x1d06e4=_0x164142['rpcs'][_0x112ce5]['label']||_0x164142[_0x5d2cce(0x207)][_0x112ce5][_0x5d2cce(0x200)]||![]);_0x1d06e4=_0x164142[_0x5d2cce(0x2f9)][_0x112ce5]['label']||_0x1d06e4||_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x200)]||_0x112ce5||_0x5d2cce(0x6af);var _0x173da1=await confirmAlt(_0x1d06e4+miscTranslations[_0x5d2cce(0x2c3)],!![]);if(!_0x173da1){try{log(_0x5d2cce(0x781)),_0x164142[_0x5d2cce(0x9fc)](_0x112ce5);}catch(_0x56590d){}return;}}_0x5d2cce(0x3b2)in _0x23faf3&&(_0x23faf3[_0x5d2cce(0x3b2)]==!![]&&(_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x3b2)]=!![],_0x164142['beepToNotify']&&(playtone(![],_0x5d2cce(0x6bf)),showNotification(_0x5d2cce(0x9f1),'')),pokeIframeAPI(_0x5d2cce(0x3c3),_0x23faf3['director'],_0x112ce5)));_0x5d2cce(0x752)in _0x23faf3&&(_0x23faf3['director']==!![]&&((iOS||iPad)&&(_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x953)]==!![]&&(_0x164142['pcs'][_0x112ce5][_0x5d2cce(0x3b2)]=!![])),_0x164142['beepToNotify']&&(playtone(![],_0x5d2cce(0x6bf)),showNotification('A\x20director\x20joined\x20the\x20room',_0x5d2cce(0x98a))),pokeIframeAPI('director-connected',_0x23faf3[_0x5d2cce(0x752)],_0x112ce5)));_0x5d2cce(0x953)in _0x23faf3&&(_0x23faf3[_0x5d2cce(0x953)]===!![]&&(_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x953)]=!![]));'limitaudio'in _0x23faf3&&(_0x23faf3[_0x5d2cce(0x2f8)]==!![]&&(_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x8fa)]=!![]));_0x5d2cce(0x813)in _0x23faf3&&(_0x23faf3[_0x5d2cce(0x813)]==!![]&&(_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x25a)]=!![]));_0x23faf3[_0x5d2cce(0x3a4)]&&(_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x82d)]=_0x23faf3['degrade']);if(_0x5d2cce(0x62d)in _0x23faf3)try{_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x62d)]=_0x23faf3['keyframeRate'],_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x62d)]&&setTimeout(function(){_0x164142['forcePLI'](_0x112ce5);},0x1388);}catch(_0x3f4260){warnlog(_0x3f4260);}_0x5d2cce(0x246)in _0x23faf3&&(_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x246)]=_0x23faf3[_0x5d2cce(0x246)]);_0x5d2cce(0x64e)in _0x23faf3&&(_0x164142[_0x5d2cce(0x2f9)][_0x112ce5]['layout']=_0x23faf3[_0x5d2cce(0x64e)],pokeIframeAPI(_0x5d2cce(0x5ae),_0x23faf3[_0x5d2cce(0x64e)],_0x112ce5));if(_0x5d2cce(0x7dd)in _0x23faf3){if(_0x23faf3[_0x5d2cce(0x7dd)]!==![]){try{typeof _0x23faf3[_0x5d2cce(0x7dd)]===_0x5d2cce(0x854)?_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x7dd)]=_0x23faf3[_0x5d2cce(0x7dd)][_0x5d2cce(0x276)](/[\W]+/g,'_'):_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x7dd)]=(parseInt(_0x23faf3[_0x5d2cce(0x7dd)])||0x0)+'',_0x164142['pcs'][_0x112ce5]['stats'][_0x5d2cce(0x7dd)]=_0x164142['pcs'][_0x112ce5][_0x5d2cce(0x7dd)],updateSceneList(_0x164142['pcs'][_0x112ce5]['scene']);}catch(_0x4335f9){errorlog(_0x4335f9);}_0x5d2cce(0x896)in _0x23faf3&&(_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x896)]=_0x23faf3[_0x5d2cce(0x896)]);if(_0x5d2cce(0x896)in _0x23faf3&&_0x23faf3['showDirector'])_0x23faf3['showDirector']==0x2&&(_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x2b1)]=![]);else{if(_0x164142[_0x5d2cce(0x752)]&&_0x164142[_0x5d2cce(0x896)]==![])_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x2b1)]=![],_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x220)]=![],_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x7d1)]=![],_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x80c)]=![],_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0xa61)]=![];else _0x164142['director']&&(_0x164142['showDirector']==0x2&&(_0x164142['pcs'][_0x112ce5][_0x5d2cce(0x2b1)]=![]),_0x164142['pcs'][_0x112ce5][_0x5d2cce(0x7d1)]=![]);}_0x164142[_0x5d2cce(0x2f9)][_0x112ce5][_0x5d2cce(0x246)]?pokeIframeAPI(_0x5d2cce(0x843),_0x23faf3['scene'],_0x112ce5):pokeIframeAPI(_0x5d2cce(0x5fa),_0x23faf3[_0x5d2cce(0x7dd)],_0x112ce5);}}if(_0x164142['director']==!![]){var _0x4cbfa7={};_0x4cbfa7['directorSettings']=getDirectorSettings(_0x164142[_0x5d2cce(0x2f9)][_0x112ce5]['scene']),_0x5d2cce(0x752)in _0x23faf3&&(_0x23faf3[_0x5d2cce(0x752)]==!![]&&(_0x4cbfa7[_0x5d2cce(0x479)]=getDetailedState())),_0x164142[_0x5d2cce(0xa46)](_0x4cbfa7,_0x112ce5);}_0x164142['initialPublish'](_0x112ce5);}},_0x164142[_0x10444e(0x4bd)]=function(_0x3c9bd2){var _0x27de18=_0x10444e;log('INITIAL\x20PUBLISH\x20START:\x20'+_0x3c9bd2);if(_0x3c9bd2 in _0x164142[_0x27de18(0x2f9)]){}else{errorlog('UUID\x20not\x20found\x20in\x20pcs');return;}getSenders2(_0x3c9bd2)['length']&&errorlog(_0x27de18(0x8f1)+getSenders2(_0x3c9bd2)[_0x27de18(0x7e9)]);if(_0x164142[_0x27de18(0x2f9)][_0x3c9bd2][_0x27de18(0x7d1)]===!![]){if(_0x164142[_0x27de18(0xa18)]){var _0x13c846={};_0x13c846[_0x27de18(0xa18)]=_0x164142[_0x27de18(0xa18)],_0x164142[_0x27de18(0x89c)]&&_0x164142['iframeEle']['sendOnNewConnect']&&(_0x164142[_0x27de18(0xa18)]['startsWith'](_0x27de18(0x5c7))&&(_0x13c846['iframeSrc']+=_0x27de18(0x7f4)+parseInt(Math[_0x27de18(0x5f9)](_0x164142['iframeEle'][_0x27de18(0x48d)][_0x27de18(0x799)]['t']))+'')),_0x164142[_0x27de18(0xa46)](_0x13c846,_0x3c9bd2);}}_0x164142[_0x27de18(0x2f9)][_0x3c9bd2][_0x27de18(0x5da)]===!![]&&_0x164142[_0x27de18(0x98c)](_0x3c9bd2);if(_0x164142['chunked']){_0x164142[_0x27de18(0x691)](_0x3c9bd2);return;}var _0x2d3f11=_0x164142[_0x27de18(0x28a)]();log(_0x27de18(0x519)),log(_0x2d3f11[_0x27de18(0x3d2)]());if(_0x164142[_0x27de18(0x523)]&&_0x164142[_0x27de18(0x2f9)][_0x3c9bd2][_0x27de18(0x80c)]===null){_0x164142['pcs'][_0x3c9bd2][_0x27de18(0x80c)]=!![];var _0x13c846={};_0x13c846[_0x27de18(0x80c)]=_0x164142['meshcastSettings'],_0x164142[_0x27de18(0xa46)](_0x13c846,_0x3c9bd2),warnlog(_0x13c846);}_0x164142[_0x27de18(0x2f9)][_0x3c9bd2]['allowScreen']&&createSecondStream2(_0x3c9bd2);var _0x2ac2de=![];_0x2d3f11['getVideoTracks']()[_0x27de18(0xa17)](_0x129228=>{var _0x526036=_0x27de18;try{_0x164142[_0x526036(0x2f9)][_0x3c9bd2]['allowVideo']===!![]&&(_0x129228[_0x526036(0x79e)]==_0x526036(0x513)&&(_0x164142[_0x526036(0x2f9)][_0x3c9bd2]['guest']===!![]&&_0x164142[_0x526036(0x51b)]===0x0?log(_0x526036(0x338)):(_0x164142['pcs'][_0x3c9bd2]['addTrack'](_0x129228,_0x2d3f11),warnlog(_0x526036(0x6e6)),_0x2ac2de=!![],setTimeout(function(_0x1bb1d0){var _0x32ad6b=_0x526036;try{_0x164142[_0x32ad6b(0x8cd)](_0x1bb1d0);}catch(_0x31a013){warnlog(_0x31a013);}},_0x164142[_0x526036(0x4c6)],_0x3c9bd2))));}catch(_0x5f240d){errorlog(_0x5f240d);}});_0x164142[_0x27de18(0x320)]&&(_0x2d3f11=mixMinusAudio(_0x3c9bd2));_0x2d3f11[_0x27de18(0x96b)]()[_0x27de18(0xa17)](_0x488b05=>{var _0x448eac=_0x27de18;try{_0x164142[_0x448eac(0x2f9)][_0x3c9bd2][_0x448eac(0x2b1)]===!![]&&(_0x488b05[_0x448eac(0x79e)]==_0x448eac(0x33f)&&(_0x164142[_0x448eac(0x2f9)][_0x3c9bd2][_0x448eac(0x5f2)](_0x488b05,_0x2d3f11),warnlog(_0x448eac(0x860))));}catch(_0x2cd00f){errorlog(_0x2cd00f);}}),log(_0x27de18(0x213));_0x2d3f11[_0x27de18(0x96b)]()[_0x27de18(0x7e9)]&&(_0x164142[_0x27de18(0x414)](),log(_0x27de18(0x288)),_0x164142[_0x27de18(0x2f9)][_0x3c9bd2][_0x27de18(0x8fa)]===!![]&&(warnlog(_0x27de18(0x83b)),setTimeout(_0x164142[_0x27de18(0xa6e)],0x3e8,_0x3c9bd2,0x7d00,0x0)),_0x164142[_0x27de18(0x2f9)][_0x3c9bd2][_0x27de18(0x25a)]===!![]&&setTimeout(_0x164142[_0x27de18(0x8b2)],0x3e8,_0x3c9bd2));if(_0x164142[_0x27de18(0x2f9)][_0x3c9bd2][_0x27de18(0x82d)])setTimeout(_0x164142[_0x27de18(0x82d)],0x3e8,_0x3c9bd2,_0x164142[_0x27de18(0x2f9)][_0x3c9bd2]['degradationPreference']);else{if(_0x164142['contentHint']&&SafariVersion){if(_0x164142[_0x27de18(0x9dc)]=='detail')setTimeout(_0x164142[_0x27de18(0x82d)],0x3e8,_0x3c9bd2,'maintain-resolution');else _0x164142[_0x27de18(0x9dc)]==_0x27de18(0x5a7)&&setTimeout(_0x164142[_0x27de18(0x82d)],0x3e8,_0x3c9bd2,'maintain-framerate');}}if(iOS||iPad){if(SafariVersion&&SafariVersion<=0xd){}else _0x2ac2de&&(setTimeout(function(_0x54ef94){var _0x1f09cd=_0x27de18;_0x164142[_0x1f09cd(0x75e)](_0x54ef94,null);},0x7d0,_0x3c9bd2),setTimeout(function(_0x5a09a8){var _0x3c2cac=_0x27de18,_0x57e31=0x64;_0x164142[_0x3c2cac(0x2f9)][_0x5a09a8][_0x3c2cac(0x8b9)]&&(_0x57e31=_0x164142[_0x3c2cac(0x2f9)][_0x5a09a8]['scale']),_0x164142[_0x3c2cac(0x75e)](_0x5a09a8,_0x57e31);},0x1388,_0x3c9bd2));}};function _0x2b4551(_0x164a92,_0x3ac026,_0x5ac126){var _0x462819=_0x10444e,_0x108d5c=new Blob([_0x164a92],{'type':_0x462819(0xa1b)}),_0x162015=new FileReader();_0x162015['onload']=function(_0x399b86){var _0x48431a=_0x462819;_0x5ac126(_0x399b86[_0x48431a(0x247)][_0x48431a(0x758)]);},_0x162015['readAsText'](_0x108d5c,_0x3ac026);}_0x164142[_0x10444e(0x98c)]=function(_0xc07664){var _0x398fee=_0x10444e;log(_0x398fee(0x540));if(!_0x164142[_0x398fee(0x749)]||!_0x164142['hostedFiles'][_0x398fee(0x7e9)])return;var _0x126f7c={},_0x4852ea=[];for(var _0x5ed6e0=0x0;_0x5ed6e0<_0x164142[_0x398fee(0x749)][_0x398fee(0x7e9)];_0x5ed6e0++){(_0x164142[_0x398fee(0x749)][_0x5ed6e0][_0x398fee(0x932)]===![]||_0x164142['hostedFiles'][_0x5ed6e0][_0x398fee(0x932)]===_0xc07664)&&_0x4852ea['push']({'id':_0x164142[_0x398fee(0x749)][_0x5ed6e0]['id'],'name':_0x164142[_0x398fee(0x749)][_0x5ed6e0][_0x398fee(0x50f)],'size':_0x164142[_0x398fee(0x749)][_0x5ed6e0][_0x398fee(0x4cc)]});}_0x126f7c[_0x398fee(0x867)]=_0x4852ea;if(_0xc07664 in _0x164142[_0x398fee(0x2f9)])_0x164142[_0x398fee(0xa46)](_0x126f7c,_0xc07664);else _0xc07664 in _0x164142[_0x398fee(0x207)]&&_0x164142[_0x398fee(0x7a9)](_0x126f7c,_0xc07664);log(_0x126f7c);},_0x164142['pcs'][_0xf4df9][_0x10444e(0x8db)]=function(_0x902799){var _0x10e8f9=_0x10444e;if(!(_0xf4df9 in _0x164142['pcs']))return;try{if(this[_0x10e8f9(0x8df)]==='closed')log('ICE\x20closed?');else{if(this[_0x10e8f9(0x8df)]==='disconnected')log(_0x10e8f9(0xa03));else{if(this[_0x10e8f9(0x8df)]==='failed')log(_0x10e8f9(0x961)),_0x164142[_0x10e8f9(0x2f9)][_0xf4df9][_0x10e8f9(0x4b0)]?_0x164142[_0x10e8f9(0x2f9)][_0xf4df9][_0x10e8f9(0x4b0)]():_0x164142[_0x10e8f9(0x3c0)](_0xf4df9,!![]);else{if(this[_0x10e8f9(0x8df)]===_0x10e8f9(0x53c)){log(_0x10e8f9(0x9da));var _0x476ff6=getSenders2(_0xf4df9);_0x476ff6[_0x10e8f9(0xa17)](_0x418078=>{var _0x357d7d=_0x10e8f9;if(!_0x418078['track'])return;if(_0x418078[_0x357d7d(0x79c)][_0x357d7d(0x79e)]===_0x357d7d(0x513)){_0x164142[_0x357d7d(0x2f9)][_0xf4df9]['videoCodecs']=_0x418078['getParameters']()['codecs'],log(_0x164142[_0x357d7d(0x2f9)][_0xf4df9][_0x357d7d(0x391)]);return;}else{if(_0x418078[_0x357d7d(0x79c)][_0x357d7d(0x79e)]===_0x357d7d(0x33f)){_0x164142[_0x357d7d(0x2f9)][_0xf4df9][_0x357d7d(0x216)]=_0x418078[_0x357d7d(0x4e6)]()['codecs'],log(_0x164142[_0x357d7d(0x2f9)][_0xf4df9]['audioCodecs']);return;}}});}else log(this[_0x10e8f9(0x8df)]);}}}}catch(_0x353ba9){errorlog(_0x353ba9);}},_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x6f3)]=function(_0x44c969){var _0x4cfa39=_0x10444e;switch(_0x164142[_0x4cfa39(0x2f9)][_0xf4df9][_0x4cfa39(0x431)]){case _0x4cfa39(0x53c):log(_0x4cfa39(0x6cb)),clearTimeout(_0x164142[_0x4cfa39(0x2f9)][_0xf4df9]['closeTimeout']);if(_0x164142[_0x4cfa39(0x4a7)]){if(_0x164142['ws'][_0x4cfa39(0x464)]!==0x1){_0x164142['ws'][_0x4cfa39(0x4f8)]();break;}_0x164142['ws']['close'](),setTimeout(function(){var _0x7db800=_0x4cfa39;_0x164142[_0x7db800(0x56f)]!=!![]&&warnUser(_0x7db800(0x61d));},0x1);}break;case _0x4cfa39(0x48e):log(_0x4cfa39(0x5ec)),clearTimeout(_0x164142[_0x4cfa39(0x2f9)][_0xf4df9][_0x4cfa39(0x254)]),_0x164142[_0x4cfa39(0x2f9)][_0xf4df9][_0x4cfa39(0x254)]=setTimeout(function(_0x2df760){var _0x19eba2=_0x4cfa39;_0x2df760 in _0x164142[_0x19eba2(0x2f9)]?(warnlog(_0x19eba2(0x612)),log(_0x19eba2(0x625)),_0x164142[_0x19eba2(0x9fc)](_0x2df760)):errorlog('\x20---\x20PC\x20TIMED\x20OUT\x20and\x20already\x20deleted.\x20shouldn\x27t\x20happen');},0x2710,_0xf4df9);break;case _0x4cfa39(0x858):warnlog('Setting\x20pc\x20connection\x20timeout\x20in\x205\x20seconds\x20??'),clearTimeout(_0x164142[_0x4cfa39(0x2f9)][_0xf4df9][_0x4cfa39(0x254)]),_0x164142[_0x4cfa39(0x2f9)][_0xf4df9][_0x4cfa39(0x254)]=setTimeout(function(_0x2f203c){var _0x464e75=_0x4cfa39;_0x2f203c in _0x164142[_0x464e75(0x2f9)]?(warnlog(_0x464e75(0x612)),log(_0x464e75(0x6a1)),_0x164142[_0x464e75(0x9fc)](_0x2f203c)):errorlog(_0x464e75(0x383));},0xbb8,_0xf4df9);break;case _0x4cfa39(0x6c8):warnlog(_0x4cfa39(0x289)),log(_0x4cfa39(0x971)),_0x164142[_0x4cfa39(0x9fc)](_0xf4df9);break;default:log(_0x4cfa39(0x20c)+_0x164142[_0x4cfa39(0x2f9)][_0xf4df9][_0x4cfa39(0x431)]),clearTimeout(_0x164142[_0x4cfa39(0x2f9)][_0xf4df9][_0x4cfa39(0x254)]);break;}},_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x935)]=function(_0x470947){var _0x2dee75=_0x10444e;warnlog(_0x2dee75(0x3ce)),log(_0x2dee75(0x70f)),_0x164142[_0x2dee75(0x9fc)](_0xf4df9);},_0x164142[_0x10444e(0x2f9)][_0xf4df9][_0x10444e(0x3ac)]=function _0x593d00(){var _0x149e96=_0x10444e;log(_0x149e96(0x380));};},_0x164142[_0x204338(0x2cf)]=function(_0x5cebda){var _0x39248f=_0x204338;if(_0x5cebda[_0x39248f(0x40e)][_0x39248f(0x773)]=='offer')_0x164142[_0x39248f(0x3d0)](_0x5cebda),_0x164142['connectPeer'](_0x5cebda);else try{if(!(_0x5cebda[_0x39248f(0x2ef)]in _0x164142[_0x39248f(0x2f9)]))return;var _0x14a4fb=_0x164142[_0x39248f(0x6ba)];if(_0x164142['mobile']&&_0x164142[_0x39248f(0x2f9)][_0x5cebda[_0x39248f(0x2ef)]][_0x39248f(0x3b2)]==!![]&&_0x164142['pcs'][_0x5cebda['UUID']][_0x39248f(0x953)]==![]){if(_0x14a4fb===![]||_0x14a4fb>_0x164142[_0x39248f(0x9b2)]){var _0x15e7c2=Object[_0x39248f(0x2ec)](_0x164142[_0x39248f(0x2f9)])[_0x39248f(0x7e9)];if(_0x164142[_0x39248f(0x536)])_0x14a4fb=_0x164142[_0x39248f(0x9b2)];else{if(_0x15e7c2>0x4)_0x14a4fb=_0x164142['lowMobileBitrate'];else(iOS||iPad)&&SafariVersion&&SafariVersion<=0xd?_0x14a4fb=_0x164142['lowMobileBitrate']:_0x14a4fb=_0x164142[_0x39248f(0x9b2)];}}(iOS||iPad)&&(_0x164142['pcs'][_0x5cebda[_0x39248f(0x2ef)]][_0x39248f(0xa54)]=_0x14a4fb,_0x5cebda[_0x39248f(0x40e)][_0x39248f(0x2ee)]=CodecsHandler[_0x39248f(0x87e)](_0x5cebda[_0x39248f(0x40e)][_0x39248f(0x2ee)],'vp8'),_0x5cebda['description'][_0x39248f(0x2ee)]=CodecsHandler[_0x39248f(0x77f)](_0x5cebda[_0x39248f(0x40e)][_0x39248f(0x2ee)],{'min':parseInt(_0x14a4fb/0x2)||0x1,'max':_0x14a4fb}),_0x14a4fb=![]);}else{if(_0x164142[_0x39248f(0x2f9)][_0x5cebda['UUID']][_0x39248f(0x3b2)]==!![])_0x14a4fb!==![]?_0x164142[_0x39248f(0x51b)]!==![]&&(_0x164142[_0x39248f(0x51b)]<_0x14a4fb&&(_0x14a4fb=_0x164142[_0x39248f(0x51b)])):_0x14a4fb=_0x164142['roombitrate'],(iOS||iPad)&&_0x164142[_0x39248f(0x2f9)][_0x5cebda[_0x39248f(0x2ef)]][_0x39248f(0x953)]&&(_0x164142[_0x39248f(0x2f9)][_0x5cebda['UUID']][_0x39248f(0x64f)]=!![]);else{if(iOS||iPad){var _0xbb7fd5=0x0;for(var _0x233b37 in _0x164142[_0x39248f(0x2f9)]){_0x5cebda[_0x39248f(0x2ef)]!==_0x233b37&&(_0x164142[_0x39248f(0x2f9)][_0x233b37][_0x39248f(0x64f)]===!![]&&(_0xbb7fd5+=0x1));}if(_0xbb7fd5>=0x3){if(_0x164142['pcs'][_0x5cebda[_0x39248f(0x2ef)]][_0x39248f(0x953)])_0x164142[_0x39248f(0x2f9)][_0x5cebda[_0x39248f(0x2ef)]][_0x39248f(0x64f)]=!![],_0x164142[_0x39248f(0x2f9)][_0x5cebda[_0x39248f(0x2ef)]][_0x39248f(0x255)]&&_0x164142[_0x39248f(0x2f9)][_0x5cebda['UUID']][_0x39248f(0x255)]===_0x39248f(0x728)&&(_0x5cebda[_0x39248f(0x40e)][_0x39248f(0x2ee)]=CodecsHandler[_0x39248f(0x87e)](_0x5cebda[_0x39248f(0x40e)][_0x39248f(0x2ee)],_0x39248f(0x728)),log(_0x39248f(0x7ae)+_0x164142['pcs'][_0x5cebda[_0x39248f(0x2ef)]]['preferVideoCodec']+'\x20as\x20preferred\x20codec\x20by\x20viewer\x20via\x20API'));else _0x164142[_0x39248f(0x2f9)][_0x5cebda['UUID']][_0x39248f(0x255)]&&_0x164142[_0x39248f(0x2f9)][_0x5cebda[_0x39248f(0x2ef)]][_0x39248f(0x255)]===_0x39248f(0x348)?(_0x5cebda[_0x39248f(0x40e)]['sdp']=CodecsHandler[_0x39248f(0x87e)](_0x5cebda[_0x39248f(0x40e)][_0x39248f(0x2ee)],_0x39248f(0x348)),log(_0x39248f(0x7ae)+_0x164142[_0x39248f(0x2f9)][_0x5cebda[_0x39248f(0x2ef)]][_0x39248f(0x255)]+_0x39248f(0x34d)),_0x164142[_0x39248f(0x2f9)][_0x5cebda[_0x39248f(0x2ef)]][_0x39248f(0x64f)]=![]):(_0x5cebda[_0x39248f(0x40e)]['sdp']=CodecsHandler[_0x39248f(0x87e)](_0x5cebda['description'][_0x39248f(0x2ee)],_0x39248f(0x2fc)),log(_0x39248f(0x553)),_0x164142[_0x39248f(0x2f9)][_0x5cebda[_0x39248f(0x2ef)]][_0x39248f(0x64f)]=![]);}else _0x164142[_0x39248f(0x2f9)][_0x5cebda[_0x39248f(0x2ef)]][_0x39248f(0x255)]&&_0x164142['pcs'][_0x5cebda[_0x39248f(0x2ef)]][_0x39248f(0x255)]!==_0x39248f(0x728)?_0x164142['pcs'][_0x5cebda[_0x39248f(0x2ef)]][_0x39248f(0x255)]==='vp9'||_0x164142['pcs'][_0x5cebda[_0x39248f(0x2ef)]][_0x39248f(0x255)]===_0x39248f(0x2fc)?(_0x5cebda[_0x39248f(0x40e)]['sdp']=CodecsHandler[_0x39248f(0x87e)](_0x5cebda['description'][_0x39248f(0x2ee)],_0x164142[_0x39248f(0x2f9)][_0x5cebda[_0x39248f(0x2ef)]][_0x39248f(0x255)]),log('Trying\x20to\x20set\x20'+_0x164142[_0x39248f(0x2f9)][_0x5cebda['UUID']][_0x39248f(0x255)]+_0x39248f(0x34d)),_0x164142[_0x39248f(0x2f9)][_0x5cebda[_0x39248f(0x2ef)]][_0x39248f(0x64f)]=![]):_0x164142[_0x39248f(0x2f9)][_0x5cebda['UUID']][_0x39248f(0x64f)]=!![]:(_0x164142['pcs'][_0x5cebda[_0x39248f(0x2ef)]]['encoder']=!![],_0x164142[_0x39248f(0x2f9)][_0x5cebda[_0x39248f(0x2ef)]]['preferVideoCodec']&&_0x164142['pcs'][_0x5cebda[_0x39248f(0x2ef)]]['preferVideoCodec']===_0x39248f(0x728)&&(_0x5cebda[_0x39248f(0x40e)][_0x39248f(0x2ee)]=CodecsHandler[_0x39248f(0x87e)](_0x5cebda[_0x39248f(0x40e)]['sdp'],_0x39248f(0x728)),log(_0x39248f(0x7ae)+_0x164142[_0x39248f(0x2f9)][_0x5cebda[_0x39248f(0x2ef)]][_0x39248f(0x255)]+'\x20as\x20preferred\x20codec\x20by\x20viewer\x20via\x20API')));}else _0x164142['pcs'][_0x5cebda[_0x39248f(0x2ef)]][_0x39248f(0x255)]!==![]&&(_0x5cebda[_0x39248f(0x40e)]['sdp']=CodecsHandler[_0x39248f(0x87e)](_0x5cebda[_0x39248f(0x40e)][_0x39248f(0x2ee)],_0x164142[_0x39248f(0x2f9)][_0x5cebda['UUID']]['preferVideoCodec']),log(_0x39248f(0x7ae)+_0x164142['pcs'][_0x5cebda[_0x39248f(0x2ef)]][_0x39248f(0x255)]+'\x20as\x20preferred\x20codec\x20by\x20viewer\x20via\x20API'));}}if(_0x14a4fb){var _0x2d0a65=CodecsHandler[_0x39248f(0x7c9)](_0x5cebda[_0x39248f(0x40e)][_0x39248f(0x2ee)]);log(_0x39248f(0x2a2)+_0x2d0a65);if(_0x2d0a65!==![]&&_0x2d0a65>_0x14a4fb){var _0x1c39a9=CodecsHandler[_0x39248f(0x47b)](_0x5cebda[_0x39248f(0x40e)]['sdp'])||0x0;_0x5cebda[_0x39248f(0x40e)][_0x39248f(0x2ee)]=CodecsHandler[_0x39248f(0x77f)](_0x5cebda[_0x39248f(0x40e)][_0x39248f(0x2ee)],{'min':parseInt(_0x14a4fb/0xa)||0x1,'max':parseInt(_0x14a4fb+_0x1c39a9/0x400)}),_0x164142[_0x39248f(0x2f9)][_0x5cebda[_0x39248f(0x2ef)]][_0x39248f(0xa54)]=_0x14a4fb;}else{if(_0x2d0a65===![]){var _0x1c39a9=CodecsHandler['getOpusBitrate'](_0x5cebda[_0x39248f(0x40e)]['sdp'])||0x0;_0x5cebda[_0x39248f(0x40e)][_0x39248f(0x2ee)]=CodecsHandler[_0x39248f(0x77f)](_0x5cebda['description']['sdp'],{'min':parseInt(_0x14a4fb/0xa)||0x1,'max':parseInt(_0x14a4fb+_0x1c39a9/0x400)});if(_0x164142[_0x39248f(0x515)]&&_0x164142[_0x39248f(0x515)]>_0x14a4fb)_0x164142[_0x39248f(0x2f9)][_0x5cebda[_0x39248f(0x2ef)]][_0x39248f(0xa54)]=_0x14a4fb;else _0x164142[_0x39248f(0x515)]?_0x164142['pcs'][_0x5cebda['UUID']][_0x39248f(0xa54)]=outboundVideoBitrate:_0x164142[_0x39248f(0x2f9)][_0x5cebda[_0x39248f(0x2ef)]][_0x39248f(0x3e2)]=0x9c4;}else _0x164142[_0x39248f(0x2f9)][_0x5cebda['UUID']][_0x39248f(0xa54)]=_0x2d0a65;}}else{if(_0x164142[_0x39248f(0x515)]!==![]){var _0x2d0a65=CodecsHandler[_0x39248f(0x7c9)](_0x5cebda['description']['sdp']);log(_0x39248f(0x96e)+_0x2d0a65);if(_0x2d0a65===![]){var _0x1c39a9=CodecsHandler['getOpusBitrate'](_0x5cebda[_0x39248f(0x40e)]['sdp'])||0x0;_0x5cebda['description'][_0x39248f(0x2ee)]=CodecsHandler[_0x39248f(0x77f)](_0x5cebda[_0x39248f(0x40e)]['sdp'],{'min':parseInt(_0x164142[_0x39248f(0x515)]/0xa)||0x1,'max':parseInt(_0x164142[_0x39248f(0x515)]+_0x1c39a9/0x400)});}else _0x164142[_0x39248f(0x2f9)][_0x5cebda[_0x39248f(0x2ef)]]['setBitrate']===![]&&(_0x164142['pcs'][_0x5cebda['UUID']][_0x39248f(0xa54)]=_0x2d0a65);}else _0x164142[_0x39248f(0x2f9)][_0x5cebda[_0x39248f(0x2ef)]][_0x39248f(0xa54)]===![]&&(_0x164142['pcs'][_0x5cebda[_0x39248f(0x2ef)]][_0x39248f(0xa54)]=CodecsHandler[_0x39248f(0x7c9)](_0x5cebda[_0x39248f(0x40e)][_0x39248f(0x2ee)]),log(_0x39248f(0x37b)+_0x164142['pcs'][_0x5cebda['UUID']][_0x39248f(0xa54)]));}_0x164142[_0x39248f(0x6e9)]&&(_0x5cebda[_0x39248f(0x40e)][_0x39248f(0x2ee)]=CodecsHandler['setOpusAttributes'](_0x5cebda[_0x39248f(0x40e)][_0x39248f(0x2ee)],{'maxaveragebitrate':_0x164142[_0x39248f(0x6e9)]*0x400,'cbr':_0x164142[_0x39248f(0x4e4)]}));if(_0x39248f(0x67a)in _0x5cebda&&_0x5cebda[_0x39248f(0x67a)]!=_0x164142['pcs'][_0x5cebda[_0x39248f(0x2ef)]][_0x39248f(0x67a)]){errorlog(_0x39248f(0xa0e));return;}_0x164142[_0x39248f(0x2f9)][_0x5cebda['UUID']][_0x39248f(0x434)](_0x5cebda['description'])[_0x39248f(0x63c)]()[_0x39248f(0x341)](errorlog);}catch(_0x5ef49e){errorlog(_0x5ef49e);}},_0x164142[_0x204338(0xa86)]=function(_0x2e28e3){var _0x221ab1=_0x204338;_0x164142[_0x221ab1(0x4c8)]&&_0x221ab1(0x899)in _0x2e28e3?_0x164142['decryptMessage'](_0x2e28e3[_0x221ab1(0x40e)],_0x2e28e3['vector'])[_0x221ab1(0x63c)](function(_0x5d0a98){var _0x281e84=_0x221ab1;_0x2e28e3['description']=JSON[_0x281e84(0x90a)](_0x5d0a98),_0x164142[_0x281e84(0x2cf)](_0x2e28e3);}):_0x164142['processDescription2'](_0x2e28e3);},_0x164142['processIce']=function(_0x38db18){var _0x5111cd=_0x204338;_0x164142[_0x5111cd(0x4c8)]&&_0x5111cd(0x899)in _0x38db18?_0x164142[_0x5111cd(0x957)](_0x38db18[_0x5111cd(0x408)],_0x38db18[_0x5111cd(0x899)])['then'](function(_0x31b346){var _0x5cd193=_0x5111cd;_0x38db18[_0x5cd193(0x408)]=JSON[_0x5cd193(0x90a)](_0x31b346),_0x164142[_0x5cd193(0x8e5)](_0x38db18);}):_0x164142['processIce2'](_0x38db18);},_0x164142[_0x204338(0x8e5)]=function(_0x1ad250){var _0x281bea=_0x204338;try{if(_0x164142['icefilter']){if(_0x1ad250['candidate']['candidate'][_0x281bea(0x1f3)](_0x164142[_0x281bea(0xa4f)])===-0x1){log(_0x281bea(0x3eb)),log(_0x1ad250['candidate']);return;}else log(_0x281bea(0x876)),log(_0x1ad250[_0x281bea(0x408)]);}}catch(_0x5356c8){errorlog(_0x5356c8);}if(_0x1ad250[_0x281bea(0x408)]&&'candidate'in _0x1ad250['candidate']&&_0x1ad250[_0x281bea(0x408)][_0x281bea(0x408)]=='')return;if(_0x1ad250['UUID']in _0x164142[_0x281bea(0x2f9)]&&_0x1ad250[_0x281bea(0x773)]==_0x281bea(0x538)){log(_0x281bea(0x7c3));if(_0x281bea(0x67a)in _0x1ad250&&_0x164142[_0x281bea(0x2f9)][_0x1ad250[_0x281bea(0x2ef)]][_0x281bea(0x67a)]!=_0x1ad250[_0x281bea(0x67a)]){errorlog(_0x281bea(0x89f));return;}_0x164142[_0x281bea(0x2f9)][_0x1ad250[_0x281bea(0x2ef)]][_0x281bea(0x2a6)](_0x1ad250[_0x281bea(0x408)])['then']()[_0x281bea(0x341)](function(_0x5cd36d){errorlog(_0x5cd36d),errorlog(_0x1ad250);});}else{if(_0x1ad250[_0x281bea(0x2ef)]in _0x164142[_0x281bea(0x207)]&&_0x1ad250[_0x281bea(0x773)]==_0x281bea(0x7f3)){log(_0x281bea(0x82e));if('session'in _0x1ad250&&_0x164142['rpcs'][_0x1ad250['UUID']]['session']!=_0x1ad250[_0x281bea(0x67a)]){errorlog(_0x281bea(0x89f));return;}if(_0x164142[_0x281bea(0x207)][_0x1ad250[_0x281bea(0x2ef)]]===null)return;_0x164142[_0x281bea(0x207)][_0x1ad250[_0x281bea(0x2ef)]][_0x281bea(0x2a6)](_0x1ad250['candidate'])[_0x281bea(0x63c)]()[_0x281bea(0x341)](function(_0x59a4aa){errorlog(_0x59a4aa),errorlog(_0x1ad250);});}else warnlog(_0x1ad250),warnlog(_0x281bea(0x58d));}},_0x164142[_0x204338(0x4f5)]=function(_0x53cccb){var _0x1b1dd1=_0x204338;if(_0x164142[_0x1b1dd1(0x4c8)]&&'vector'in _0x53cccb)_0x164142['decryptMessage'](_0x53cccb[_0x1b1dd1(0x59a)],_0x53cccb[_0x1b1dd1(0x899)])['then'](function(_0x299788){var _0x5938b4=_0x1b1dd1;_0x53cccb[_0x5938b4(0x59a)]=JSON[_0x5938b4(0x90a)](_0x299788);var _0x3d85e5={};_0x3d85e5['UUID']=_0x53cccb[_0x5938b4(0x2ef)],_0x3d85e5['type']=_0x53cccb['type'];for(var _0x5c83ba=0x0;_0x5c83ba<_0x53cccb[_0x5938b4(0x59a)][_0x5938b4(0x7e9)];_0x5c83ba++){_0x3d85e5[_0x5938b4(0x408)]=_0x53cccb['candidates'][_0x5c83ba],_0x164142[_0x5938b4(0x8e5)](_0x3d85e5);}});else{var _0x5dbeb0={};_0x5dbeb0[_0x1b1dd1(0x2ef)]=_0x53cccb[_0x1b1dd1(0x2ef)],_0x5dbeb0[_0x1b1dd1(0x773)]=_0x53cccb[_0x1b1dd1(0x773)];for(var _0x323b1f=0x0;_0x323b1f<_0x53cccb[_0x1b1dd1(0x59a)][_0x1b1dd1(0x7e9)];_0x323b1f++){_0x5dbeb0[_0x1b1dd1(0x408)]=_0x53cccb[_0x1b1dd1(0x59a)][_0x323b1f],_0x164142[_0x1b1dd1(0x8e5)](_0x5dbeb0);}}},_0x164142[_0x204338(0x344)]=function(_0x3521fd){var _0xce4f9d=_0x204338;_0xce4f9d(0x4c0)in _0x3521fd&&(_0x164142['rpcs'][_0x3521fd[_0xce4f9d(0x2ef)]]['screenIndexes']=_0x3521fd[_0xce4f9d(0x4c0)],log(_0xce4f9d(0xa14)),log(_0x3521fd[_0xce4f9d(0x4c0)])),_0x164142[_0xce4f9d(0x207)][_0x3521fd[_0xce4f9d(0x2ef)]]['setRemoteDescription'](_0x3521fd['description'])[_0xce4f9d(0x63c)](function(){var _0x1daf7f=_0xce4f9d;if(_0x164142[_0x1daf7f(0x207)][_0x3521fd[_0x1daf7f(0x2ef)]][_0x1daf7f(0xa56)][_0x1daf7f(0x773)]==='offer')_0x164142[_0x1daf7f(0x207)][_0x3521fd[_0x1daf7f(0x2ef)]][_0x1daf7f(0x747)]()['then'](function(_0x3173c8){var _0x8d9930=_0x1daf7f;log(_0x8d9930(0x449));if(!_0x164142[_0x8d9930(0x752)]&&_0x164142['stereo']==0x5)_0x3173c8[_0x8d9930(0x2ee)]=CodecsHandler[_0x8d9930(0x989)](_0x3173c8[_0x8d9930(0x2ee)],{'stereo':0x1,'maxaveragebitrate':(_0x164142[_0x8d9930(0x58b)]||0x100)*0x400,'cbr':_0x164142[_0x8d9930(0x4e4)],'useinbandfec':0x1,'maxptime':_0x164142['maxptime'],'minptime':_0x164142[_0x8d9930(0x57e)],'ptime':_0x164142[_0x8d9930(0x52f)]}),log('stereo\x20inbound\x20enabled');else{if(_0x164142['mono']&&Firefox)_0x164142[_0x8d9930(0x58b)]?_0x3173c8[_0x8d9930(0x2ee)]=CodecsHandler[_0x8d9930(0x989)](_0x3173c8[_0x8d9930(0x2ee)],{'stereo':0x0,'maxaveragebitrate':_0x164142['audiobitrate']*0x400,'cbr':_0x164142[_0x8d9930(0x4e4)],'useinbandfec':0x1,'maxptime':_0x164142[_0x8d9930(0xa76)],'minptime':_0x164142[_0x8d9930(0x57e)],'ptime':_0x164142[_0x8d9930(0x52f)]}):_0x3173c8[_0x8d9930(0x2ee)]=CodecsHandler['setOpusAttributes'](_0x3173c8[_0x8d9930(0x2ee)],{'stereo':0x0});else{if(_0x164142[_0x8d9930(0x4ba)]==0x1||_0x164142[_0x8d9930(0x4ba)]==0x2||_0x164142[_0x8d9930(0x4ba)]==0x5)_0x3173c8[_0x8d9930(0x2ee)]=CodecsHandler['setOpusAttributes'](_0x3173c8[_0x8d9930(0x2ee)],{'stereo':0x1,'maxaveragebitrate':(_0x164142[_0x8d9930(0x58b)]||0x100)*0x400,'cbr':_0x164142[_0x8d9930(0x4e4)],'useinbandfec':0x1,'maxptime':_0x164142[_0x8d9930(0xa76)],'minptime':_0x164142[_0x8d9930(0x57e)],'ptime':_0x164142[_0x8d9930(0x52f)]}),log(_0x8d9930(0x786));else{if(_0x164142['stereo']==0x4)_0x3173c8[_0x8d9930(0x2ee)]=CodecsHandler[_0x8d9930(0x989)](_0x3173c8[_0x8d9930(0x2ee)],{'stereo':0x2,'maxaveragebitrate':(_0x164142[_0x8d9930(0x58b)]||0x100)*0x400,'cbr':_0x164142[_0x8d9930(0x4e4)],'useinbandfec':0x1,'maxptime':_0x164142[_0x8d9930(0xa76)],'minptime':_0x164142['minptime'],'ptime':_0x164142[_0x8d9930(0x52f)]});else _0x164142[_0x8d9930(0x58b)]&&(_0x3173c8[_0x8d9930(0x2ee)]=CodecsHandler[_0x8d9930(0x989)](_0x3173c8[_0x8d9930(0x2ee)],{'maxaveragebitrate':_0x164142['audiobitrate']*0x400,'cbr':_0x164142[_0x8d9930(0x4e4)],'useinbandfec':0x1,'maxptime':_0x164142[_0x8d9930(0xa76)],'minptime':_0x164142[_0x8d9930(0x57e)],'ptime':_0x164142[_0x8d9930(0x52f)]}));}}}_0x164142[_0x8d9930(0x7af)]&&(_0x3173c8[_0x8d9930(0x2ee)]=CodecsHandler[_0x8d9930(0x87e)](_0x3173c8[_0x8d9930(0x2ee)],_0x164142[_0x8d9930(0x7af)]));_0x164142[_0x8d9930(0x71b)]&&(_0x3173c8[_0x8d9930(0x2ee)]=_0x3173c8[_0x8d9930(0x2ee)][_0x8d9930(0x276)](/42e01f/gi,_0x164142[_0x8d9930(0x71b)]),_0x3173c8[_0x8d9930(0x2ee)]=_0x3173c8['sdp'][_0x8d9930(0x276)](/42001f/gi,_0x164142[_0x8d9930(0x71b)]),_0x3173c8[_0x8d9930(0x2ee)]=_0x3173c8[_0x8d9930(0x2ee)]['replace'](/420029/gi,_0x164142['h264profile']),_0x3173c8[_0x8d9930(0x2ee)]=_0x3173c8['sdp']['replace'](/42a01e/gi,_0x164142['h264profile']),_0x3173c8[_0x8d9930(0x2ee)]=_0x3173c8[_0x8d9930(0x2ee)]['replace'](/42a014/gi,_0x164142[_0x8d9930(0x71b)]),_0x3173c8[_0x8d9930(0x2ee)]=_0x3173c8['sdp'][_0x8d9930(0x276)](/42a00b/gi,_0x164142[_0x8d9930(0x71b)]),_0x3173c8[_0x8d9930(0x2ee)]=_0x3173c8[_0x8d9930(0x2ee)][_0x8d9930(0x276)](/640c1f/gi,_0x164142[_0x8d9930(0x71b)]));_0x164142[_0x8d9930(0xa50)]&&(log(_0x3173c8[_0x8d9930(0x2ee)]),_0x3173c8['sdp']=CodecsHandler[_0x8d9930(0x1f6)](_0x3173c8[_0x8d9930(0x2ee)]));_0x164142[_0x8d9930(0x660)]&&(_0x3173c8[_0x8d9930(0x2ee)]=CodecsHandler[_0x8d9930(0x8b1)](_0x3173c8[_0x8d9930(0x2ee)]));_0x164142[_0x8d9930(0x8b8)]&&(_0x3173c8[_0x8d9930(0x2ee)]=CodecsHandler['disableREMB'](_0x3173c8['sdp']));if(_0x164142[_0x8d9930(0x207)][_0x3521fd[_0x8d9930(0x2ef)]]['manualBandwidth'])log(_0x8d9930(0x2bb)),_0x3173c8[_0x8d9930(0x2ee)]=_0x1a8f3a(_0x3173c8['sdp'],_0x164142[_0x8d9930(0x207)][_0x3521fd[_0x8d9930(0x2ef)]][_0x8d9930(0x7a7)]);else _0x164142[_0x8d9930(0x6b0)]&&(log(_0x8d9930(0x2bb)),_0x3173c8[_0x8d9930(0x2ee)]=_0x1a8f3a(_0x3173c8['sdp'],_0x164142[_0x8d9930(0x6b0)]));return _0x164142[_0x8d9930(0x207)][_0x3521fd[_0x8d9930(0x2ef)]][_0x8d9930(0x2a5)](_0x3173c8);})['then'](function _0x2a1a38(){var _0x33cc55=_0x1daf7f;log(_0x33cc55(0x42e));var _0xeab07={};_0xeab07[_0x33cc55(0x2ef)]=_0x3521fd['UUID'],_0xeab07[_0x33cc55(0x40e)]=_0x164142['rpcs'][_0x3521fd[_0x33cc55(0x2ef)]]['localDescription'],_0xeab07[_0x33cc55(0x67a)]=_0x164142['rpcs'][_0x3521fd[_0x33cc55(0x2ef)]][_0x33cc55(0x67a)],_0x164142['password']?_0x164142[_0x33cc55(0x9b8)](JSON[_0x33cc55(0x776)](_0xeab07[_0x33cc55(0x40e)]))[_0x33cc55(0x63c)](function(_0x5e0760){var _0x363537=_0x33cc55;_0xeab07[_0x363537(0x40e)]=_0x5e0760[0x0],_0xeab07['vector']=_0x5e0760[0x1],_0x164142['anyrequest'](_0xeab07);})[_0x33cc55(0x341)](errorlog):_0x164142[_0x33cc55(0x3cd)](_0xeab07);})[_0x1daf7f(0x341)](errorlog);else _0x164142[_0x1daf7f(0x207)][_0x3521fd[_0x1daf7f(0x2ef)]][_0x1daf7f(0xa56)][_0x1daf7f(0x773)]===_0x1daf7f(0x615)&&errorlog(_0x1daf7f(0x2e8));})[_0xce4f9d(0x341)](errorlog);},_0x164142['getLocalStream']=function(){var _0x202fd7=_0x204338;if(_0x164142[_0x202fd7(0x570)][_0x202fd7(0x2f4)])return _0x164142['videoElement'][_0x202fd7(0x2f4)];else return _0x164142['videoElement'][_0x202fd7(0x811)]&&_0x164142[_0x202fd7(0x307)]?_0x164142[_0x202fd7(0x307)]:(log(_0x202fd7(0x7cc)),checkBasicStreamsExist(),_0x164142[_0x202fd7(0x570)][_0x202fd7(0x2f4)]);};var _0x57994e={},_0x1e14ad=![],_0x3218b4=[];_0x164142['sendFile']=function(_0x5c2895,_0x48bb0e){var _0x593000=_0x204338;log('SENDING\x20FILE:\x20'+_0x48bb0e+'\x20'+_0x5c2895);var _0x2feaaa=new FileReader(),_0x28fe78=![];for(var _0x3f1899=0x0;_0x3f1899<_0x164142[_0x593000(0x749)]['length'];_0x3f1899++){if(_0x164142[_0x593000(0x749)][_0x3f1899]['id']===_0x48bb0e){_0x28fe78=_0x3f1899;break;}}if(_0x28fe78===![]){warnlog('requested\x20file\x20was\x20not\x20found');return;}else{if(_0x164142[_0x593000(0x749)][_0x28fe78][_0x593000(0x87c)]==0x0){warnlog('requested\x20file\x20has\x20been\x20removed.');return;}else{if(!(_0x164142[_0x593000(0x749)][_0x28fe78]['restricted']===![]||_0x164142['hostedFiles'][_0x28fe78]['restricted']===_0x5c2895)){warnlog(_0x593000(0x6ac));return;}}}var _0x533d57=0x4000,_0x258091=0x0,_0x24f32f=_0x28fe78;_0x24f32f===_0x593000(0x7a0)&&(_0x24f32f='sendChannel_'+_0x164142[_0x593000(0x60d)](0x5));if(_0x5c2895 in _0x164142[_0x593000(0x2f9)])var _0x4fa1c1=_0x164142['pcs'][_0x5c2895][_0x593000(0x94a)](_0x24f32f);else{if(_0x5c2895 in _0x164142['rpcs'])var _0x4fa1c1=_0x164142[_0x593000(0x207)][_0x5c2895][_0x593000(0x94a)](_0x24f32f);else{warnlog(_0x593000(0x315));return;}}_0x4fa1c1[_0x593000(0xa2a)]=_0x593000(0xa81);var _0x116485=_0x164142[_0x593000(0x749)][_0x28fe78][_0x593000(0x59b)](0x0,_0x533d57);_0x4fa1c1['onopen']=()=>{var _0x2cbf9f=_0x593000;_0x4fa1c1['send'](JSON['stringify']({'type':'filetransfer','size':_0x164142[_0x2cbf9f(0x749)][_0x28fe78][_0x2cbf9f(0x4cc)],'filename':_0x164142['hostedFiles'][_0x28fe78]['name'],'id':_0x164142[_0x2cbf9f(0x749)][_0x28fe78]['id']})),_0x2feaaa[_0x2cbf9f(0x893)](_0x116485);},_0x4fa1c1['onclose']=()=>{var _0x397b3b=_0x593000;try{var _0x4e1cb1=_0x164142[_0x397b3b(0x22b)][_0x397b3b(0x1f3)](_0x4fa1c1);_0x4e1cb1>-0x1&&_0x164142[_0x397b3b(0x22b)][_0x397b3b(0x2a7)](_0x4e1cb1,0x1);}catch(_0x19b62b){errorlog(_0x19b62b);}log('Transfer\x20ended'),_0x4fa1c1=null;},_0x4fa1c1[_0x593000(0x4bf)]=_0x5ee28e=>{},_0x164142[_0x593000(0x22b)]['push'](_0x4fa1c1),_0x2feaaa[_0x593000(0x6c1)]=function(){var _0x31368c=_0x593000;if(_0x164142[_0x31368c(0x749)][_0x28fe78][_0x31368c(0x87c)]==0x0)return;var _0x502fc4=_0x2feaaa[_0x31368c(0x758)];log(_0x502fc4);try{_0x4fa1c1[_0x31368c(0x640)](_0x502fc4);}catch(_0x26b7ef){try{_0x4fa1c1[_0x31368c(0x4f8)]();}catch(_0x4d2ecf){}warnlog(_0x26b7ef);return;}_0x258091+=0x1;if(_0x258091*_0x533d57<_0x164142['hostedFiles'][_0x28fe78][_0x31368c(0x4cc)])try{log('cid:'+_0x258091),_0x116485=_0x164142[_0x31368c(0x749)][_0x28fe78][_0x31368c(0x59b)](_0x258091*_0x533d57,(_0x258091+0x1)*_0x533d57),_0x2feaaa[_0x31368c(0x893)](_0x116485);}catch(_0xe0baa3){errorlog(_0xe0baa3);}else _0x4fa1c1[_0x31368c(0x640)](_0x31368c(0x9e9)),_0x4fa1c1['close']();};},_0x164142['chunkedVideoEnabled']=null,_0x164142['chunkedAudioEnabled']=null,_0x164142[_0x204338(0x35a)]=async function(_0xd41758=null){var _0x22b81e=_0x204338;if(_0x164142[_0x22b81e(0x878)]!==null)return;else _0x164142[_0x22b81e(0x878)]=![];!_0xd41758&&_0x164142[_0x22b81e(0x3e9)][_0x22b81e(0x8f3)]&&(_0xd41758=_0x164142[_0x22b81e(0x3e9)]['Chunked_video']);let _0x5772b4=0x0;var _0x2d4b91=_0x164142[_0x22b81e(0x307)][_0x22b81e(0x8de)]()[0x0];if(!_0x2d4b91){_0x164142[_0x22b81e(0x878)]=null;return;}var _0xb7f62=new MediaStreamTrackProcessor(_0x2d4b91),_0x49aa08=_0xb7f62[_0x22b81e(0x703)];const _0x7b839=_0x49aa08[_0x22b81e(0x8d6)]();var _0x3aeb4c=![],_0x29a9af=-0x1;const _0x31e33={'output':_0x5a8c2e=>{var _0x36633a=_0x22b81e;if(_0x5a8c2e[_0x36633a(0x33b)][_0x36633a(0x50f)]==_0x36633a(0x578)){let _0x294718=new Uint8Array(_0x5a8c2e[_0x36633a(0x6c6)]);_0x5a8c2e[_0x36633a(0x28e)](_0x294718),_0x3218b4['push']([_0x5a8c2e[_0x36633a(0x657)]-_0x59dd33,_0x5a8c2e[_0x36633a(0x773)]]),_0x3218b4[_0x36633a(0x68a)](_0x294718),_0x1e14ad[_0x36633a(0x9ea)]();}},'error':_0x450dcc=>{errorlog(_0x450dcc);}};let _0x4ffdeb=new VideoEncoder(_0x31e33);_0x4ffdeb['configure'](_0xd41758),_0x164142[_0x22b81e(0x3e9)][_0x22b81e(0x8f3)]=_0xd41758,_0x164142['chunkedVideoEnabled']=!![];var _0x59dd33=-0x1;_0x7b839[_0x22b81e(0x611)]()[_0x22b81e(0x63c)](function _0x89b1ec({done:_0x3e7c9b,value:_0x59ede3}){var _0x5497a6=_0x22b81e;if(_0x3e7c9b||_0x3aeb4c){_0x4ffdeb[_0x5497a6(0x4f8)]();_0x59ede3&&_0x59ede3[_0x5497a6(0x4f8)]();_0x164142[_0x5497a6(0x878)]=null;return;}_0x59dd33==-0x1&&(_0x59dd33=_0x59ede3[_0x5497a6(0x657)]);_0x29a9af==_0x59ede3[_0x5497a6(0x657)]&&(_0x59ede3['timestamp']+=0x1,warnlog(_0x5497a6(0x61a)));if(!_0x3aeb4c){_0x29a9af=_0x59ede3['timestamp'],_0x5772b4++;if(_0x1e14ad[_0x5497a6(0x4a0)]){const _0x186aa4=_0x5772b4>=0x3c;_0x186aa4&&(_0x5772b4=0x0,_0x1e14ad[_0x5497a6(0x4a0)]=![],warnlog(_0x5497a6(0x2a3))),_0x4ffdeb[_0x5497a6(0x5c6)](_0x59ede3,{'keyFrame':_0x186aa4});}else _0x4ffdeb[_0x5497a6(0x5c6)](_0x59ede3,{'keyFrame':![]});}_0x59ede3[_0x5497a6(0x4f8)](),_0x7b839[_0x5497a6(0x611)]()[_0x5497a6(0x63c)](_0x89b1ec);});},_0x164142[_0x204338(0x5e4)]=async function(_0x480901){var _0x4f5194=_0x204338;if(_0x164142[_0x4f5194(0x99a)]!==null)return;else _0x164142['chunkedAudioEnabled']=![];!_0x480901&&_0x164142[_0x4f5194(0x3e9)][_0x4f5194(0x5b3)]&&(_0x480901=_0x164142[_0x4f5194(0x3e9)][_0x4f5194(0x5b3)]);var _0x39b5c7=_0x164142[_0x4f5194(0x570)][_0x4f5194(0x2f4)][_0x4f5194(0x96b)]()[0x0];if(!_0x39b5c7){_0x164142[_0x4f5194(0x99a)]=null;return;}var _0x16509c=new MediaStreamTrackProcessor(_0x39b5c7),_0x5d661d=_0x16509c['readable'];const _0xe19920=_0x5d661d[_0x4f5194(0x8d6)]();var _0x52625c=![],_0x42cb60=-0x1,_0x1973f5=-0x1;const _0x361da5={'output':_0x5eb34c=>{var _0x2a1e44=_0x4f5194;if(_0x5eb34c['constructor']['name']==_0x2a1e44(0x5c8)){let _0x42b7d9=new Uint8Array(_0x5eb34c['byteLength']);_0x5eb34c[_0x2a1e44(0x28e)](_0x42b7d9),_0x3218b4[_0x2a1e44(0x68a)]([_0x5eb34c[_0x2a1e44(0x657)]-_0x1973f5,'audio']),_0x3218b4['push'](_0x42b7d9),_0x1e14ad[_0x2a1e44(0x9ea)]();}},'error':_0x2251f3=>{errorlog(_0x2251f3);}};let _0x7307b8=new AudioEncoder(_0x361da5);_0x7307b8[_0x4f5194(0x9d2)](_0x480901),_0x164142[_0x4f5194(0x3e9)][_0x4f5194(0x5b3)]={},_0x164142['stats']['Chunked_audio']['codec']=_0x480901[_0x4f5194(0x7af)],_0x164142[_0x4f5194(0x3e9)][_0x4f5194(0x5b3)][_0x4f5194(0x700)]=_0x480901['numberOfChannels'],_0x164142[_0x4f5194(0x3e9)]['Chunked_audio'][_0x4f5194(0x92c)]=_0x480901[_0x4f5194(0x92c)],_0x164142[_0x4f5194(0x3e9)][_0x4f5194(0x5b3)][_0x4f5194(0x6b0)]=_0x480901[_0x4f5194(0x9e8)][_0x4f5194(0x6b0)],_0x164142[_0x4f5194(0x99a)]=!![],_0xe19920[_0x4f5194(0x611)]()[_0x4f5194(0x63c)](function _0xd6ad32({done:_0x50d280,value:_0x2f0ff2}){var _0x3d17d2=_0x4f5194;if(_0x50d280||_0x52625c){_0x7307b8['close']();_0x2f0ff2&&_0x2f0ff2[_0x3d17d2(0x4f8)]();_0x164142[_0x3d17d2(0x99a)]=null;return;}_0x1973f5==-0x1&&(_0x1973f5=_0x2f0ff2[_0x3d17d2(0x657)]),_0x42cb60==_0x2f0ff2['timestamp']&&(_0x2f0ff2['timestamp']+=0x1),!_0x52625c&&(_0x42cb60=_0x2f0ff2['timestamp'],_0x7307b8['encode'](_0x2f0ff2)),_0x2f0ff2[_0x3d17d2(0x4f8)](),_0xe19920[_0x3d17d2(0x611)]()[_0x3d17d2(0x63c)](_0xd6ad32);});},_0x164142[_0x204338(0x227)]=function(_0x4bc638){var _0x287b04=_0x204338;warnlog(_0x287b04(0x58c));const _0x3a55c5=window[_0x287b04(0x816)]||window[_0x287b04(0x697)],_0x1d9e45=new _0x3a55c5(),_0x5485aa=_0x1d9e45['createMediaStreamSource'](_0x4bc638),_0x4bdad4=0x800,_0x3180d8=(_0x1d9e45[_0x287b04(0x35f)]||_0x1d9e45['createJavaScriptNode'])[_0x287b04(0x44b)](_0x1d9e45,_0x4bdad4,0x1,0x1);return _0x3180d8[_0x287b04(0x416)]=function(_0x3674eb){var _0x50d204=_0x287b04,_0x787c8d=new Uint8Array(_0x3674eb[_0x50d204(0x6b2)][_0x50d204(0x556)](0x0)[_0x50d204(0x803)]);_0x3218b4[_0x50d204(0x68a)]([0x0,_0x50d204(0x892)]),_0x3218b4['push'](_0x787c8d),_0x1e14ad['sendChunks']();},_0x5485aa[_0x287b04(0x769)](_0x3180d8),_0x3180d8[_0x287b04(0x769)](_0x1d9e45['destination']),_0x3180d8;},_0x164142[_0x204338(0x691)]=function(_0x1e4d21){var _0x5dc52f=_0x204338;log(_0x5dc52f(0x30b)+_0x1e4d21);!_0x164142[_0x5dc52f(0x878)]&&_0x164142[_0x5dc52f(0x3e9)][_0x5dc52f(0x8f3)]&&(config=_0x164142[_0x5dc52f(0x3e9)][_0x5dc52f(0x8f3)],_0x164142['webCodec'](config));!_0x164142[_0x5dc52f(0x99a)]&&_0x164142[_0x5dc52f(0x3e9)]['Chunked_audio']&&(config=_0x164142[_0x5dc52f(0x3e9)][_0x5dc52f(0x5b3)],_0x164142['webCodecAudio'](config));if(_0x1e4d21 in _0x57994e)return;if(!_0x1e14ad){var _0x187d2c=_0x164142[_0x5dc52f(0x28a)](),_0x2c0ec1=_0x164142[_0x5dc52f(0x689)],_0x331d97=null;_0x164142[_0x5dc52f(0x6ba)]&&_0x164142[_0x5dc52f(0x6ba)]<_0x2c0ec1&&(_0x2c0ec1=_0x164142['maxvideobitrate']);var _0x3bd893={'codec':'vp09.00.10.08','width':0x780,'height':0x438,'bitrate':parseInt(_0x2c0ec1*0x3e8),'frameRate':0x1e},_0x3687f4=_0x187d2c['getVideoTracks']();if(_0x3687f4[_0x5dc52f(0x7e9)]){var _0xf0d057=_0x3687f4[0x0][_0x5dc52f(0x548)]();_0xf0d057['width']&&(_0x3bd893[_0x5dc52f(0x2ae)]=_0xf0d057[_0x5dc52f(0x2ae)]),_0xf0d057[_0x5dc52f(0x93b)]&&(_0x3bd893['height']=_0xf0d057[_0x5dc52f(0x93b)]),_0xf0d057[_0x5dc52f(0x435)]&&(_0x3bd893[_0x5dc52f(0x435)]=_0xf0d057[_0x5dc52f(0x435)]);}else _0x3bd893=![];if(_0x2c0ec1<0x259){var _0x261bf2=_0x3bd893[_0x5dc52f(0x2ae)]*_0x3bd893[_0x5dc52f(0x93b)]/(0x280*0x168);if(_0x261bf2>=0x2)_0x3bd893[_0x5dc52f(0x2ae)]=parseInt(_0x3bd893[_0x5dc52f(0x2ae)]/0x2),_0x3bd893['height']=parseInt(_0x3bd893[_0x5dc52f(0x93b)]/0x2);else _0x261bf2>=1.5&&(_0x3bd893[_0x5dc52f(0x2ae)]=parseInt(_0x3bd893[_0x5dc52f(0x2ae)]/1.5),_0x3bd893[_0x5dc52f(0x93b)]=parseInt(_0x3bd893[_0x5dc52f(0x93b)]/1.5));}var _0x18b800={'codec':_0x5dc52f(0x252),'numberOfChannels':0x2,'sampleRate':0xbb80,'tuning':{'bitrate':0xfa00}};if(_0x2c0ec1>0xbb8)var _0x18b800={'codec':'opus','numberOfChannels':0x2,'sampleRate':0xbb80,'tuning':{'bitrate':0x1f400}};else{if(_0x2c0ec1<0x259)var _0x18b800={'codec':_0x5dc52f(0x252),'numberOfChannels':0x1,'sampleRate':0xbb80,'tuning':{'bitrate':0x7d00}};}var _0x3687f4=_0x187d2c[_0x5dc52f(0x96b)]();if(_0x3687f4[_0x5dc52f(0x7e9)]){var _0xf0d057=_0x3687f4[0x0][_0x5dc52f(0x548)]();_0x18b800[_0x5dc52f(0x700)]>_0xf0d057[_0x5dc52f(0x2d4)]&&(_0x18b800[_0x5dc52f(0x700)]=_0xf0d057[_0x5dc52f(0x2d4)]),_0x18b800[_0x5dc52f(0x92c)]>_0xf0d057[_0x5dc52f(0x92c)]&&(_0x18b800['sampleRate']=_0xf0d057['sampleRate']);}else _0x18b800=![];if(!_0x18b800&&!_0x3bd893)return;_0x1e14ad={},_0x1e14ad[_0x5dc52f(0x4a0)]=!![],_0x1e14ad[_0x5dc52f(0x94d)]=_0x3bd893||![],_0x1e14ad[_0x5dc52f(0x5d3)]=_0x18b800||![],_0x1e14ad[_0x5dc52f(0x94d)]&&_0x164142[_0x5dc52f(0x35a)](_0x1e14ad[_0x5dc52f(0x94d)]),_0x1e14ad[_0x5dc52f(0x5d3)]&&(_0x1e14ad['configAudio'][_0x5dc52f(0x7af)]==_0x5dc52f(0x892)?_0x164142[_0x5dc52f(0x227)](_0x187d2c):_0x164142[_0x5dc52f(0x5e4)](_0x1e14ad[_0x5dc52f(0x5d3)])),_0x1e14ad['sendChunks']=function(){var _0x2d7f33=_0x5dc52f;if(_0x331d97)return;_0x331d97=!![];while(_0x3218b4[_0x2d7f33(0x7e9)]){if(!Object[_0x2d7f33(0x2ec)](_0x57994e)['length']){_0x3218b4=[],_0x331d97=null;return;}var _0x4939b5=_0x3218b4[_0x2d7f33(0x754)]();if(_0x4939b5[_0x2d7f33(0x7e9)]===0x2){_0x4939b5[_0x2d7f33(0x68a)](_0x3218b4['length']);var _0x45ec30=JSON[_0x2d7f33(0x776)](_0x4939b5);for(var _0x4dd2ec in _0x57994e){try{_0x57994e[_0x4dd2ec][_0x2d7f33(0x464)]===_0x2d7f33(0x39f)&&_0x57994e[_0x4dd2ec][_0x2d7f33(0x640)](_0x45ec30);}catch(_0x56f7db){}}}else{if(_0x4939b5[_0x2d7f33(0x6c6)]>0x40000){for(var _0x4dd2ec in _0x57994e){try{_0x57994e[_0x4dd2ec][_0x2d7f33(0x464)]===_0x2d7f33(0x39f)&&_0x57994e[_0x4dd2ec]['send'](_0x4939b5[_0x2d7f33(0x59b)](0x0,0x40000));}catch(_0x2e74b0){}}_0x3218b4['unshift'](_0x4939b5[_0x2d7f33(0x59b)](0x40000));}else for(var _0x4dd2ec in _0x57994e){try{_0x57994e[_0x4dd2ec][_0x2d7f33(0x464)]===_0x2d7f33(0x39f)&&_0x57994e[_0x4dd2ec][_0x2d7f33(0x640)](_0x4939b5);}catch(_0x531656){}}}_0x164142[_0x2d7f33(0x3e9)][_0x2d7f33(0x8c1)]=_0x57994e[_0x4dd2ec][_0x2d7f33(0x940)];}_0x331d97=null;},_0x187d2c[_0x5dc52f(0x36b)]=function(_0x3369df){};}var _0x21f2cb=_0x5dc52f(0x689);if(_0x1e4d21 in _0x164142[_0x5dc52f(0x2f9)])_0x57994e[_0x1e4d21]=_0x164142['pcs'][_0x1e4d21]['createDataChannel'](_0x21f2cb);else{if(_0x1e4d21 in _0x164142[_0x5dc52f(0x207)])_0x57994e[_0x1e4d21]=_0x164142[_0x5dc52f(0x207)][_0x1e4d21]['createDataChannel'](_0x21f2cb);else{warnlog('UUID\x20does\x20not\x20exist');return;}}_0x57994e[_0x1e4d21][_0x5dc52f(0x9ab)]=_0x5dc52f(0x9e5),_0x57994e[_0x1e4d21][_0x5dc52f(0xa2a)]=_0x5dc52f(0xa81),_0x57994e[_0x1e4d21][_0x5dc52f(0x3fa)]=![],_0x57994e[_0x1e4d21]['onopen']=()=>{var _0x328c84=_0x5dc52f;log(_0x328c84(0xa87)),_0x57994e[_0x1e4d21]['send'](JSON['stringify']({'type':_0x328c84(0xa85),'size':0x5af3107a3fff,'configVideo':_0x1e14ad[_0x328c84(0x94d)],'configAudio':_0x1e14ad[_0x328c84(0x5d3)],'recordType':_0x164142[_0x328c84(0x689)],'filename':_0x21f2cb+_0x328c84(0x690),'id':_0x21f2cb}));},_0x57994e[_0x1e4d21][_0x5dc52f(0x935)]=()=>{var _0x2b8aa1=_0x5dc52f;try{var _0x5b558b=_0x164142[_0x2b8aa1(0x22b)]['indexOf'](_0x57994e[_0x1e4d21]);_0x5b558b>-0x1&&_0x164142['hostedTransfers'][_0x2b8aa1(0x2a7)](_0x5b558b,0x1);}catch(_0x2691b8){errorlog(_0x2691b8);}log(_0x2b8aa1(0x6f1)),_0x57994e[_0x1e4d21]=null,delete _0x57994e[_0x1e4d21];var _0x1f834b=![];for(var _0xfba9da=0x0;_0xfba9da<_0x164142[_0x2b8aa1(0x22b)][_0x2b8aa1(0x7e9)];_0xfba9da++){if(_0x2b8aa1(0x9ab)in _0x164142[_0x2b8aa1(0x22b)][_0xfba9da]&&_0x164142[_0x2b8aa1(0x22b)][_0xfba9da][_0x2b8aa1(0x9ab)]==_0x2b8aa1(0x9e5)){_0x1f834b=!![];break;}}if(_0x1f834b)try{_0x1e14ad['stop']();}catch(_0x5464c7){}},_0x57994e[_0x1e4d21][_0x5dc52f(0x4bf)]=_0xffc873=>{var _0x27aed8=_0x5dc52f;if(_0xffc873[_0x27aed8(0x7db)])try{var _0x3bb97a=JSON[_0x27aed8(0x90a)](_0xffc873['data']);_0x3bb97a['kf']&&(log('KEY\x20FRAME\x20REQUESTED'),_0x1e14ad['needKeyFrame']=!![]);}catch(_0x3b94f1){}},_0x164142[_0x5dc52f(0x22b)][_0x5dc52f(0x68a)](_0x57994e[_0x1e4d21]);},_0x164142[_0x204338(0x5c5)]=async function(_0x33c2ad,_0x4053ab,_0x2f5456){var _0x37510b=_0x204338;log(_0x37510b(0x71e));var _0x202cb8=_0x2f5456;_0x202cb8['binaryType']=_0x37510b(0xa81);var _0x49cab6='',_0x187760=0x0,_0x47a099=![],_0x497da3=![],_0x406a3b=0x0,_0x43b00b={};_0x202cb8[_0x37510b(0x3ac)]=_0x58345d=>{var _0x3f2c53=_0x37510b;log(_0x3f2c53(0x907));},_0x202cb8[_0x37510b(0x4bf)]=_0x121338=>{var _0x1d2eb7=_0x37510b;if(!_0x47a099)try{_0x47a099=JSON['parse'](_0x121338[_0x1d2eb7(0x7db)]);if(_0x47a099[_0x1d2eb7(0x773)]=='filetransfer'){var {readable:_0x19c3f4,writable:_0x41abd9}=new TransformStream({'transform':(_0x2ca304,_0x478f91)=>_0x2ca304[_0x1d2eb7(0x9ec)]()['then'](_0x1a55d4=>_0x478f91[_0x1d2eb7(0x9a2)](new Uint8Array(_0x1a55d4)))});_0x43b00b[_0x1d2eb7(0x231)]=_0x41abd9[_0x1d2eb7(0x64b)]();;_0x19c3f4[_0x1d2eb7(0x965)](streamSaver[_0x1d2eb7(0x36d)](_0x47a099[_0x1d2eb7(0x951)]));for(var _0x178d22=0x0;_0x178d22{_0x406a3b<=0x0&&(_0x43b00b['writer']&&setTimeout(function(_0x46e103,_0x3458c4){var _0x48a1b9=_0x5f31;_0x3458c4<=0x0?(_0x46e103[_0x48a1b9(0x4f8)](),_0x46e103=null):setTimeout(function(_0x8d86cd,_0x4a75f8){var _0x1f4a28=_0x48a1b9;_0x8d86cd[_0x1f4a28(0x4f8)](),_0x8d86cd=null;},0x1388,_0x46e103);},0x3e8,_0x43b00b['writer'],_0x406a3b));_0x202cb8=null;return;};return;};async function _0x251882(_0x1e9af3,_0xd5146f=![]){var _0x298f1b=_0x204338;_0x1e9af3[_0x298f1b(0x2f5)][_0x298f1b(0xa78)](_0x1e9af3[_0x298f1b(0x393)]['shift']());if(_0x1e9af3['nextQueue']===null&&!_0xd5146f)return;_0x1e9af3[_0x298f1b(0x4bb)]=setTimeout(function(_0x47a7e8){_0x251882(_0x47a7e8);},0x21,_0x1e9af3);}return _0x164142[_0x204338(0x631)]=async function(_0xc0a65c,_0x5ca28f,_0x34af36){var _0x56be11=_0x204338;log('Created\x20transfer\x20channel');var _0x473095=_0x34af36;_0x473095['binaryType']='arraybuffer';var _0x1abf80='',_0x1802d3=0x0,_0x490241=![],_0x20b7a9=![],_0x32edac={};_0x473095[_0x56be11(0x3ac)]=_0x54bd04=>{var _0x3a2a9b=_0x56be11;log(_0x3a2a9b(0x907)),_0x164142[_0x3a2a9b(0x207)][_0x5ca28f]['stats'][_0x3a2a9b(0x7a1)]={};},_0x473095[_0x56be11(0x935)]=async function(_0x413943){var _0x5c5084=_0x56be11;if(_0x32edac[_0x5c5084(0x2c1)]){if(_0x32edac[_0x5c5084(0x570)][_0x5c5084(0x869)]){await delay(0x3e8);try{await _0x32edac['videoElement'][_0x5c5084(0x869)]();}catch(_0x12d793){}}}_0x473095=null;_0x164142[_0x5c5084(0x207)][_0x5ca28f]&&(_0x164142[_0x5c5084(0x207)][_0x5ca28f]['stats'][_0x5c5084(0x7a1)]='Chunked\x20Stream\x20Ended');return;};async function _0x5bbbbf(){var _0x5ecab9=_0x56be11,_0x575fd8=await window[_0x5ecab9(0x62a)]({'startIn':_0x5ecab9(0x780),'suggestedName':_0x5ecab9(0xa79),'types':[{'description':'Video\x20File','accept':{'video/webm':[_0x5ecab9(0x690)]}}]}),_0x1a1f31=await _0x575fd8[_0x5ecab9(0x95d)]();return _0x32edac[_0x5ecab9(0x810)][_0x5ecab9(0xa67)]=_0x1a1f31,_0x32edac['videoWriter']=new WebMWriter(_0x32edac[_0x5ecab9(0x810)]),_0x32edac[_0x5ecab9(0x570)][_0x5ecab9(0x869)]=async function(){var _0x4fbc68=_0x5ecab9;_0x32edac[_0x4fbc68(0x570)]['stopWriter']=![],clearInterval(_0x32edac[_0x4fbc68(0x837)]),await _0x32edac['videoWriter'][_0x4fbc68(0x2d9)](),_0x32edac[_0x4fbc68(0x810)][_0x4fbc68(0xa67)][_0x4fbc68(0x4f8)]();},_0x32edac[_0x5ecab9(0x2c1)];}_0x473095[_0x56be11(0x4bf)]=async function(_0x3238e9){var _0x1c653f=_0x56be11;if(!_0x490241)try{_0x490241=JSON[_0x1c653f(0x90a)](_0x3238e9[_0x1c653f(0x7db)]);if(_0x490241['type']==_0x1c653f(0xa85)){log(_0x1c653f(0x674)),log(_0x490241),_0x32edac['UUID']=_0x5ca28f,_0x32edac[_0x1c653f(0x890)]=0x0,_0x32edac[_0x1c653f(0x81c)]=0x2,_0x32edac['time']=Date['now'](),_0x32edac['dc']=_0x473095,_0x32edac['id']=_0x490241['id'],_0x32edac[_0x1c653f(0x810)]={},_0x32edac[_0x1c653f(0x810)][_0x1c653f(0x513)]=![],_0x32edac[_0x1c653f(0x810)]['audio']=![],_0x32edac[_0x1c653f(0x27b)]=![],_0x32edac['stream_configAudio']=![];_0x490241['configVideo']&&(_0x32edac['stream_configVideo']={},_0x32edac[_0x1c653f(0x27b)][_0x1c653f(0x2ae)]=_0x490241[_0x1c653f(0x94d)][_0x1c653f(0x2ae)]+''||_0x1c653f(0x72b),_0x32edac[_0x1c653f(0x27b)][_0x1c653f(0x93b)]=_0x490241[_0x1c653f(0x94d)][_0x1c653f(0x93b)]+''||'720',_0x32edac[_0x1c653f(0x27b)][_0x1c653f(0x7af)]=_0x490241[_0x1c653f(0x94d)]['codec']||_0x1c653f(0x43d),_0x32edac[_0x1c653f(0x810)]['video']=!![],_0x32edac[_0x1c653f(0x810)]['width']=parseInt(_0x32edac['stream_configVideo'][_0x1c653f(0x2ae)]),_0x32edac[_0x1c653f(0x810)][_0x1c653f(0x93b)]=parseInt(_0x32edac[_0x1c653f(0x27b)][_0x1c653f(0x93b)]),_0x490241[_0x1c653f(0x94d)][_0x1c653f(0x7af)]==_0x1c653f(0x43d)?_0x32edac[_0x1c653f(0x810)][_0x1c653f(0x7af)]=_0x1c653f(0x335):_0x32edac[_0x1c653f(0x810)][_0x1c653f(0x7af)]=_0x1c653f(0x335),_0x164142['rpcs'][_0x5ca28f][_0x1c653f(0x3e9)][_0x1c653f(0x3a5)]=_0x490241[_0x1c653f(0x94d)]);_0x490241[_0x1c653f(0x5d3)]&&(_0x32edac[_0x1c653f(0x282)]=_0x490241[_0x1c653f(0x5d3)],_0x32edac['writer_config']['audio']=!![],_0x32edac['writer_config'][_0x1c653f(0x5b1)]=_0x490241[_0x1c653f(0x5d3)][_0x1c653f(0x92c)]||0xbb80,_0x32edac[_0x1c653f(0x810)][_0x1c653f(0x4b6)]=_0x490241['configAudio'][_0x1c653f(0x700)]||0x1,_0x164142[_0x1c653f(0x207)][_0x5ca28f][_0x1c653f(0x3e9)][_0x1c653f(0x27d)]=_0x490241['configAudio']);_0x32edac[_0x1c653f(0x803)]=![],_0x32edac[_0x1c653f(0x570)]=createVideoElement(),_0x32edac['videoElement'][_0x1c653f(0x952)]=!![],_0x32edac['videoElement'][_0x1c653f(0xa47)]=![],_0x32edac[_0x1c653f(0x570)][_0x1c653f(0x49b)](_0x1c653f(0x9a3),''),_0x32edac[_0x1c653f(0x570)]['dataset'][_0x1c653f(0x2ef)]=_0x5ca28f,_0x32edac['videoElement']['chunkedtransfer']=!![],_0x32edac['videoElement'][_0x1c653f(0x2f4)]=new MediaStream(),_0x32edac[_0x1c653f(0x2c1)]=![],_0x32edac[_0x1c653f(0x3b5)]=![],_0x32edac[_0x1c653f(0x9cc)]=![],_0x32edac[_0x1c653f(0x565)]=![],_0x32edac[_0x1c653f(0x513)]=![],_0x32edac['audio']=![];_0x32edac[_0x1c653f(0x27b)]&&(_0x32edac[_0x1c653f(0x9cc)]={'output':_0x460fad=>{var _0x3060c5=_0x1c653f;_0x32edac[_0x3060c5(0x513)][_0x3060c5(0x3bd)][_0x3060c5(0x6a9)](_0x460fad);},'error':_0x5b1083=>{var _0x22daa6=_0x1c653f;_0x32edac[_0x22daa6(0x513)][_0x22daa6(0x2f5)][_0x22daa6(0x87c)]==_0x22daa6(0x6c8)?warnlog(_0x22daa6(0x51d)):errorlog(_0x5b1083[_0x22daa6(0x526)]);}},_0x32edac['video']={},_0x32edac[_0x1c653f(0x513)]['generator']=new MediaStreamTrackGenerator({'kind':_0x1c653f(0x513)}),_0x32edac[_0x1c653f(0x513)][_0x1c653f(0x5cc)]=new MediaStream([_0x32edac['video'][_0x1c653f(0x9f4)]]),_0x32edac[_0x1c653f(0x513)][_0x1c653f(0x3bd)]=_0x32edac[_0x1c653f(0x513)][_0x1c653f(0x9f4)][_0x1c653f(0x974)]['getWriter'](),_0x32edac[_0x1c653f(0x513)][_0x1c653f(0x2f5)]=new VideoDecoder(_0x32edac['init_video']),_0x32edac['video'][_0x1c653f(0x2f5)][_0x1c653f(0x9d2)](_0x32edac[_0x1c653f(0x27b)]),_0x32edac['video']['queue']=[],_0x32edac[_0x1c653f(0x513)][_0x1c653f(0x4bb)]=null,_0x32edac[_0x1c653f(0x570)][_0x1c653f(0x2f4)][_0x1c653f(0x5f2)](_0x32edac[_0x1c653f(0x513)]['stream']['getVideoTracks']()[0x0]));_0x32edac[_0x1c653f(0x282)]&&(_0x32edac['init_audio']={'output':_0x27b395=>{var _0x229dee=_0x1c653f;_0x32edac[_0x229dee(0x33f)][_0x229dee(0x3bd)][_0x229dee(0x6a9)](_0x27b395);},'error':_0x3f5d78=>{var _0x41dcbb=_0x1c653f;_0x32edac[_0x41dcbb(0x33f)][_0x41dcbb(0x2f5)][_0x41dcbb(0x87c)]==_0x41dcbb(0x6c8)?warnlog(_0x41dcbb(0x51d)):errorlog(_0x3f5d78[_0x41dcbb(0x526)]);}},_0x32edac[_0x1c653f(0x33f)]={},_0x32edac[_0x1c653f(0x33f)][_0x1c653f(0x9f4)]=new MediaStreamTrackGenerator({'kind':_0x1c653f(0x33f)}),_0x32edac['audio'][_0x1c653f(0x5cc)]=new MediaStream([_0x32edac[_0x1c653f(0x33f)][_0x1c653f(0x9f4)]]),_0x32edac['audio']['frameWriter']=_0x32edac[_0x1c653f(0x33f)][_0x1c653f(0x9f4)][_0x1c653f(0x974)][_0x1c653f(0x64b)](),_0x32edac[_0x1c653f(0x33f)][_0x1c653f(0x2f5)]=new AudioDecoder(_0x32edac[_0x1c653f(0x565)]),_0x32edac[_0x1c653f(0x33f)][_0x1c653f(0x2f5)][_0x1c653f(0x9d2)](_0x32edac[_0x1c653f(0x282)]),_0x32edac[_0x1c653f(0x33f)][_0x1c653f(0x393)]=[],_0x32edac[_0x1c653f(0x33f)][_0x1c653f(0x4bb)]=null,_0x32edac['audio']['stream'][_0x1c653f(0x96b)]()['forEach'](_0x582e25=>{var _0x404cce=_0x1c653f;_0x32edac[_0x404cce(0x570)]['srcObject'][_0x404cce(0x5f2)](_0x582e25);}));log(_0x32edac),_0x32edac[_0x1c653f(0x895)]=![],_0x32edac[_0x1c653f(0x3fa)]=![],_0x32edac[_0x1c653f(0x221)]=0x0,_0x32edac['videoElement'][_0x1c653f(0x406)](_0x1c653f(0x2ca),function(_0x254b7d){errorlog(_0x254b7d);}),_0x32edac[_0x1c653f(0x570)][_0x1c653f(0x459)]=_0x5bbbbf,_0x32edac[_0x1c653f(0x570)][_0x1c653f(0x303)]=function(){updateMixer();},_0x32edac[_0x1c653f(0x5ee)]=0x2;_0x490241[_0x1c653f(0x5ee)]&&(_0x32edac[_0x1c653f(0x5ee)]=parseFloat(_0x490241[_0x1c653f(0x5ee)])||0x2);_0x164142[_0x1c653f(0x207)][_0x5ca28f][_0x1c653f(0x307)]=_0x32edac['videoElement'][_0x1c653f(0x2f4)],_0x164142['rpcs'][_0x5ca28f][_0x1c653f(0x570)]=_0x32edac[_0x1c653f(0x570)],setupIncomingVideoTracking(_0x164142['rpcs'][_0x5ca28f][_0x1c653f(0x570)],_0x5ca28f);if(_0x32edac[_0x1c653f(0x33f)]&&_0x32edac[_0x1c653f(0x513)])updateIncomingVideoElement(_0x5ca28f);else{if(_0x32edac[_0x1c653f(0x513)])updateIncomingVideoElement(_0x5ca28f,!![],![]);else _0x32edac[_0x1c653f(0x33f)]&&updateIncomingVideoElement(_0x5ca28f,![],!![]);}_0x32edac[_0x1c653f(0x293)]=async function(_0x5049cd){var _0x2e0d13=_0x1c653f;_0x164142['rpcs'][_0x5ca28f][_0x2e0d13(0x3e9)]['chunked_mode'][_0x2e0d13(0x634)]=_0x5049cd[_0x2e0d13(0x657)]/0xf4240;if(_0x5049cd[_0x2e0d13(0x773)]==_0x2e0d13(0x33f)){await _0x32edac[_0x2e0d13(0x664)](_0x5049cd);return;}try{_0x5049cd=new EncodedVideoChunk(_0x5049cd);}catch(_0x2eb626){errorlog(_0x2eb626),errorlog(_0x5049cd);return;}if(_0x32edac[_0x2e0d13(0x2c1)]&&_0x32edac[_0x2e0d13(0x570)]['stopWriter']){if(!_0x32edac[_0x2e0d13(0x3fa)]&&_0x5049cd[_0x2e0d13(0x773)]!=='key')log(_0x2e0d13(0x6bb)),log(_0x5049cd),!_0x32edac[_0x2e0d13(0x924)]&&(_0x473095[_0x2e0d13(0x640)](JSON['stringify']({'kf':!![]})),_0x32edac[_0x2e0d13(0x924)]=setTimeout(function(){var _0x206dfb=_0x2e0d13;clearTimeout(_0x32edac[_0x206dfb(0x924)]),_0x32edac['requestKeyframe']=null;},0x3e8));else!_0x32edac[_0x2e0d13(0x3fa)]?(_0x32edac[_0x2e0d13(0x3fa)]=Date[_0x2e0d13(0xa19)](),_0x32edac[_0x2e0d13(0x2c1)]['addFrame'](_0x5049cd),log(_0x2e0d13(0x872)),_0x164142[_0x2e0d13(0x752)]&&(_0x32edac['updateTime']=setInterval(function(_0x56dad8){var _0x5295c6=_0x2e0d13,_0xddc00c=(Date['now']()-_0x32edac[_0x5295c6(0x3fa)])/0x3e8,_0x5aab58=Math[_0x5295c6(0x437)](_0xddc00c/0x3c),_0x1cf25=Math[_0x5295c6(0x437)](_0xddc00c-_0x5aab58*0x3c);try{document['querySelector']('[data-action-type=\x27recorder-local\x27][data--u-u-i-d=\x27'+_0x56dad8+'\x27]')[_0x5295c6(0x6a5)]='\x20'+_0x5aab58+_0x5295c6(0x65f)+zpadTime(_0x1cf25)+'s';}catch(_0x4486dc){log(_0x5295c6(0x859));}},0x3e8,_0x5ca28f))):_0x32edac[_0x2e0d13(0x2c1)][_0x2e0d13(0x93a)](_0x5049cd);}_0x32edac[_0x2e0d13(0x895)]&&_0x32edac[_0x2e0d13(0x513)]&&_0x32edac[_0x2e0d13(0x513)][_0x2e0d13(0x2f5)][_0x2e0d13(0x87c)]==='closed'&&(warnlog(_0x2e0d13(0x262)),_0x32edac[_0x2e0d13(0x895)]=![],_0x32edac[_0x2e0d13(0x513)][_0x2e0d13(0x2f5)]=new VideoDecoder(_0x32edac[_0x2e0d13(0x9cc)]),await _0x32edac['video'][_0x2e0d13(0x2f5)]['configure'](_0x32edac[_0x2e0d13(0x27b)]),_0x32edac[_0x2e0d13(0x895)]=![]);if(_0x32edac[_0x2e0d13(0x895)]||_0x5049cd['type']==='key'){_0x32edac[_0x2e0d13(0x895)]=!![];_0x5049cd[_0x2e0d13(0x773)]===_0x2e0d13(0x39d)?_0x32edac[_0x2e0d13(0x221)]=0x0:_0x32edac[_0x2e0d13(0x221)]+=0x1;try{_0x164142[_0x2e0d13(0x803)]||_0x164142[_0x2e0d13(0x399)]?(clearTimeout(_0x32edac[_0x2e0d13(0x513)][_0x2e0d13(0x4bb)]),_0x32edac[_0x2e0d13(0x513)][_0x2e0d13(0x393)][_0x2e0d13(0x7e9)]?_0x5049cd[_0x2e0d13(0x657)]-_0x32edac[_0x2e0d13(0x513)][_0x2e0d13(0x393)][0x0][_0x2e0d13(0x657)]>0x3e8*((_0x164142[_0x2e0d13(0x803)]||0x0)+(_0x164142[_0x2e0d13(0x399)]||0x0))?(_0x251882(_0x32edac[_0x2e0d13(0x513)],!![]),_0x32edac[_0x2e0d13(0x513)][_0x2e0d13(0x393)][_0x2e0d13(0x68a)](_0x5049cd)):_0x32edac[_0x2e0d13(0x513)][_0x2e0d13(0x393)]['push'](_0x5049cd):_0x32edac[_0x2e0d13(0x513)]['queue'][_0x2e0d13(0x68a)](_0x5049cd)):_0x32edac['video'][_0x2e0d13(0x2f5)][_0x2e0d13(0xa78)](_0x5049cd);}catch(_0x95b6c3){errorlog(_0x95b6c3),_0x32edac[_0x2e0d13(0x895)]=![];}}!_0x32edac[_0x2e0d13(0x895)]&&(!_0x32edac['requestKeyframe']&&(_0x473095[_0x2e0d13(0x640)](JSON[_0x2e0d13(0x776)]({'kf':!![]})),_0x32edac['requestKeyframe']=setTimeout(function(){var _0x4acd86=_0x2e0d13;clearTimeout(_0x32edac[_0x4acd86(0x924)]),_0x32edac[_0x4acd86(0x924)]=null;},0x3e8)));},_0x32edac['processFrameAudio']=async function(_0x1f92c1){var _0x6a094e=_0x1c653f;if(!_0x32edac[_0x6a094e(0x33f)]){errorlog(_0x6a094e(0x9d4));return;}try{_0x1f92c1[_0x6a094e(0x773)]=_0x6a094e(0x39d),_0x1f92c1=new EncodedAudioChunk(_0x1f92c1);}catch(_0x3bfa25){return;}_0x32edac[_0x6a094e(0x2c1)]&&_0x32edac[_0x6a094e(0x3fa)]&&_0x32edac['videoElement']['stopWriter']&&_0x32edac[_0x6a094e(0x2c1)]['addFrame'](_0x1f92c1),_0x32edac[_0x6a094e(0x33f)][_0x6a094e(0x2f5)][_0x6a094e(0x87c)]===_0x6a094e(0x6c8)&&(_0x32edac[_0x6a094e(0x33f)][_0x6a094e(0x2f5)]=new AudioDecoder(_0x32edac[_0x6a094e(0x565)]),_0x32edac[_0x6a094e(0x33f)][_0x6a094e(0x2f5)]['configure'](_0x32edac[_0x6a094e(0x282)])),_0x164142[_0x6a094e(0x803)]||_0x164142[_0x6a094e(0x399)]?(clearTimeout(_0x32edac[_0x6a094e(0x33f)][_0x6a094e(0x4bb)]),_0x32edac[_0x6a094e(0x33f)]['queue'][_0x6a094e(0x7e9)]?_0x1f92c1['timestamp']-_0x32edac[_0x6a094e(0x33f)][_0x6a094e(0x393)][0x0][_0x6a094e(0x657)]>(_0x164142[_0x6a094e(0x803)]||0x0)+(_0x164142[_0x6a094e(0x399)]||0x0)?(_0x251882(_0x32edac[_0x6a094e(0x33f)]),_0x32edac[_0x6a094e(0x33f)][_0x6a094e(0x393)][_0x6a094e(0x68a)](_0x1f92c1)):_0x32edac[_0x6a094e(0x33f)][_0x6a094e(0x393)][_0x6a094e(0x68a)](_0x1f92c1):_0x32edac[_0x6a094e(0x33f)][_0x6a094e(0x393)][_0x6a094e(0x68a)](_0x1f92c1)):_0x32edac[_0x6a094e(0x33f)]['decoder'][_0x6a094e(0xa78)](_0x1f92c1);},transferList[_0x1c653f(0x68a)](_0x32edac),_0x20b7a9=transferList['length']-0x1,updateDownloadLink(_0x20b7a9);}else errorlog(_0x490241);return;}catch(_0x1ec9bc){errorlog(_0x1ec9bc);}try{var _0x46afd6=_0x3238e9[_0x1c653f(0x7db)];if(typeof _0x46afd6=='string'){if(_0x32edac[_0x1c653f(0x803)]){var _0x2dab6a=new Int8Array(_0x46afd6[_0x1c653f(0x803)]);_0x32edac[_0x1c653f(0x803)]=![],await _0x32edac[_0x1c653f(0x293)]({'data':_0x2dab6a,'timestamp':_0x32edac[_0x1c653f(0x3b5)][0x0],'type':_0x32edac[_0x1c653f(0x3b5)][0x1]});}_0x32edac[_0x1c653f(0x3b5)]=JSON['parse'](_0x46afd6);}else{try{if(_0x46afd6[_0x1c653f(0x6c6)]>=0x40000){if(_0x32edac[_0x1c653f(0x803)]){_0x46afd6=new Int8Array(_0x46afd6);var _0x2dab6a=new Int8Array(_0x32edac[_0x1c653f(0x803)][_0x1c653f(0x7e9)]+_0x46afd6[_0x1c653f(0x7e9)]);_0x2dab6a[_0x1c653f(0x552)](_0x32edac['buffer']),_0x2dab6a[_0x1c653f(0x552)](_0x46afd6,_0x32edac[_0x1c653f(0x803)][_0x1c653f(0x7e9)]),_0x32edac['buffer']=_0x2dab6a;}else _0x32edac[_0x1c653f(0x803)]=new Int8Array(_0x46afd6);return;}else{if(_0x32edac[_0x1c653f(0x803)]){_0x46afd6=new Int8Array(_0x46afd6);var _0x2dab6a=new Int8Array(_0x32edac[_0x1c653f(0x803)]['length']+_0x46afd6[_0x1c653f(0x7e9)]);_0x2dab6a['set'](_0x32edac[_0x1c653f(0x803)]),_0x2dab6a[_0x1c653f(0x552)](_0x46afd6,_0x32edac['buffer'][_0x1c653f(0x7e9)]),_0x32edac[_0x1c653f(0x803)]=![],await _0x32edac[_0x1c653f(0x293)]({'data':_0x2dab6a,'timestamp':_0x32edac[_0x1c653f(0x3b5)][0x0],'type':_0x32edac['frameMeta'][0x1]});}else await _0x32edac[_0x1c653f(0x293)]({'data':new Uint8Array(_0x46afd6),'timestamp':_0x32edac['frameMeta'][0x0],'type':_0x32edac[_0x1c653f(0x3b5)][0x1]});}}catch(_0xfa17b9){errorlog(_0xfa17b9);}return;}}catch(_0x55c6d6){errorlog(_0x55c6d6);}};return;},_0x164142[_0x204338(0x3d0)]=async function(_0x380b0a){var _0x1c3649=_0x204338;log(_0x1c3649(0x643));var _0x4e5546=_0x380b0a[_0x1c3649(0x2ef)];if(_0x4e5546 in _0x164142[_0x1c3649(0x207)]){if('session'in _0x380b0a){if(_0x164142['rpcs'][_0x4e5546][_0x1c3649(0x67a)]==_0x380b0a['session']){log(_0x1c3649(0x309));return;}_0x164142[_0x1c3649(0x73f)](_0x4e5546);}}else log('MAKING\x20A\x20NEW\x20RPCS\x20RTC\x20CONNECTION');try{for(var _0x5df999 in _0x164142[_0x1c3649(0x207)]){_0x164142[_0x1c3649(0x207)][_0x5df999]['streamID']==_0x380b0a['streamID']&&(_0x164142[_0x1c3649(0x207)][_0x5df999]['videoElement']&&(_0x164142[_0x1c3649(0x207)][_0x5df999]['videoElement'][_0x1c3649(0x96d)][_0x1c3649(0x622)]=_0x1c3649(0xa3c)),_0x164142[_0x1c3649(0x73f)](_0x5df999),_0x5df999!==_0x4e5546&&(_0x5df999 in _0x164142[_0x1c3649(0x2f9)]&&(_0x380b0a['session']&&_0x380b0a['session']['substring'](0x0,0x6)!==_0x164142[_0x1c3649(0x5dc)]?(warnlog(_0x1c3649(0x405)),log(_0x1c3649(0x460)),_0x164142[_0x1c3649(0x9fc)](_0x5df999,![])):warnlog(_0x1c3649(0x6b7)))));}document[_0x1c3649(0x3f4)](_0x1c3649(0x424))&&document[_0x1c3649(0x3f4)](_0x1c3649(0x424))[_0x1c3649(0x22a)][_0x1c3649(0x8b4)](document[_0x1c3649(0x3f4)](_0x1c3649(0x424)));}catch(_0x4ae5a0){errorlog(_0x4ae5a0);}if(_0x164142['maxpublishers']!==![]){if(Object[_0x1c3649(0x2ec)](_0x164142['rpcs'])[_0x1c3649(0x7e9)]>=_0x164142['maxpublishers']){warnlog(_0x1c3649(0x2fa));return;}}else{if(_0x164142['maxconnections']!==![]){if(Object[_0x1c3649(0x2ec)](_0x164142['rpcs'])['length']+Object[_0x1c3649(0x2ec)](_0x164142[_0x1c3649(0x2f9)])[_0x1c3649(0x7e9)]>=_0x164142[_0x1c3649(0x323)]){warnlog(_0x1c3649(0x2fa));return;}}}if(_0x164142[_0x1c3649(0x393)]){if(_0x164142[_0x1c3649(0x752)])!(_0x4e5546 in _0x164142[_0x1c3649(0x2f9)])&&_0x164142['offerSDP'](_0x4e5546);else{if(_0x164142[_0x1c3649(0x4f1)][_0x1c3649(0x1f3)](_0x4e5546)==-0x1)return;}}!_0x164142[_0x1c3649(0x6fd)]&&await chooseBestTURN();try{_0x164142['rpcs'][_0x4e5546]=new RTCPeerConnection(_0x164142[_0x1c3649(0x6fd)]);}catch(_0x1cab66){!_0x164142[_0x1c3649(0x56f)]&&warnUser(_0x1c3649(0x77e));errorlog(_0x1cab66);return;}if(_0x164142['security']){if(Object[_0x1c3649(0x2ec)](_0x164142[_0x1c3649(0x207)])['length']>0x1){warnlog(_0x1c3649(0x350)),log(_0x164142[_0x1c3649(0x207)]),delete _0x164142[_0x1c3649(0x207)][_0x4e5546],updateUserList();return;}else warnlog('CONNECTED\x20TO\x20FIRST\x20PEER');}_0x380b0a[_0x1c3649(0x200)]in _0x164142[_0x1c3649(0x27f)]&&delete _0x164142[_0x1c3649(0x27f)][_0x380b0a[_0x1c3649(0x200)]];try{_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x200)]=_0x380b0a[_0x1c3649(0x200)];}catch(_0x25238f){errorlog(_0x25238f);return;}_0x380b0a[_0x1c3649(0x67a)]?_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x67a)]=_0x380b0a[_0x1c3649(0x67a)]:_0x164142['rpcs'][_0x4e5546][_0x1c3649(0x67a)]=null;_0x164142[_0x1c3649(0x207)][_0x4e5546]['activelySpeaking']=![],_0x164142['rpcs'][_0x4e5546][_0x1c3649(0x882)]=![],_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x588)]=![],_0x164142[_0x1c3649(0x207)][_0x4e5546]['allowGraphs']=![],_0x164142['rpcs'][_0x4e5546][_0x1c3649(0x3e9)]={},_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x931)]=![],_0x164142['rpcs'][_0x4e5546][_0x1c3649(0x3e9)]['Audio_Loudness']=![],_0x164142['rpcs'][_0x4e5546][_0x1c3649(0x896)]=![],_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x679)]=![],_0x164142['rpcs'][_0x4e5546][_0x1c3649(0x563)]=null,_0x164142[_0x1c3649(0x207)][_0x4e5546]['bandwidth']=-0x1,_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0xa6f)]=![],_0x164142[_0x1c3649(0x207)][_0x4e5546]['channelOffset']=![],_0x164142['rpcs'][_0x4e5546][_0x1c3649(0x54b)]=![],_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x3fe)]=-0x1,_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x7a7)]=![],_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x570)]=![],_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x30d)]=![],_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x76d)]=![],_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x285)]=[],_0x164142['rpcs'][_0x4e5546][_0x1c3649(0x9b3)]=![],_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x606)]=![],_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x463)]=![],_0x164142['rpcs'][_0x4e5546][_0x1c3649(0x9e6)]=![],_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0xa6d)]=![],_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x9a4)]=![],_0x164142[_0x1c3649(0x207)][_0x4e5546]['remoteMuteElement']=![],_0x164142['rpcs'][_0x4e5546][_0x1c3649(0x254)]=null,_0x164142[_0x1c3649(0x207)][_0x4e5546]['mutedState']=null,_0x164142[_0x1c3649(0x207)][_0x4e5546]['mutedStateMixer']=null,_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x8f9)]=null,_0x164142['rpcs'][_0x4e5546]['delayNode']={},_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x7d7)]=![],_0x164142[_0x1c3649(0x207)][_0x4e5546]['savedVolume']=![],_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0xa74)]=![],_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x559)]=![],_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x903)]=![],_0x164142[_0x1c3649(0x207)][_0x4e5546]['signalMeter']=![],_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x307)]=null,_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x695)]=![],_0x164142['rpcs'][_0x4e5546]['screenShareState']=![],_0x164142[_0x1c3649(0x207)][_0x4e5546]['director']=null,_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x4ae)]=![],_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x7e6)]=0x64,_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x1fc)]=0x0,_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x91d)]=0x0,_0x164142['rpcs'][_0x4e5546]['settings']=![],_0x164142[_0x1c3649(0x207)][_0x4e5546]['opacityDisconnect']='1',_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x8bf)]='1',_0x164142[_0x1c3649(0x207)][_0x4e5546]['obsControl']=![],_0x164142['rpcs'][_0x4e5546][_0x1c3649(0x2db)]=0x0,_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x9a7)]=![],_0x164142[_0x1c3649(0x207)][_0x4e5546]['order']=![],_0x164142['rpcs'][_0x4e5546][_0x1c3649(0x900)]=null,_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x1ff)]=null,_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x852)]={},_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0xa18)]=![],_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x89c)]=![],_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x7d0)]=Date[_0x1c3649(0xa19)](),_0x164142['rpcs'][_0x4e5546][_0x1c3649(0x481)]=_0x164142[_0x1c3649(0x481)];(_0x164142[_0x1c3649(0x322)]==0x2||_0x164142[_0x1c3649(0x322)]==0x4)&&(_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x882)]=!![]);if(_0x164142['showall']){var _0x1ab00e=createRichVideoElement(_0x4e5546);_0x1ab00e[_0x1c3649(0x96d)][_0x1c3649(0x622)]=_0x1c3649(0x2f7);}if(_0x164142[_0x1c3649(0x752)]){if(_0x164142['customWSS']&&_0x1c3649(0xa01)in _0x380b0a&&_0x380b0a['isScene']!==![]){}else{var _0x51c34d=soloLinkGenerator(_0x164142['rpcs'][_0x4e5546][_0x1c3649(0x200)]);createControlBox(_0x4e5546,_0x51c34d,_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x200)]);}}_0x164142[_0x1c3649(0x207)][_0x4e5546]['UUID']=_0x4e5546;if(_0x1c3649(0x200)in _0x380b0a){_0x164142['rpcs'][_0x4e5546][_0x1c3649(0x200)]=_0x380b0a[_0x1c3649(0x200)];try{if(_0x164142[_0x1c3649(0x8e9)]){if(_0x164142[_0x1c3649(0x8e9)]['includes'](_0x164142[_0x1c3649(0x207)][_0x4e5546]['streamID'])){if(_0x164142[_0x1c3649(0x57f)]!==![]){let _0x5806eb=_0x164142[_0x1c3649(0x8e9)]['indexOf'](_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x200)]);_0x164142[_0x1c3649(0x57f)]['length']>_0x5806eb&&(_0x164142['rpcs'][_0x4e5546][_0x1c3649(0x7a7)]=parseInt(_0x164142[_0x1c3649(0x57f)][_0x5806eb]),_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x7a7)]<=0x0&&(_0x164142['rpcs'][_0x4e5546]['manualBandwidth']=![]));}}}}catch(_0x106c5b){errorlog(_0x106c5b);}}_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x935)]=function(_0x3f16c5){var _0x48ac08=_0x1c3649;_0x164142[_0x48ac08(0x73f)](_0x4e5546);},_0x164142['rpcs'][_0x4e5546][_0x1c3649(0x879)]=null,_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x273)]=[],_0x164142['rpcs'][_0x4e5546][_0x1c3649(0x5aa)]=function(_0x1ff491){var _0x2bd4b7=_0x1c3649;if(_0x1ff491[_0x2bd4b7(0x408)]==null){log(_0x2bd4b7(0x20b));return;}try{if(_0x164142['icefilter']){if(_0x1ff491[_0x2bd4b7(0x408)][_0x2bd4b7(0x408)][_0x2bd4b7(0x1f3)](_0x164142[_0x2bd4b7(0xa4f)])===-0x1){log(_0x2bd4b7(0x3eb));return;}else log(_0x1ff491[_0x2bd4b7(0x408)]);}}catch(_0x5851a8){errorlog(_0x5851a8);}if(_0x164142['rpcs'][_0x4e5546][_0x2bd4b7(0x879)]!==null){_0x164142[_0x2bd4b7(0x207)][_0x4e5546][_0x2bd4b7(0x273)][_0x2bd4b7(0x68a)](_0x1ff491['candidate']);return;}_0x164142[_0x2bd4b7(0x207)][_0x4e5546][_0x2bd4b7(0x273)][_0x2bd4b7(0x68a)](_0x1ff491[_0x2bd4b7(0x408)]),_0x164142[_0x2bd4b7(0x207)][_0x4e5546][_0x2bd4b7(0x879)]=setTimeout(function(){var _0x5eecc1=_0x2bd4b7;if(!(_0x4e5546 in _0x164142[_0x5eecc1(0x207)]))return;_0x164142['rpcs'][_0x4e5546][_0x5eecc1(0x879)]=null;if(_0x164142['rpcs'][_0x4e5546][_0x5eecc1(0x273)]==[])return;var _0x464cb9={};_0x464cb9[_0x5eecc1(0x2ef)]=_0x4e5546,_0x464cb9[_0x5eecc1(0x773)]=_0x5eecc1(0x538),_0x464cb9['candidates']=_0x164142[_0x5eecc1(0x207)][_0x4e5546]['iceBundle'],_0x464cb9[_0x5eecc1(0x67a)]=_0x164142[_0x5eecc1(0x207)][_0x4e5546][_0x5eecc1(0x67a)],_0x164142[_0x5eecc1(0x207)][_0x4e5546]['iceBundle']=[],_0x164142[_0x5eecc1(0x4c8)]?_0x164142[_0x5eecc1(0x9b8)](JSON[_0x5eecc1(0x776)](_0x464cb9[_0x5eecc1(0x59a)]))['then'](function(_0x5af820){var _0x3d8115=_0x5eecc1;_0x464cb9[_0x3d8115(0x59a)]=_0x5af820[0x0],_0x464cb9['vector']=_0x5af820[0x1],_0x164142['anyrequest'](_0x464cb9);})[_0x5eecc1(0x341)](errorlog):_0x164142[_0x5eecc1(0x3cd)](_0x464cb9);},0x190);},_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x6f3)]=function(_0xc79be8){var _0x3bb0ba=_0x1c3649;switch(this[_0x3bb0ba(0x431)]){case'new':log(_0x3bb0ba(0x95b)),log('closeTimeout\x20cancelled;\x202'),clearInterval(_0x164142[_0x3bb0ba(0x207)][this['UUID']][_0x3bb0ba(0x254)]);case _0x3bb0ba(0x4b7):log(_0x3bb0ba(0x4b7)),log(_0x3bb0ba(0x5f8)),clearInterval(_0x164142[_0x3bb0ba(0x207)][this[_0x3bb0ba(0x2ef)]][_0x3bb0ba(0x254)]);case _0x3bb0ba(0x53c):log(_0x3bb0ba(0x56d)),log(_0x3bb0ba(0x42c)),clearInterval(_0x164142['rpcs'][this[_0x3bb0ba(0x2ef)]][_0x3bb0ba(0x254)]);if(_0x164142[_0x3bb0ba(0x4a7)]){if(_0x164142['ws'][_0x3bb0ba(0x464)]!==0x1){_0x164142['ws'][_0x3bb0ba(0x4f8)]();break;}_0x164142['ws'][_0x3bb0ba(0x4f8)](),setTimeout(function(){var _0x7eaec1=_0x3bb0ba;_0x164142[_0x7eaec1(0x56f)]!=!![]&&warnUser(_0x7eaec1(0x61d));},0x1);}break;case _0x3bb0ba(0x48e):log('closeTimeout\x20cancelled;\x205'),warnlog(_0x3bb0ba(0xa0c)),clearInterval(_0x164142['rpcs'][this[_0x3bb0ba(0x2ef)]][_0x3bb0ba(0x254)]);this['UUID']in _0x164142[_0x3bb0ba(0x207)]?_0x164142[_0x3bb0ba(0x207)][this[_0x3bb0ba(0x2ef)]]['closeTimeout']=setTimeout(function(_0x3c8512){_0x164142['closeRPC'](_0x3c8512);},0x1388,this['UUID']):log(_0x3bb0ba(0x794));break;case _0x3bb0ba(0x858):warnlog(_0x3bb0ba(0x2a0)),log(_0x3bb0ba(0x5c3)),clearInterval(_0x164142[_0x3bb0ba(0x207)][this[_0x3bb0ba(0x2ef)]][_0x3bb0ba(0x254)]);this[_0x3bb0ba(0x2ef)]in _0x164142['rpcs']?_0x164142[_0x3bb0ba(0x207)][this['UUID']][_0x3bb0ba(0x254)]=setTimeout(function(_0x39ab67){var _0x2f340f=_0x3bb0ba;_0x164142[_0x2f340f(0x73f)](_0x39ab67);},0xbb8,this[_0x3bb0ba(0x2ef)]):log(_0x3bb0ba(0x794));break;case _0x3bb0ba(0x6c8):warnlog(_0x3bb0ba(0x77a)),_0x164142['closeRPC'](this['UUID']);break;default:log(_0x3bb0ba(0x458)),clearInterval(_0x164142[_0x3bb0ba(0x207)][this[_0x3bb0ba(0x2ef)]]['closeTimeout']);break;}},_0x164142['rpcs'][_0x4e5546][_0x1c3649(0x8db)]=function(){var _0x3c4262=_0x1c3649;try{if(this[_0x3c4262(0x8df)]=='closed')errorlog('CLOSED');else{if(this[_0x3c4262(0x8df)]==_0x3c4262(0x48e))warnlog('ICE\x20DISCONNECTED'),_0x164142['rpcs'][_0x4e5546]['opacityDisconnect']='0',_0x164142['rpcs'][_0x4e5546][_0x3c4262(0x570)]['style'][_0x3c4262(0x555)]='0',_0x164142[_0x3c4262(0x207)][_0x4e5546]['disconnectedTimeout']=setTimeout(function(_0x36cce3){updateMixer();},0x1f4,_0x4e5546);else this[_0x3c4262(0x8df)]==_0x3c4262(0x858)?errorlog(_0x3c4262(0x4f3)):(log(_0x3c4262(0x99d)+this[_0x3c4262(0x8df)]),_0x164142[_0x3c4262(0x207)][_0x4e5546][_0x3c4262(0x76e)]&&clearTimeout(_0x164142[_0x3c4262(0x207)][_0x4e5546][_0x3c4262(0x76e)]),_0x164142[_0x3c4262(0x207)][_0x4e5546]['videoElement']&&_0x3c4262(0x555)in _0x164142[_0x3c4262(0x207)][_0x4e5546][_0x3c4262(0x570)][_0x3c4262(0x96d)]?_0x164142[_0x3c4262(0x207)][_0x4e5546]['opacityDisconnect']=='0'&&_0x164142[_0x3c4262(0x207)][_0x4e5546]['opacityMuted']=='1'?(_0x164142['rpcs'][_0x4e5546][_0x3c4262(0x570)][_0x3c4262(0x96d)][_0x3c4262(0x555)]='1',_0x164142['rpcs'][_0x4e5546]['opacityDisconnect']='1',updateMixer()):_0x164142[_0x3c4262(0x207)][_0x4e5546][_0x3c4262(0x265)]='1':_0x164142[_0x3c4262(0x207)][_0x4e5546][_0x3c4262(0x265)]='1');}}catch(_0x1a7c44){}},_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x2ea)]=function(_0x58bfbe){var _0x575be4=_0x1c3649;log(_0x58bfbe);if(_0x58bfbe[_0x575be4(0x5a2)][_0x575be4(0x9a7)]&&_0x58bfbe['channel'][_0x575be4(0x9a7)]!==_0x575be4(0x7a0)){if(_0x164142[_0x575be4(0x8f5)][_0x575be4(0x6b6)](_0x164142['rpcs'][_0x4e5546][_0x575be4(0x200)]))return;_0x58bfbe[_0x575be4(0x5a2)][_0x575be4(0x9a7)]==='chunked'?_0x164142[_0x575be4(0x631)](_0x164142[_0x575be4(0x207)],_0x4e5546,_0x58bfbe['channel']):_0x164142[_0x575be4(0x5c5)](_0x164142[_0x575be4(0x207)],_0x4e5546,_0x58bfbe[_0x575be4(0x5a2)]);return;}_0x164142[_0x575be4(0x207)][_0x4e5546][_0x575be4(0x573)]=_0x58bfbe['channel'],_0x164142['rpcs'][_0x4e5546]['receiveChannel'][_0x575be4(0x2ef)]=_0x4e5546,_0x164142[_0x575be4(0x207)][_0x4e5546][_0x575be4(0x573)][_0x575be4(0x3ac)]=_0x1d35ba=>{var _0x52ecbf=_0x575be4,_0x3917eb={};_0x3917eb[_0x52ecbf(0x712)]=![],_0x3917eb[_0x52ecbf(0x641)]=![],_0x3917eb[_0x52ecbf(0xa2d)]=![],_0x3917eb[_0x52ecbf(0x33f)]=![],_0x3917eb['video']=![],_0x3917eb[_0x52ecbf(0x8ae)]=![],_0x3917eb[_0x52ecbf(0x9e1)]=![],_0x3917eb['allowscreen']=![];try{if(_0x164142[_0x52ecbf(0x310)]!==![])_0x164142[_0x52ecbf(0x310)][_0x52ecbf(0x6b6)](_0x164142[_0x52ecbf(0x207)][_0x4e5546][_0x52ecbf(0x200)])?_0x3917eb[_0x52ecbf(0x513)]=!![]:_0x3917eb[_0x52ecbf(0x513)]=![];else{if(_0x164142[_0x52ecbf(0x8ae)]!==![]){if(_0x164142[_0x52ecbf(0x8ae)]!==null)_0x164142[_0x52ecbf(0x207)][_0x4e5546][_0x52ecbf(0x200)]===_0x164142[_0x52ecbf(0x8ae)]?(_0x3917eb['broadcast']=!![],_0x3917eb[_0x52ecbf(0x513)]=!![]):_0x3917eb['video']=![];else _0x164142[_0x52ecbf(0x54f)]&&(_0x4e5546==_0x164142[_0x52ecbf(0x54f)]?(_0x3917eb['broadcast']=!![],_0x3917eb[_0x52ecbf(0x513)]=!![]):_0x3917eb[_0x52ecbf(0x513)]=![]);}else _0x164142['exclude']!==![]?_0x164142[_0x52ecbf(0x4b9)][_0x52ecbf(0x6b6)](_0x164142[_0x52ecbf(0x207)][_0x4e5546][_0x52ecbf(0x200)])?_0x3917eb['video']=![]:_0x3917eb[_0x52ecbf(0x513)]=!![]:_0x3917eb[_0x52ecbf(0x513)]=!![];}_0x164142[_0x52ecbf(0x7a6)]!==![]?_0x164142[_0x52ecbf(0x7a6)][_0x52ecbf(0x6b6)](_0x164142['rpcs'][_0x4e5546][_0x52ecbf(0x200)])?_0x3917eb[_0x52ecbf(0x33f)]=!![]:_0x3917eb[_0x52ecbf(0x33f)]=![]:_0x3917eb[_0x52ecbf(0x33f)]=!![];_0x164142['noiframe']!==![]?_0x164142[_0x52ecbf(0x3ba)][_0x52ecbf(0x6b6)](_0x164142[_0x52ecbf(0x207)][_0x4e5546][_0x52ecbf(0x200)])?_0x3917eb[_0x52ecbf(0xa2d)]=!![]:_0x3917eb[_0x52ecbf(0xa2d)]=![]:_0x3917eb['iframe']=!![];if(_0x164142[_0x52ecbf(0x614)]!==![]){if(_0x164142[_0x52ecbf(0x614)]===!![])_0x3917eb[_0x52ecbf(0x28f)]=!![];else _0x164142[_0x52ecbf(0x614)][_0x52ecbf(0x6b6)](_0x164142[_0x52ecbf(0x207)][_0x4e5546][_0x52ecbf(0x200)])?_0x3917eb[_0x52ecbf(0x28f)]=!![]:_0x3917eb[_0x52ecbf(0x28f)]=![];}else _0x3917eb[_0x52ecbf(0x28f)]=!![];_0x164142[_0x52ecbf(0xa07)]!==![]&&(!_0x164142[_0x52ecbf(0xa07)][_0x52ecbf(0x6b6)](_0x164142['rpcs'][_0x4e5546][_0x52ecbf(0x200)])&&(_0x3917eb[_0x52ecbf(0x513)]=![],_0x3917eb['audio']=![]));(_0x164142[_0x52ecbf(0x566)]||_0x164142[_0x52ecbf(0x9c0)])&&(_0x3917eb['allowmidi']=_0x164142['midiIn']||_0x164142[_0x52ecbf(0x9c0)]);_0x3917eb[_0x52ecbf(0x712)]=!![];_0x164142[_0x52ecbf(0x3b9)]&&(_0x3917eb['downloads']=![]);_0x164142['codec']&&(_0x164142[_0x52ecbf(0x7af)]==_0x52ecbf(0x420)||_0x164142[_0x52ecbf(0x7af)]=='images'||_0x164142['codec']==_0x52ecbf(0x571))&&(_0x3917eb['allowwebp']=!![]);_0x164142[_0x52ecbf(0x64e)]&&(_0x3917eb[_0x52ecbf(0x64e)]=!![]);if(_0x164142[_0x52ecbf(0x8f5)][_0x52ecbf(0x6b6)](_0x164142[_0x52ecbf(0x207)][_0x4e5546][_0x52ecbf(0x200)])){warnlog(_0x52ecbf(0x32b)),_0x3917eb[_0x52ecbf(0x712)]=![],_0x3917eb['allowmidi']=![],_0x3917eb[_0x52ecbf(0xa2d)]=![],_0x3917eb[_0x52ecbf(0x33f)]=![],_0x3917eb[_0x52ecbf(0x513)]=![],_0x3917eb[_0x52ecbf(0x8ae)]=![],_0x3917eb[_0x52ecbf(0x9e1)]=![];;}}catch(_0x589d52){errorlog(_0x589d52);}try{_0x3917eb[_0x52ecbf(0x3ab)]={},_0x3917eb[_0x52ecbf(0x3ab)][_0x52ecbf(0x9a7)]=_0x164142[_0x52ecbf(0x9a7)],_0x3917eb[_0x52ecbf(0x3ab)][_0x52ecbf(0x47f)]=_0x164142[_0x52ecbf(0x47f)],_0x3917eb[_0x52ecbf(0x3ab)][_0x52ecbf(0x203)]=_0x164142[_0x52ecbf(0x4ba)],_0x3917eb[_0x52ecbf(0x3ab)][_0x52ecbf(0x970)]=_0x164142[_0x52ecbf(0x6b0)],_0x3917eb['info'][_0x52ecbf(0x77d)]=_0x164142[_0x52ecbf(0x58b)],_0x3917eb[_0x52ecbf(0x3ab)]['codec_url']=_0x164142[_0x52ecbf(0x7af)],_0x3917eb['info'][_0x52ecbf(0x790)]=_0x164142[_0x52ecbf(0x790)],_0x3917eb['info'][_0x52ecbf(0x953)]=_0x164142[_0x52ecbf(0x953)],_0x3917eb[_0x52ecbf(0x3ab)]['enhance_audio']=_0x164142[_0x52ecbf(0x22c)],_0x3917eb[_0x52ecbf(0x3ab)][_0x52ecbf(0x52f)]=_0x164142[_0x52ecbf(0x52f)],_0x3917eb['info'][_0x52ecbf(0x57e)]=_0x164142[_0x52ecbf(0x57e)],_0x3917eb['info'][_0x52ecbf(0xa76)]=_0x164142[_0x52ecbf(0xa76)];navigator&&navigator['userAgent']&&(_0x3917eb[_0x52ecbf(0x3ab)]['useragent']=navigator[_0x52ecbf(0x994)]);navigator&&navigator[_0x52ecbf(0x5db)]&&(_0x3917eb[_0x52ecbf(0x3ab)][_0x52ecbf(0x5db)]=navigator[_0x52ecbf(0x5db)]);if(_0x164142[_0x52ecbf(0x81e)]===![]){if(window[_0x52ecbf(0x491)]){_0x3917eb[_0x52ecbf(0x3ab)]['obs']=window[_0x52ecbf(0x491)][_0x52ecbf(0x840)];try{_0x3917eb=_0x164142[_0x52ecbf(0x815)](_0x3917eb,_0x4e5546);}catch(_0x7793b6){errorlog(_0x7793b6),warnUser(_0x7793b6[_0x52ecbf(0x526)]);}}else _0x3917eb['info'][_0x52ecbf(0x81f)]=![];}else _0x3917eb[_0x52ecbf(0x3ab)][_0x52ecbf(0x81f)]=![];}catch(_0x159d83){};_0x3917eb['guest']=![],_0x3917eb[_0x52ecbf(0x7dd)]=![],_0x3917eb['director']=![],_0x3917eb[_0x52ecbf(0x2f8)]=![],_0x3917eb[_0x52ecbf(0x953)]=![];_0x164142[_0x52ecbf(0x22c)]&&(_0x3917eb[_0x52ecbf(0x813)]=!![]);_0x164142['degrade']&&(_0x3917eb[_0x52ecbf(0x3a4)]=_0x164142[_0x52ecbf(0x3a4)]);_0x164142['solo']&&(_0x3917eb[_0x52ecbf(0x246)]=_0x164142[_0x52ecbf(0x246)]);_0x164142['keyframeRate']!==![]&&(_0x3917eb[_0x52ecbf(0x62d)]=_0x164142[_0x52ecbf(0x62d)]);if(_0x164142[_0x52ecbf(0x752)]){_0x3917eb[_0x52ecbf(0x752)]=!![],_0x3917eb['forceios']=_0x164142['forceios'];if(_0x164142[_0x52ecbf(0x54f)]&&_0x164142[_0x52ecbf(0x54f)]===_0x4e5546)_0x164142[_0x52ecbf(0x757)]();else{var _0x49fba2={};_0x49fba2[_0x52ecbf(0x647)]=[];for(var _0x4dbb67 in _0x164142['pcs']){_0x164142[_0x52ecbf(0x2f9)][_0x4dbb67]['coDirector']===!![]&&_0x49fba2[_0x52ecbf(0x647)]['push'](_0x4dbb67);}_0x49fba2[_0x52ecbf(0x647)][_0x52ecbf(0x7e9)]&&(_0x3917eb['directorSettings']=_0x49fba2);}}else{if(_0x164142['scene']!==![])_0x3917eb[_0x52ecbf(0x7dd)]=_0x164142[_0x52ecbf(0x7dd)],_0x164142[_0x52ecbf(0x896)]&&(_0x3917eb[_0x52ecbf(0x896)]=_0x164142[_0x52ecbf(0x896)]);else _0x164142['roomid']!==![]&&_0x164142[_0x52ecbf(0x7aa)]!==''&&(_0x3917eb['forceios']=_0x164142[_0x52ecbf(0x953)],_0x3917eb['guest']=!![]);}!_0x164142[_0x52ecbf(0x7aa)]&&(_0x164142[_0x52ecbf(0x779)]&&(playtone(![],_0x52ecbf(0x6bf)),showNotification(_0x52ecbf(0x2e3)))),_0x164142['rpcs'][_0x4e5546][_0x52ecbf(0x7f0)]=_0x3917eb,_0x164142[_0x52ecbf(0x7a9)](_0x3917eb,_0x4e5546)?log('successfully\x20requested\x20audio\x20and\x20video'):errorlog(_0x52ecbf(0x7b0)),pokeIframeAPI(_0x52ecbf(0x5b4),!![],_0x4e5546),pokeIframeAPI(_0x52ecbf(0x4dc),!![],_0x4e5546),pokeAPI(_0x52ecbf(0x6f8),_0x164142['rpcs'][_0x4e5546][_0x52ecbf(0x200)]);},_0x164142[_0x575be4(0x207)][_0x4e5546][_0x575be4(0x573)][_0x575be4(0x4bf)]=async _0x539473=>{var _0x31db03=_0x575be4;if(typeof _0x539473[_0x31db03(0x7db)]==_0x31db03(0x750)){if(!_0x164142['rpcs'][_0x4e5546]['imageElement']){_0x164142[_0x31db03(0x207)][_0x4e5546]['imageElement']=document['createElement'](_0x31db03(0x6e3)),_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x30d)][_0x31db03(0x2ae)]=0x10,_0x164142['rpcs'][_0x4e5546]['imageElement']['height']=0x9,_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x30d)][_0x31db03(0x96d)][_0x31db03(0x90b)]=_0x31db03(0x8be),_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x30d)][_0x31db03(0x7d6)]['UUID']=_0x4e5546;try{_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x30d)][_0x31db03(0x7d6)]['sid']=_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x200)];}catch(_0x248785){}_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x30d)][_0x31db03(0xa8d)]=![],_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x30d)][_0x31db03(0x406)](_0x31db03(0x4f4),function(_0xa8ae39){var _0x58dec9=_0x31db03;log(_0x58dec9(0x3e1));try{if(_0xa8ae39[_0x58dec9(0x21f)]||_0xa8ae39[_0x58dec9(0x3e4)]){_0xa8ae39[_0x58dec9(0x45a)]();var _0x241ac3=_0xa8ae39['currentTarget'][_0x58dec9(0x7d6)][_0x58dec9(0x2ef)];if('stats'in _0x164142[_0x58dec9(0x207)][_0x241ac3]){var [_0x3477af,_0x54efe4]=statsMenuCreator();printViewStats(_0x54efe4,_0x241ac3),_0x3477af['interval']=setInterval(printViewStats,_0x164142['statsInterval'],_0x54efe4,_0x241ac3);}return _0xa8ae39[_0x58dec9(0x25b)](),![];}}catch(_0x2a4fd5){errorlog(_0x2a4fd5);}}),updateMixer();}else _0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x30d)]['hidden']&&(_0x164142['rpcs'][_0x4e5546]['imageElement'][_0x31db03(0xa8d)]=![],_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x30d)]['style'][_0x31db03(0x1f8)]=_0x31db03(0x826));_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x30d)][_0x31db03(0x811)]=window['URL'][_0x31db03(0x3ca)](new Blob([new Uint8Array(_0x539473[_0x31db03(0x7db)])],{'type':_0x31db03(0x3e0)}));return;}try{var _0x3efb84=JSON[_0x31db03(0x90a)](_0x539473['data']);}catch(_0x30c7c3){_0x3efb84=_0x30c7c3[_0x31db03(0x7db)];}_0x3efb84[_0x31db03(0x2ef)]=_0x4e5546;if(_0x31db03(0x65e)in _0x3efb84){warnlog(_0x31db03(0x926)),_0x164142['closeRPC'](_0x4e5546,!![]);return;}else{if(_0x31db03(0x9fb)in _0x3efb84){var _0x53c352={};_0x53c352[_0x31db03(0x377)]=_0x3efb84['ping'],_0x164142[_0x31db03(0x7a9)](_0x53c352,_0x4e5546),warnlog(_0x31db03(0x85c));return;}else{if('pong'in _0x3efb84){warnlog(_0x31db03(0x8e0));return;}}}var _0x395429=![],_0x1a0c0a=![];if(_0x31db03(0x508)in _0x3efb84){if(_0x164142[_0x31db03(0x752)])!_0x164142[_0x31db03(0x56f)]&&warnUser(_0x31db03(0x686)+_0x3efb84[_0x31db03(0x508)]+_0x31db03(0x711),0x1388);else!_0x164142[_0x31db03(0x56f)]&&(_0x164142[_0x31db03(0x538)]?warnUser('The\x20remote\x20request\x20failed;\x20the\x20&remote\x20token\x20did\x20not\x20match\x20or\x20the\x20remote\x20user\x20does\x20not\x20allow\x20remote\x20control.',0x1388):warnUser(_0x31db03(0xa6b),0x1388));errorlog(_0x31db03(0x3ef)+_0x3efb84[_0x31db03(0x508)]+_0x31db03(0x235)+_0x164142[_0x31db03(0x752)]);}if(_0x31db03(0x40e)in _0x3efb84)_0x164142[_0x31db03(0xa86)](_0x3efb84);else{if(_0x31db03(0x408)in _0x3efb84)_0x3efb84[_0x31db03(0x2ef)]=_0x4e5546,log(_0x31db03(0x4c2)),_0x164142[_0x31db03(0x478)](_0x3efb84);else _0x31db03(0x59a)in _0x3efb84&&(_0x3efb84[_0x31db03(0x2ef)]=_0x4e5546,log(_0x31db03(0x27a)),_0x164142[_0x31db03(0x4f5)](_0x3efb84));}if(_0x31db03(0xa18)in _0x3efb84)try{_0x164142[_0x31db03(0x207)][_0x4e5546]['iframeSrc']=_0x3efb84[_0x31db03(0xa18)]||![];if(_0x164142[_0x31db03(0x752)]){if(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0xa18)]){var _0x20aa23=document[_0x31db03(0x567)](_0x31db03(0x91f));_0x20aa23[_0x31db03(0x737)]=_0x164142['rpcs'][_0x4e5546][_0x31db03(0xa18)],_0x20aa23[_0x31db03(0x737)]=_0x20aa23['innerHTML'],_0x20aa23=_0x20aa23['textContent']||_0x20aa23[_0x31db03(0x737)]||'',getById(_0x31db03(0x395)+_0x4e5546)[_0x31db03(0x6a5)]='Shared\x20website:\x20'+_0x20aa23+'',getById(_0x31db03(0x395)+_0x4e5546)[_0x31db03(0x645)][_0x31db03(0x2e0)](_0x31db03(0xa8d));}else getById(_0x31db03(0x395)+_0x4e5546)[_0x31db03(0x645)][_0x31db03(0x22f)](_0x31db03(0xa8d)),getById(_0x31db03(0x395)+_0x4e5546)['innerText']='';}else{if(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0xa18)]==![]){try{_0x164142['rpcs'][_0x4e5546][_0x31db03(0x89c)][_0x31db03(0x2e0)]();}catch(_0x2023bd){errorlog(_0x2023bd);}_0x164142['rpcs'][_0x4e5546]['iframeVideo']&&(_0x164142['rpcs'][_0x4e5546]['iframeVideo'][_0x31db03(0x2e0)](),_0x164142[_0x31db03(0x207)][_0x4e5546]['iframeVideo']=![]);_0x164142['rpcs'][_0x4e5546][_0x31db03(0x89c)]=![],_0x395429=!![];if(_0x164142['broadcast']!==![]){if(_0x164142[_0x31db03(0x8ae)]!==null)_0x164142[_0x31db03(0x207)][_0x4e5546]['streamID']===_0x164142[_0x31db03(0x8ae)]&&(_0x164142[_0x31db03(0x51e)]=![]);else _0x4e5546==_0x164142[_0x31db03(0x54f)]&&(_0x164142['broadcastIFrame']=![]);}}else{if(_0x164142[_0x31db03(0x8ae)]!==![]){if(_0x164142['broadcast']!==null){if(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x200)]===_0x164142[_0x31db03(0x8ae)]){if(_0x164142[_0x31db03(0x3ba)]===![])_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x89c)]=loadIframe(_0x3efb84[_0x31db03(0xa18)],_0x4e5546),_0x395429=!![],_0x164142[_0x31db03(0x51e)]=_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x89c)],_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x200)]&&(_0x164142['rpcs'][_0x4e5546][_0x31db03(0x89c)][_0x31db03(0x7d6)][_0x31db03(0x442)]=_0x164142[_0x31db03(0x207)][_0x4e5546]['streamID']);else _0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x200)]in _0x164142[_0x31db03(0x3ba)]&&(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x89c)]=loadIframe(_0x3efb84[_0x31db03(0xa18)],_0x4e5546),_0x395429=!![],_0x164142[_0x31db03(0x51e)]=_0x164142['rpcs'][_0x4e5546][_0x31db03(0x89c)],_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x200)]&&(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x89c)]['dataset'][_0x31db03(0x442)]=_0x164142['rpcs'][_0x4e5546][_0x31db03(0x200)]));}}else{if(_0x164142[_0x31db03(0x54f)]){if(_0x4e5546==_0x164142[_0x31db03(0x54f)]){if(_0x164142[_0x31db03(0x3ba)]===![])_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x89c)]=loadIframe(_0x3efb84[_0x31db03(0xa18)],_0x4e5546),_0x395429=!![],_0x164142[_0x31db03(0x51e)]=_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x89c)],_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x200)]&&(_0x164142['rpcs'][_0x4e5546][_0x31db03(0x89c)][_0x31db03(0x7d6)][_0x31db03(0x442)]=_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x200)]);else _0x164142['rpcs'][_0x4e5546][_0x31db03(0x200)]in _0x164142['noiframe']&&(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x89c)]=loadIframe(_0x3efb84['iframeSrc'],_0x4e5546),_0x395429=!![],_0x164142[_0x31db03(0x51e)]=_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x89c)],_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x200)]&&(_0x164142['rpcs'][_0x4e5546][_0x31db03(0x89c)][_0x31db03(0x7d6)][_0x31db03(0x442)]=_0x164142['rpcs'][_0x4e5546]['streamID']));}}}}else{if(_0x164142[_0x31db03(0x3ba)]===![])_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x89c)]=loadIframe(_0x3efb84[_0x31db03(0xa18)],_0x4e5546),_0x395429=!![],_0x164142[_0x31db03(0x207)][_0x4e5546]['streamID']&&(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x89c)][_0x31db03(0x7d6)]['sid']=_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x200)]);else _0x164142[_0x31db03(0x207)][_0x4e5546]['streamID']in _0x164142['noiframe']&&(_0x164142['rpcs'][_0x4e5546][_0x31db03(0x89c)]=loadIframe(_0x3efb84[_0x31db03(0xa18)],_0x4e5546),_0x395429=!![],_0x164142['rpcs'][_0x4e5546]['streamID']&&(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x89c)][_0x31db03(0x7d6)][_0x31db03(0x442)]=_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x200)]));}}}}catch(_0x13f70){errorlog(_0x13f70);}else{if('ifs'in _0x3efb84){if(_0x164142[_0x31db03(0x207)][_0x4e5546]['iframeEle'])try{_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0xa18)][_0x31db03(0x5d5)](_0x31db03(0x5c7))&&processIframeSyncUpdates(_0x3efb84['ifs'],_0x4e5546);}catch(_0x4004f6){errorlog(_0x4004f6);}}}if(_0x31db03(0x538)in _0x3efb84)try{_0x3efb84=await _0x164142['decodeRemote'](_0x3efb84);if(!_0x3efb84)return;}catch(_0x2b091f){errorlor(_0x2b091f);}_0x31db03(0x69d)in _0x3efb84&&processOBSCommand(_0x3efb84);if(_0x31db03(0x707)in _0x3efb84){var _0x31bf40=![],_0x51773b=![];_0x164142[_0x31db03(0x54f)]===_0x4e5546&&(_0x31bf40=!![],_0x31db03(0x26a)in _0x3efb84&&(_0x3efb84[_0x31db03(0x26a)]==!![]&&(_0x51773b=!![])));if(_0x164142[_0x31db03(0x752)]){if(_0x3efb84['chat']==_0x31db03(0x774))_0x164142[_0x31db03(0x779)]&&playtone(),getById(_0x31db03(0x204)+_0x4e5546)[_0x31db03(0x96d)][_0x31db03(0x622)]='block',_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0xa8c)][_0x31db03(0x96d)][_0x31db03(0x622)]='inline-block';else _0x3efb84[_0x31db03(0x707)]==_0x31db03(0x4f7)&&(getById('hands_'+_0x4e5546)[_0x31db03(0x96d)][_0x31db03(0x622)]=_0x31db03(0xa3c),_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0xa8c)][_0x31db03(0x96d)][_0x31db03(0x622)]=_0x31db03(0xa3c));}log(_0x31db03(0x2be)+_0x31bf40),getChatMessage(_0x3efb84['chat'],_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x9a7)],_0x31bf40,_0x51773b);}'pipe'in _0x3efb84&&_0x164142[_0x31db03(0x2dc)](_0x3efb84[_0x31db03(0x597)],_0x4e5546);_0x31db03(0x5ed)in _0x3efb84&&(_0x164142['autoSyncObject']=_0x3efb84[_0x31db03(0x5ed)],_0x164142[_0x31db03(0x4df)](_0x4e5546));'effectsData'in _0x3efb84&&log(_0x3efb84);if('group'in _0x3efb84){log(_0x3efb84);_0x3efb84[_0x31db03(0x285)]?_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x285)]=_0x3efb84[_0x31db03(0x285)][_0x31db03(0x2de)](','):_0x164142['rpcs'][_0x4e5546][_0x31db03(0x285)]=[];log(_0x164142[_0x31db03(0x207)][_0x4e5546]),_0x395429=!![];if(_0x164142[_0x31db03(0x752)]&&_0x164142[_0x31db03(0x207)][_0x4e5546]['streamID'])try{syncGroup(_0x164142['rpcs'][_0x4e5546]['group'],_0x4e5546);}catch(_0x67a035){errorlog(_0x67a035);}pokeIframeAPI(_0x31db03(0x602),_0x164142['rpcs'][_0x4e5546][_0x31db03(0x285)],_0x4e5546);}_0x31db03(0x554)in _0x3efb84&&(log(_0x3efb84),_0x164142[_0x31db03(0x586)]&&updateClosedCaptions(_0x3efb84,_0x164142[_0x31db03(0x207)][_0x4e5546]['label'],_0x4e5546));_0x31db03(0x641)in _0x3efb84&&_0x3efb84[_0x31db03(0x641)]!==![]&&(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x588)]=_0x3efb84['allowmidi']);_0x164142[_0x31db03(0x752)]&&(_0x31db03(0x68f)in _0x3efb84&&updateDirectorsAudio(_0x3efb84[_0x31db03(0x68f)],_0x4e5546),_0x31db03(0x7a2)in _0x3efb84&&gotDevicesRemote(_0x3efb84[_0x31db03(0x7a2)],_0x4e5546),_0x31db03(0x6ce)in _0x3efb84&&updateDirectorsVideo(_0x3efb84[_0x31db03(0x6ce)],_0x4e5546),_0x31db03(0x88c)in _0x3efb84&&updateRemoteRecordButton(_0x4e5546,_0x3efb84[_0x31db03(0x88c)]),_0x31db03(0x419)in _0x3efb84&&updateRemoteTimerButton(_0x4e5546,_0x3efb84[_0x31db03(0x419)]));'meshcast'in _0x3efb84&&meshcastWatch(_0x4e5546,_0x3efb84[_0x31db03(0x80c)]);_0x31db03(0x574)in _0x3efb84&&(_0x164142['directorList'][_0x31db03(0x1f3)](_0x4e5546)>=0x0&&(_0x164142[_0x31db03(0x87a)]&&lowerhand()));_0x31db03(0x64e)in _0x3efb84&&(_0x164142['directorList']['indexOf'](_0x4e5546)>=0x0&&(_0x164142[_0x31db03(0x64e)]=_0x3efb84[_0x31db03(0x64e)],pokeIframeAPI(_0x31db03(0x5d1),_0x164142['layout']),_0x395429=!![]));if('infocus'in _0x3efb84){if(_0x164142[_0x31db03(0x8ae)]===![]){log(_0x3efb84);if(_0x164142[_0x31db03(0x4f1)][_0x31db03(0x1f3)](_0x4e5546)>=0x0){if(_0x3efb84[_0x31db03(0xa69)]!==![]){if(_0x3efb84[_0x31db03(0xa69)]===_0x164142[_0x31db03(0x200)])_0x164142['infocus']=!![];else{if(_0x164142[_0x31db03(0x8e9)][_0x31db03(0x7e9)]&&!(_0x3efb84[_0x31db03(0xa69)]in _0x164142[_0x31db03(0x8e9)]))warnlog(_0x31db03(0x5b0)),_0x164142[_0x31db03(0xa69)]=![];else{if(_0x164142[_0x31db03(0x76a)]&&_0x164142[_0x31db03(0x76a)]!==_0x3efb84[_0x31db03(0xa69)])warnlog('NOT\x20VIEW\x20TARGET'),_0x164142[_0x31db03(0xa69)]=![];else{if(_0x164142[_0x31db03(0x7dd)]!==![]&&_0x164142['directorUUID']&&_0x164142[_0x31db03(0x54f)]in _0x164142[_0x31db03(0x207)]&&!_0x164142[_0x31db03(0x207)][_0x164142[_0x31db03(0x54f)]][_0x31db03(0x896)]&&_0x3efb84[_0x31db03(0xa69)]===_0x164142[_0x31db03(0x207)][_0x164142[_0x31db03(0x54f)]][_0x31db03(0x200)])warnlog('not\x20allowed\x20to\x20show\x20the\x20director'),_0x164142[_0x31db03(0xa69)]=![];else{for(var _0x2e2c69 in _0x164142[_0x31db03(0x207)]){if(_0x164142[_0x31db03(0x207)][_0x2e2c69][_0x31db03(0x200)]===_0x3efb84['infocus']){_0x164142[_0x31db03(0xa69)]=_0x2e2c69;break;}}warnlog(_0x31db03(0x5c0));}}}}}else _0x164142[_0x31db03(0xa69)]=![];_0x395429=!![],_0x1a0c0a=!![];}}}_0x31db03(0x518)in _0x3efb84&&(log(_0x3efb84),_0x164142['rpcs'][_0x4e5546][_0x31db03(0x3e9)][_0x31db03(0x518)]=_0x3efb84[_0x31db03(0x518)],isIFrame&&parent['postMessage']({'sensors':_0x3efb84[_0x31db03(0x518)]},_0x164142[_0x31db03(0x49f)]));'midi'in _0x3efb84&&playbackMIDI(_0x3efb84[_0x31db03(0x4f0)]);_0x31db03(0x867)in _0x3efb84&&_0x3efb84['fileList']&&addDownloadLink(_0x3efb84[_0x31db03(0x867)],_0x4e5546,_0x164142[_0x31db03(0x207)]);'rotate_video'in _0x3efb84&&(_0x164142['rpcs'][_0x4e5546][_0x31db03(0x7d7)]!=_0x3efb84[_0x31db03(0x68b)]&&(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x7d7)]=_0x3efb84[_0x31db03(0x68b)],_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x570)]&&(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x570)][_0x31db03(0xa71)]=_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x7d7)]),_0x395429=!![]));if(_0x31db03(0x3ab)in _0x3efb84){warnlog(_0x3efb84),_0x164142[_0x31db03(0x207)][_0x4e5546]['stats']['info']=_0x3efb84[_0x31db03(0x3ab)];_0x3efb84[_0x31db03(0x3ab)][_0x31db03(0x5ed)]&&(!_0x164142[_0x31db03(0x3b7)]&&(_0x164142[_0x31db03(0x3b7)]=_0x3efb84[_0x31db03(0x3ab)][_0x31db03(0x5ed)],_0x164142[_0x31db03(0x4df)](_0x4e5546)));if(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x4e1)]){if(_0x164142[_0x31db03(0x207)][_0x4e5546]['stats']['info'][_0x31db03(0x721)])_0x164142[_0x31db03(0x207)][_0x4e5546]['signalMeter'][_0x31db03(0x7d6)][_0x31db03(0x791)]='1';else _0x31db03(0x721)in _0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3e9)]['info']&&(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x4e1)]['dataset'][_0x31db03(0x791)]='0');}_0x31db03(0x28d)in _0x3efb84[_0x31db03(0x3ab)]&&(_0x3efb84[_0x31db03(0x3ab)][_0x31db03(0x28d)]!==![]?(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x8d0)]=_0x3efb84[_0x31db03(0x3ab)]['obs_control'],_0x164142['obsStateSync']('details',_0x4e5546)):_0x164142['rpcs'][_0x4e5546][_0x31db03(0x8d0)]=![]);if(_0x31db03(0x9a7)in _0x3efb84[_0x31db03(0x3ab)]){typeof _0x3efb84[_0x31db03(0x3ab)][_0x31db03(0x9a7)]==_0x31db03(0x854)?_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x9a7)]=sanitizeLabel(_0x3efb84[_0x31db03(0x3ab)]['label']):_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x9a7)]=![];applyStyleEffect(_0x4e5546);if(_0x164142['director']){var _0x348cde=getById(_0x31db03(0x4cb)+_0x4e5546);if(_0x348cde){_0x348cde[_0x31db03(0x96d)][_0x31db03(0x7e4)]=_0x31db03(0x600),_0x348cde['style']['top']=_0x31db03(0x5fd),_0x348cde[_0x31db03(0x96d)][_0x31db03(0x400)]='5px',_0x348cde['style'][_0x31db03(0x596)]='relative',_0x348cde[_0x31db03(0x96d)][_0x31db03(0x218)]='pointer',_0x348cde[_0x31db03(0x7d6)][_0x31db03(0x2ef)]=_0x4e5546;if(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x9a7)])_0x348cde[_0x31db03(0x737)]=_0x164142[_0x31db03(0x207)][_0x4e5546]['label'],_0x348cde['classList']['remove'](_0x31db03(0x274));else _0x164142['directorUUID']===_0x4e5546?(_0x348cde[_0x31db03(0x737)]=miscTranslations[_0x31db03(0x20e)],_0x348cde[_0x31db03(0x645)][_0x31db03(0x2e0)](_0x31db03(0x274))):(_0x348cde['innerText']=miscTranslations[_0x31db03(0x8cf)],_0x348cde[_0x31db03(0x645)][_0x31db03(0x22f)](_0x31db03(0x274)));_0x348cde[_0x31db03(0x32f)]=async function(_0x233b65){var _0x310c08=_0x31db03,_0x56f3ee=_0x233b65[_0x310c08(0x247)][_0x310c08(0x737)];_0x164142['rpcs'][_0x233b65[_0x310c08(0x247)][_0x310c08(0x7d6)][_0x310c08(0x2ef)]][_0x310c08(0x9a7)]===![]&&(_0x56f3ee='');window['focus']();var _0x3af74f=await promptAlt(miscTranslations[_0x310c08(0xa63)],![],![],_0x56f3ee);if(_0x3af74f!==null){_0x3af74f==''?(_0x3af74f=![],_0x164142[_0x310c08(0x54f)]===_0x4e5546?(_0x233b65[_0x310c08(0x247)][_0x310c08(0x737)]=miscTranslations['main-director'],_0x233b65[_0x310c08(0x247)]['classList'][_0x310c08(0x2e0)]('addALabel')):(_0x233b65[_0x310c08(0x247)][_0x310c08(0x737)]=miscTranslations[_0x310c08(0x8cf)],_0x233b65[_0x310c08(0x247)][_0x310c08(0x645)][_0x310c08(0x22f)]('addALabel'))):(_0x233b65['target'][_0x310c08(0x737)]=_0x3af74f,_0x233b65['target'][_0x310c08(0x645)]['remove']('addALabel'));var _0x2fa263={};_0x2fa263[_0x310c08(0x2ef)]=_0x233b65[_0x310c08(0x247)]['dataset']['UUID'],_0x2fa263[_0x310c08(0x8f7)]=!![],_0x2fa263['value']=_0x3af74f,_0x164142[_0x310c08(0x7a9)](_0x2fa263,_0x2fa263['UUID']);}};}}}if(_0x31db03(0x47f)in _0x3efb84[_0x31db03(0x3ab)]){_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x47f)]=parseInt(_0x3efb84[_0x31db03(0x3ab)]['order'])||0x0;if(_0x164142['director']){var _0x15a4d2=document[_0x31db03(0xa84)](_0x31db03(0x2ad)+_0x4e5546+'\x22]');_0x15a4d2[0x0]&&(_0x15a4d2[0x0]['innerText']=_0x164142['rpcs'][_0x4e5546][_0x31db03(0x47f)]);}}else _0x164142[_0x31db03(0x207)][_0x4e5546]['order']=0x0;if(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3d1)]){if('power_level'in _0x3efb84[_0x31db03(0x3ab)]){if(_0x3efb84[_0x31db03(0x3ab)][_0x31db03(0x466)]!==null){var _0x45f6b3=_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3d1)]['querySelector'](_0x31db03(0xa21));if(_0x45f6b3){var _0xacc49d=parseInt(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3e9)][_0x31db03(0x3ab)]['power_level'])||0x0;_0xacc49d>0x64&&(_0xacc49d=0x64);_0xacc49d<0x0&&(_0xacc49d=0x0);_0x45f6b3[_0x31db03(0x96d)][_0x31db03(0x93b)]=parseInt(_0xacc49d)+'%';if(_0xacc49d<0xa)_0x164142['rpcs'][_0x4e5546][_0x31db03(0x3d1)][_0x31db03(0x645)][_0x31db03(0x2e0)]('warn'),_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3d1)]['classList']['add']('alert');else _0xacc49d<0x19?(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3d1)]['classList']['remove'](_0x31db03(0x36f)),_0x164142['rpcs'][_0x4e5546]['batteryMeter']['classList'][_0x31db03(0x22f)](_0x31db03(0x3af))):(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3d1)][_0x31db03(0x645)][_0x31db03(0x2e0)](_0x31db03(0x36f)),_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3d1)][_0x31db03(0x645)][_0x31db03(0x2e0)]('warn'));_0xacc49d<0x64&&_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3d1)][_0x31db03(0x645)][_0x31db03(0x2e0)]('hidden'),_0x164142['rpcs'][_0x4e5546]['batteryMeter'][_0x31db03(0xa73)]=_0xacc49d+'%\x20battery\x20remaining';}}}'plugged_in'in _0x3efb84[_0x31db03(0x3ab)]&&(_0x3efb84[_0x31db03(0x3ab)][_0x31db03(0x205)]===![]?(_0x164142[_0x31db03(0x207)][_0x4e5546]['batteryMeter']['dataset'][_0x31db03(0x91b)]='0',_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3d1)][_0x31db03(0x645)]['remove'](_0x31db03(0xa8d))):_0x164142[_0x31db03(0x207)][_0x4e5546]['batteryMeter']['dataset'][_0x31db03(0x91b)]='1');}if(_0x31db03(0x1e6)in _0x3efb84[_0x31db03(0x3ab)]){_0x3efb84['info'][_0x31db03(0x1e6)]?_0x164142['rpcs'][_0x4e5546][_0x31db03(0x285)]=_0x3efb84[_0x31db03(0x3ab)][_0x31db03(0x1e6)]['split'](','):_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x285)]=[];if(_0x164142['director']){var _0x15a4d2=document['querySelectorAll'](_0x31db03(0x558)+_0x4e5546+'\x22]');for(var _0x2ed9bb=0x0;_0x2ed9bb<_0x15a4d2[_0x31db03(0x7e9)];_0x2ed9bb++){_0x15a4d2[_0x2ed9bb]['classList'][_0x31db03(0x2e0)](_0x31db03(0x6fa));for(var _0x50e8b9=0x0;_0x50e8b9<_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x285)][_0x31db03(0x7e9)];_0x50e8b9++){_0x15a4d2[_0x2ed9bb]['dataset'][_0x31db03(0x285)]===_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x285)][_0x50e8b9]&&_0x15a4d2[_0x2ed9bb][_0x31db03(0x645)][_0x31db03(0x22f)](_0x31db03(0x6fa));}}_0x164142[_0x31db03(0x207)][_0x4e5546]['group'][_0x31db03(0x7e9)]&&syncGroup(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x285)],_0x4e5546);}else _0x395429=!![];}_0x31db03(0xa47)in _0x3efb84['info']&&(_0x164142['rpcs'][_0x4e5546][_0x31db03(0x9a4)]=_0x3efb84[_0x31db03(0x3ab)][_0x31db03(0xa47)],_0x164142[_0x31db03(0x7dd)]===![]&&(_0x164142[_0x31db03(0x7aa)]&&((!_0x164142['cleanOutput']||_0x164142[_0x31db03(0x752)])&&(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0xa38)]?_0x164142['rpcs'][_0x4e5546][_0x31db03(0x9a4)]?_0x164142['rpcs'][_0x4e5546][_0x31db03(0xa38)][_0x31db03(0x96d)]['display']=_0x31db03(0x2f7):_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0xa38)][_0x31db03(0x96d)][_0x31db03(0x622)]=_0x31db03(0xa3c):(_0x164142[_0x31db03(0x207)][_0x4e5546]['remoteMuteElement']=getById(_0x31db03(0xa6c))['cloneNode'](!![]),_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0xa38)]['id']=_0x31db03(0x93d)+_0x4e5546,_0x164142[_0x31db03(0x207)][_0x4e5546]['remoteMuteState']?_0x164142['rpcs'][_0x4e5546]['remoteMuteElement'][_0x31db03(0x96d)][_0x31db03(0x622)]=_0x31db03(0x2f7):_0x164142['rpcs'][_0x4e5546]['remoteMuteElement']['style'][_0x31db03(0x622)]=_0x31db03(0xa3c),_0x395429=!![])))),pokeIframeAPI(_0x31db03(0x5ab),_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x9a4)],_0x4e5546));if(_0x164142[_0x31db03(0x752)]){if(_0x31db03(0x7d2)in _0x3efb84[_0x31db03(0x3ab)]){if(_0x3efb84['info'][_0x31db03(0x7d2)]==![]){var _0x15a4d2=document[_0x31db03(0xa84)](_0x31db03(0xa15)+_0x4e5546+'\x22]');_0x15a4d2[0x0]&&(_0x15a4d2[0x0][_0x31db03(0x46f)]=!![],_0x15a4d2[0x0][_0x31db03(0xa73)]=miscTranslations['Audio\x20processing\x20is\x20disabled\x20with\x20this\x20guest.\x20Can\x27t\x20mute\x20or\x20change\x20volume']);var _0x15a4d2=document[_0x31db03(0xa84)](_0x31db03(0x3d3)+_0x4e5546+'\x22]');_0x15a4d2[0x0]&&(_0x15a4d2[0x0][_0x31db03(0x46f)]=!![],_0x15a4d2[0x0][_0x31db03(0xa73)]=title=miscTranslations[_0x31db03(0x539)],_0x15a4d2[0x0][_0x31db03(0x96d)][_0x31db03(0x555)]=0.2);}}if(_0x31db03(0x9c9)in _0x3efb84[_0x31db03(0x3ab)]){if(_0x3efb84['info'][_0x31db03(0x9c9)]!==![]){var _0xcf3eaa=parseInt(_0x3efb84[_0x31db03(0x3ab)][_0x31db03(0x9c9)])||0x0;if(_0xcf3eaa===0x0){var _0x15a4d2=document[_0x31db03(0xa84)](_0x31db03(0xa15)+_0x4e5546+'\x22]');_0x15a4d2[0x0]&&(_0x15a4d2[0x0][_0x31db03(0x3c1)]=0x1,_0x15a4d2[0x0][_0x31db03(0x5b2)]=_0x31db03(0x6fa),_0x15a4d2[0x0]['children'][0x1][_0x31db03(0x6a5)]=miscTranslations[_0x31db03(0x54d)],_0x164142['rpcs'][_0x4e5546][_0x31db03(0x1fc)]=0x1),pokeIframeAPI(_0x31db03(0x9d7),!![],_0x4e5546);}else{var _0x15a4d2=document[_0x31db03(0xa84)](_0x31db03(0x3d3)+_0x4e5546+'\x22]');_0x15a4d2[0x0]&&(_0x15a4d2[0x0][_0x31db03(0x3c1)]=_0xcf3eaa,_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x7e6)]=_0xcf3eaa,remoteVolumeUI(_0x15a4d2[0x0]));}}}_0x31db03(0x356)in _0x3efb84[_0x31db03(0x3ab)]&&(_0x3efb84[_0x31db03(0x3ab)][_0x31db03(0x356)]&&updateRemoteSpeakerMute(_0x4e5546)),'directorDisplayMuted'in _0x3efb84['info']&&(_0x3efb84[_0x31db03(0x3ab)][_0x31db03(0x722)]&&updateRemoteDisplayMute(_0x4e5546));}'directorVideoMuted'in _0x3efb84['info']&&(_0x164142[_0x31db03(0x752)]?_0x3efb84[_0x31db03(0x3ab)][_0x31db03(0x4ae)]&&updateDirectorVideoMute(_0x4e5546):(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x4ae)]=_0x3efb84[_0x31db03(0x3ab)]['directorVideoMuted'],_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x4ae)]&&(_0x4e5546 in _0x164142[_0x31db03(0x207)]&&_0x164142[_0x31db03(0x3dc)](0x0,_0x4e5546))));_0x31db03(0x7bf)in _0x3efb84[_0x31db03(0x3ab)]&&(_0x164142['rpcs'][_0x4e5546][_0x31db03(0x9b3)]=_0x3efb84[_0x31db03(0x3ab)][_0x31db03(0x7bf)],_0x164142[_0x31db03(0x207)][_0x4e5546]['videoMuted']&&(_0x164142[_0x31db03(0x752)]&&(_0x164142[_0x31db03(0x207)][_0x4e5546]['remoteVideoMuteElement'][_0x31db03(0x96d)][_0x31db03(0x622)]=_0x31db03(0x2f7))),pokeIframeAPI(_0x31db03(0x7f2),_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x9b3)],_0x4e5546));_0x31db03(0x68b)in _0x3efb84[_0x31db03(0x3ab)]&&(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x7d7)]!=_0x3efb84['info'][_0x31db03(0x68b)]&&(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x7d7)]=_0x3efb84[_0x31db03(0x3ab)][_0x31db03(0x68b)],_0x164142['rpcs'][_0x4e5546][_0x31db03(0x570)]&&(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x570)]['rotated']=_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x7d7)]),_0x395429=!![]));_0x31db03(0x87d)in _0x3efb84[_0x31db03(0x3ab)]&&(_0x3efb84[_0x31db03(0x3ab)][_0x31db03(0x87d)]===![]&&document[_0x31db03(0xa84)]('container_'+_0x4e5546)[_0x31db03(0xa17)](_0x42c50a=>{var _0x3886d=_0x31db03;_0x42c50a[_0x3886d(0xa84)](_0x3886d(0x5de))[_0x3886d(0xa17)](_0x5e2d2d=>{var _0x309fe3=_0x3886d,_0x5bc305=soloLinkGenerator(_0x164142[_0x309fe3(0x207)][_0x4e5546][_0x309fe3(0x200)],![]);_0x5e2d2d[_0x309fe3(0x3c1)]=_0x5bc305,_0x5e2d2d[_0x309fe3(0x258)]=_0x5bc305,_0x5e2d2d['innerText']=_0x5bc305;});}));if(_0x4e5546===_0x164142[_0x31db03(0x54f)])try{_0x164142['rpcs'][_0x4e5546][_0x31db03(0x3e9)][_0x31db03(0x3ab)]['director']=!![],getById('container_'+_0x4e5546)[_0x31db03(0x645)][_0x31db03(0x22f)](_0x31db03(0x642));}catch(_0x291aae){}else{if(_0x164142['directorList'][_0x31db03(0x1f3)](_0x4e5546)>=0x0)try{_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3e9)]['info'][_0x31db03(0x719)]=!![],getById(_0x31db03(0xa11)+_0x4e5546)['classList'][_0x31db03(0x22f)]('directorBlue');}catch(_0x58cd8f){}}_0x1a0c0a=!![],pokeAPI('details',getDetailedState(_0x164142['rpcs'][_0x4e5546][_0x31db03(0x200)])),pokeIframeAPI(_0x31db03(0x9eb),_0x3efb84[_0x31db03(0x3ab)],_0x4e5546);}if(_0x31db03(0x296)in _0x3efb84){if(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3e9)]&&_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3e9)][_0x31db03(0x3ab)]){_0x31db03(0x8b6)in _0x3efb84[_0x31db03(0x296)]&&(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3e9)][_0x31db03(0x3ab)][_0x31db03(0x45b)]=_0x3efb84[_0x31db03(0x296)][_0x31db03(0x8b6)]);_0x31db03(0x947)in _0x3efb84[_0x31db03(0x296)]&&(_0x164142['rpcs'][_0x4e5546][_0x31db03(0x3e9)]['info'][_0x31db03(0x2a1)]=_0x3efb84[_0x31db03(0x296)][_0x31db03(0x947)]);if('cpu'in _0x3efb84[_0x31db03(0x296)]){_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3e9)][_0x31db03(0x3ab)]['cpuLimited']=_0x3efb84[_0x31db03(0x296)]['cpu'];if(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x4e1)]){if(_0x3efb84['miniInfo'][_0x31db03(0x791)])_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x4e1)][_0x31db03(0x7d6)]['cpu']='1';else _0x31db03(0x791)in _0x3efb84[_0x31db03(0x296)]&&(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x4e1)][_0x31db03(0x7d6)][_0x31db03(0x791)]='0');}}_0x31db03(0x4c4)in _0x3efb84['miniInfo']&&(_0x164142[_0x31db03(0x207)][_0x4e5546]['stats'][_0x31db03(0x3ab)][_0x31db03(0x22e)]=_0x3efb84[_0x31db03(0x296)][_0x31db03(0x4c4)]);_0x31db03(0x9bc)in _0x3efb84[_0x31db03(0x296)]&&(typeof _0x3efb84[_0x31db03(0x296)][_0x31db03(0x9bc)]==_0x31db03(0x228)?_0x164142[_0x31db03(0x207)][_0x4e5546]['stats'][_0x31db03(0x3ab)][_0x31db03(0x466)]=_0x3efb84[_0x31db03(0x296)]['bat']*0x64:_0x164142['rpcs'][_0x4e5546][_0x31db03(0x3e9)][_0x31db03(0x3ab)][_0x31db03(0x466)]=null);_0x31db03(0xa28)in _0x3efb84[_0x31db03(0x296)]&&(_0x164142['rpcs'][_0x4e5546][_0x31db03(0x3e9)]['info'][_0x31db03(0x205)]=_0x3efb84[_0x31db03(0x296)][_0x31db03(0xa28)]);'out'in _0x3efb84[_0x31db03(0x296)]&&'c'in _0x3efb84['miniInfo'][_0x31db03(0x92a)]&&(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3e9)]['info']['total_outbound_p2p_connections']=_0x3efb84[_0x31db03(0x296)]['out']['c'],_0x164142[_0x31db03(0x62b)]&&_0x164142['rpcs'][_0x4e5546][_0x31db03(0x2e2)]&&(_0x164142['rpcs'][_0x4e5546]['connectionDetails'][_0x31db03(0x737)]='🔗'+_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3e9)]['info'][_0x31db03(0x4a2)],_0x164142[_0x31db03(0x207)][_0x4e5546]['connectionDetails'][_0x31db03(0x7d6)][_0x31db03(0x3c1)]=_0x164142['rpcs'][_0x4e5546][_0x31db03(0x3e9)][_0x31db03(0x3ab)][_0x31db03(0x4a2)]));if(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3d1)]){if(_0x164142['rpcs'][_0x4e5546][_0x31db03(0x3e9)][_0x31db03(0x3ab)]&&_0x164142['rpcs'][_0x4e5546][_0x31db03(0x3e9)][_0x31db03(0x3ab)]['power_level']!==null){var _0x45f6b3=_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3d1)]['querySelector'](_0x31db03(0xa21));if(_0x45f6b3){var _0xacc49d=_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3e9)][_0x31db03(0x3ab)][_0x31db03(0x466)];_0xacc49d>0x64&&(_0xacc49d=0x64);_0xacc49d<0x0&&(_0xacc49d=0x0);_0x45f6b3[_0x31db03(0x96d)][_0x31db03(0x93b)]=parseInt(_0xacc49d)+'%';if(_0xacc49d<0xa)_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3d1)][_0x31db03(0x645)][_0x31db03(0x2e0)]('warn'),_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3d1)][_0x31db03(0x645)][_0x31db03(0x22f)](_0x31db03(0x36f));else _0xacc49d<0x19?(_0x164142[_0x31db03(0x207)][_0x4e5546]['batteryMeter']['classList'][_0x31db03(0x2e0)](_0x31db03(0x36f)),_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3d1)][_0x31db03(0x645)][_0x31db03(0x22f)](_0x31db03(0x3af))):(_0x164142[_0x31db03(0x207)][_0x4e5546]['batteryMeter'][_0x31db03(0x645)][_0x31db03(0x2e0)](_0x31db03(0x36f)),_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3d1)][_0x31db03(0x645)]['remove'](_0x31db03(0x3af)));_0xacc49d<0x64&&_0x164142[_0x31db03(0x207)][_0x4e5546]['batteryMeter'][_0x31db03(0x645)][_0x31db03(0x2e0)](_0x31db03(0xa8d)),_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3d1)][_0x31db03(0xa73)]=_0xacc49d+_0x31db03(0x576);}}_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3e9)][_0x31db03(0x3ab)]&&_0x31db03(0x205)in _0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3e9)]['info']&&_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3e9)][_0x31db03(0x3ab)][_0x31db03(0x205)]===![]?(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3d1)]['dataset'][_0x31db03(0x91b)]='0',_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3d1)][_0x31db03(0x645)][_0x31db03(0x2e0)]('hidden')):_0x164142['rpcs'][_0x4e5546][_0x31db03(0x3d1)][_0x31db03(0x7d6)][_0x31db03(0x91b)]='1';}}}if(_0x31db03(0x1e7)in _0x3efb84){_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x752)]=!![];if(_0x164142[_0x31db03(0x54f)]===_0x4e5546){_0x31db03(0x744)in _0x3efb84['directorSettings']&&(_0x164142['totalRoomBitrate']=parseInt(_0x3efb84['directorSettings'][_0x31db03(0x744)])||0x0,_0x395429=!![]);if(_0x3efb84[_0x31db03(0x1e7)][_0x31db03(0x7ef)]){if(_0x164142[_0x31db03(0x8ae)]===![]){if(_0x3efb84[_0x31db03(0x1e7)][_0x31db03(0x7ef)]===_0x164142['streamID'])_0x164142[_0x31db03(0xa69)]=!![];else for(var _0x2e2c69 in _0x164142[_0x31db03(0x207)]){if(_0x164142[_0x31db03(0x207)][_0x2e2c69]['streamID']===_0x3efb84[_0x31db03(0x1e7)][_0x31db03(0x7ef)]){if((_0x164142[_0x31db03(0x4f1)][_0x31db03(0x6b6)](_0x2e2c69)||_0x164142[_0x31db03(0x207)][_0x2e2c69][_0x31db03(0x752)])&&!_0x164142['showDirector'])break;_0x164142[_0x31db03(0xa69)]=_0x2e2c69;break;}}_0x395429=!![],_0x1a0c0a=!![];}}if(_0x31db03(0x896)in _0x3efb84[_0x31db03(0x1e7)]){if(_0x164142[_0x31db03(0x7dd)]!==![]){if(_0x164142[_0x31db03(0x896)])_0x164142['rpcs'][_0x4e5546]['showDirector']=_0x164142[_0x31db03(0x896)];else _0x3efb84[_0x31db03(0x1e7)]['showDirector']&&(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x896)]=_0x3efb84[_0x31db03(0x1e7)][_0x31db03(0x896)]);}}if(_0x164142['scene']!==![]){if(_0x3efb84['directorSettings'][_0x31db03(0x7dd)])for(var _0x2e2c69 in _0x3efb84[_0x31db03(0x1e7)][_0x31db03(0x7dd)]){setTimeout(function(_0x9d3b66){_0x164142['directorActions'](_0x9d3b66);},0x3e8,_0x3efb84[_0x31db03(0x1e7)][_0x31db03(0x7dd)][_0x2e2c69]);}if(_0x3efb84[_0x31db03(0x1e7)]['mute'])for(var _0x2e2c69 in _0x3efb84[_0x31db03(0x1e7)]['mute']){setTimeout(function(_0x5a62fe){var _0x4e96f6=_0x31db03;_0x164142[_0x4e96f6(0x25f)](_0x5a62fe);},0x3e8,_0x3efb84[_0x31db03(0x1e7)][_0x31db03(0xa10)][_0x2e2c69]);}}if(_0x31db03(0x647)in _0x3efb84[_0x31db03(0x1e7)])for(var _0x2ed9bb=0x0;_0x2ed9bb<_0x3efb84[_0x31db03(0x1e7)][_0x31db03(0x647)][_0x31db03(0x7e9)];_0x2ed9bb++){if(!_0x164142[_0x31db03(0x4f1)]['includes'](_0x3efb84['directorSettings'][_0x31db03(0x647)][_0x2ed9bb][_0x31db03(0x3ea)])){_0x164142[_0x31db03(0x4f1)][_0x31db03(0x68a)](_0x3efb84[_0x31db03(0x1e7)][_0x31db03(0x647)][_0x2ed9bb][_0x31db03(0x3ea)]());var _0xb559f4=getById(_0x31db03(0xa11)+_0x3efb84[_0x31db03(0x1e7)]['addCoDirector'][_0x2ed9bb][_0x31db03(0x3ea)]());_0xb559f4&&_0xb559f4[_0x31db03(0x645)][_0x31db03(0x22f)](_0x31db03(0x1fe));}}}}if(_0x164142[_0x31db03(0x4f1)][_0x31db03(0x1f3)](_0x4e5546)>=0x0){_0x164142[_0x31db03(0x7dd)]!==![]&&(_0x31db03(0x2b7)in _0x3efb84&&_0x164142[_0x31db03(0x25f)](_0x3efb84));_0x31db03(0x1e7)in _0x3efb84&&_0x3efb84[_0x31db03(0x1e7)][_0x31db03(0x927)]&&(!_0x164142[_0x31db03(0x752)]&&(_0x164142[_0x31db03(0x7dd)]===![]&&(_0x164142[_0x31db03(0x722)]=!![],_0x164142[_0x31db03(0x85b)]())));if(_0x31db03(0x479)in _0x3efb84){_0x164142[_0x31db03(0x5e6)]=_0x3efb84[_0x31db03(0x479)];for(var _0x40a9c9 in _0x164142[_0x31db03(0x5e6)]){syncSceneState(_0x40a9c9),syncOtherState(_0x40a9c9);}}}if('rejected'in _0x3efb84){if(_0x164142['director']){if(_0x3efb84[_0x31db03(0x508)]===_0x31db03(0x8d2))_0x164142[_0x31db03(0x479)]=![],pokeAPI(_0x31db03(0x752),![]),pokeIframeAPI(_0x31db03(0x752),![]),!_0x164142[_0x31db03(0x56f)]&&(warnUser(_0x31db03(0x72c),0xbb8),getById(_0x31db03(0x3f2))['innerHTML']=miscTranslations['not-the-director']);else{if(_0x3efb84[_0x31db03(0x508)]===_0x31db03(0x5e7))!_0x164142[_0x31db03(0x56f)]&&warnUser(_0x31db03(0x885),0xbb8);else{if(!_0x164142[_0x31db03(0x56f)]){if(_0x164142[_0x31db03(0x54f)]===_0x4e5546)warnUser(_0x31db03(0x579),0x1388);else _0x164142[_0x31db03(0x538)]&&!_0x164142[_0x31db03(0x752)]?warnUser(_0x31db03(0x849),0x1388):warnUser(_0x31db03(0x516),0x1388);}}}}warnlog(_0x31db03(0x3ef)+_0x3efb84[_0x31db03(0x508)]+',\x20isDirector:\x20'+_0x164142[_0x31db03(0x752)]);}if(_0x31db03(0x692)in _0x3efb84){if(_0x3efb84[_0x31db03(0x692)]===_0x31db03(0x8d2)){if(_0x164142[_0x31db03(0x752)]){try{_0x164142[_0x31db03(0x9a7)]===![]&&(document['title']=miscTranslations[_0x31db03(0x2aa)]);}catch(_0x2fbc69){errorlog(_0x2fbc69);};!_0x164142['cleanOutput']&&!_0x164142[_0x31db03(0x479)]&&(warnUser('The\x20director\x20approved\x20you\x20as\x20a\x20co-director',0xbb8),getById(_0x31db03(0x3f2))[_0x31db03(0x6a5)]=_0x31db03(0x472)),_0x164142[_0x31db03(0x479)]=!![],pokeAPI(_0x31db03(0x752),!![]),pokeIframeAPI(_0x31db03(0x752),!![]);}}}if(_0x31db03(0x47f)in _0x3efb84){_0x164142['rpcs'][_0x4e5546]['order']=parseInt(_0x3efb84[_0x31db03(0x47f)])||0x0;_0x4e5546 in _0x164142['pcs']&&(_0x164142['pcs'][_0x4e5546][_0x31db03(0x47f)]=parseInt(_0x3efb84[_0x31db03(0x47f)])||0x0);if(_0x164142['director']){var _0x15a4d2=document[_0x31db03(0xa84)](_0x31db03(0x2ad)+_0x4e5546+'\x22]');_0x15a4d2[0x0]&&(_0x15a4d2[0x0][_0x31db03(0x737)]=parseInt(_0x3efb84[_0x31db03(0x47f)])||0x0);}_0x395429=!![];}if(_0x31db03(0x8f7)in _0x3efb84){log('Change\x20Label');if(_0x31db03(0x3c1)in _0x3efb84){log('value\x20there');if(typeof _0x3efb84[_0x31db03(0x3c1)]=='string'){_0x164142['rpcs'][_0x4e5546][_0x31db03(0x9a7)]=sanitizeLabel(_0x3efb84[_0x31db03(0x3c1)]);_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x9a7)][_0x31db03(0x7e9)]==0x0&&(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x9a7)]=![]);applyStyleEffect(_0x4e5546);if(_0x164142[_0x31db03(0x752)]){var _0x15a4d2=getById('label_'+_0x4e5546);if(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x9a7)])_0x15a4d2[_0x31db03(0x737)]=_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x9a7)],_0x15a4d2['classList'][_0x31db03(0x2e0)](_0x31db03(0x274));else _0x164142[_0x31db03(0x54f)]===_0x4e5546?(_0x15a4d2[_0x31db03(0x737)]=miscTranslations[_0x31db03(0x20e)],_0x15a4d2['classList'][_0x31db03(0x2e0)]('addALabel')):(_0x15a4d2['innerText']=miscTranslations[_0x31db03(0x8cf)],_0x15a4d2['classList']['add'](_0x31db03(0x274)));}else _0x164142[_0x31db03(0x912)]&&(_0x395429=!![]);}else{_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x9a7)]=![],applyStyleEffect(_0x4e5546);if(_0x164142[_0x31db03(0x752)]){var _0x15a4d2=getById(_0x31db03(0x4cb)+_0x4e5546);_0x164142['directorUUID']===_0x4e5546?(_0x15a4d2[_0x31db03(0x737)]=miscTranslations['main-director'],_0x15a4d2[_0x31db03(0x645)][_0x31db03(0x2e0)](_0x31db03(0x274))):(_0x15a4d2['innerText']=miscTranslations['add-a-label'],_0x15a4d2[_0x31db03(0x645)][_0x31db03(0x22f)](_0x31db03(0x274)));}else _0x164142['showlabels']&&(_0x395429=!![]);}_0x1a0c0a=!![],pokeIframeAPI('remote-label-changed',_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x9a7)],_0x4e5546);}}_0x31db03(0x324)in _0x3efb84&&(log(_0x3efb84),_0x164142[_0x31db03(0x207)][_0x4e5546]['remoteMuteState']=_0x3efb84[_0x31db03(0x324)],_0x164142[_0x31db03(0x3dc)](![],_0x4e5546),_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x3e9)][_0x31db03(0x3ab)]&&(_0x164142['rpcs'][_0x4e5546]['stats'][_0x31db03(0x3ab)][_0x31db03(0xa47)]=_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x9a4)]),_0x164142[_0x31db03(0x7dd)]===![]&&(_0x164142[_0x31db03(0x7aa)]&&((!_0x164142[_0x31db03(0x56f)]||_0x164142[_0x31db03(0x752)])&&(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0xa38)]?_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x9a4)]?_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0xa38)][_0x31db03(0x96d)][_0x31db03(0x622)]=_0x31db03(0x2f7):_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0xa38)][_0x31db03(0x96d)][_0x31db03(0x622)]='none':(_0x164142['rpcs'][_0x4e5546][_0x31db03(0xa38)]=getById('muteStateTemplate')[_0x31db03(0x8bd)](!![]),_0x164142[_0x31db03(0x207)][_0x4e5546]['remoteMuteElement']['id']=_0x31db03(0x93d)+_0x4e5546,_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x9a4)]?_0x164142[_0x31db03(0x207)][_0x4e5546]['remoteMuteElement'][_0x31db03(0x96d)]['display']=_0x31db03(0x2f7):_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0xa38)]['style']['display']=_0x31db03(0xa3c),_0x395429=!![]),_0x1a0c0a=!![]))),pokeAPI(_0x31db03(0x8a2),_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x9a4)],_0x164142[_0x31db03(0x207)][_0x4e5546]['streamID']),pokeIframeAPI(_0x31db03(0x5ab),_0x3efb84['muteState'],_0x4e5546));if('requestSceneUpdate'in _0x3efb84){var _0x2870c4=getChromeVersion();_0x2870c4&&(_0x2870c4<0x50&&(_0x395429=!![]));}if('videoMuted'in _0x3efb84){log('videoMuted:\x20'+_0x3efb84[_0x31db03(0x9b3)]),_0x164142['rpcs'][_0x4e5546][_0x31db03(0x9b3)]=_0x3efb84[_0x31db03(0x9b3)];!_0x164142[_0x31db03(0x752)]?(_0x164142['rpcs'][_0x4e5546][_0x31db03(0x9b3)]?(!_0x164142[_0x31db03(0x798)]&&_0x164142['requestRateLimit'](0x0,_0x4e5546),_0x164142['rpcs'][_0x4e5546][_0x31db03(0x30d)]&&(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x30d)][_0x31db03(0xa8d)]=!![],_0x164142['rpcs'][_0x4e5546][_0x31db03(0x30d)]['style'][_0x31db03(0x1f8)]=_0x31db03(0xa8d))):updateIncomingVideoElement(_0x4e5546,!![],![]),_0x395429=!![]):_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x9b3)]?_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x7c4)][_0x31db03(0x96d)][_0x31db03(0x622)]=_0x31db03(0x3ae):_0x164142['rpcs'][_0x4e5546][_0x31db03(0x7c4)][_0x31db03(0x96d)][_0x31db03(0x622)]=_0x31db03(0xa3c);if(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0xa0f)]&&_0x164142[_0x31db03(0x207)][_0x4e5546]['videoMuted'])setTimeout(function(){activeSpeaker();},0x0);else!_0x164142[_0x31db03(0x207)][_0x4e5546]['videoMuted']&&setTimeout(function(){activeSpeaker();},0x0);_0x1a0c0a=!![],pokeAPI('remoteVideoMuted',_0x164142[_0x31db03(0x207)][_0x4e5546]['videoMuted'],_0x164142[_0x31db03(0x207)][_0x4e5546]['streamID']),pokeIframeAPI(_0x31db03(0x7f2),_0x3efb84['videoMuted'],_0x4e5546);}if('screenStopped'in _0x3efb84){if(_0x4e5546+_0x31db03(0x47c)in _0x164142[_0x31db03(0x207)]){_0x164142[_0x31db03(0x207)][_0x4e5546+'_screen']['virtualHangup']=_0x3efb84[_0x31db03(0x6a7)];if(_0x164142[_0x31db03(0x752)]){_0x164142[_0x31db03(0x207)][_0x4e5546+'_screen'][_0x31db03(0x9b3)]=!_0x3efb84['screenStopped'];try{pokeAPI(_0x31db03(0x90d),_0x164142['rpcs'][_0x4e5546+_0x31db03(0x47c)][_0x31db03(0x9b3)],_0x164142['rpcs'][_0x4e5546+_0x31db03(0x47c)][_0x31db03(0x200)]);}catch(_0x3577f9){}_0x164142[_0x31db03(0x207)][_0x4e5546]['videoMuted']?_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x7c4)][_0x31db03(0x96d)]['display']=_0x31db03(0x3ae):_0x164142['rpcs'][_0x4e5546][_0x31db03(0x7c4)][_0x31db03(0x96d)][_0x31db03(0x622)]=_0x31db03(0xa3c);}else _0x164142[_0x31db03(0x207)][_0x4e5546+_0x31db03(0x47c)][_0x31db03(0xa6d)]=_0x3efb84[_0x31db03(0x6a7)],_0x395429=!![];_0x1a0c0a=!![];}}_0x31db03(0x48f)in _0x3efb84&&(_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0x48f)]=_0x3efb84[_0x31db03(0x48f)],_0x395429=!![],pokeIframeAPI(_0x31db03(0xa8a),_0x3efb84[_0x31db03(0x48f)],_0x4e5546));if(_0x31db03(0x8b3)in _0x3efb84){if(!_0x164142[_0x31db03(0x752)]){if(_0x31db03(0x247)in _0x3efb84){if(_0x164142['directorList']['indexOf'](_0x4e5546)>=0x0){var _0x1f3ed7=_0x3efb84[_0x31db03(0x247)];if(_0x1f3ed7===!![])_0x164142[_0x31db03(0x4ae)]=_0x3efb84['directVideoMuted'];else _0x1f3ed7 in _0x164142[_0x31db03(0x207)]&&(_0x164142['rpcs'][_0x1f3ed7][_0x31db03(0x4ae)]=_0x3efb84[_0x31db03(0x8b3)],_0x164142[_0x31db03(0x207)][_0x1f3ed7][_0x31db03(0x4ae)]&&_0x164142['requestRateLimit'](0x0,_0x1f3ed7),_0x395429=!![]);}}}_0x1a0c0a=!![];}_0x31db03(0xa6d)in _0x3efb84&&(!_0x164142[_0x31db03(0x752)]&&(_0x164142[_0x31db03(0x4f1)][_0x31db03(0x1f3)](_0x4e5546)>=0x0&&(_0x4e5546 in _0x164142['rpcs']&&(_0x164142[_0x31db03(0x207)][_0x4e5546]['virtualHangup']=_0x3efb84[_0x31db03(0xa6d)],_0x164142[_0x31db03(0x207)][_0x4e5546][_0x31db03(0xa6d)]&&(_0x4e5546 in _0x164142[_0x31db03(0x207)]&&_0x164142[_0x31db03(0x3dc)](0x0,_0x4e5546)),_0x395429=!![]))),_0x1a0c0a=!![]);if(_0x31db03(0x546)in _0x3efb84){log(_0x31db03(0xa02));try{_0x164142[_0x31db03(0x683)](_0x4e5546,_0x3efb84[_0x31db03(0x546)]);}catch(_0x1e2f34){errorlog(_0x1e2f34);}}_0x31db03(0x21b)in _0x3efb84&&remoteStats(_0x3efb84,_0x4e5546);if(_0x395429)setTimeout(function(){updateMixer(),updateUserList();},0x1);else _0x1a0c0a&&updateUserList();},_0x164142['rpcs'][_0x4e5546][_0x575be4(0x573)][_0x575be4(0x935)]=()=>{var _0x35c6f8=_0x575be4;warnlog(_0x35c6f8(0x4ea));};},_0x164142[_0x1c3649(0x207)][_0x4e5546][_0x1c3649(0x461)]=_0x3f569d=>{var _0x32483b=_0x1c3649;warnlog(_0x32483b(0x89e)),_0x164142['onTrack'](_0x3f569d,_0x4e5546);},log(_0x1c3649(0x741));},_0x164142['setupScreenShareAddon']=function(_0x2f68be,_0x34896a){var _0x558bd7=_0x204338;log(_0x558bd7(0x66c)),!_0x164142['rpcs'][_0x34896a][_0x558bd7(0x4ec)]?(_0x164142[_0x558bd7(0x207)][_0x34896a][_0x558bd7(0x4ec)]=createVideoElement(),_0x164142[_0x558bd7(0x207)][_0x34896a+'_screen']={},_0x164142['rpcs'][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x2ff)]=_0x34896a,_0x164142[_0x558bd7(0x207)][_0x34896a][_0x558bd7(0x200)]&&(_0x164142['rpcs'][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x200)]=_0x164142['rpcs'][_0x34896a][_0x558bd7(0x200)]+':s'),_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x3e9)]={},_0x164142[_0x558bd7(0x207)][_0x34896a][_0x558bd7(0x3e9)][_0x558bd7(0x6b8)]=![],_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x948)]=function(){return new Promise((_0x15b3ec,_0x120b17)=>{_0x15b3ec([]);});},_0x164142['rpcs'][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x730)]=![],_0x164142[_0x558bd7(0x207)][_0x34896a+'_screen'][_0x558bd7(0x588)]=![],_0x164142['rpcs'][_0x34896a+_0x558bd7(0x47c)]['activelySpeaking']=![],_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)]['loudest']=![],_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x563)]=null,_0x164142['rpcs'][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x679)]=![],_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x7e0)]=-0x1,_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0xa6f)]=![],_0x164142[_0x558bd7(0x207)][_0x34896a+'_screen'][_0x558bd7(0x896)]=![],_0x164142['rpcs'][_0x34896a+'_screen'][_0x558bd7(0x5d6)]=![],_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x54b)]=![],_0x164142[_0x558bd7(0x207)][_0x34896a+'_screen'][_0x558bd7(0x3fe)]=-0x1,_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x7a7)]=![],_0x164142[_0x558bd7(0x207)][_0x34896a+'_screen'][_0x558bd7(0x570)]=![],_0x164142['rpcs'][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x30d)]=![],_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x76d)]=![],_0x164142[_0x558bd7(0x207)][_0x34896a+'_screen']['group']=[],_0x164142[_0x558bd7(0x207)][_0x34896a+'_screen'][_0x558bd7(0x9b3)]=![],_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x606)]=![],_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)]['directorVideoMuted']=![],_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0xa6d)]=![],_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x9a4)]=![],_0x164142[_0x558bd7(0x207)][_0x34896a+'_screen'][_0x558bd7(0xa38)]=![],_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x463)]=![],_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x9e6)]=![],_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x254)]=null,_0x164142['rpcs'][_0x34896a+_0x558bd7(0x47c)]['mutedState']=null,_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x4e2)]=null,_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x8f9)]=null,_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x208)]={},_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)]['scaleHeight']=![],_0x164142[_0x558bd7(0x207)][_0x34896a+'_screen'][_0x558bd7(0x559)]=![],_0x164142['rpcs'][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x903)]=![],_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x931)]=![],_0x164142['rpcs'][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x4e1)]=![],_0x164142['rpcs'][_0x34896a+'_screen'][_0x558bd7(0x307)]=null,_0x164142['rpcs'][_0x34896a+_0x558bd7(0x47c)]['screenIndexes']=![],_0x164142[_0x558bd7(0x207)][_0x34896a+'_screen'][_0x558bd7(0x48f)]=!![],_0x164142['rpcs'][_0x34896a+_0x558bd7(0x47c)]['directorVolumeState']=0x64,_0x164142['rpcs'][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x1fc)]=0x0,_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x91d)]=0x0,_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x265)]='1',_0x164142[_0x558bd7(0x207)][_0x34896a+'_screen'][_0x558bd7(0x8bf)]='1',_0x164142[_0x558bd7(0x207)][_0x34896a+'_screen']['obsControl']=![],_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x2db)]=0x0,_0x164142['rpcs'][_0x34896a+'_screen'][_0x558bd7(0x9a7)]=![],_0x164142[_0x558bd7(0x207)][_0x34896a+'_screen'][_0x558bd7(0x47f)]=![],_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x900)]=null,_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x1ff)]=null,_0x164142[_0x558bd7(0x207)][_0x34896a+'_screen'][_0x558bd7(0x852)]={},_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0xa18)]=![],_0x164142['rpcs'][_0x34896a+'_screen'][_0x558bd7(0x89c)]=![],_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x7d0)]=Date['now'](),_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x7f0)]=![],_0x164142['rpcs'][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x361)]=![],(_0x164142[_0x558bd7(0x322)]==0x2||_0x164142[_0x558bd7(0x322)]==0x4)&&(_0x164142[_0x558bd7(0x207)][_0x34896a+'_screen'][_0x558bd7(0x882)]=!![]),_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x570)]=_0x164142[_0x558bd7(0x207)][_0x34896a][_0x558bd7(0x4ec)],_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)]['videoElement'][_0x558bd7(0x7d6)][_0x558bd7(0x2ef)]=_0x34896a+_0x558bd7(0x47c),_0x164142[_0x558bd7(0x207)][_0x34896a+'_screen'][_0x558bd7(0x570)]['id']=_0x558bd7(0x3c2)+_0x34896a+_0x558bd7(0x47c),_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x200)]&&(_0x164142[_0x558bd7(0x207)][_0x34896a+'_screen'][_0x558bd7(0x570)]['dataset']['sid']=_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x200)]),_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x570)][_0x558bd7(0x2f3)]=![],_0x164142['rpcs'][_0x34896a+_0x558bd7(0x47c)]['voiceMeter']=![],setupIncomingScreenTracking(_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x570)],_0x34896a+_0x558bd7(0x47c)),_0x164142[_0x558bd7(0x207)][_0x34896a]['screenElement'][_0x558bd7(0x2f4)]=createMediaStream(),_0x2f68be[_0x558bd7(0xa17)](function(_0x139140){var _0x2d1915=_0x558bd7;_0x164142['rpcs'][_0x34896a]['screenElement']['srcObject'][_0x2d1915(0x5f2)](_0x139140);}),_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x570)][_0x558bd7(0x952)]=!![],_0x164142[_0x558bd7(0x207)][_0x34896a+'_screen'][_0x558bd7(0x570)]['setAttribute'](_0x558bd7(0x9a3),''),mediaSourceUpdated(_0x34896a+_0x558bd7(0x47c),_0x164142[_0x558bd7(0x207)][_0x34896a+_0x558bd7(0x47c)][_0x558bd7(0x200)])):_0x2f68be[_0x558bd7(0xa17)](function(_0x52e03e){var _0x17b43d=_0x558bd7,_0x20d8be=![];_0x164142[_0x17b43d(0x207)][_0x34896a][_0x17b43d(0x4ec)]['srcObject'][_0x17b43d(0x3d2)]()['forEach'](function(_0x38b725){_0x38b725['id']==_0x52e03e['id']&&(_0x20d8be=!![]);}),!_0x20d8be&&_0x164142[_0x17b43d(0x207)][_0x34896a][_0x17b43d(0x4ec)][_0x17b43d(0x2f4)][_0x17b43d(0x5f2)](_0x52e03e);});},_0x164142[_0x204338(0x332)]=function(_0x240d75,_0x4eb0d7){var _0x35c932=_0x204338;if(_0x164142[_0x35c932(0x8f5)]['includes'](_0x164142['rpcs'][_0x4eb0d7][_0x35c932(0x200)])){errorlog(_0x35c932(0x2c9));return;}var _0x56accf=[],_0x17597e=![];if(_0x240d75['streams']&&_0x240d75['streams'][0x0])_0x17597e=_0x240d75[_0x35c932(0x39e)][0x0],_0x56accf=_0x17597e[_0x35c932(0x3d2)]();else{if(_0x240d75[_0x35c932(0x79c)])_0x56accf[_0x35c932(0x68a)](_0x240d75['track']);else{errorlog(_0x35c932(0x4a4));return;}}if(_0x164142[_0x35c932(0x207)][_0x4eb0d7][_0x35c932(0x307)]){var _0x25b5dc=_0x164142[_0x35c932(0x207)][_0x4eb0d7][_0x35c932(0x307)][_0x35c932(0x3d2)]();_0x56accf['forEach'](function(_0x80cc45){var _0x1dc035=_0x35c932;_0x25b5dc[_0x1dc035(0xa17)](function(_0x2c3354){var _0x316fde=_0x1dc035;if(_0x80cc45['id']==_0x2c3354['id']){var _0x5b8519=_0x56accf['indexOf'](_0x80cc45);_0x5b8519>-0x1&&_0x56accf[_0x316fde(0x2a7)](_0x5b8519,0x1);}});});}var _0x91505f=![];if(_0x164142[_0x35c932(0x207)][_0x4eb0d7][_0x35c932(0x695)]&&_0x164142[_0x35c932(0x207)][_0x4eb0d7][_0x35c932(0x695)][_0x35c932(0x7e9)]){log(_0x35c932(0x4d6)+_0x164142[_0x35c932(0x207)][_0x4eb0d7][_0x35c932(0x695)]);var _0x46bc6d=_0x164142[_0x35c932(0x207)][_0x4eb0d7]['getReceivers']();for(var _0x29dbc4=0x0;_0x29dbc4<_0x46bc6d[_0x35c932(0x7e9)];_0x29dbc4++){for(var _0x1a2b4a=0x0;_0x1a2b4a<_0x56accf[_0x35c932(0x7e9)];_0x1a2b4a++){if(_0x46bc6d[_0x29dbc4][_0x35c932(0x79c)]&&_0x46bc6d[_0x29dbc4][_0x35c932(0x79c)]['id']==_0x56accf[_0x1a2b4a]['id'])for(var _0x231f6a=0x0;_0x231f6a<_0x164142[_0x35c932(0x207)][_0x4eb0d7][_0x35c932(0x695)]['length'];_0x231f6a++){if(_0x164142[_0x35c932(0x207)][_0x4eb0d7]['screenIndexes'][_0x231f6a]==_0x29dbc4){_0x91505f=!![];break;}}if(_0x91505f)break;}if(_0x91505f)break;}}log(_0x35c932(0x243)+_0x91505f);try{var _0x410e58=_0x56accf['length'];while(_0x410e58--){if(_0x56accf[_0x410e58][_0x35c932(0x79e)]==_0x35c932(0x513)){if(_0x164142[_0x35c932(0x310)]!==![]&&!_0x164142[_0x35c932(0x310)][_0x35c932(0x6b6)](_0x164142[_0x35c932(0x207)][_0x4eb0d7][_0x35c932(0x200)])){_0x56accf[_0x35c932(0x2a7)](_0x410e58,0x1);continue;}else{if(_0x164142[_0x35c932(0x207)][_0x4eb0d7][_0x35c932(0x7f0)]&&_0x164142['rpcs'][_0x4eb0d7][_0x35c932(0x7f0)][_0x35c932(0x28f)]&&_0x91505f)continue;else{if(_0x164142[_0x35c932(0x207)][_0x4eb0d7][_0x35c932(0x7f0)]&&!_0x164142[_0x35c932(0x207)][_0x4eb0d7]['settings'][_0x35c932(0x513)]){_0x56accf['splice'](_0x410e58,0x1);continue;}}}}else{if(_0x56accf[_0x410e58][_0x35c932(0x79e)]=='audio'){if(_0x164142[_0x35c932(0x7a6)]!==![]&&!_0x164142[_0x35c932(0x7a6)][_0x35c932(0x6b6)](_0x164142['rpcs'][_0x4eb0d7][_0x35c932(0x200)])){_0x56accf[_0x35c932(0x2a7)](_0x410e58,0x1);continue;}else{if(_0x164142[_0x35c932(0x207)][_0x4eb0d7]['settings']&&_0x164142[_0x35c932(0x207)][_0x4eb0d7][_0x35c932(0x7f0)]['allowscreen']&&_0x91505f)continue;else{if(_0x164142['rpcs'][_0x4eb0d7][_0x35c932(0x7f0)]&&!_0x164142[_0x35c932(0x207)][_0x4eb0d7][_0x35c932(0x7f0)][_0x35c932(0x33f)]){_0x56accf[_0x35c932(0x2a7)](_0x410e58,0x1);continue;}}}}}}}catch(_0x39d528){errorlog(_0x39d528);}if(!_0x56accf[_0x35c932(0x7e9)]){log(_0x35c932(0x9ed));return;}if(_0x91505f){_0x164142[_0x35c932(0x797)](_0x56accf,_0x4eb0d7);return;}_0x164142[_0x35c932(0x803)]!==![]&&playoutdelay(_0x4eb0d7);_0x164142[_0x35c932(0x308)](),_0x164142[_0x35c932(0x85b)]();_0x17597e&&(_0x17597e['onremovetrack']=function(_0x41774a){var _0x821e5=_0x35c932;try{warnlog(_0x821e5(0x966)),_0x164142[_0x821e5(0x207)][_0x4eb0d7]['streamSrc'][_0x821e5(0x3d2)]()[_0x821e5(0xa17)](_0x533461=>{var _0x523d69=_0x821e5;_0x533461['id']==_0x41774a[_0x523d69(0x79c)]['id']&&_0x164142[_0x523d69(0x207)][_0x4eb0d7][_0x523d69(0x307)][_0x523d69(0xa45)](_0x533461);}),_0x41774a[_0x821e5(0x79c)]['kind']==_0x821e5(0x513)?updateIncomingVideoElement(_0x4eb0d7,!![],![]):updateIncomingVideoElement(_0x4eb0d7,![],!![]),updateIncomingVideoElement(_0x4eb0d7),setTimeout(function(){updateMixer();},0x1);}catch(_0x1c0d6c){}},_0x17597e[_0x35c932(0x69b)]=function(_0x47518b){var _0x26e81f=_0x35c932;errorlog(_0x47518b);try{warnlog('Track\x20threw\x20an\x20error;\x20going\x20to\x20reconnect\x20it'),_0x164142[_0x26e81f(0x207)][_0x4eb0d7]['streamSrc'][_0x26e81f(0x3d2)]()[_0x26e81f(0xa17)](_0x157861=>{var _0x15e1ba=_0x26e81f;try{_0x157861['id']==_0x47518b['track']['id']&&_0x164142[_0x15e1ba(0x207)][_0x4eb0d7][_0x15e1ba(0x307)][_0x15e1ba(0xa45)](_0x157861);}catch(_0x454ff0){}}),_0x47518b[_0x26e81f(0x79c)][_0x26e81f(0x79e)]==_0x26e81f(0x513)?updateIncomingVideoElement(_0x4eb0d7,!![],![]):updateIncomingVideoElement(_0x4eb0d7,![],!![]),setTimeout(function(){updateMixer();},0x1);}catch(_0x562e6d){errorlog(_0x562e6d);}});createRichVideoElement(_0x4eb0d7);!_0x164142[_0x35c932(0x207)][_0x4eb0d7][_0x35c932(0x307)]&&(_0x164142[_0x35c932(0x207)][_0x4eb0d7][_0x35c932(0x307)]=createMediaStream(),mediaSourceUpdated(_0x4eb0d7,_0x164142['rpcs'][_0x4eb0d7]['streamID']));var _0x313af2=![],_0x58cc7b=![];_0x56accf[_0x35c932(0xa17)](_0x1441db=>{var _0x27dec4=_0x35c932;if(_0x1441db['kind']==_0x27dec4(0x513))_0x313af2=!![];else _0x1441db[_0x27dec4(0x79e)]==_0x27dec4(0x33f)&&(_0x58cc7b=!![]);log(_0x27dec4(0x2b0)),_0x164142[_0x27dec4(0x207)][_0x4eb0d7][_0x27dec4(0x307)][_0x27dec4(0x5f2)](_0x1441db);});isIFrame&&_0x164142[_0x35c932(0x3d6)]&&_0x56accf['forEach'](_0x1b7885=>{var _0x97b1f6=_0x35c932;if(_0x1b7885[_0x97b1f6(0x79e)]===_0x97b1f6(0x513))log(_0x97b1f6(0x436)),_0x1b7885[_0x97b1f6(0x83c)]=new MediaStreamTrackProcessor(_0x1b7885)[_0x97b1f6(0x703)]['getReader'](),_0x1b7885[_0x97b1f6(0x83c)]['read']()[_0x97b1f6(0x63c)](function _0x395220({done:_0x4e5c9d,value:_0x37746b}){var _0x3a068d=_0x97b1f6;if(_0x4e5c9d){_0x37746b&&_0x37746b['close']();return;}try{parent[_0x3a068d(0x545)]({'frame':_0x37746b,'UUID':_0x4eb0d7,'streamID':_0x164142[_0x3a068d(0x207)][_0x4eb0d7][_0x3a068d(0x200)],'trackID':_0x1b7885['id'],'kind':_0x3a068d(0x513)},_0x164142['sendframes'],[_0x37746b]);}catch(_0x23bcd5){_0x37746b[_0x3a068d(0x4f8)]();return;}_0x37746b['close'](),_0x1b7885[_0x3a068d(0x83c)][_0x3a068d(0x611)]()[_0x3a068d(0x63c)](_0x395220);});else _0x1b7885[_0x97b1f6(0x79e)]==='audio'&&(log(_0x97b1f6(0x23a)),_0x1b7885[_0x97b1f6(0x83c)]=new MediaStreamTrackProcessor(_0x1b7885)[_0x97b1f6(0x703)]['getReader'](),_0x1b7885['frameReader'][_0x97b1f6(0x611)]()[_0x97b1f6(0x63c)](function _0x972ff4({done:_0x3154d9,value:_0xf43df0}){var _0x34b31e=_0x97b1f6;if(_0x3154d9){_0xf43df0&&_0xf43df0[_0x34b31e(0x4f8)]();return;}try{parent[_0x34b31e(0x545)]({'frame':_0xf43df0,'UUID':_0x4eb0d7,'streamID':_0x164142['rpcs'][_0x4eb0d7][_0x34b31e(0x200)],'trackID':_0x1b7885['id'],'kind':'audio'},_0x164142[_0x34b31e(0x3d6)],[new ArrayBuffer(_0xf43df0)]);}catch(_0x488be9){_0xf43df0[_0x34b31e(0x4f8)]();return;}_0xf43df0[_0x34b31e(0x4f8)](),_0x1b7885[_0x34b31e(0x83c)][_0x34b31e(0x611)]()[_0x34b31e(0x63c)](_0x972ff4);}));});if(_0x58cc7b&&_0x313af2)updateIncomingVideoElement(_0x4eb0d7);else{if(_0x313af2)updateIncomingVideoElement(_0x4eb0d7,!![],![]);else _0x58cc7b&&updateIncomingVideoElement(_0x4eb0d7,![],!![]);}return _0x164142;if(_0x313af2){var _0x680ef4=![];if(_0x164142[_0x35c932(0x207)][_0x4eb0d7][_0x35c932(0x3e9)]&&_0x164142['rpcs'][_0x4eb0d7][_0x35c932(0x3e9)][_0x35c932(0x3ab)]&&_0x164142['rpcs'][_0x4eb0d7]['stats'][_0x35c932(0x3ab)]['Browser']&&_0x164142[_0x35c932(0x207)][_0x4eb0d7][_0x35c932(0x3e9)][_0x35c932(0x3ab)][_0x35c932(0x678)]===_0x35c932(0x47d)){if(_0x164142[_0x35c932(0x6b0)]){if(_0x164142[_0x35c932(0x752)]||_0x164142[_0x35c932(0x7aa)]!==![]&&_0x164142[_0x35c932(0x7aa)]!==''&&_0x164142[_0x35c932(0x7dd)]===![]){}else{if(_0x164142[_0x35c932(0x207)][_0x4eb0d7][_0x35c932(0x7e0)]!==![]){if(_0x164142[_0x35c932(0x207)][_0x4eb0d7][_0x35c932(0x7e0)]>=0x0&&_0x164142['rpcs'][_0x4eb0d7][_0x35c932(0x7e0)]<_0x164142[_0x35c932(0x6b0)]){}else _0x680ef4={},_0x680ef4[_0x35c932(0x6b0)]=_0x164142[_0x35c932(0x6b0)],_0x164142['rpcs'][_0x4eb0d7][_0x35c932(0x7e0)]=_0x164142['bitrate'],log(_0x35c932(0xa0d));}else _0x680ef4={},_0x680ef4['bitrate']=_0x164142['bitrate'],_0x164142[_0x35c932(0x207)][_0x4eb0d7][_0x35c932(0x7e0)]=_0x164142[_0x35c932(0x6b0)],log(_0x35c932(0xa0d));}}}if(_0x164142[_0x35c932(0x8b9)])_0x680ef4==![]&&(_0x680ef4={}),_0x680ef4[_0x35c932(0x8b9)]=parseFloat(_0x164142[_0x35c932(0x8b9)]);else(_0x164142['viewheight']||_0x164142[_0x35c932(0x63a)])&&_0x164142['requestResolution'](_0x4eb0d7,_0x164142[_0x35c932(0x63a)]||0x1000,_0x164142[_0x35c932(0x959)]||0x870);_0x680ef4&&_0x164142['sendRequest'](_0x680ef4,_0x4eb0d7);}if(_0x164142['audioEffects']===!![]){var _0x138ea0=function(_0x1112d3){var _0x1682a9=function(_0x14bfbf){var _0x39b7fe=_0x5f31;if(!(_0x14bfbf in _0x164142['rpcs']))return;if(!_0x164142['rpcs'][_0x14bfbf][_0x39b7fe(0x570)])return;log(_0x39b7fe(0x428));try{var _0x85bdb9=_0x164142[_0x39b7fe(0x207)][_0x14bfbf]['videoElement'][_0x39b7fe(0xa47)];_0x164142[_0x39b7fe(0x207)][_0x14bfbf][_0x39b7fe(0x570)][_0x39b7fe(0xa47)]=![];}catch(_0x2dd21d){warnlog(_0x2dd21d);}try{_0x164142[_0x39b7fe(0x207)][_0x14bfbf][_0x39b7fe(0x570)]['removeEventListener']('play',_0x1682a9);}catch(_0x540e0f){warnlog(_0x540e0f);}if(_0x164142[_0x39b7fe(0x6d8)]&&_0x164142[_0x39b7fe(0x533)][_0x39b7fe(0x87c)]=='suspended')try{_0x164142[_0x39b7fe(0x533)][_0x39b7fe(0x58a)]();}catch(_0x32a51d){warnlog(_0x32a51d);}updateIncomingVideoElement(_0x4eb0d7,![],!![]);try{_0x164142['rpcs'][_0x14bfbf]['videoElement'][_0x39b7fe(0xa47)]=_0x85bdb9,_0x39b7fe(0x430)in _0x164142[_0x39b7fe(0x207)][_0x14bfbf]&&clearInterval(_0x164142['rpcs'][_0x1112d3][_0x39b7fe(0x430)]),delete _0x164142['rpcs'][_0x14bfbf][_0x39b7fe(0x430)];}catch(_0x38171b){warnlog(_0x38171b);}};return _0x1682a9(_0x1112d3);};_0x164142['audioCtx'][_0x35c932(0x87c)]=='running'&&(_0x164142['firstPlayTriggered']=!![]);if('eventPlayActive'in _0x164142[_0x35c932(0x207)][_0x4eb0d7]){}else _0x164142[_0x35c932(0x6d8)]==![]?_0x164142[_0x35c932(0x207)][_0x4eb0d7][_0x35c932(0x430)]=setInterval(function(_0x53a989){var _0x22474f=_0x35c932;_0x53a989 in _0x164142[_0x22474f(0x207)]?(log(_0x22474f(0x358)),_0x164142[_0x22474f(0x6d8)]&&(clearInterval(_0x164142[_0x22474f(0x207)][_0x53a989][_0x22474f(0x430)]),_0x164142[_0x22474f(0x207)][_0x53a989][_0x22474f(0x570)]['addEventListener'](_0x22474f(0x5ef),_0x138ea0(_0x53a989)))):log(_0x22474f(0x542));},0x3e8,_0x4eb0d7):(!_0x164142[_0x35c932(0x207)][_0x4eb0d7][_0x35c932(0x430)]&&(_0x164142[_0x35c932(0x207)][_0x4eb0d7][_0x35c932(0x430)]=!![]),_0x164142[_0x35c932(0x207)][_0x4eb0d7][_0x35c932(0x570)][_0x35c932(0x406)](_0x35c932(0x5ef),_0x138ea0(_0x4eb0d7)));}_0x164142[_0x35c932(0x207)][_0x4eb0d7][_0x35c932(0x570)]['rotated']=_0x164142['rpcs'][_0x4eb0d7][_0x35c932(0x7d7)],setTimeout(function(){updateMixer();},0x1),_0x164142[_0x35c932(0x308)](),_0x164142[_0x35c932(0x85b)](),updateUserList();},_0x164142;}());function getMeshcastCanvasTrack(){var _0x268760=_0x13826c;!session['mc']&&errorlog(_0x268760(0x33a));!session['mc'][_0x268760(0x1ff)]&&(session['mc'][_0x268760(0x1ff)]=document['createElement']('canvas'),session['mc'][_0x268760(0x1ff)][_0x268760(0x2ae)]=0x140,session['mc'][_0x268760(0x1ff)][_0x268760(0x93b)]=0xb4);!session['mc'][_0x268760(0x73c)]&&(session['mc'][_0x268760(0x73c)]=session['mc'][_0x268760(0x1ff)][_0x268760(0x7ce)]('2d',{'alpha':![]}),session['mc'][_0x268760(0x73c)][_0x268760(0x746)]=_0x268760(0x5e1),session['mc']['ctx'][_0x268760(0x37f)](0x0,0x0,session['mc']['canvas']['width'],session['mc'][_0x268760(0x1ff)][_0x268760(0x93b)]));!session['mc'][_0x268760(0x5fe)]&&(function _0x238609(){var _0x48af91=_0x268760;session['mc'][_0x48af91(0x73c)][_0x48af91(0x37f)](0x0,0x0,session['mc'][_0x48af91(0x1ff)]['width'],session['mc'][_0x48af91(0x1ff)][_0x48af91(0x93b)]),setTimeout(_0x238609,0xfa);}(),session['mc'][_0x268760(0x5fe)]=session['mc'][_0x268760(0x1ff)][_0x268760(0x706)](0x4));var _0x5258a8=session['mc'][_0x268760(0x5fe)][_0x268760(0x8de)]();if(_0x5258a8[_0x268760(0x7e9)])return _0x5258a8[0x0];return errorlog(_0x268760(0x48c)),![];}var meshcastServer=![];function selectMeshcast(_0x57cf25){var _0x5df9d1=_0x13826c;meshcastServer={};var _0xd20945=_0x57cf25[_0x5df9d1(0x796)],_0x496a40=_0x57cf25[_0x5df9d1(0x492)];meshcastServer['url']=_0x496a40[_0xd20945][_0x5df9d1(0x4d4)],meshcastServer['code']=_0x496a40[_0xd20945]['code'];}async function meshcast(_0x1f6b93=![]){var _0x149c43=_0x13826c;async function _0xca3407(_0x5b1d81,_0x568e79){var _0x460b43=_0x5f31;const _0x3f0643=new XMLHttpRequest();_0x3f0643['onload']=function(){var _0x5515f4=_0x5f31;if(parseFloat(this[_0x5515f4(0x8ca)])>=0x0){if(parseFloat(this[_0x5515f4(0x8ca)])>0x32)_0x5b1d81[_0x5515f4(0x6a5)]+=_0x5515f4(0x24b);else{if(parseFloat(this[_0x5515f4(0x8ca)])>0xa)_0x5b1d81[_0x5515f4(0x6a5)]+=_0x5515f4(0x3f1);else{if(parseFloat(this[_0x5515f4(0x8ca)])>0x0)_0x5b1d81[_0x5515f4(0x6a5)]+=_0x5515f4(0x549);else{var _0x104a37=![];_0x5b1d81[_0x5515f4(0x2b6)]&&(_0x104a37=!![]),_0x5b1d81['disabled']=!![],_0x5b1d81[_0x5515f4(0x6a5)]+=_0x5515f4(0x74c),document['getElementById'](_0x5515f4(0x89d))[_0x5515f4(0x734)](_0x5b1d81),_0x104a37&&(document[_0x5515f4(0x3f4)]('edgelist')['options'][0x0][_0x5515f4(0x2b6)]=!![]);}}}}else{var _0x104a37=![];_0x5b1d81['selected']&&(_0x104a37=!![]),document['getElementById'](_0x5515f4(0x89d))[_0x5515f4(0x734)](_0x5b1d81),_0x5b1d81[_0x5515f4(0x6a5)]+='\x20(fail)',_0x5b1d81[_0x5515f4(0x46f)]=!![],_0x104a37&&(document[_0x5515f4(0x3f4)](_0x5515f4(0x89d))['options'][0x0]['selected']=!![]);}session[_0x5515f4(0x752)]&&!session[_0x5515f4(0x56f)]&&!session['cleanDirector']&&document[_0x5515f4(0x3f4)](_0x5515f4(0x63f))[_0x5515f4(0x645)][_0x5515f4(0x2e0)](_0x5515f4(0xa8d));},_0x3f0643[_0x460b43(0x69b)]=function(){var _0x5c4ba8=_0x460b43,_0xf70c0d=![];_0x5b1d81[_0x5c4ba8(0x2b6)]&&(_0xf70c0d=!![]),document[_0x5c4ba8(0x3f4)](_0x5c4ba8(0x89d))[_0x5c4ba8(0x734)](_0x5b1d81),_0x5b1d81['innerHTML']+=_0x5c4ba8(0x74c),_0x5b1d81['disabled']=!![],_0xf70c0d&&(document[_0x5c4ba8(0x3f4)](_0x5c4ba8(0x89d))['options'][0x0]['selected']=!![]);},_0x3f0643[_0x460b43(0x39f)](_0x460b43(0x2df),_0x568e79,!![]),_0x3f0643[_0x460b43(0x677)]=0x3e8,_0x3f0643[_0x460b43(0x410)]=function(_0x5ca966){var _0x260ffa=_0x460b43,_0x104827=![];_0x5b1d81[_0x260ffa(0x2b6)]&&(_0x104827=!![]),document[_0x260ffa(0x3f4)](_0x260ffa(0x89d))['appendChild'](_0x5b1d81),_0x5b1d81[_0x260ffa(0x6a5)]+=_0x260ffa(0x6e7),_0x104827&&(document[_0x260ffa(0x3f4)](_0x260ffa(0x89d))[_0x260ffa(0x492)][0x0][_0x260ffa(0x2b6)]=!![]);},_0x3f0643[_0x460b43(0x640)]();}async function _0x5239e3(_0x5f4a2c=![]){var _0x2ac2ec=_0x5f31,_0x3db448=new Date(),_0x145c80=_0x3db448[_0x2ac2ec(0x56b)]();urlParams[_0x2ac2ec(0x2b9)]('tz')&&(_0x145c80=parseInt(urlParams[_0x2ac2ec(0x9e0)]('tz'))||_0x145c80),fetch('https://meshcast.io/servers.json?ts='+Date[_0x2ac2ec(0xa19)]())[_0x2ac2ec(0x63c)](_0x9e5b06=>_0x9e5b06['json']())[_0x2ac2ec(0x63c)](async _0x17cb30=>{var _0x1b09f4=_0x2ac2ec;for(var _0x1be8ed=0x0;_0x1be8ed<_0x17cb30[_0x1b09f4(0x7e9)];_0x1be8ed++){var _0x302de3=Math[_0x1b09f4(0x8a7)](_0x17cb30[_0x1be8ed]['tz']-_0x145c80);Math[_0x1b09f4(0x8a7)](_0x302de3-0x3c*0x18)<_0x302de3&&(_0x302de3=Math['abs'](_0x302de3-0x3c*0x18)),_0x17cb30[_0x1be8ed]['delta']=_0x302de3,session[_0x1b09f4(0x80c)]!==_0x17cb30[_0x1be8ed][_0x1b09f4(0x73a)]&&(_0x17cb30[_0x1be8ed][_0x1b09f4(0x221)]+=0x3e8);}_0x17cb30[_0x1b09f4(0x4eb)](compare_deltas);for(var _0x1be8ed=0x0;_0x1be8ed<_0x17cb30[_0x1b09f4(0x7e9)];_0x1be8ed++){var _0x4422af=document[_0x1b09f4(0x567)](_0x1b09f4(0x4aa));_0x4422af[_0x1b09f4(0x73a)]=_0x17cb30[_0x1be8ed][_0x1b09f4(0x73a)],_0x4422af[_0x1b09f4(0x4d4)]=_0x17cb30[_0x1be8ed][_0x1b09f4(0x4d4)],_0x4422af[_0x1b09f4(0x6a5)]=_0x17cb30[_0x1be8ed][_0x1b09f4(0x9a7)],_0xca3407(_0x4422af,_0x17cb30[_0x1be8ed][_0x1b09f4(0x4d4)]+_0x1b09f4(0x355)),document[_0x1b09f4(0x3f4)](_0x1b09f4(0x89d))['appendChild'](_0x4422af);}meshcastServer=_0x17cb30[0x0],_0x5f4a2c&&_0x5f4a2c();});}if(_0x1f6b93){_0x5239e3();return;}if(!session[_0x149c43(0x80c)])return;if(!session[_0x149c43(0x570)]['srcObject']||!session[_0x149c43(0x570)][_0x149c43(0x2f4)][_0x149c43(0x3d2)]()[_0x149c43(0x7e9)])return;if(session['meshcastSettings']!==![])return;session[_0x149c43(0x523)]=null,errorlog(_0x149c43(0x9bd));var _0x4d5295=![];if(session['screenShareState']&&session[_0x149c43(0x63d)])_0x4d5295=session[_0x149c43(0x63d)];else session[_0x149c43(0x432)]&&(_0x4d5295=session[_0x149c43(0x432)]);function _0x7ffa57(_0x3e9807){var _0x30ed4d=_0x149c43;warnlog(_0x30ed4d(0x35c)),warnlog(_0x3e9807);try{session['mc']['createOffer']()[_0x30ed4d(0x63c)](function(_0xf77ae){var _0x508963=_0x30ed4d;return _0xf77ae['sdp']=CodecsHandler[_0x508963(0x989)](_0xf77ae[_0x508963(0x2ee)],{'stereo':0x1}),!_0x4d5295&&(_0xf77ae[_0x508963(0x2ee)]=_0xf77ae[_0x508963(0x2ee)][_0x508963(0x276)](/42001f/gi,_0x508963(0x55c)),_0xf77ae[_0x508963(0x2ee)]=_0xf77ae[_0x508963(0x2ee)]['replace'](/420029/gi,_0x508963(0x55c))),warnlog(_0xf77ae),session['mc'][_0x508963(0x2a5)](_0xf77ae);})[_0x30ed4d(0x63c)](function(){var _0x349d7f=_0x30ed4d;log(session['mc'][_0x349d7f(0x462)]),_0x179006(session['mc'][_0x349d7f(0x462)][_0x349d7f(0x2ee)],_0x349d7f(0x2ee));})[_0x30ed4d(0x341)](function(_0x2ba2d2){});}catch(_0x157244){errorlog(_0x157244);}}try{var _0x28e60e=[],_0x59a1a5=session[_0x149c43(0x60d)](0xe);async function _0x55eac7(){var _0x1db00a=_0x149c43;document[_0x1db00a(0x3f4)](_0x1db00a(0x89d))[_0x1db00a(0x46f)]=!![],document[_0x1db00a(0x3f4)](_0x1db00a(0x89d))[_0x1db00a(0xa73)]='Can\x27t\x20change\x20the\x20location\x20once\x20started\x20streaming';!session[_0x1db00a(0x6fd)]&&await chooseBestTURN();try{session['mc']=new RTCPeerConnection(session['configuration']),session['mc'][_0x1db00a(0x3e9)]={},session['mc']['maxBandwidth']=null,session['mc'][_0x1db00a(0x8b9)]=![];}catch(_0x5ed06d){!session[_0x1db00a(0x56f)]&&warnUser(_0x1db00a(0x77e));}try{var _0x1e4782=![];session[_0x1db00a(0x570)][_0x1db00a(0x2f4)]&&(_0x1e4782=session['videoElement'][_0x1db00a(0x2f4)][_0x1db00a(0x96b)]());if(!_0x1e4782||!_0x1e4782['length']){var _0x42eb21=new AudioContext(),_0x500c70=_0x42eb21[_0x1db00a(0x45e)]();_0x500c70[_0x1db00a(0x5cc)][_0x1db00a(0x96b)]()[_0x1db00a(0xa17)](_0x3dbad5=>{_0x1e4782=_0x3dbad5;});}else _0x1e4782=_0x1e4782[0x0];if(session[_0x1db00a(0x6eb)]&&_0x1e4782[_0x1db00a(0x79e)]===_0x1db00a(0x33f))try{_0x1e4782['contentHint']=session[_0x1db00a(0x6eb)];}catch(_0x50c16f){errorlog(_0x50c16f);}session['mc'][_0x1db00a(0x5f2)](_0x1e4782);var _0x1e4782=![];session['videoElement'][_0x1db00a(0x2f4)]&&(_0x1e4782=session[_0x1db00a(0x570)][_0x1db00a(0x2f4)][_0x1db00a(0x8de)]());!_0x1e4782||!_0x1e4782['length']?_0x1e4782=getMeshcastCanvasTrack():_0x1e4782=_0x1e4782[0x0];if(session[_0x1db00a(0x48f)]&&session[_0x1db00a(0x8fd)]&&_0x1e4782['kind']===_0x1db00a(0x513))try{_0x1e4782['contentHint']=session[_0x1db00a(0x8fd)];}catch(_0x8e52b2){errorlog(_0x8e52b2);}else{if(session[_0x1db00a(0x9dc)]&&_0x1e4782[_0x1db00a(0x79e)]===_0x1db00a(0x513))try{_0x1e4782[_0x1db00a(0x9dc)]=session[_0x1db00a(0x9dc)];}catch(_0x405bda){errorlog(_0x405bda);}}session['mc'][_0x1db00a(0x5f2)](_0x1e4782),session['mc'][_0x1db00a(0x6c0)]=_0x7ffa57,session['mc']['onicecandidate']=function(_0x2fee88){var _0x156c81=_0x1db00a;if(_0x2fee88[_0x156c81(0x408)]==null)return;log(_0x2fee88['candidate']),_0x28e60e[_0x156c81(0x68a)](_0x2fee88[_0x156c81(0x408)]);};}catch(_0x4a8d61){errorlog(_0x4a8d61);}}!meshcastServer?_0x5239e3(_0x55eac7):_0x55eac7();}catch(_0x2b085e){errorlog(_0x2b085e);}function _0x179006(_0x4e2ffc,_0x1021cf,_0xaeb73=![]){var _0x559075=_0x149c43;try{var _0xb762e6=new XMLHttpRequest();_0xb762e6[_0x559075(0x357)]=function(){var _0x232a4e=_0x559075;if(this[_0x232a4e(0x464)]==0x4&&this[_0x232a4e(0x81c)]==0xc8){var _0x282369=this['getResponseHeader'](_0x232a4e(0x1f7));if(_0x282369==_0x232a4e(0x66f)){var _0x4de210={};_0x4de210[_0x232a4e(0x2ee)]=this[_0x232a4e(0x8ca)],_0x4de210[_0x232a4e(0x773)]=_0x232a4e(0x615);var _0x2fd1b7={};session[_0x232a4e(0x4ba)]&&session['stereo']!==0x2?_0x2fd1b7[_0x232a4e(0x4ba)]=0x1:_0x2fd1b7[_0x232a4e(0x4ba)]=0x0;var _0x353c29=0x40;session[_0x232a4e(0x9a9)]&&(session[_0x232a4e(0x9a9)]>0x1fe&&(session[_0x232a4e(0x9a9)]=0x1fe),_0x2fd1b7['maxaveragebitrate']=session[_0x232a4e(0x9a9)]*0x400,_0x2fd1b7[_0x232a4e(0x9c6)]=0x1,_0x2fd1b7[_0x232a4e(0x4e4)]=session['cbr'],_0x353c29=session[_0x232a4e(0x9a9)]);_0x4de210[_0x232a4e(0x2ee)]=CodecsHandler[_0x232a4e(0x989)](_0x4de210[_0x232a4e(0x2ee)],_0x2fd1b7);if(!_0x4d5295)_0x4de210['sdp']=_0x4de210['sdp'][_0x232a4e(0x276)](/42001f/gi,_0x232a4e(0x55c)),_0x4de210[_0x232a4e(0x2ee)]=_0x4de210[_0x232a4e(0x2ee)]['replace'](/420029/gi,_0x232a4e(0x55c));else _0x4d5295['length']==0x6&&(_0x4de210[_0x232a4e(0x2ee)]=_0x4de210['sdp'][_0x232a4e(0x276)](/42e01f/gi,_0x4d5295),_0x4de210[_0x232a4e(0x2ee)]=_0x4de210[_0x232a4e(0x2ee)]['replace'](/42001f/gi,_0x4d5295),_0x4de210['sdp']=_0x4de210['sdp']['replace'](/420029/gi,_0x4d5295),_0x4de210['sdp']=_0x4de210[_0x232a4e(0x2ee)][_0x232a4e(0x276)](/42a01e/gi,_0x4d5295),_0x4de210[_0x232a4e(0x2ee)]=_0x4de210[_0x232a4e(0x2ee)][_0x232a4e(0x276)](/42a014/gi,_0x4d5295),_0x4de210['sdp']=_0x4de210[_0x232a4e(0x2ee)][_0x232a4e(0x276)](/42a00b/gi,_0x4d5295),_0x4de210[_0x232a4e(0x2ee)]=_0x4de210['sdp']['replace'](/640c1f/gi,_0x4d5295));if(session[_0x232a4e(0x3c9)])try{var _0x2248d5=_0x353c29+session[_0x232a4e(0x3c9)];_0x4de210[_0x232a4e(0x2ee)]=CodecsHandler['setVideoBitrates'](_0x4de210['sdp'],{'min':_0x2248d5||0x1,'max':_0x2248d5||0x1},_0x4d5295);}catch(_0x4961cd){}session['mc'][_0x232a4e(0x434)](_0x4de210)[_0x232a4e(0x63c)](function(){var _0xaab3dd=_0x232a4e;if(_0x28e60e[_0xaab3dd(0x7e9)]){var _0x1e639f=JSON[_0xaab3dd(0x776)](_0x28e60e['pop']());_0x179006(_0x1e639f,_0xaab3dd(0x801),function(){var _0x274113=_0xaab3dd;session[_0x274113(0x3a9)](),_0x283ce4();});}})[_0x232a4e(0x341)](function(_0x47fd0c){log(_0x47fd0c);});}else{if(_0x282369==_0x232a4e(0x906))this[_0x232a4e(0x8ca)]==0x1b0?warnUser(_0x232a4e(0x4e3)):warnUser(_0x232a4e(0x71a));else _0xaeb73&&_0xaeb73();}}};var _0x1ebf5b=0x9c4;session[_0x559075(0x3c9)]!==![]&&(_0x1ebf5b=session[_0x559075(0x3c9)]);session[_0x559075(0x48f)]&&session[_0x559075(0x517)]!==![]&&(_0x1ebf5b=session[_0x559075(0x517)]);session['mc'][_0x559075(0x3e2)]=_0x1ebf5b,session['mc'][_0x559075(0xa54)]=_0x1ebf5b;var _0x127651=parseInt(0x61a8/_0x1ebf5b)||0xa,_0x4df8e0='';_0x4d5295&&(_0x4d5295[_0x559075(0x7e9)]==0x6?_0x4df8e0=_0x559075(0x97e):_0x4df8e0='/'+_0x4d5295),_0xb762e6[_0x559075(0x39f)](_0x559075(0x8eb),meshcastServer[_0x559075(0x4d4)]+'/'+_0x127651+_0x4df8e0,!![]),_0xb762e6['setRequestHeader'](_0x559075(0x222),_0x559075(0x6d4)+_0x1021cf+';\x20charset=utf-8'),_0xb762e6[_0x559075(0x6ad)]('Authorization','Bearer\x20'+_0x59a1a5),_0xb762e6['onerror']=function(_0x3fee31){errorlog(_0x3fee31),warnUser('Meshcast\x20not\x20available.');},_0xb762e6[_0x559075(0x640)](_0x4e2ffc);}catch(_0x466bbd){errorlog(_0x466bbd);}}async function _0x283ce4(){var _0x536330=_0x149c43;if(meshcastServer[_0x536330(0x73a)])var _0x4a5949='https://meshcast.io/view.html?api='+meshcastServer['code']+_0x536330(0x599)+_0x59a1a5;else var _0x4a5949=_0x536330(0x69e)+_0x59a1a5;console['log'](_0x536330(0xa5a)+_0x4a5949),await sleep(0x1f4),session[_0x536330(0x523)]={'token':_0x59a1a5,'url':meshcastServer[_0x536330(0x4d4)]};for(var _0x24f53b in session['pcs']){if(session[_0x536330(0x2f9)][_0x24f53b][_0x536330(0x80c)]===null){var _0xfbbbaf={};_0xfbbbaf[_0x536330(0x80c)]={'token':_0x59a1a5,'url':meshcastServer[_0x536330(0x4d4)]},session['sendMessage'](_0xfbbbaf,_0x24f53b)&&(session[_0x536330(0x2f9)][_0x24f53b][_0x536330(0x80c)]=!![]);}}}}function _0xf6f0(){var _0x3511d6=['fr1','https://turnservers.rtc.ninja/','eat','very','branch','ping','closePC','audioGain','company','randomize','process','isScene','requestFile\x20in\x20reverse','PCS:\x20ICE\x20Disconnected;\x20wait\x20for\x20retry?\x20pcs','silent','pattern','gone','allowVideos','hill','cleanish','de2','king','rpcs\x20onconnectionstatechange\x20Disconnected;\x20retry\x20in\x205s','requested\x20video\x20bitrate\x20increase;\x20Firefox\x20peer\x20detected','Answer\x20SDP\x20does\x20not\x20have\x20a\x20matching\x20session\x20ID','defaultSpeaker','mute','container_','place','room-is-claimed-codirector','SCREENS','[data-action-type=\x22mute-guest\x22][data--u-u-i-d=\x22','changeOrder','forEach','iframeSrc','now','minimumRoomBitrate','text/plain','continent','carry','Stream\x20ID\x20is\x20already\x20in\x20use.','east','appear','.battery-level','writeString','current','quick','SHA-256','max','no\x20pcs[UUID]','chrg','turn:turn-cae1.vdo.ninja:3478','binaryType','querySelector','early','iframe','had','evening','pretty','danger','dry','rest','midiDevice','ctrl','sheet','effectValue','remoteMuteElement','knew','Failed\x20attempt\x20to\x20connect\x20as\x20co-director','Chrome\x20for\x20iOS','none','zoom','sharp','collect','winter','yard','recording_audio_compressor_type','that','limitTotalBitrateGuests','removeTrack','sendMessage','muted','network_type','mobile','neighbor','concat','continue','kill','13299077Wflzgx','icefilter','noNacks','obsRemotePassword','requestChangeLowcut','couldn\x27t\x20set\x20rate\x20limit','setBitrate','lake','remoteDescription','autorecordlocal','set-video-scale','horse','MESHCAST\x20LINK:\x20','listPromise','pushEffectsData','quality','keyframe','Should\x20we\x20ask\x20to\x20play\x20the\x20stream\x20Again?','preLimitedBitrate','allowWebp','problem','new-display-name','midiHotkeys','successfully\x20sent\x20message\x20vis\x20WebRTC\x20instead\x20of\x20WSS\x20to\x20all\x20RTC\x20Peers','cleanDirector','fileWriter','late','infocus','those','The\x20remote\x20control\x20request\x20failed.','muteStateTemplate','virtualHangup','limitAudioEncoder','bandwidthMuted','active','rotated','sky','title','scaleHeight','effect','maxptime','gain','decode','myVideo.webm','soil','transferred','flow','decodeRemote','feel','chart','recordedBlobs','arraybuffer','getSenders','Bad\x20EBML\x20datatype\x20','querySelectorAll','chunkedtransfer','processDescription','chunkedtransfer\x20OPEN','startClock','soft','remote-screenshare-state','json','remoteRaisedHandElement','hidden','while','minipreview','promptAccess','muted_activeSpeaker','suit','ran','design','blood','directorEnabledPPT','for','consonant','showSettings','initial_group','directorSettings','coat','watchStream','RTC\x20Connection\x20seems\x20to\x20be\x20dead\x20or\x20not\x20yet\x20open?\x204','seek','record','allowBroadcast','wss','border','Unhandeled\x20Error\x20occured','build','abc123','indexOf','The\x20Director\x20has\x20disabled\x20your\x20vision\x20temporarily
    ','people','disableNACK','content-type','visibility','voice','resolve','directorView','directorMutedState','consent','directorBlue','canvas','streamID','cool','fast','stereo_url','hands_','plugged_in','hear','rpcs','delayNode','debug','corn','null\x20ice\x20rpcs','rtc\x20state:\x20','weight','main-director','requestUpload','period','these','score','does\x20any\x20audio\x20exist?','favor','networkPriority','audioCodecs','circle','cursor','seat','loud','remoteStats','burn','previewToggleState','lost','ctrlKey','allowVideo','delta','Content-Type','one','good','don\x27t','groupAudio','getPCM','number','borderRadius','parentNode','hostedTransfers','enhance','closing\x204','hardware_video_encoder','add','stunServers','writer','land','HANG\x20UP\x20COMPLETE','stopClock',',\x20isDirector:\x20','nothing','any','break','maxframeRate','STARTING\x20NEW\x20AUDIO\x20TRACK','3983ytalTy','hiddenSceneViewBitrate','OBSNINJAFORLIFE','requested-stream','failed\x20to\x20send\x20zoom\x20change\x20request','change','Remote\x20request\x20failed\x20to\x20decode;\x20continuing\x20still.','found','screenshare:\x20','getWrittenSize','encrypt','solo','target','err','ruleOfThirds','writeU8','\x20(full)','help','ball','privateKey','turns:www.turn.obs.ninja:443','screenshareVideoOnly','currentTarget','opus','farm','closeTimeout','preferVideoCodec','TrackNumber\x20must\x20be\x20>\x200\x20and\x20<\x20127','Max\x20bandwidth\x20controlling\x20bitrate:\x20','href','offerSDP','enhanceAudio','stopPropagation','webrtc-is-blocked','especially','getRandomValues','directorActions','reach','act','Restarting\x20since\x20closed','press','maxvb_url','opacityDisconnect','night','book','can\x27t\x20change\x20bitrate;\x20no\x20video\x20sender\x20found','hard','overlay','reload','slots','fraction','stopping\x20old\x20track','race','RPCS\x20for\x20MESHCAST\x20ISNT\x20MADE\x20YET??','day','stead','iceBundle','addALabel','Requested_resolution','replace','bar','replaceAll','produce','GOT\x20ICES!!','stream_configVideo','compressor','chunked_mode_audio','led','waitingWatchList','soon','control','stream_configAudio','cmd','requestChangeSubGain','group','rejoining\x20room','dad','starting\x20kicker','pcs\x20RTC\x20CLOSED','getLocalStream','matter','map','obs_control','copyTo','allowscreen','devicePixelRatio','son','face','processFrame','must','fullscreen','miniInfo','scale\x20scale','Websockets\x20timed\x20out;\x2030\x20seconds','requestZoomChange','probable','focusDistance','iOS\x20devices\x20do\x20not\x20support\x20dynamic\x20bitrates\x20correctly;\x20skipping','someonejoined','broad','wss://api.vdo.ninja:443','FAIL\x20rpcs\x20onconnectionstatechange','conn_type','BITRATE\x201:\x20','Keyframe\x20inserted','wide','setLocalDescription','addIceCandidate','splice','laugh','anysend','control-room-co-director','screenshareid','screensharefps','[data-action-type=\x22order-value\x22][data--u-u-i-d=\x22','width','short','adding\x20track','allowAudio','depend','course','ptz','\x20:\x20','selected','action','localVoiceMeter','has','RTC\x20Connection\x20seems\x20to\x20be\x20dead\x20or\x20not\x20yet\x20open?\x203','bit\x20rate\x20being\x20munged','solution','coast','isDirector\x20','VDO-Ninja','slotmode','videoWriter','suffix','prompt-access-request','possible','lay','applyIsolatedVolume','engine','written','new\x20connection\x20is\x20contained\x20in\x20badStreamList\x202!\x20This\x20shouldn\x27t\x20happen','error','wing','1222990oVfufd','writeDoubleBE','AES','processDescription2','colony','requestAs','autoadd','multiply','channelCount','think','round','provide','spot','complete','force','pliCount','gotGenericData','claim','split','GET','remove','nation','connectionDetails','There\x27s\x20a\x20new\x20incoming\x20connection.','real','setFloat32','tell','speakerMuted_default','Someone\x20sent\x20us\x20an\x20ANSWER\x20sdp??','buy','ondatachannel','many','keys','fresh','sdp','UUID','simple','please','usw2','screenshare','srcObject','decoder','pick','block','limitaudio','pcs','Publisher\x20will\x20be\x20ignored\x20due\x20to\x20max\x20connections\x20already\x20hit','sendKeyFrameScenes','vp8','de1','list','realUUID','hot','raise','Transfer\x20was\x20completed\x20successfully','oncanplay','nacks_per_second','safemode','tire','streamSrc','directorSpeakerMute','SDP\x20Sessions\x20Match.\x20I\x20assume\x20ADDING\x20TRACKS.\x20RPCS','ice\x20timer\x20no\x20longer\x20exists','SENDING\x20CHUNKS\x20TO:\x20','bypass','imageElement','machine','Max\x20bandwidth\x20NOT\x20being\x20capped:\x20','novideo','sceneType2','beat','city','10ioZgCG','UUID\x20does\x20not\x20exist','suggest','start','reduce','already\x20watching\x20stream','double','Offset\x20may\x20not\x20be\x20NaN','she','Someone\x20Joined\x20the\x20Room\x20with\x20a\x20video','currentCameraConstraints','keyname','mixMinus','history','activeSpeaker','maxconnections','muteState','The\x20other\x20end\x20is\x20just\x20being\x20a\x20keener.\x20Ignore\x20it:\x20','receive','1vh','noun','tiny','endViewConnection','new\x20connection\x20is\x20contained\x20in\x20badStreamList!\x20This\x20might\x20be\x20the\x20director\x27s\x20video/audio\x20->\x20this\x20a\x20scene?','figure','raw','south','onclick','cow','preloadbitrate','onTrack','rtc.ninja','large','VP9','captain','form','room\x20rate\x20restriction\x20detected.\x20No\x20videos\x20will\x20be\x20published\x20to\x20other\x20guests','sense','Meshcast\x20not\x20connected;\x20cant\x27\x20create\x20canvas\x20for\x20it','constructor','point','difficult','controls','audio','some','catch','either','showClock','connectPeer','food','bandwidth\x20set\x20g!\x20','will','vp9','tie','starting\x20some\x20preload\x20bitrate\x20','transfer','msg\x20size\x20error','\x20as\x20preferred\x20codec\x20by\x20viewer\x20via\x20API','decimal','charge','TOO\x20MANY\x20PUBLISHING\x20PEERS','make','disableWebAudio','mark','character','/status','directorSpeakerMuted','onreadystatechange','..\x20waiting\x20for\x20user\x20gesture','changeCamera','webCodec','offsetChannel','ON\x20NEGO\x20NEEDED','volume','die','createScriptProcessor','notifyScreenShare','savedVolume','seed','skill','behind','socialstream','screensharetype','unit','sent','chick','thought','ended','include','createWriteStream','hostname','alert','next','taintedSession','listing','liquid','bandwidth\x20set\x20c!\x20','labelsize','space','pong','decrypt','minute','major','BITRATE\x203:\x20','scaleFactor','height_url','leave','fillRect','WEBRTC\x20CONNECTION\x20OPEN','requestFocusChange','single','\x20---\x20PC\x20TIMED\x20OUT\x20and\x20already\x20deleted.\x20shouldn\x27t\x20happen','seedStream','reportbutton','udp','span','power','width_url','are','picture','limitAudioBitrate','TRANSFERRING?','dynamicScale','page','audioDevice','videoCodecs','delayTime','queue','hash\x20is\x20','iframeDetails_','forceRetryTimeout','#obsRemotePassword>input','smile','sync','writeBytes','UN-MUTED','supply','key','streams','open','sending\x20message\x20via\x20WSS\x20as\x20WebRTC\x20failed\x20to\x20send\x20message;\x20RTC\x20peers\x20only','wish','got','mirrorExclude','degrade','chunked_mode_video','autoGainControl','story','no\x20audio\x20track\x20to\x20poke','mcSetScale','trouble','info','onopen','strange','inline-block','warn','requestChangeGating','thus','guest','overlayControls','studioSoftware','frameMeta','virtualcam','autoSyncObject','controlTimer','nodownloads','noiframe','test','requestStats','frameWriter','webm','already\x20waiting\x20for\x20stream','createOffer','value','videosource_','guest-connected','touch','only','chance','BROWER\x20DID\x20NOT\x20SUPPORT\x20LIMIT\x20BITRATE','road','meshcastBitrate','createObjectURL','which','child','anyrequest','WebRTC\x20Connection\x20Closed.\x20Clean\x20up.\x20657','sound','setupIncoming','batteryMeter','getTracks','[data-action-type=\x22volume\x22][data--u-u-i-d=\x22','sink','spread','sendframes','war','hasOwnProperty','work','Failed\x20to\x20determine\x20size\x20of\x20element','resolution','requestRateLimit','six','Not\x20a\x20scene','capital','image/webp','clicked','savedBitrate','empty\x20ice..','metaKey','broadcastChannel','successfully\x20sent\x20message\x20vis\x20WebRTC\x20instead\x20of\x20WSS','false','desert','stats','toString','dropped\x20candidate\x20due\x20to\x20filter','cat','hat','ride','ACTION\x20REJECTED:\x20','first','\x20(ok)','head4','scaleResolutionDownBy\x20set\x202!','getElementById','and','lead','already\x20connected','between','done\x20setting\x20degrad\x20to\x20','header','fig','bread','home','targetBandwidth','thousand','marginLeft','ready','wonder','session.watchTimeoutList\x20no\x20longer\x20exists;\x20won\x27t\x20retry.','populate','CLOSING\x20SECONDARY\x20CONNECTION;\x20matched\x20stream\x20ID\x20has\x20re-connected','addEventListener','dress','candidate','Couldn\x27t\x20parse\x20JSON;\x20will\x20attempt\x20as\x20ArrayBuffer\x20UINT8ARRAY','writeEBMLVarInt','room-is-claimed','noisegate','nine','description','boat','ontimeout','Checking\x20to\x20see\x20if\x20reconnectino\x20to\x20ws\x20lost\x20any\x20peers','rose','care','applySoloChat','afraid','onaudioprocess','changeParams','showList','timer','huge','gas','all','see','whose','proxy','webp','both','8px','expect','mainmenu','won\x27t','midiOffset','screenStream','myPlayTrigger()\x20started','blue','playback_audio_pipeline','privacy','closeTimeout\x20cancelled;\x204','RTC\x20already\x20connected','providing\x20answer','same','eventPlayActive','connectionState','meshcastCodec','present','setRemoteDescription','frameRate','STARTING\x20NEW\x20VIDEO\x20TRACK','floor','OPTIMIZED\x20AUDIO\x20ENABLED;\x20zero\x20bitrate','cost','isView','autohide','can\x27t\x20change\x20bitrate;\x20no\x20video\x20senders\x20found','vp09.00.10.08','measureEBMLVarInt','bitrateTimeoutFirefox','top','whether','sid','guess','sendMsg','front','where','chord','death','creating\x20answer','put','call','random','padStart','pass','ring','wss://proxywss.rtc.ninja:443','year','animatedMoves','person','obsninja','ago','statsMenu','toward','closeTimeout\x20cancelled;\x207','startWriter','preventDefault','quality_limitation_reason','electric','shout','createMediaStreamDestination','young','closing\x2020','ontrack','localDescription','lockedVideoBitrate','readyState','island','power_level','create','heart','thin','warm','modern','glad','showControls','such','disabled','bird','school','You\x20are\x20a\x20co-director\x20of\x20this\x20room;\x20you\x20have\x20partial\x20director\x20control\x20assigned\x20to\x20you.','was','hold','children','song','would','processIce','directorState','necessary','getOpusBitrate','_screen','Firefox','tree','order','organ','wssid','product','resumeClock','plural','lowBitrateCutoff','segment','seeding','foot','limitMaxBandwidth','speedtest','codirector\x20request\x20hash\x20failed','Meschast\x20canvas\x20not\x20working','sendOnNewConnect','disconnected','screenShareState','saw','obsstudio','options','video_bitrate_kbps','shall','door','obsState','head','closing\x2012','dead','other','setAttribute','text','controlRoomBitrate','videoDevice','iframetarget','needKeyFrame','Media','total_outbound_p2p_connections','hangupDirector','Something\x20went\x20wrong\x20with\x20incoming\x20track..','setParameters','dance','security','card','setAudioBitrate','option','vdo.socialstream.ninja','right','girl','directorVideoMuted','IchBinSteveDerNinja','restartIce','hash','differ','their','group-set-updated','try','channels','checking','middle','exclude','stereo','nextQueue','soloChatUUID','initialPublish','meterStyle','onmessage','screen','publishing\x20SDP\x20Offer:\x20','GOT\x20ICE!!','season','hw_enc','two','rampUpTime','requestStatsContinuous','password','vary','mykey','label_','size','setVideoScale','screensharecursor','enabled','scale\x20set!','maxframeRate_q2','overlayNinja','true\x20.','url','noiseSuppression','session.rpcs[UUID].screenIndexes:\x20','msg','closing\x201','wild','visit','star','view-connection','shine','chair','autoSyncCallback','selectImageTFLITE_contents','signalMeter','mutedStateMixer','Meshcast\x20error:\x20432','cbr','crypto','getParameters','sensorDataFilter','weather','broadcastChannelID','rpc\x20datachannel\x20closed','sort','screenElement','copy','several','free','midi','directorList','windowed','ICE\x20FAILED','click','processIceBundle','who','Lowered\x20hand','close','million','quality_ss','sendroom','digest','west','roomenc','directorPassword','boy','deferring\x20with\x20a\x20promise','fadein','maxBandwidth','clothe','maxBitrate','language','job','rejected','screensharequality','natural','develop','side','gray','atom','name','ease','sign','requestChangeCompressor','video','aspectRatio','outboundVideoBitrate','The\x20request\x20failed;\x20the\x20remote\x20user\x20did\x20not\x20recognize\x20you\x20as\x20the\x20director','meshcastScreenShareBitrate','sensors','Does\x20Local\x20Stream\x20Source\x20EXIST?','arrange','roombitrate','mutedState','CLOSED','broadcastIFrame','setMeshcastVideoBitrate','enemy','slave','total','meshcastSettings','moment','processPCSOnMessage','message','watchTimeoutList:','screenShareStartPaused','dear','condition','friend','isArray','screenshareStereo','area','ptime','requestedStatsInterval','gun','charAt','audioCtx','gridlayout','writeUnsignedIntBE','flagship','You\x27ve\x20been\x20transferred','remote','Audio\x20processing\x20is\x20disabled\x20with\x20this\x20guest.\x20Can\x27t\x20mute\x20or\x20change\x20volume','separate','13854hiJMmL','connected','\x20x\x20','than','leavetone','session.provideFileList','each','Lost\x20child','optimize','allow','postMessage','requestFile','sleep','getSettings','\x20(good)','energy','channelWidth','log','unmute-guest','seedAttempts','directorUUID','master','focus','set','Setting\x20Codec\x20to\x20vp8','transcript','opacity','getChannelData','repeat','[data-action-type=\x22toggle-group\x22][data--u-u-i-d=\x22','scaleWidth','sceneType','listen','42e01f','adaptivePtime','nor','crowd','under','audioLatency','lift','canvasIntervalAction','broke','init_audio','midiIn','createElement','deep','check','chatmessage','getTimezoneOffset','maxviewers_url','**\x20connected','stay','cleanOutput','videoElement','jpeg','forcePLI','receiveChannel','lowerhand','went','%\x20battery\x20remaining','midiChannel','EncodedVideoChunk','The\x20request\x20failed;\x20you\x20can\x27t\x20apply\x20this\x20action\x20to\x20the\x20main\x20director.','theyBeSharksHere','max_bandwidth_capped_kbps','closing\x203','label=','minptime','bitrate_set','getTime','\x20is\x20not\x20defined;\x20skipping.','match','meant','walk','small','closedCaptions','grass','allowMIDI','sensorData','resume','audiobitrate','PCM\x20STARTED','ICE\x20DID\x20NOT\x20FIND\x20A\x20PC\x20OPTION?\x20peer\x20might\x20have\x20left\x20before\x20ICE\x20complete','pose','RTC\x20Connection\x20seems\x20to\x20be\x20dead\x20or\x20not\x20yet\x20open?\x202','dream','Room\x20is\x20already\x20claimed\x20by\x20someone\x20else.','OPEN','getVideoSettings','sudden','tainted','position','pipe','turn:turn-eu4.vdo.ninja:3478','&id=','candidates','slice','enough','hand','indicate','begin','meat','recording','channel','eight','\x20as\x20preferred\x20codec\x20by\x20viewer\x20via\x20API\x20(offer)','codecGroupFlag','bottom','motion','Max\x20bandwidth\x20being\x20capped:\x20','down','onicecandidate','remote-mute-state','encodeRemote','FORCING\x20A\x20CHUNKED\x20KEY\x20FRAME:\x20','layout-enabled','part','NOT\x20IN\x20VIEW\x20SET','samplingFrequency','className','Chunked_audio','new-view-connection','focus\x20success','Someone\x20Joined\x20the\x20Room','rather','ori','aec_url','defaultMedia','certain','tall','\x20---\x20we\x20will\x20not\x20ask\x20again;\x20we\x27re\x20already\x20connected','green','hour','ON\x20FOCUS\x20NOT\x20FOUND','valley','want','closeTimeout\x20cancelled;\x206\x27\x20retry\x20in\x203s?','keyframeTimeout','recieveFile','encode','https://www.youtube.com/','EncodedAudioChunk','run','bind','long','stream','generateRandomString','print','board','student','layout-updated','altUUID','configAudio','sceneSync','startsWith','channelOffset','denoise_url','bell','nopreview','allowDownloads','platform','loadoutID','window','[data-sololink]','Authorization','them','#000','iceTransportPolicy','stretch','webCodecAudio','fun','syncState','requestCoMigrate','through','family','forest','webcamonly','onconnectionstatechange\x20pcs\x20ice\x20--\x20disconnected,\x20but\x20not\x20yet\x20closed?\x20','autoSync','chunkTime','play','scaleDueToBitrate','original','addTrack','updateLocalStatsInterval','joiningRoom','screenShareElementHidden','vdoninja','center','closeTimeout\x20cancelled;\x203','ceil','scene-connected','born','cleaning\x20up\x20lost\x20connection\x20--\x20disconnected\x20-\x20iOS\x20specific','2px','canvasStream','consider','left','term','remote-group-change','month','audioConstraints','2122180tSldKV','iframeVideo','mid','midiOut','directorHash','signData','rail','mind','generateStreamID','FileSystemWritableFileStream','Video\x20Bitrate\x20is\x20locked;\x20can\x27t\x20update','interest','read','\x20---\x20PC\x20TIMED\x20OUT,\x20but\x20still\x20alive.\x20Killing\x20it.','dataReceived','allowScreen','answer','limitTotalBitrate','third','nose','reject','Timestamp\x20duplicated','near','Valid\x20co\x20director\x20trying\x20to\x20transfer\x20a\x20guest','Remote\x20peer\x20connected\x20to\x20video\x20stream.\x0a\x0aConnection\x20to\x20handshake\x20server\x20being\x20killed\x20on\x20request.\x20This\x20increases\x20security,\x20but\x20the\x20peer\x20will\x20not\x20be\x20able\x20to\x20reconnect\x20automatically\x20on\x20connection\x20failure.\x0a\x0aPress\x20OK\x20to\x20start\x20the\x20stream!','streaming','pixelFix','remoteHash','desaltStreamID','display','take','video_encoder','closing\x2014','echoCancellation','stereo\x20enabled','hanging\x20up','sit','showSaveFilePicker','showConnections','band','keyframeRate','seeding\x20blocked','else','tool','recieveChunkedStream','limitMeshcastBitrate','field','my_time','idea','setClock','high','brown','water','viewwidth','began','then','meshcastScreenShareCodec','waitImageTimeout','meshcastMenu','send','allowmidi','directorBox','SETUP\x20INCOMING','vDav','classList','straight','addCoDirector','quietOthers','iceServers','screenshareAutogain','getWriter','general','directorBlindAllGuests','layout','encoder','estop','encodings','WHY\x20ARE\x20YOU\x20GOD\x20DAMN\x20BEEPING','pip','less','second','canvasSource','timestamp','arm','bigmutebutton','Chromium-based\x20v','audioEffects','did','received\x20data\x20from\x20viewer','bye','m\x20:\x20','noPLIs','office','wood','draw','processFrameAudio','direct','true','equate','win','defaultBackgroundImages','step','RTC\x20Connection\x20seems\x20to\x20be\x20dead\x20or\x20not\x20yet\x20open?\x201','session.setupScreenShareAddon','playback_audio_samplerate','held','application/sdp','turn:turn-usw2.vdo.ninja:3478','joinRoom','stun:stun4.l.google.com:19302','New\x20Label:\x20','CHUNKED\x20DETAILS','event','range','timeout','Browser','codirectorRequested','session','bright','big','quality_url','square','apple','light','request\x20rate\x20limit:\x20','wash','sendFile','layouts','until','The\x20request\x20(','lady','bitrateGroupFlag','chunked','push','rotate_video','let','fell','fromCharCode','audioOptions','.webm','chunkedStream','approved','252594nhyHvd','final','screenIndexes','occur','webkitAudioContext','rich','zoom\x20success','10px','onerror','activelySpeaking','obsCommand','https://meshcast.io/view.html?id=','chatbutton','discuss','closing\x2016','letter','Generate\x20Some\x20Crypto\x20keys\x20first','spell','innerHTML','grow','screenStopped','request\x20zoom\x20change:\x20','write','pay','pair','user\x20didn\x27t\x20have\x20access\x20for\x20this\x20file.','setRequestHeader','sea','Someone','bitrate','acc','inputBuffer','slow','ArrayBufferDataStream','quart','includes','Websocket\x20connection\x20failed\x20or\x20something;\x20this\x20is\x20a\x20split\x20connection.\x20not\x20ideal,\x20as\x20it\x20could\x20be\x20unstable.','Audio_Loudness','seven','maxvideobitrate','waiting\x20for\x20keyframe','happen','micIsolated','property','jointone','onnegotiationneeded','onload','alpha','cleaning\x20up\x20lost\x20connection','plant','codirectorSettings','byteLength','42001f','closed','tabernac','lowMobileBitrate','CONNECTEED!','invite','forceRetry','videoOptions','self','turn:turn-use1.vdo.ninja:3478','bit','maxpublishers','room','application/','PolandPirat','white','toLowerCase','firstPlayTriggered','done\x20setting\x20degrad','half','not-the-director','his','men','requestAudioHack','getAsDataArray','age','done\x20clearing\x20audio','frame','img','air','switchMode','added\x20video\x20track','\x20(timeout)','remoteZoom','outboundAudioBitrate','AES-CBC','audioContentHint','closing\x205','cae1','off','forward','sat','Transfer\x20ended','roomhost','onconnectionstatechange','bought','recording_audio_ctx_latency','Bearer\x20','Invalid\x20remote\x20control\x20code.\x0a\x0aUse\x20the\x20field\x20below\x20to\x20try\x20again\x20with\x20a\x20different\x20passcode.','newViewConnection','decide','pressed','ASKING\x20FOR\x20AUDIO\x20AND\x20VIDEO?','solve','configuration','among','failed\x20to\x20send\x20focus\x20change\x20request','numberOfChannels','industry','heavy','readable','locate','The\x20remote\x20request\x20failed;\x20the\x20&remote\x20token\x20did\x20not\x20match\x20or\x20the\x20remote\x20user\x20does\x20not\x20allow\x20remote\x20control.','captureStream','chat','egg','noise\x20gate\x20off','mix','charging','measureUnsignedInt','clear','hole','closing\x2019','port',')\x20failed\x20due\x20to\x20permissions\x20or\x20it\x20was\x20rejected\x20by\x20the\x20user','downloads','what\x20is\x20this?','audioBitrate','sight','setValueAtTime','radio','mass','coDirector','Unknown\x20Meshcast\x20error','h264profile','sending\x20message\x20via\x20server','phrase','Created\x20transfer\x20channel','invent','screenShareLabel','cpuLimited','directorDisplayMuted','&code=','few','importKey','human','forceMediaSettings','h264','refreshScale','corner','1280','The\x20main\x20director\x20denied\x20you\x20as\x20a\x20co-director','train','grew','turns:www.turn.vdo.ninja:443','allowGraphs','sendGenericData','sugar','speech','appendChild','FORCING\x20A\x20KEY\x20FRAME:\x20','our','innerText','loadend','vDAv','code','dictionary','ctx','search','salt','closeRPC','gentle','setup\x20peer\x20complete','teeth','fair','totalRoomBitrate','gyro','fillStyle','createAnswer','setupYourOwnPlease','hostedFiles','should','since','\x20(fail)','enhacing\x20audio\x20encoder','steve','most','object','retryWatchInterval','director','party','shift','require','pos','newMainDirectorSetup','result','flower','canvasWebGL','crease','seedPlz','level','setScale','prioritize-audio','writeU16BE','noScaling','retrying\x20at\x20an\x20interval','remoteInterfaceAPI','join','micDelay','car','baby','end','connect','view','iron','inch','voiceMeter','disconnectedTimeout','http://','?ts=','may','paper','type','Raised\x20hand','CriOS','stringify','sceneMute','basic','beepToNotify','RTC\x20closed','team','time','ab_url','An\x20RTC\x20error\x20occured','setVideoBitrates','videos','closing\x2013','watchTimeoutList','sticky','scaleResolutionDownBy','wall','stereo\x20inbound\x20enabled','case','post','again','changeURL','prototype','mirrored','lowerVolume','cleanViewer','degree','version','cpu','stopping\x20some\x20preload\x20bitrate\x20','timecode','UUID\x20not\x20found;\x20can\x27t\x20close.','application/json;\x20charset=utf-8','selectedIndex','setupScreenShareAddon','manual','ifs','api','deferring\x20with\x20a\x20promise;\x20hashed\x20room','track','https://turnservers.socialstream.ninja/','kind','screenshareAEC','sendChannel','chunked_mode','mediaDevices','shop','autorecordremote','setResolution','noaudio','manualBandwidth','88pflgDX','sendRequest','roomid','teach','batteryState','govern','Trying\x20to\x20set\x20','codec','Failed\x20to\x20request\x20video\x20and\x20audio;\x20iOS\x20device\x20asking?','heard',',\x20mc?:\x20','similar','turn:www.turn.vdo.ninja:3478','changeSpeaker','AndroidFix','except','noise\x20gate\x20on','save','ear','store','fire','climb','screenSrc','video_muted_init','intime','sing','smell','PCS\x20WINS\x20ICE','remoteVideoMuteElement','turns:turn.obs.ninja:443','apiSocket','happy','noise','getVideoBitrates','screenshareDenoise','sail','checkBasicStreamsExist','done','getContext','reply','startTime','allowIframe','recording_audio_pipeline','remember','before','black','dataset','rotate','though','snow','maxviewers','data','signature','scene','The\x20request\x20was\x20rejected.\x0a\x0aThe\x20remote\x20OBS\x20system\x20needs\x20a\x20matching\x20passcode\x20set\x20using\x20&remote.\x0a\x0aSee\x20the\x20documentation\x20for\x20help.','flat','bandwidth','audioContext','slip','feet','float','4lSRvjj','directorVolumeState','maintain-framerate','Someone\x20is\x20trying\x20to\x20transfer\x20a\x20guest','length','mother','him','fight','word','choose','soloVideo','settings','Offset\x20may\x20not\x20be\x20negative','remote-video-mute-state','local','&start=','brother','clock','ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnpqrstuvwxyz23456789','forceTcpMode','sure','darkmode','EastSideRepresentZ','localMuteElement','steel','seem','tone','watch','ice','calculateScale','buffer','hidesololinks','requestChangeEQ','ever','what','-kbps','RECONNECTING\x20to\x20HSS;\x20DISCONNECTING\x20FROM\x20TRANSFERRED\x20ROOM','limitTotalBitrateAll','Someone\x20published\x20a\x20video\x20to\x20the\x20Room','meshcast','writeFloatBE','fear','usual','writer_config','src','cotton','enhanceaudio','We\x20will\x20not\x20request\x20the\x20meshcast\x20as\x20no\x20audio\x20or\x20video\x20is\x20requested','getOBSOptimization','AudioContext','obsControls','Meshcast\x20SET\x20SCALING\x20IS\x20FIRING,\x20which\x20is\x20GOOD\x20!!!!!!','writeEBMLVarIntWidth','travel','turn:turn-eu2.obs.ninja:3478','status','busy','disableOBS','obs','about','mag','getAudioSettings','sceneDisplay','like','yellow','visible','flipped','connected\x20to\x20video\x20server','truck','meet','BYE','doNotSeed','degradationPreference','RPCS\x20WINS\x20ICE','divide','mount','money','shore','instrument','hope','outputDevice','glass','updateTime','Failed\x20to\x20connect\x20to\x20service:\x20Error\x20503Possibly\x20too\x20many\x20connections\x20from\x20the\x20same\x20address\x20tried\x20to\x20connect.Visit\x20https://discord.vdo.ninja\x20for\x20support.','twenty','stick','limiting\x20AudioEncoder','frameReader','red','turnlist','count','pluginVersion','gold','Second\x20Thread\x20Waiting\x20for\x20TURN\x20LIST\x20to\x20load','solo-scene-connected','available_outgoing_bitrate_kbps','nature','postInterval','pingTimeout','queueList','The\x20remote\x20request\x20failed;\x20the\x20remote\x20token\x20did\x20not\x20match\x20or\x20the\x20remote\x20user\x20does\x20not\x20allow\x20remote\x20control.','bandwidth\x20set\x20h!\x20','EOF2','director-share','./media/bg_sample.webp','data\x20channel\x20being\x20used\x20in\x20reverse;\x20this\x20shouldn\x27t\x20really\x20happen,\x20except\x20if\x20maybe\x20doing\x20a\x20file\x20transfer','token','hurry','totalRoomBitrate_default','inboundAudioPipeline','prepare','string','heat','life','noon','failed','not\x20record\x20button\x20detected;\x20can\x27t\x20update\x20time\x20since\x20started\x20recording','stood','directorDisplayMute','PINGED','learn','RTCRtpSender','disableHotKeys','added\x20audio\x20track','often','getOptimizedScale:\x20','pow','sharperScreen','retryTimeout','village','fileList','recordingVideoCodec','stopWriter','tube','every','roomclaimed','permaid','you','street','cent','gpGPU','start\x20writing\x20frames','wheel','with','doctor','PASSED','cook','chunkedVideoEnabled','iceTimer','raisehands','column','state','room_init','preferCodec','bitrate\x20timeout;\x20ios/firefox\x20specific:\x20','joining-room','targetAudioBitrate','loudest','row','remoteFocus','Only\x20the\x20main\x20director\x20can\x20transfer\x20this\x20guest','limitBitrate','obsVisibility','bitrateTimeout','women','labelstyle','exercise','recorder','cold','requestVideoHack','enter','completed','pitch','pcm','readAsArrayBuffer','strong','playbackheader','showDirector','dark','codirector_changeURL','vector','thick','wave','iframeEle','edgelist','New\x20ON\x20TRACK\x20event','Incoming\x20Ice\x20Offer\x20does\x20not\x20match\x20Session','trackNumber','safe','remoteMuted','requestVideoRecord','GOT\x20ICEs!!','class','requestResolution','abs','setVideoBitrate','audioMeterGuest','give','Members\x20in\x20Room','targetBitrate','writeByte','broadcast','also','Overwrite\x20crosses\x20blob\x20boundaries','disablePLI','enhanceAudioEncoder','directVideoMuted','removeChild','publicKey','qlr','defaultPassword','noREMB','scale','forceScreenShareAspectRatio','actual\x20bitrate:','verify','cloneNode','contain','opacityMuted','caught','chunksInQueue','substance','describe','took','from','leg','bone','triangle','substring','responseText','symbol','week','optimizeBitrate','spring','add-a-label','obsControl','directorViewBitrate','requestCoDirector','milk','distant','represent','getReader','grand','compare','her','swim','oniceconnectionstatechange','fat','fish','getVideoTracks','iceConnectionState','PONGED','the','statsInterval','customWSS','well','processIce2','LOADING\x20UP\x20WAITING\x20WATCH\x20STREAM:\x20','subtle','vdAv','view_set','own','POST','offer','setUint32','sun','system','dataOffset','PROBLEM,\x20Senders\x20is\x20more\x20than\x200:\x20','request','Chunked_video','Audio\x20Bitrate\x20is\x20locked;\x20can\x27t\x20update','badStreamList','example','changeLabel','were','mutedStateScene','limitAudio','introButton','decrypted','screenshareContentHint','subject','house','canvasCtx','old','vowel','scaleSnap','RSASSA-PKCS1-v1_5','speakerMute','application/error','Opened\x20transfer\x20channel','backup.vdo.ninja/','cross','parse','objectFit','webAudios','remoteVideoMuted','bring','https://','micIsolate','came','showlabels','tail','Remote\x20TURN\x20LIST\x20Loaded\x20**\x20','applyIsolatedChat','Pinging','stone','noExitPrompt','gainNode','already\x20closed\x20PCS','plugged','cause','nackCount','unified-plan','div','beauty','forceAspectRatio','getResponseHeader','cell','requestKeyframe','TFJSModel','BYE\x20RPCS','blindAllGuests','712539zYbQjz','reject\x20co','out','Reloading?\x20uh\x20oh.\x20Why\x20didn\x27t\x20it?','sampleRate','planet','exact','pushLoudness','deviceId','slot','restricted','Refreshing\x20scale','color','onclose','announceCoDirector','speak','operate','hssConnection','addFrame','height','three','remoteMuteState_','zoomedBitrate','videoMargin','bufferedAmount','joinroom','PUBLISHER\x27s\x20RTC\x20Connection\x20seems\x20to\x20be\x20dead?\x20','push-connection-info','charCodeAt','closing\x208','fill','con','getStats','migrate','createDataChannel','displayMute','cloud','configVideo','experience','finish','select','filename','autoplay','forceios','broadcast_mode','rock','BlobBuffer','decryptMessage','enc','viewheight','low','new','feed','createWritable','und','science','requestRateLimit\x20RUN:\x20','ICE\x20FAILed.\x20bad?','videosource','send\x20channel\x20closed','sourceActive','pipeTo','Track\x20was\x20removed','stop','find','miss','utf-8','getAudioTracks','sand','style','BITRATE\x202:\x20','orientation','vb_url','closing\x2018','after','numeral','writable','servers','north','allowNoGroup','steam','bad','onnegotiationneeded\x20triggered;\x20creating\x20offer','Connection\x20to\x20Control\x20Server\x20lost.\x0a\x0aAuto-reconnect\x20is\x20partially\x20implemented','box','apiserver','/h264','line','morning','silver','Adjusting\x20Gain;\x20only\x20track\x200\x20in\x20all\x20likely\x20hood,\x20unless\x20more\x20than\x20track\x200\x20support\x20is\x20added.','believe','duck','summer','have','follow','more','setOpusAttributes','Trying\x20to\x20join\x20at\x20least','vdav','provideFileList','just','say','unshift','closing\x207','updateurl','1831371KCsKBy','they','userAgent','clean','fly','skin','can\x27t\x20change\x20audio\x20bitrate;\x20no\x20audio\x20sender\x20found','SET\x20SCALING\x20IS\x20FIRING,\x20which\x20is\x20GOOD\x20!!!!!!','chunkedAudioEnabled','STREAM\x20ID\x20desalted\x202:','seeding\x20!!','ICE:\x20','dimension:\x20','can','effectValue_default','table','enqueue','playsinline','remoteMuteState','root','hangup','label','world','meshcastAudioBitrate','Publisher\x20is\x20being\x20sent\x20a\x20video\x20stream???\x20NOT\x20EXPECTED!','contentType','Not\x20supported;\x20expected\x20\x27filetransfer\x27','art','spend','vdo.ninja/','optimizedBitrate','equal','maxMobileBitrate','videoMuted','poem','best','create\x20offer\x20worked','This\x20shouldn\x27t\x20happen','encryptMessage','https://turnservers.vdo.ninja/','main','quality_wb','bat','MESHCAST();','sendPeers','drink','midiRemote','directorBlindButton','paragraph','bandwidth\x20set\x20d!\x20','changeMicrophone','borderColor','useinbandfec','cover','sending\x20message\x20via\x20WSS\x20as\x20WebRTC\x20failed\x20to\x20send\x20message','recording_audio_gain','scaleResolution','rope','init_video','delay','transferSettings','wss://wss.vdo.ninja:443','Seeking\x20beyond\x20the\x20end\x20of\x20file\x20is\x20not\x20allowed','subarray','configure','could\x20not\x20be\x20sent;\x20queuing\x20it','Audio\x20isn\x27t\x20setup\x20yet.','transparent','resolution\x20scale:\x20','director-mute-state','support','screenShareBitrate','iceConnectionState\x20==\x20connected','drive','contentHint','measure','currentAudioConstraints','instant','get','allowwebp','totalBitrate:\x20','offset','lowcut','chunks','lockedAudioBitrate','mouth','tuning','EOF1','sendChunks','view-connection-info','arrayBuffer','NO\x20NEW\x20TRACKS?','paint','drop','proper','A\x20Guest\x20joined\x20the\x20room','obs.ninja/','plan','generator','settle'];_0xf6f0=function(){return _0x3511d6;};return _0xf6f0();}async function meshcastWatch(_0x5a2a53,_0x25f2a9){var _0x4c57b3=_0x13826c;!(_0x5a2a53 in session[_0x4c57b3(0x207)])&&(session[_0x4c57b3(0x207)][_0x5a2a53]={},session[_0x4c57b3(0x207)][_0x5a2a53][_0x4c57b3(0x3e9)]={},session[_0x4c57b3(0x207)][_0x5a2a53][_0x4c57b3(0x730)]=![],session['rpcs'][_0x5a2a53][_0x4c57b3(0x852)]={},session[_0x4c57b3(0x207)][_0x5a2a53][_0x4c57b3(0x5d6)]=![],session[_0x4c57b3(0x207)][_0x5a2a53][_0x4c57b3(0x54b)]=![],session[_0x4c57b3(0x207)][_0x5a2a53][_0x4c57b3(0x7f0)]=![],session[_0x4c57b3(0x207)][_0x5a2a53][_0x4c57b3(0x463)]=![],session[_0x4c57b3(0x207)][_0x5a2a53][_0x4c57b3(0x9e6)]=![],errorlog(_0x4c57b3(0x270)));var _0x503aa7=!![],_0x4d97cb=!![];if(session[_0x4c57b3(0x310)]!==![]&&!session[_0x4c57b3(0x310)]['includes'](session[_0x4c57b3(0x207)][_0x5a2a53][_0x4c57b3(0x200)]))_0x503aa7=![];else session['rpcs'][_0x5a2a53][_0x4c57b3(0x7f0)]&&!session['rpcs'][_0x5a2a53][_0x4c57b3(0x7f0)][_0x4c57b3(0x513)]&&(_0x503aa7=![]);if(session[_0x4c57b3(0x7a6)]!==![]&&!session[_0x4c57b3(0x7a6)][_0x4c57b3(0x6b6)](session[_0x4c57b3(0x207)][_0x5a2a53][_0x4c57b3(0x200)]))_0x4d97cb=![];else session[_0x4c57b3(0x207)][_0x5a2a53][_0x4c57b3(0x7f0)]&&!session[_0x4c57b3(0x207)][_0x5a2a53][_0x4c57b3(0x7f0)][_0x4c57b3(0x33f)]&&(_0x4d97cb=![]);if(!_0x4d97cb&&!_0x503aa7){errorlog(_0x4c57b3(0x814));return;}!session[_0x4c57b3(0x6fd)]&&await chooseBestTURN();try{session[_0x4c57b3(0x207)][_0x5a2a53]['mc']=new RTCPeerConnection(session[_0x4c57b3(0x6fd)]);}catch(_0x226896){!session['cleanOutput']&&warnUser(_0x4c57b3(0x77e));}session[_0x4c57b3(0x207)][_0x5a2a53]['mc'][_0x4c57b3(0x461)]=function(_0xb0be27){var _0x5ed60c=_0x4c57b3;session[_0x5ed60c(0x332)](_0xb0be27,_0x5a2a53);};var _0x1e0408=session[_0x4c57b3(0x60d)](0xe),_0x5facc6={};_0x5facc6[_0x4c57b3(0x200)]=_0x25f2a9[_0x4c57b3(0x84f)],_0x5facc6[_0x4c57b3(0x2ef)]=_0x1e0408;function _0xa37530(_0x379c91){var _0x124392=_0x4c57b3,_0xd576c0=new XMLHttpRequest();_0xd576c0[_0x124392(0x357)]=function(){var _0x354823=_0x124392;if(this[_0x354823(0x464)]==0x4&&this[_0x354823(0x81c)]==0xc8){var _0x2e6209=this[_0x354823(0x922)](_0x354823(0x1f7));if(_0x2e6209==_0x354823(0x66f)){var _0x38251b={};_0x38251b[_0x354823(0x2ee)]=this[_0x354823(0x8ca)],_0x38251b['type']=_0x354823(0x8ec),session['rpcs'][_0x5a2a53]['mc'][_0x354823(0x434)](_0x38251b)[_0x354823(0x63c)](function(){_0x24aeaf();})[_0x354823(0x341)](function(_0x3edc48){log(_0x3edc48);});}}else log(this);},_0xd576c0[_0x124392(0x39f)]('POST',_0x25f2a9['url'],!![]),_0xd576c0[_0x124392(0x6ad)](_0x124392(0x222),_0x124392(0x795)),_0xd576c0[_0x124392(0x6ad)](_0x124392(0x5df),_0x124392(0x6f6)+_0x25f2a9['token']),_0xd576c0[_0x124392(0x640)](JSON[_0x124392(0x776)](_0x379c91));}function _0x24aeaf(){var _0x1b2ae2=_0x4c57b3;session[_0x1b2ae2(0x207)][_0x5a2a53]['mc'][_0x1b2ae2(0x747)]()[_0x1b2ae2(0x63c)](function(_0x4bf048){var _0x4230dc=_0x1b2ae2;return _0x4bf048[_0x4230dc(0x2ee)]=CodecsHandler['setOpusAttributes'](_0x4bf048[_0x4230dc(0x2ee)],{'stereo':0x1}),session[_0x4230dc(0x207)][_0x5a2a53]['mc'][_0x4230dc(0x2a5)](_0x4bf048);})[_0x1b2ae2(0x63c)](function(){var _0x50a152=_0x1b2ae2,_0x42f702={};_0x42f702['UUID']=_0x1e0408,_0x42f702[_0x50a152(0x615)]=session[_0x50a152(0x207)][_0x5a2a53]['mc'][_0x50a152(0x462)]['sdp'],_0xa37530(_0x42f702);})['catch'](function(_0x33f915){});}_0xa37530(_0x5facc6);}(function(){'use strict';var _0x2e433f=_0x13826c;let _0x3132eb=function(_0x207afe){var _0x28d304=_0x5f31;this[_0x28d304(0x7db)]=new Uint8Array(_0x207afe),this['pos']=0x0;};_0x3132eb[_0x2e433f(0x78b)][_0x2e433f(0x1eb)]=function(_0x5546df){var _0x3e6f39=_0x2e433f;this[_0x3e6f39(0x756)]=_0x5546df;},_0x3132eb[_0x2e433f(0x78b)][_0x2e433f(0x39a)]=function(_0xeffd8b){var _0x4c7dcb=_0x2e433f;for(let _0x59b633=0x0;_0x59b633<_0xeffd8b[_0x4c7dcb(0x7e9)];_0x59b633++){this[_0x4c7dcb(0x7db)][this['pos']++]=_0xeffd8b[_0x59b633];}},_0x3132eb[_0x2e433f(0x78b)]['writeByte']=function(_0x178d1f){var _0x72f888=_0x2e433f;this[_0x72f888(0x7db)][this[_0x72f888(0x756)]++]=_0x178d1f;},_0x3132eb[_0x2e433f(0x78b)][_0x2e433f(0x24a)]=_0x3132eb[_0x2e433f(0x78b)][_0x2e433f(0x8ad)],_0x3132eb[_0x2e433f(0x78b)][_0x2e433f(0x760)]=function(_0x368ab1){var _0x4f4e6b=_0x2e433f;this['data'][this[_0x4f4e6b(0x756)]++]=_0x368ab1>>0x8,this[_0x4f4e6b(0x7db)][this[_0x4f4e6b(0x756)]++]=_0x368ab1;},_0x3132eb['prototype'][_0x2e433f(0x2cd)]=function(_0x3f74ef){var _0x59f60d=_0x2e433f;let _0xf18cd6=new Uint8Array(new Float64Array([_0x3f74ef])[_0x59f60d(0x803)]);for(let _0x138a64=_0xf18cd6['length']-0x1;_0x138a64>=0x0;_0x138a64--){this['writeByte'](_0xf18cd6[_0x138a64]);}},_0x3132eb['prototype'][_0x2e433f(0x80d)]=function(_0x26d15e){var _0x47736c=_0x2e433f;let _0x34faff=new Uint8Array(new Float32Array([_0x26d15e])[_0x47736c(0x803)]);for(let _0x201f1f=_0x34faff['length']-0x1;_0x201f1f>=0x0;_0x201f1f--){this[_0x47736c(0x8ad)](_0x34faff[_0x201f1f]);}},_0x3132eb[_0x2e433f(0x78b)][_0x2e433f(0xa22)]=function(_0xc828e4){var _0x39a8c4=_0x2e433f;for(let _0x1716ca=0x0;_0x1716ca<_0xc828e4['length'];_0x1716ca++){this[_0x39a8c4(0x7db)][this[_0x39a8c4(0x756)]++]=_0xc828e4[_0x39a8c4(0x944)](_0x1716ca);}},_0x3132eb[_0x2e433f(0x78b)][_0x2e433f(0x819)]=function(_0x15ada6,_0x4c8f7c){var _0x19c581=_0x2e433f;switch(_0x4c8f7c){case 0x1:this[_0x19c581(0x24a)](0x1<<0x7|_0x15ada6);break;case 0x2:this['writeU8'](0x1<<0x6|_0x15ada6>>0x8),this[_0x19c581(0x24a)](_0x15ada6);break;case 0x3:this[_0x19c581(0x24a)](0x1<<0x5|_0x15ada6>>0x10),this[_0x19c581(0x24a)](_0x15ada6>>0x8),this[_0x19c581(0x24a)](_0x15ada6);break;case 0x4:this[_0x19c581(0x24a)](0x1<<0x4|_0x15ada6>>0x18),this[_0x19c581(0x24a)](_0x15ada6>>0x10),this['writeU8'](_0x15ada6>>0x8),this['writeU8'](_0x15ada6);break;case 0x5:this[_0x19c581(0x24a)](0x1<<0x3|_0x15ada6/0x100000000&0x7),this[_0x19c581(0x24a)](_0x15ada6>>0x18),this['writeU8'](_0x15ada6>>0x10),this['writeU8'](_0x15ada6>>0x8),this['writeU8'](_0x15ada6);break;default:throw new Error('Bad\x20EBML\x20VINT\x20size\x20'+_0x4c8f7c);}},_0x3132eb[_0x2e433f(0x78b)][_0x2e433f(0x43e)]=function(_0x1a3238){if(_0x1a3238<(0x1<<0x7)-0x1)return 0x1;else{if(_0x1a3238<(0x1<<0xe)-0x1)return 0x2;else{if(_0x1a3238<(0x1<<0x15)-0x1)return 0x3;else{if(_0x1a3238<(0x1<<0x1c)-0x1)return 0x4;else{if(_0x1a3238<0x7ffffffff)return 0x5;else throw new Error('EBML\x20VINT\x20size\x20not\x20supported\x20'+_0x1a3238);}}}}},_0x3132eb[_0x2e433f(0x78b)][_0x2e433f(0x40a)]=function(_0xcd97c4){this['writeEBMLVarIntWidth'](_0xcd97c4,this['measureEBMLVarInt'](_0xcd97c4));},_0x3132eb[_0x2e433f(0x78b)][_0x2e433f(0x535)]=function(_0x257e06,_0x1479ae){var _0x40cdb7=_0x2e433f;_0x1479ae===undefined&&(_0x1479ae=this[_0x40cdb7(0x70c)](_0x257e06));switch(_0x1479ae){case 0x5:this[_0x40cdb7(0x24a)](Math['floor'](_0x257e06/0x100000000));case 0x4:this[_0x40cdb7(0x24a)](_0x257e06>>0x18);case 0x3:this[_0x40cdb7(0x24a)](_0x257e06>>0x10);case 0x2:this[_0x40cdb7(0x24a)](_0x257e06>>0x8);case 0x1:this[_0x40cdb7(0x24a)](_0x257e06);break;default:throw new Error('Bad\x20UINT\x20size\x20'+_0x1479ae);}},_0x3132eb[_0x2e433f(0x78b)][_0x2e433f(0x70c)]=function(_0x1cab28){if(_0x1cab28<0x1<<0x8)return 0x1;else{if(_0x1cab28<0x1<<0x10)return 0x2;else{if(_0x1cab28<0x1<<0x18)return 0x3;else return _0x1cab28<0x100000000?0x4:0x5;}}},_0x3132eb[_0x2e433f(0x78b)][_0x2e433f(0x6df)]=function(){var _0x5400eb=_0x2e433f;if(this[_0x5400eb(0x756)]this[_0x5b0e9e(0x7e9)])throw new Error(_0x5b0e9e(0x9d0));this[_0x5b0e9e(0x756)]=_0x36624d;},this[_0xb670a(0x6a9)]=function(_0x5876f9){var _0x3f9d1d=_0xb670a;let _0x2efef2={'offset':this['pos'],'data':_0x5876f9,'length':_0x36d620(_0x5876f9)},_0x17cd8b=_0x2efef2['offset']>=this[_0x3f9d1d(0x7e9)];this[_0x3f9d1d(0x756)]+=_0x2efef2[_0x3f9d1d(0x7e9)],this[_0x3f9d1d(0x7e9)]=Math[_0x3f9d1d(0xa26)](this[_0x3f9d1d(0x7e9)],this[_0x3f9d1d(0x756)]),_0x20d15d=_0x20d15d[_0x3f9d1d(0x63c)](async function(){var _0x4efb64=_0x3f9d1d;if(_0x34902b)return new Promise(function(_0x2ef401,_0x56dc78){var _0xf09aca=_0x5f31;_0x1e9704(_0x2efef2[_0xf09aca(0x7db)])[_0xf09aca(0x63c)](function(_0x16e587){var _0x2b7f2f=_0xf09aca;let _0x19f500=0x0,_0x2e390c=Buffer[_0x2b7f2f(0x8c5)](_0x16e587[_0x2b7f2f(0x803)]),_0x4ea765=function(_0x1cb564,_0x3dcb2d,_0x4a208d){var _0x2fad24=_0x2b7f2f;_0x19f500+=_0x3dcb2d,_0x19f500>=_0x4a208d[_0x2fad24(0x7e9)]?_0x2ef401():_0x44cf7b[_0x2fad24(0x6a9)](_0x34902b,_0x4a208d,_0x19f500,_0x4a208d['length']-_0x19f500,_0x2efef2[_0x2fad24(0x9e3)]+_0x19f500,_0x4ea765);};_0x44cf7b[_0x2b7f2f(0x6a9)](_0x34902b,_0x2e390c,0x0,_0x2e390c[_0x2b7f2f(0x7e9)],_0x2efef2[_0x2b7f2f(0x9e3)],_0x4ea765);});});else{if(_0x25db3e)return new Promise(function(_0x3b810c,_0x3a00c4){var _0x1bf380=_0x5f31;_0x25db3e[_0x1bf380(0x1eb)](_0x2efef2['offset'])['then'](()=>{var _0x5c46a3=_0x1bf380;_0x25db3e[_0x5c46a3(0x6a9)](new Blob([_0x2efef2[_0x5c46a3(0x7db)]]));})[_0x1bf380(0x63c)](()=>{_0x3b810c();});});else{if(!_0x17cd8b)for(let _0x46ff94=0x0;_0x46ff94<_0x15d38d[_0x4efb64(0x7e9)];_0x46ff94++){let _0x25363c=_0x15d38d[_0x46ff94];if(!(_0x2efef2[_0x4efb64(0x9e3)]+_0x2efef2[_0x4efb64(0x7e9)]<=_0x25363c['offset']||_0x2efef2[_0x4efb64(0x9e3)]>=_0x25363c[_0x4efb64(0x9e3)]+_0x25363c[_0x4efb64(0x7e9)])){if(_0x2efef2[_0x4efb64(0x9e3)]<_0x25363c[_0x4efb64(0x9e3)]||_0x2efef2[_0x4efb64(0x9e3)]+_0x2efef2[_0x4efb64(0x7e9)]>_0x25363c[_0x4efb64(0x9e3)]+_0x25363c[_0x4efb64(0x7e9)])throw new Error(_0x4efb64(0x8b0));if(_0x2efef2[_0x4efb64(0x9e3)]==_0x25363c['offset']&&_0x2efef2['length']==_0x25363c['length']){_0x25363c[_0x4efb64(0x7db)]=_0x2efef2[_0x4efb64(0x7db)];return;}else return _0x1e9704(_0x25363c['data'])[_0x4efb64(0x63c)](function(_0x222fc1){var _0x407a17=_0x4efb64;return _0x25363c[_0x407a17(0x7db)]=_0x222fc1,_0x1e9704(_0x2efef2[_0x407a17(0x7db)]);})['then'](function(_0xca7932){var _0x43c14d=_0x4efb64;_0x2efef2['data']=_0xca7932,_0x25363c[_0x43c14d(0x7db)][_0x43c14d(0x552)](_0x2efef2['data'],_0x2efef2[_0x43c14d(0x9e3)]-_0x25363c['offset']);});}}}}_0x15d38d[_0x4efb64(0x68a)](_0x2efef2);});},this[_0xb670a(0x2d9)]=function(_0x4e29cc){var _0x2c6e9c=_0xb670a;return _0x34902b||_0x25db3e?_0x20d15d=_0x20d15d[_0x2c6e9c(0x63c)](function(){return null;}):_0x20d15d=_0x20d15d[_0x2c6e9c(0x63c)](function(){var _0x55dead=_0x2c6e9c;let _0x5d5bf9=[];for(let _0x11e0f6=0x0;_0x11e0f6<_0x15d38d['length'];_0x11e0f6++){_0x5d5bf9[_0x55dead(0x68a)](_0x15d38d[_0x11e0f6]['data']);}return new Blob(_0x5d5bf9,{'type':_0x4e29cc});}),_0x20d15d;};};};window['BlobBuffer']=_0x29d0dd(null);}()),(function(){'use strict';var _0xc9bd01=_0x13826c;function _0x1770d1(_0x29ee05){var _0x2c31aa=_0x5f31;this[_0x2c31aa(0x3c1)]=_0x29ee05;}function _0x4cafb8(_0x29d78e,_0x42ff14){var _0x53ba6a=_0x5f31;let _0x11315c={};return[_0x29d78e,_0x42ff14][_0x53ba6a(0xa17)](function(_0x454820){var _0x297c10=_0x53ba6a;for(let _0x25c11f in _0x454820){Object[_0x297c10(0x78b)][_0x297c10(0x3d8)][_0x297c10(0x44b)](_0x454820,_0x25c11f)&&(_0x11315c[_0x25c11f]=_0x454820[_0x25c11f]);}}),_0x11315c;}function _0x2ade9a(_0x221b2c,_0x1ee50b,_0x23bf8f){var _0xb4c29=_0x5f31;if(Array[_0xb4c29(0x52c)](_0x23bf8f))for(let _0x5dd32b=0x0;_0x5dd32b<_0x23bf8f[_0xb4c29(0x7e9)];_0x5dd32b++){_0x2ade9a(_0x221b2c,_0x1ee50b,_0x23bf8f[_0x5dd32b]);}else{if(typeof _0x23bf8f==='string')_0x221b2c['writeString'](_0x23bf8f);else{if(_0x23bf8f instanceof Uint8Array)_0x221b2c['writeBytes'](_0x23bf8f);else{if(_0x23bf8f['id']){_0x23bf8f[_0xb4c29(0x9e3)]=_0x221b2c[_0xb4c29(0x756)]+_0x1ee50b,_0x221b2c['writeUnsignedIntBE'](_0x23bf8f['id']);if(Array[_0xb4c29(0x52c)](_0x23bf8f['data'])){let _0x228e32,_0x3e51ec,_0x235adb;_0x23bf8f[_0xb4c29(0x4cc)]===-0x1?_0x221b2c[_0xb4c29(0x8ad)](0xff):(_0x228e32=_0x221b2c[_0xb4c29(0x756)],_0x221b2c[_0xb4c29(0x39a)]([0x0,0x0,0x0,0x0])),_0x3e51ec=_0x221b2c['pos'],_0x23bf8f[_0xb4c29(0x8f0)]=_0x3e51ec+_0x1ee50b,_0x2ade9a(_0x221b2c,_0x1ee50b,_0x23bf8f[_0xb4c29(0x7db)]),_0x23bf8f[_0xb4c29(0x4cc)]!==-0x1&&(_0x235adb=_0x221b2c['pos'],_0x23bf8f[_0xb4c29(0x4cc)]=_0x235adb-_0x3e51ec,_0x221b2c[_0xb4c29(0x1eb)](_0x228e32),_0x221b2c[_0xb4c29(0x819)](_0x23bf8f[_0xb4c29(0x4cc)],0x4),_0x221b2c[_0xb4c29(0x1eb)](_0x235adb));}else{if(typeof _0x23bf8f[_0xb4c29(0x7db)]===_0xb4c29(0x854))_0x221b2c[_0xb4c29(0x40a)](_0x23bf8f['data'][_0xb4c29(0x7e9)]),_0x23bf8f['dataOffset']=_0x221b2c[_0xb4c29(0x756)]+_0x1ee50b,_0x221b2c[_0xb4c29(0xa22)](_0x23bf8f[_0xb4c29(0x7db)]);else{if(typeof _0x23bf8f[_0xb4c29(0x7db)]===_0xb4c29(0x228))!_0x23bf8f[_0xb4c29(0x4cc)]&&(_0x23bf8f[_0xb4c29(0x4cc)]=_0x221b2c[_0xb4c29(0x70c)](_0x23bf8f[_0xb4c29(0x7db)])),_0x221b2c[_0xb4c29(0x40a)](_0x23bf8f[_0xb4c29(0x4cc)]),_0x23bf8f['dataOffset']=_0x221b2c[_0xb4c29(0x756)]+_0x1ee50b,_0x221b2c[_0xb4c29(0x535)](_0x23bf8f[_0xb4c29(0x7db)],_0x23bf8f[_0xb4c29(0x4cc)]);else{if(_0x23bf8f['data']instanceof _0x1770d1)_0x221b2c[_0xb4c29(0x40a)](0x8),_0x23bf8f[_0xb4c29(0x8f0)]=_0x221b2c['pos']+_0x1ee50b,_0x221b2c[_0xb4c29(0x2cd)](_0x23bf8f['data'][_0xb4c29(0x3c1)]);else{if(_0x23bf8f['data']instanceof _0x1770d1)_0x221b2c[_0xb4c29(0x40a)](0x4),_0x23bf8f['dataOffset']=_0x221b2c[_0xb4c29(0x756)]+_0x1ee50b,_0x221b2c[_0xb4c29(0x80d)](_0x23bf8f[_0xb4c29(0x7db)]['value']);else{if(_0x23bf8f[_0xb4c29(0x7db)]instanceof Uint8Array)_0x221b2c[_0xb4c29(0x40a)](_0x23bf8f[_0xb4c29(0x7db)][_0xb4c29(0x6c6)]),_0x23bf8f[_0xb4c29(0x8f0)]=_0x221b2c['pos']+_0x1ee50b,_0x221b2c[_0xb4c29(0x39a)](_0x23bf8f[_0xb4c29(0x7db)]);else throw new Error('Bad\x20EBML\x20datatype\x20'+typeof _0x23bf8f[_0xb4c29(0x7db)]);}}}}}}else throw new Error(_0xb4c29(0xa83)+typeof _0x23bf8f[_0xb4c29(0x7db)]);}}}}let _0x1be6e5=function(_0x5c170f,_0x1e2ac3){return function(_0x3e4b8e){var _0xa8e55b=_0x5f31;let _0x585e24=0x1388,_0x4a06dc=![],_0x5b5f85=0x0,_0x1802d5=0x0,_0x3e8648=!![],_0x18f638=0x0,_0x2b72fa=0xbb80,_0x520049=0x1,_0x4179ae=[],_0x29e995=0x0,_0x5becaa=0x0,_0x12ac87=0x0,_0x26d90d={'fileWriter':null,'codec':'VP9'},_0x492b20,_0x2f69b9={'id':0x4489,'data':new _0x1770d1(0x0)},_0x540cb6=new _0x1e2ac3(_0x3e4b8e[_0xa8e55b(0xa67)]);function _0x2c096e(_0x1808bb,_0x4e2dd3){return _0x4e2dd3=new Uint8Array(_0x4e2dd3),_0x1ddd4f(_0xe42419(_0x1808bb),_0x4b535e(_0x4e2dd3['byteLength']),_0x4e2dd3);}function _0x1ddd4f(){var _0x45484c=_0xa8e55b,_0x239b21,_0x3db277=0x0,_0x596133;for(_0x239b21=0x0;_0x239b21>>0x18&0xff,_0x129ed2>>>0x10&0xff,_0x129ed2>>>0x8&0xff,_0x129ed2&0xff]);if((_0x129ed2&0xff0000)!=0x0)return new Uint8Array([_0x129ed2>>>0x10&0xff,_0x129ed2>>>0x8&0xff,_0x129ed2&0xff]);if((_0x129ed2&0xff00)!=0x0)return new Uint8Array([_0x129ed2>>>0x8&0xff,_0x129ed2&0xff]);if((_0x129ed2&0xff)!=0x0)return new Uint8Array([_0x129ed2&0xff]);throw'InvalidOperationException';}function _0x4b535e(_0x22452c){if(_0x22452c<=0x7f)return new Uint8Array([0x80|_0x22452c&0x7f]);if(_0x22452c<=0x3fff)return new Uint8Array([0x40|_0x22452c>>0x8&0x3f,_0x22452c&0xff]);return new Uint8Array([0x8,_0x22452c>>>0x18&0xff,_0x22452c>>>0x10&0xff,_0x22452c>>>0x8&0xff,_0x22452c&0xff]);}function _0x511ad9(_0x17ddca,_0x3cdf44){var _0x29084f=_0xa8e55b,_0x332d5b=new DataView(new ArrayBuffer(0x4));return _0x332d5b[_0x29084f(0x2e5)](0x0,_0x3cdf44,![]),_0x2c096e(_0x17ddca,new Uint8Array(_0x332d5b[_0x29084f(0x803)]));}function _0x3952b3(_0x229233){var _0x227055=_0xa8e55b;if(_0x229233<=0xff)return new Uint8Array([_0x229233&0xff]);if(_0x229233<=0xffff)return new Uint8Array([_0x229233>>>0x8&0xff,_0x229233&0xff]);if(_0x229233<=0xffffff)return new Uint8Array([_0x229233>>0x10&0xff,_0x229233>>0x8&0xff,_0x229233&0xff]);return new Uint8Array([_0x229233>>>0x18&0xff,_0x229233>>>0x10&0xff,_0x229233>>>0x8&0xff,_0x229233&0xff]);var _0x2d88c6=new DataView(new ArrayBuffer(0x4));return _0x2d88c6[_0x227055(0x8ed)](0x0,_0x229233,![]),_0x2d88c6;}function _0x173afa(_0x107f0b,_0x2c626c){return _0x2c096e(_0x107f0b,_0x3952b3(_0x2c626c));}function _0x1a5efa(_0x4fc2de,_0x2e3146){var _0x5ac250=_0xa8e55b;return _0x2c096e(_0x4fc2de,new TextEncoder()[_0x5ac250(0x5c6)](_0x2e3146));}function _0xaf6778(){var _0x221209=_0xa8e55b;let _0x4ab867={'id':0x1a45dfa3,'data':[_0x173afa(0x4286,0x1),_0x173afa(0x42f7,0x1),_0x173afa(0x42f2,0x4),_0x173afa(0x42f3,0x8),_0x1a5efa(0x4282,_0x221209(0x3be)),_0x173afa(0x4287,0x4),_0x173afa(0x4285,0x2)]},_0x1aa793={'id':0x1549a966,'data':[_0x173afa(0x2ad7b1,0xf4240),_0x1a5efa(0x4d80,_0x221209(0x2bf)),_0x1a5efa(0x5741,'VDO-Ninja'),_0x2f69b9]},_0x4eb54f=[{'id':0xb0,'data':_0x5b5f85},{'id':0xba,'data':_0x1802d5}],_0x5f1705={'id':0x1654ae6b,'data':[{'id':0xae,'data':[_0x173afa(0xd7,0x1),_0x173afa(0x73c5,0x1),_0x173afa(0x9c,0x0),_0x1a5efa(0x22b59c,'und'),_0x1a5efa(0x86,'V_'+_0x3e4b8e[_0x221209(0x7af)]),_0x173afa(0x83,0x1),{'id':0xe0,'data':[_0x173afa(0xb0,_0x5b5f85),_0x173afa(0xba,_0x1802d5)]}]},{'id':0xae,'data':[_0x173afa(0xd7,0x2),_0x173afa(0x73c5,0x2),_0x173afa(0x9c,0x0),_0x1a5efa(0x22b59c,_0x221209(0x95e)),_0x1a5efa(0x86,'A_OPUS'),_0x173afa(0x83,0x2),{'id':0xe1,'data':[_0x511ad9(0xb5,_0x2b72fa),_0x173afa(0x9f,_0x520049)]},_0x2c096e(0x63a2,new Uint8Array(['O'[_0x221209(0x944)](0x0),'p'[_0x221209(0x944)](0x0),'u'[_0x221209(0x944)](0x0),'s'['charCodeAt'](0x0),'H'[_0x221209(0x944)](0x0),'e'['charCodeAt'](0x0),'a'[_0x221209(0x944)](0x0),'d'[_0x221209(0x944)](0x0),0x1,_0x520049&0xff,0x38,0x1,_0x2b72fa>>>0x0&0xff,_0x2b72fa>>>0x8&0xff,_0x2b72fa>>>0x10&0xff,_0x2b72fa>>>0x18&0xff,0x0,0x0,0x0]))]}]};_0x492b20={'id':0x18538067,'size':-0x1,'data':[_0x1aa793,_0x5f1705]};let _0x4ef857=new _0x5c170f(0x200);_0x2ade9a(_0x4ef857,_0x540cb6[_0x221209(0x756)],[_0x4ab867,_0x492b20]),_0x540cb6[_0x221209(0x6a9)](_0x4ef857[_0x221209(0x6df)]()),_0x4a06dc=!![];}function _0x5e3429(_0x79498a){var _0x1c7ad2=_0xa8e55b;let _0x18891a=new _0x5c170f(0x1+0x2+0x1);if(!(_0x79498a[_0x1c7ad2(0x8a0)]>0x0&&_0x79498a['trackNumber']<0x7f))throw new Error(_0x1c7ad2(0x256));return _0x18891a[_0x1c7ad2(0x40a)](_0x79498a[_0x1c7ad2(0x8a0)]),_0x18891a['writeU16BE'](_0x79498a[_0x1c7ad2(0x793)]),_0x18891a[_0x1c7ad2(0x8ad)]((_0x79498a[_0x1c7ad2(0x773)]=='key'?0x1:0x0)<<0x7),{'id':0xa3,'data':[_0x18891a['getAsDataArray'](),_0x79498a[_0x1c7ad2(0x6e2)]]};}function _0x76bf67(_0x121409){return{'id':0x1f43b675,'data':[{'id':0xe7,'data':Math['round'](_0x121409['timecode'])}]};}function _0x1b1246(){var _0x4d1ac9=_0xa8e55b;if(_0x4179ae[_0x4d1ac9(0x7e9)]===0x0)return;let _0x32e822=0x0;for(let _0x199da4=0x0;_0x199da4<_0x4179ae[_0x4d1ac9(0x7e9)];_0x199da4++){_0x32e822+=_0x4179ae[_0x199da4]['frame']['byteLength'];}let _0x35aded=new _0x5c170f(_0x32e822+_0x4179ae[_0x4d1ac9(0x7e9)]*0x40),_0x5c3795=_0x76bf67({'timecode':Math['round'](_0x29e995)});for(let _0x3bad06=0x0;_0x3bad06<_0x4179ae[_0x4d1ac9(0x7e9)];_0x3bad06++){_0x5c3795[_0x4d1ac9(0x7db)][_0x4d1ac9(0x68a)](_0x5e3429(_0x4179ae[_0x3bad06]));}_0x2ade9a(_0x35aded,_0x540cb6[_0x4d1ac9(0x756)],_0x5c3795),_0x540cb6['write'](_0x35aded[_0x4d1ac9(0x6df)]()),_0x4179ae=[],_0x5becaa=0x0;}function _0x4f12e1(_0xa26cea,_0x2c41d5){var _0x2e5ea8=_0xa8e55b;_0xa26cea[_0x2e5ea8(0x8a0)]=_0x2c41d5;var _0x34f4b9=_0xa26cea[_0x2e5ea8(0x7c0)]/0x3e8;_0x3e8648?(_0x18f638=_0x34f4b9,_0x34f4b9=0x0,_0x3e8648=![]):_0x34f4b9=_0x34f4b9-_0x18f638;_0x12ac87=_0x34f4b9;if(_0x5becaa==0x0)_0x29e995=_0x34f4b9;_0xa26cea['timecode']=Math[_0x2e5ea8(0x2d6)](_0x34f4b9-_0x29e995),_0x4179ae['push'](_0xa26cea),_0x5becaa=_0xa26cea[_0x2e5ea8(0x793)]+0x1,_0x5becaa>=_0x585e24&&_0x1b1246();}function _0x4e5fe0(){var _0x125b5e=_0xa8e55b;let _0x41155c=new _0x5c170f(seekHead['size']),_0x4c930e=_0x540cb6[_0x125b5e(0x756)];_0x2ade9a(_0x41155c,seekHead[_0x125b5e(0x8f0)],seekHead['data']),_0x540cb6[_0x125b5e(0x1eb)](seekHead[_0x125b5e(0x8f0)]),_0x540cb6[_0x125b5e(0x6a9)](_0x41155c[_0x125b5e(0x6df)]()),_0x540cb6['seek'](_0x4c930e);}function _0x3952b4(){var _0x518c66=_0xa8e55b;let _0x1a9539=new _0x5c170f(0x8),_0x50478d=_0x540cb6[_0x518c66(0x756)];_0x1a9539[_0x518c66(0x2cd)](_0x12ac87),_0x540cb6['seek'](_0x2f69b9[_0x518c66(0x8f0)]),_0x540cb6[_0x518c66(0x6a9)](_0x1a9539[_0x518c66(0x6df)]()),_0x540cb6[_0x518c66(0x1eb)](_0x50478d);}this['addFrame']=function(_0x3de4b6){var _0x1f3d79=_0xa8e55b;!_0x4a06dc&&(_0x5b5f85=_0x3e4b8e['width'],_0x1802d5=_0x3e4b8e[_0x1f3d79(0x93b)],_0x2b72fa=_0x3e4b8e['samplingFrequency'],_0x520049=_0x3e4b8e[_0x1f3d79(0x4b6)],_0xaf6778());if(_0x3de4b6[_0x1f3d79(0x33b)]['name']=='EncodedVideoChunk'){let _0x519074=new Uint8Array(_0x3de4b6[_0x1f3d79(0x6c6)]);_0x3de4b6[_0x1f3d79(0x28e)](_0x519074),_0x4f12e1({'frame':_0x519074,'intime':_0x3de4b6['timestamp'],'type':_0x3de4b6[_0x1f3d79(0x773)]},0x1);return;}else{if(_0x3de4b6['constructor'][_0x1f3d79(0x50f)]=='EncodedAudioChunk'){let _0x3fd49d=new Uint8Array(_0x3de4b6[_0x1f3d79(0x6c6)]);_0x3de4b6['copyTo'](_0x3fd49d),_0x4f12e1({'frame':_0x3fd49d,'intime':_0x3de4b6['timestamp'],'type':_0x3de4b6[_0x1f3d79(0x773)]},0x2);return;}}},this[_0xa8e55b(0x2d9)]=function(){var _0x130a10=_0xa8e55b;return!_0x4a06dc&&_0xaf6778(),_0x3e8648=!![],_0x1b1246(),_0x3952b4(),_0x540cb6[_0x130a10(0x2d9)]('video/webm');},this[_0xa8e55b(0x244)]=function(){var _0x494557=_0xa8e55b;return _0x540cb6[_0x494557(0x7e9)];},_0x3e4b8e=_0x4cafb8(_0x26d90d,_0x3e4b8e||{});};};window['WebMWriter']=_0x1be6e5(window[_0xc9bd01(0x6b4)],window[_0xc9bd01(0x956)]);}()); \ No newline at end of file