@brandbrigade/ott-bb-player 1.0.16 → 1.0.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- const _0x5f573c=_0x530f;function _0x103e(){const _0x217378=['Timecode2Frames','syncPoint','vertexAttribPointer','136561nqvvaV','splice','getUniformLocation','drawArrays','allGamesURL','u_matrix','BlackBerry','uniformMatrix3fv','New\x20segment\x20(','Augmenter','lastAd','emit','webGLVersion','createBuffer','place2AdTexture','Offest\x20for\x20gameid=\x20','urls','push','Error\x20from\x20worker:','timeDate2TC','offsetJsonURL','substring','iPhone','info','2rlpNqC','mediaTime','none','OTTPlayer','getDeviceName',',\x20correction','39081SgoMbD','webglUtils','roommembers','offsetTop','MSIE','https://cdnjs.cloudflare.com/ajax/libs/socket.io/2.3.0/socket.io.js','composer::AddAdvertisement:\x20ads-to-place\x20mapping:\x20',',\x20Brain\x20Time-Code:\x20','sourceFPS','STATIC_DRAW','priv','mediaIdJsonURL','\x20for\x20place\x20','onload','folderName','Windows\x20Phone','deleteTexture','version','Src59_MediaTime60','alphaFound','canvasSize','\x20ms','message','nba','We\x20have\x20no\x20MetaDataDownloaderThread\x20yet.\x20Creating\x20it','charCodeAt','renderTimecode',',\x20time:\x20','join','createElement','Error\x20from\x20worker\x20(via\x20addEventListener):','\x20room','error::','composer::SelectAd:\x20The\x20selected\x20ad\x20should\x20be\x20in\x20place\x20','status','getHours','_nextAdvertisement','an\x20iPad','index','getMediaTimeFPS','https://www.virtualott.com','Missing\x20meta\x20data\x20at\x20time\x20code\x20','uniform2fv','\x20Time:\x20','Augment','onNewSegmentInterface','\x0a\x0a//High\x20precision\x20mode\x0aprecision\x20highp\x20float;\x0a\x0a//\x20an\x20attribute\x20is\x20an\x20input\x20(in)\x20to\x20a\x20vertex\x20shader.\x0a//\x20It\x20will\x20receive\x20vertex\x20data\x20from\x20the\x20buffer\x0aattribute\x20vec2\x20a_position;\x0aattribute\x20vec2\x20a_texCoord;\x0auniform\x20vec2\x20u_resolution;\x0avarying\x20vec2\x20v_texCoord;\x0a\x0a\x0a//\x20Main\x20vertex\x20shader\x0avoid\x20main()\x20{\x0a\x20\x20//\x20convert\x20the\x20rectangle\x20from\x20pixels\x20to\x200.0\x20to\x201.0\x0a\x20\x20\x20vec2\x20zeroToOne\x20=\x20a_position\x20/\x20u_resolution;\x0a\x0a\x20\x20\x20//\x20convert\x20from\x200->1\x20to\x200->2\x0a\x20\x20\x20vec2\x20zeroToTwo\x20=\x20zeroToOne\x20*\x202.0;\x0a\x0a\x20\x20\x20//\x20convert\x20from\x200->2\x20to\x20-1->+1\x20(clipspace)\x0a\x20\x20\x20vec2\x20clipSpace\x20=\x20zeroToTwo\x20-\x201.0;\x0a\x0a\x20\x20\x20gl_Position\x20=\x20vec4(clipSpace\x20*\x20vec2(1,\x20-1),\x200,\x201);\x0a\x0a\x20\x20\x20//\x20pass\x20the\x20texCoord\x20to\x20the\x20fragment\x20shader\x0a\x20\x20\x20//\x20The\x20GPU\x20will\x20interpolate\x20this\x20value\x20between\x20points.\x0a\x20\x20\x20v_texCoord\x20=\x20a_texCoord;\x0a}\x0a','1288830ZfLvPr','isMac','mimeType','test','Error\x20compiling\x20shader:\x20','PalmOS','video\x20element\x20is\x20already\x20loaded.\x20Setting\x20up\x20requestVideoFrameCallback','optionsFromMK:\x20','video\x20element\x20is\x20not\x20yet\x20loaded.\x20Setting\x20up\x20loadedmetadata\x20event\x20to\x20wait\x20until\x20it\x27s\x20loaded','(\x20Security\x20)\x20We\x20cant\x20reach\x20','program','now','ToggleFullscreen','loadedmetadata','\x20so\x20should\x20navigate\x20to\x20','metadataMap','webgl','isAdLoop','disconnect','initializeComponents','isConnected','ads:','timeDate2TCString','options\x20after\x20merge\x20with\x20the\x20global\x20options:\x20','advertisementMap','RGBA','OnMetaData','position','Win','body','console',',\x20stage:\x20','u_alpha','gameId','autoAddIndex','#version\x20300\x20es\x0a\x0a//\x20an\x20attribute\x20is\x20an\x20input\x20(in)\x20to\x20a\x20vertex\x20shader.\x0a//\x20It\x20will\x20receive\x20vertex\x20data\x20from\x20the\x20buffer\x0ain\x20vec2\x20a_position;\x0a\x0a//Identity\x20matrix\x20for\x20now\x0auniform\x20mat3\x20u_matrix;\x0a\x0a//The\x20canvas\x20resolution,\x20to\x20covert\x20to\x20ZeTor\x0auniform\x20vec2\x20u_resolution;\x0a\x0a//a_texCoord->v_texCoord\x20interpolation\x0a//in\x20vec2\x20a_texCoord;\x0a//out\x20vec2\x20v_texCoord;\x0a\x0a//\x20Main\x20vertex\x20shader\x0avoid\x20main()\x20{\x0a\x20\x20//Translate,\x20rotate,\x20scale\x20by\x20u_matrix:\x0a\x20\x20vec2\x20position\x20=\x20(u_matrix\x20*\x20vec3(a_position,\x201)).xy;\x0a\x0a\x20\x20//Convert\x20the\x20position\x20from\x20pixels\x20to\x20ZeTor\x20[0.0,1.0]\x0a\x20\x20vec2\x20zeroToOne\x20=\x20position\x20/\x20u_resolution;\x0a\x0a\x20\x20//Convert\x20from\x20[0,1]\x20to\x20[0,2]\x0a\x20\x20vec2\x20zeroToTwo\x20=\x20zeroToOne\x20*\x202.0;\x0a\x0a\x20\x20//Convert\x20from\x20[0,2]\x20to\x20[-1,+1]\x20(clipspace)\x0a\x20\x20vec2\x20clipSpace\x20=\x20zeroToTwo\x20-\x201.0;\x0a\x0a\x20\x20gl_Position\x20=\x20vec4(clipSpace\x20*\x20vec2(1,\x20-1),\x200,\x201);\x0a\x0a\x20\x20//Pass\x20the\x20texCoord\x20to\x20the\x20fragment\x20shader\x0a\x20\x20//The\x20GPU\x20will\x20interpolate\x20this\x20value\x20between\x20points.\x0a\x20\x20//v_texCoord\x20=\x20a_texCoord;\x0a}\x0a','getProgramParameter','try\x20{\x0a\x0alet\x20UZIP\x20=\x20{};\x0aif(typeof\x20module\x20==\x20\x22object\x22)\x20module.exports\x20=\x20UZIP;\x0aUZIP[\x22parse\x22]\x20=\x20function(buf,\x20onlyNames)\x09//\x20ArrayBuffer\x0a{\x0a\x20\x20\x20\x20let\x20rUs\x20=\x20UZIP.bin.readUshort,\x20rUi\x20=\x20UZIP.bin.readUint,\x20o\x20=\x200,\x20out\x20=\x20{};\x0a\x20\x20\x20\x20let\x20data\x20=\x20new\x20Uint8Array(buf);\x0a\x20\x20\x20\x20let\x20eocd\x20=\x20data.length-4;\x0a\x0a\x20\x20\x20\x20while(rUi(data,\x20eocd)!=0x06054b50)\x20eocd--;\x0a\x0a\x20\x20\x20\x20o\x20=\x20eocd;\x0a\x20\x20\x20\x20o+=4;\x09//\x20sign\x20\x20=\x200x06054b50\x0a\x20\x20\x20\x20o+=4;\x20\x20//\x20disks\x20=\x200;\x0a\x20\x20\x20\x20let\x20cnu\x20=\x20rUs(data,\x20o);\x20\x20o+=2;\x0a\x20\x20\x20\x20let\x20cnt\x20=\x20rUs(data,\x20o);\x20\x20o+=2;\x0a\x0a\x20\x20\x20\x20let\x20csize\x20=\x20rUi(data,\x20o);\x20\x20o+=4;\x0a\x20\x20\x20\x20let\x20coffs\x20=\x20rUi(data,\x20o);\x20\x20o+=4;\x0a\x0a\x20\x20\x20\x20o\x20=\x20coffs;\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<cnu;\x20i++)\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20sign\x20=\x20rUi(data,\x20o);\x20\x20o+=4;\x0a\x20\x20\x20\x20\x20\x20\x20\x20o\x20+=\x204;\x20\x20//\x20versions;\x0a\x20\x20\x20\x20\x20\x20\x20\x20o\x20+=\x204;\x20\x20//\x20flag\x20+\x20compr\x0a\x20\x20\x20\x20\x20\x20\x20\x20o\x20+=\x204;\x20\x20//\x20time\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20crc32\x20=\x20rUi(data,\x20o);\x20\x20o+=4;\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20csize\x20=\x20rUi(data,\x20o);\x20\x20o+=4;\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20usize\x20=\x20rUi(data,\x20o);\x20\x20o+=4;\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20nl\x20=\x20rUs(data,\x20o),\x20el\x20=\x20rUs(data,\x20o+2),\x20cl\x20=\x20rUs(data,\x20o+4);\x20\x20o\x20+=\x206;\x20\x20//\x20name,\x20extra,\x20comment\x0a\x20\x20\x20\x20\x20\x20\x20\x20o\x20+=\x208;\x20\x20//\x20disk,\x20attribs\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20roff\x20=\x20rUi(data,\x20o);\x20\x20o+=4;\x0a\x20\x20\x20\x20\x20\x20\x20\x20o\x20+=\x20nl\x20+\x20el\x20+\x20cl;\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20UZIP._readLocal(data,\x20roff,\x20out,\x20csize,\x20usize,\x20onlyNames);\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20//console.log(out);\x0a\x20\x20\x20\x20return\x20out;\x0a}\x0a\x0aUZIP._readLocal\x20=\x20function(data,\x20o,\x20out,\x20csize,\x20usize,\x20onlyNames)\x0a{\x0a\x20\x20\x20\x20let\x20rUs\x20=\x20UZIP.bin.readUshort,\x20rUi\x20=\x20UZIP.bin.readUint;\x0a\x20\x20\x20\x20let\x20sign\x20\x20=\x20rUi(data,\x20o);\x20\x20o+=4;\x0a\x20\x20\x20\x20let\x20ver\x20\x20\x20=\x20rUs(data,\x20o);\x20\x20o+=2;\x0a\x20\x20\x20\x20let\x20gpflg\x20=\x20rUs(data,\x20o);\x20\x20o+=2;\x0a\x20\x20\x20\x20//if((gpflg&8)!=0)\x20throw\x20\x22unknown\x20sizes\x22;\x0a\x20\x20\x20\x20let\x20cmpr\x20\x20=\x20rUs(data,\x20o);\x20\x20o+=2;\x0a\x0a\x20\x20\x20\x20let\x20time\x20\x20=\x20rUi(data,\x20o);\x20\x20o+=4;\x0a\x0a\x20\x20\x20\x20let\x20crc32\x20=\x20rUi(data,\x20o);\x20\x20o+=4;\x0a\x20\x20\x20\x20//let\x20csize\x20=\x20rUi(data,\x20o);\x20\x20o+=4;\x0a\x20\x20\x20\x20//let\x20usize\x20=\x20rUi(data,\x20o);\x20\x20o+=4;\x0a\x20\x20\x20\x20o+=8;\x0a\x0a\x20\x20\x20\x20let\x20nlen\x20\x20=\x20rUs(data,\x20o);\x20\x20o+=2;\x0a\x20\x20\x20\x20let\x20elen\x20\x20=\x20rUs(data,\x20o);\x20\x20o+=2;\x0a\x0a\x20\x20\x20\x20let\x20name\x20=\x20\x20UZIP.bin.readUTF8(data,\x20o,\x20nlen);\x20\x20o+=nlen;\x20\x20//console.log(name);\x0a\x20\x20\x20\x20o\x20+=\x20elen;\x0a\x0a\x20\x20\x20\x20//console.log(sign.toString(16),\x20ver,\x20gpflg,\x20cmpr,\x20crc32.toString(16),\x20\x22csize,\x20usize\x22,\x20csize,\x20usize,\x20nlen,\x20elen,\x20name,\x20o);\x0a\x20\x20\x20\x20if(onlyNames)\x20{\x20\x20out[name]={size:usize,\x20csize:csize};\x20\x20return;\x20\x20}\x0a\x20\x20\x20\x20let\x20file\x20=\x20new\x20Uint8Array(data.buffer,\x20o);\x0a\x20\x20\x20\x20if(false)\x20{}\x0a\x20\x20\x20\x20else\x20if(cmpr==0)\x20out[name]\x20=\x20new\x20Uint8Array(file.buffer.slice(o,\x20o+csize));\x0a\x20\x20\x20\x20else\x20if(cmpr==8)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20buf\x20=\x20new\x20Uint8Array(usize);\x20\x20UZIP.inflateRaw(file,\x20buf);\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*let\x20nbuf\x20=\x20pako[\x22inflateRaw\x22](file);\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(usize>8514000)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//console.log(PUtils.readASCII(buf\x20,\x208514500,\x20500));\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//console.log(PUtils.readASCII(nbuf,\x208514500,\x20500));\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20for(let\x20i=0;\x20i<buf.length;\x20i++)\x20if(buf[i]!=nbuf[i])\x20{\x20\x20console.log(buf.length,\x20nbuf.length,\x20usize,\x20i);\x20\x20throw\x20\x22e\x22;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20out[name]\x20=\x20buf;\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20else\x20throw\x20\x22unknown\x20compression\x20method:\x20\x22+cmpr;\x0a}\x0a\x0aUZIP.inflateRaw\x20=\x20function(file,\x20buf)\x20{\x20\x20return\x20UZIP.F.inflate(file,\x20buf);\x20\x20}\x0aUZIP.inflate\x20\x20\x20\x20=\x20function(file,\x20buf)\x20{\x0a\x20\x20\x20\x20let\x20CMF\x20=\x20file[0],\x20FLG\x20=\x20file[1];\x0a\x20\x20\x20\x20let\x20CM\x20=\x20(CMF&15),\x20CINFO\x20=\x20(CMF>>>4);\x0a\x20\x20\x20\x20//console.log(CM,\x20CINFO,CMF,FLG);\x0a\x20\x20\x20\x20return\x20UZIP.inflateRaw(new\x20Uint8Array(file.buffer,\x20file.byteOffset+2,\x20file.length-6),\x20buf);\x0a}\x0aUZIP.deflate\x20\x20\x20\x20=\x20function(data,\x20opts/*,\x20buf,\x20off*/)\x20{\x0a\x20\x20\x20\x20if(opts==null)\x20opts={level:6};\x0a\x20\x20\x20\x20let\x20off=0,\x20buf=new\x20Uint8Array(50+Math.floor(data.length*1.1));\x0a\x20\x20\x20\x20buf[off]=120;\x20\x20buf[off+1]=156;\x20\x20off+=2;\x0a\x20\x20\x20\x20off\x20=\x20UZIP.F.deflateRaw(data,\x20buf,\x20off,\x20opts.level);\x0a\x20\x20\x20\x20let\x20crc\x20=\x20UZIP.adler(data,\x200,\x20data.length);\x0a\x20\x20\x20\x20buf[off+0]=((crc>>>24)&255);\x0a\x20\x20\x20\x20buf[off+1]=((crc>>>16)&255);\x0a\x20\x20\x20\x20buf[off+2]=((crc>>>\x208)&255);\x0a\x20\x20\x20\x20buf[off+3]=((crc>>>\x200)&255);\x0a\x20\x20\x20\x20return\x20new\x20Uint8Array(buf.buffer,\x200,\x20off+4);\x0a}\x0aUZIP.deflateRaw\x20=\x20function(data,\x20opts)\x20{\x0a\x20\x20\x20\x20if(opts==null)\x20opts={level:6};\x0a\x20\x20\x20\x20let\x20buf=new\x20Uint8Array(50+Math.floor(data.length*1.1));\x0a\x20\x20\x20\x20let\x20off\x20=\x20UZIP.F.deflateRaw(data,\x20buf,\x20off,\x20opts.level);\x0a\x20\x20\x20\x20return\x20new\x20Uint8Array(buf.buffer,\x200,\x20off);\x0a}\x0a\x0a\x0aUZIP.encode\x20=\x20function(obj,\x20noCmpr)\x20{\x0a\x20\x20\x20\x20if(noCmpr==null)\x20noCmpr=false;\x0a\x20\x20\x20\x20let\x20tot\x20=\x200,\x20wUi\x20=\x20UZIP.bin.writeUint,\x20wUs\x20=\x20UZIP.bin.writeUshort;\x0a\x20\x20\x20\x20let\x20zpd\x20=\x20{};\x0a\x20\x20\x20\x20for(let\x20p\x20in\x20obj)\x20{\x20\x20let\x20cpr\x20=\x20!UZIP._noNeed(p)\x20&&\x20!noCmpr,\x20buf\x20=\x20obj[p],\x20crc\x20=\x20UZIP.crc.crc(buf,0,buf.length);\x0a\x20\x20\x20\x20\x20\x20\x20\x20zpd[p]\x20=\x20{\x20\x20cpr:cpr,\x20usize:buf.length,\x20crc:crc,\x20file:\x20(cpr\x20?\x20UZIP.deflateRaw(buf)\x20:\x20buf)\x20\x20};\x20\x20}\x0a\x0a\x20\x20\x20\x20for(let\x20p\x20in\x20zpd)\x20tot\x20+=\x20zpd[p].file.length\x20+\x2030\x20+\x2046\x20+\x202*UZIP.bin.sizeUTF8(p);\x0a\x20\x20\x20\x20tot\x20+=\x20\x2022;\x0a\x0a\x20\x20\x20\x20let\x20data\x20=\x20new\x20Uint8Array(tot),\x20o\x20=\x200;\x0a\x20\x20\x20\x20let\x20fof\x20=\x20[]\x0a\x0a\x20\x20\x20\x20for(let\x20p\x20in\x20zpd)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20file\x20=\x20zpd[p];\x20\x20fof.push(o);\x0a\x20\x20\x20\x20\x20\x20\x20\x20o\x20=\x20UZIP._writeHeader(data,\x20o,\x20p,\x20file,\x200);\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20let\x20i=0,\x20ioff\x20=\x20o;\x0a\x20\x20\x20\x20for(let\x20p\x20in\x20zpd)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20file\x20=\x20zpd[p];\x20\x20fof.push(o);\x0a\x20\x20\x20\x20\x20\x20\x20\x20o\x20=\x20UZIP._writeHeader(data,\x20o,\x20p,\x20file,\x201,\x20fof[i++]);\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20let\x20csize\x20=\x20o-ioff;\x0a\x0a\x20\x20\x20\x20wUi(data,\x20o,\x200x06054b50);\x20\x20o+=4;\x0a\x20\x20\x20\x20o\x20+=\x204;\x20\x20//\x20disks\x0a\x20\x20\x20\x20wUs(data,\x20o,\x20i);\x20\x20o\x20+=\x202;\x0a\x20\x20\x20\x20wUs(data,\x20o,\x20i);\x20\x20o\x20+=\x202;\x09//\x20number\x20of\x20c\x20d\x20records\x0a\x20\x20\x20\x20wUi(data,\x20o,\x20csize);\x20\x20o\x20+=\x204;\x0a\x20\x20\x20\x20wUi(data,\x20o,\x20ioff\x20);\x20\x20o\x20+=\x204;\x0a\x20\x20\x20\x20o\x20+=\x202;\x0a\x20\x20\x20\x20return\x20data.buffer;\x0a}\x0a//\x20no\x20need\x20to\x20compress\x20.PNG,\x20.ZIP,\x20.JPEG\x20....\x0aUZIP._noNeed\x20=\x20function(fn)\x20{\x20\x20let\x20ext\x20=\x20fn.split(\x22.\x22).pop().toLowerCase();\x20\x20return\x20\x22png,jpg,jpeg,zip\x22.indexOf(ext)!=-1;\x20\x20}\x0a\x0aUZIP._writeHeader\x20=\x20function(data,\x20o,\x20p,\x20obj,\x20t,\x20roff)\x0a{\x0a\x20\x20\x20\x20let\x20wUi\x20=\x20UZIP.bin.writeUint,\x20wUs\x20=\x20UZIP.bin.writeUshort;\x0a\x20\x20\x20\x20let\x20file\x20=\x20obj.file;\x0a\x0a\x20\x20\x20\x20wUi(data,\x20o,\x20t==0\x20?\x200x04034b50\x20:\x200x02014b50);\x20\x20o+=4;\x20//\x20sign\x0a\x20\x20\x20\x20if(t==1)\x20o+=2;\x20\x20//\x20ver\x20made\x20by\x0a\x20\x20\x20\x20wUs(data,\x20o,\x2020);\x20\x20o+=2;\x09//\x20ver\x0a\x20\x20\x20\x20wUs(data,\x20o,\x20\x200);\x20\x20o+=2;\x20\x20\x20\x20//\x20gflip\x0a\x20\x20\x20\x20wUs(data,\x20o,\x20\x20obj.cpr?8:0);\x20\x20o+=2;\x09//\x20cmpr\x0a\x0a\x20\x20\x20\x20wUi(data,\x20o,\x20\x200);\x20\x20o+=4;\x09//\x20time\x0a\x20\x20\x20\x20wUi(data,\x20o,\x20obj.crc);\x20\x20o+=4;\x09//\x20crc32\x0a\x20\x20\x20\x20wUi(data,\x20o,\x20file.length);\x20\x20o+=4;\x09//\x20csize\x0a\x20\x20\x20\x20wUi(data,\x20o,\x20obj.usize);\x20\x20o+=4;\x09//\x20usize\x0a\x0a\x20\x20\x20\x20wUs(data,\x20o,\x20UZIP.bin.sizeUTF8(p));\x20\x20o+=2;\x09//\x20nlen\x0a\x20\x20\x20\x20wUs(data,\x20o,\x200);\x20\x20o+=2;\x09//\x20elen\x0a\x0a\x20\x20\x20\x20if(t==1)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20o\x20+=\x202;\x20\x20//\x20comment\x20length\x0a\x20\x20\x20\x20\x20\x20\x20\x20o\x20+=\x202;\x20\x20//\x20disk\x20number\x0a\x20\x20\x20\x20\x20\x20\x20\x20o\x20+=\x206;\x20\x20//\x20attributes\x0a\x20\x20\x20\x20\x20\x20\x20\x20wUi(data,\x20o,\x20roff);\x20\x20o+=4;\x09//\x20usize\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20let\x20nlen\x20=\x20UZIP.bin.writeUTF8(data,\x20o,\x20p);\x20\x20o+=\x20nlen;\x0a\x20\x20\x20\x20if(t==0)\x20{\x20\x20data.set(file,\x20o);\x20\x20o\x20+=\x20file.length;\x20\x20}\x0a\x20\x20\x20\x20return\x20o;\x0a}\x0aUZIP.crc\x20=\x20{\x0a\x20\x20\x20\x20table\x20:\x20(\x20function()\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20tab\x20=\x20new\x20Uint32Array(256);\x0a\x20\x20\x20\x20\x20\x20\x20\x20for\x20(let\x20n=0;\x20n<256;\x20n++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20c\x20=\x20n;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20for\x20(let\x20k=0;\x20k<8;\x20k++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(c\x20&\x201)\x20\x20c\x20=\x200xedb88320\x20^\x20(c\x20>>>\x201);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20\x20\x20\x20\x20\x20\x20\x20c\x20=\x20c\x20>>>\x201;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20tab[n]\x20=\x20c;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20return\x20tab;\x20\x20})(),\x0a\x20\x20\x20\x20update\x20:\x20function(c,\x20buf,\x20off,\x20len)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20for\x20(let\x20i=0;\x20i<len;\x20i++)\x20\x20c\x20=\x20UZIP.crc.table[(c\x20^\x20buf[off+i])\x20&\x200xff]\x20^\x20(c\x20>>>\x208);\x0a\x20\x20\x20\x20\x20\x20\x20\x20return\x20c;\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20crc\x20:\x20function(b,o,l)\x20\x20{\x20\x20return\x20UZIP.crc.update(0xffffffff,b,o,l)\x20^\x200xffffffff;\x20\x20}\x0a}\x0aUZIP.adler\x20=\x20function(data,o,len)\x20{\x0a\x20\x20\x20\x20let\x20a\x20=\x201,\x20b\x20=\x200;\x0a\x20\x20\x20\x20let\x20off\x20=\x20o,\x20end=o+len;\x0a\x20\x20\x20\x20while(off<end)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20eend\x20=\x20Math.min(off+5552,\x20end);\x0a\x20\x20\x20\x20\x20\x20\x20\x20while(off<eend)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20a\x20+=\x20data[off++];\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20b\x20+=\x20a;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20a=a%65521;\x0a\x20\x20\x20\x20\x20\x20\x20\x20b=b%65521;\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20return\x20(b\x20<<\x2016)\x20|\x20a;\x0a}\x0a\x0aUZIP.bin\x20=\x20{\x0a\x20\x20\x20\x20readUshort\x20:\x20function(buff,p)\x20\x20{\x20\x20return\x20(buff[p])\x20|\x20(buff[p+1]<<8);\x20\x20},\x0a\x20\x20\x20\x20writeUshort:\x20function(buff,p,n){\x20\x20buff[p]\x20=\x20(n)&255;\x20\x20buff[p+1]\x20=\x20(n>>8)&255;\x20\x20},\x0a\x20\x20\x20\x20readUint\x20\x20\x20:\x20function(buff,p)\x20\x20{\x20\x20return\x20(buff[p+3]*(256*256*256))\x20+\x20((buff[p+2]<<16)\x20|\x20(buff[p+1]<<\x208)\x20|\x20buff[p]);\x20\x20},\x0a\x20\x20\x20\x20writeUint\x20\x20:\x20function(buff,p,n){\x20\x20buff[p]=n&255;\x20\x20buff[p+1]=(n>>8)&255;\x20\x20buff[p+2]=(n>>16)&255;\x20\x20buff[p+3]=(n>>24)&255;\x20\x20},\x0a\x20\x20\x20\x20readASCII\x20\x20:\x20function(buff,p,l){\x20\x20let\x20s\x20=\x20\x22\x22;\x20\x20for(let\x20i=0;\x20i<l;\x20i++)\x20s\x20+=\x20String.fromCharCode(buff[p+i]);\x20\x20return\x20s;\x20\x20\x20\x20},\x0a\x20\x20\x20\x20writeASCII\x20:\x20function(data,p,s){\x20\x20for(let\x20i=0;\x20i<s.length;\x20i++)\x20data[p+i]\x20=\x20s.charCodeAt(i);\x20\x20},\x0a\x20\x20\x20\x20pad\x20:\x20function(n)\x20{\x20return\x20n.length\x20<\x202\x20?\x20\x220\x22\x20+\x20n\x20:\x20n;\x20},\x0a\x20\x20\x20\x20readUTF8\x20:\x20function(buff,\x20p,\x20l)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20s\x20=\x20\x22\x22,\x20ns;\x0a\x20\x20\x20\x20\x20\x20\x20\x20for(let\x20i=0;\x20i<l;\x20i++)\x20s\x20+=\x20\x22%\x22\x20+\x20UZIP.bin.pad(buff[p+i].toString(16));\x0a\x20\x20\x20\x20\x20\x20\x20\x20try\x20{\x20\x20ns\x20=\x20decodeURIComponent(s);\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20catch(e)\x20{\x20\x20return\x20UZIP.bin.readASCII(buff,\x20p,\x20l);\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20return\x20\x20ns;\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20writeUTF8\x20:\x20function(buff,\x20p,\x20str)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20strl\x20=\x20str.length,\x20i=0;\x0a\x20\x20\x20\x20\x20\x20\x20\x20for(let\x20ci=0;\x20ci<strl;\x20ci++)\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20code\x20=\x20str.charCodeAt(ci);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20\x20\x20\x20\x20((code&(0xffffffff-(1<<\x207)+1))==0)\x20{\x20\x20buff[p+i]\x20=\x20(\x20\x20\x20\x20\x20code\x20\x20\x20\x20\x20);\x20\x20i++;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20if((code&(0xffffffff-(1<<11)+1))==0)\x20{\x20\x20buff[p+i]\x20=\x20(192|(code>>\x206));\x20\x20buff[p+i+1]\x20=\x20(128|((code>>\x200)&63));\x20\x20i+=2;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20if((code&(0xffffffff-(1<<16)+1))==0)\x20{\x20\x20buff[p+i]\x20=\x20(224|(code>>12));\x20\x20buff[p+i+1]\x20=\x20(128|((code>>\x206)&63));\x20\x20buff[p+i+2]\x20=\x20(128|((code>>0)&63));\x20\x20i+=3;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20if((code&(0xffffffff-(1<<21)+1))==0)\x20{\x20\x20buff[p+i]\x20=\x20(240|(code>>18));\x20\x20buff[p+i+1]\x20=\x20(128|((code>>12)&63));\x20\x20buff[p+i+2]\x20=\x20(128|((code>>6)&63));\x20\x20buff[p+i+3]\x20=\x20(128|((code>>0)&63));\x20i+=4;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20throw\x20\x22e\x22;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20return\x20i;\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20sizeUTF8\x20:\x20function(str)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20strl\x20=\x20str.length,\x20i=0;\x0a\x20\x20\x20\x20\x20\x20\x20\x20for(let\x20ci=0;\x20ci<strl;\x20ci++)\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20code\x20=\x20str.charCodeAt(ci);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20\x20\x20\x20\x20((code&(0xffffffff-(1<<\x207)+1))==0)\x20{\x20\x20i++\x20;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20if((code&(0xffffffff-(1<<11)+1))==0)\x20{\x20\x20i+=2;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20if((code&(0xffffffff-(1<<16)+1))==0)\x20{\x20\x20i+=3;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20if((code&(0xffffffff-(1<<21)+1))==0)\x20{\x20\x20i+=4;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20throw\x20\x22e\x22;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20return\x20i;\x0a\x20\x20\x20\x20}\x0a}\x0aUZIP.F\x20=\x20{};\x0a\x0aUZIP.F.deflateRaw\x20=\x20function(data,\x20out,\x20opos,\x20lvl)\x20{\x0a\x20\x20\x20\x20let\x20opts\x20=\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ush\x20good_length;\x20/*\x20reduce\x20lazy\x20search\x20above\x20this\x20match\x20length\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ush\x20max_lazy;\x20\x20\x20\x20/*\x20do\x20not\x20perform\x20lazy\x20search\x20above\x20this\x20match\x20length\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ush\x20nice_length;\x20/*\x20quit\x20search\x20above\x20this\x20match\x20length\x0a\x20\x20\x20\x20\x20\x20\x20\x20*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x20\x20\x20\x20\x20\x20good\x20lazy\x20nice\x20chain\x20*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x200\x20*/\x20[\x200,\x20\x20\x200,\x20\x20\x200,\x20\x20\x20\x200,0],\x20\x20/*\x20store\x20only\x20*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x201\x20*/\x20[\x204,\x20\x20\x204,\x20\x20\x208,\x20\x20\x20\x204,0],\x20/*\x20max\x20speed,\x20no\x20lazy\x20matches\x20*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x202\x20*/\x20[\x204,\x20\x20\x205,\x20\x2016,\x20\x20\x20\x208,0],\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x203\x20*/\x20[\x204,\x20\x20\x206,\x20\x2016,\x20\x20\x2016,0],\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x204\x20*/\x20[\x204,\x20\x2010,\x20\x2016,\x20\x20\x2032,0],\x20\x20/*\x20lazy\x20matches\x20*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x205\x20*/\x20[\x208,\x20\x2016,\x20\x2032,\x20\x20\x2032,0],\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x206\x20*/\x20[\x208,\x20\x2016,\x20128,\x20\x20128,0],\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x207\x20*/\x20[\x208,\x20\x2032,\x20128,\x20\x20256,0],\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x208\x20*/\x20[32,\x20128,\x20258,\x201024,1],\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x209\x20*/\x20[32,\x20258,\x20258,\x204096,1]];\x20/*\x20max\x20compression\x20*/\x0a\x0a\x20\x20\x20\x20let\x20opt\x20=\x20opts[lvl];\x0a\x0a\x0a\x20\x20\x20\x20let\x20U\x20=\x20UZIP.F.U,\x20goodIndex\x20=\x20UZIP.F._goodIndex,\x20hash\x20=\x20UZIP.F._hash,\x20putsE\x20=\x20UZIP.F._putsE;\x0a\x20\x20\x20\x20let\x20i\x20=\x200,\x20pos\x20=\x20opos<<3,\x20cvrd\x20=\x200,\x20dlen\x20=\x20data.length;\x0a\x0a\x20\x20\x20\x20if(lvl==0)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20while(i<dlen)\x20{\x20\x20\x20let\x20len\x20=\x20Math.min(0xffff,\x20dlen-i);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20putsE(out,\x20pos,\x20(i+len==dlen\x20?\x201\x20:\x200));\x20\x20pos\x20=\x20UZIP.F._copyExact(data,\x20i,\x20len,\x20out,\x20pos+8);\x20\x20i\x20+=\x20len;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20return\x20pos>>>3;\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20let\x20lits\x20=\x20U.lits,\x20strt=U.strt,\x20prev=U.prev,\x20li=0,\x20lc=0,\x20bs=0,\x20ebits=0,\x20c=0,\x20nc=0;\x20\x20//\x20last_item,\x20literal_count,\x20block_start\x0a\x20\x20\x20\x20if(dlen>2)\x20{\x20\x20nc=UZIP.F._hash(data,0);\x20\x20strt[nc]=0;\x20\x20}\x0a\x20\x20\x20\x20let\x20nmch=0,nmci=0;\x0a\x0a\x20\x20\x20\x20for(i=0;\x20i<dlen;\x20i++)\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20c\x20=\x20nc;\x0a\x20\x20\x20\x20\x20\x20\x20\x20//*\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(i+1<dlen-2)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20nc\x20=\x20UZIP.F._hash(data,\x20i+1);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20ii\x20=\x20((i+1)&0x7fff);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20prev[ii]=strt[nc];\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20strt[nc]=ii;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x20//*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(cvrd<=i)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if((li>14000\x20||\x20lc>26697)\x20&&\x20(dlen-i)>100)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(cvrd<i)\x20{\x20\x20lits[li]=i-cvrd;\x20\x20li+=2;\x20\x20cvrd=i;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20pos\x20=\x20UZIP.F._writeBlock(((i==dlen-1)\x20||\x20(cvrd==dlen))?1:0,\x20lits,\x20li,\x20ebits,\x20data,bs,i-bs,\x20out,\x20pos);\x20\x20li=lc=ebits=0;\x20\x20bs=i;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20mch\x20=\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//if(nmci==i)\x20mch=\x20nmch;\x20\x20else\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(i<dlen-2)\x20mch\x20=\x20UZIP.F._bestMatch(data,\x20i,\x20prev,\x20c,\x20Math.min(opt[2],dlen-i),\x20opt[3]);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20/*\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(mch!=0\x20&&\x20opt[4]==1\x20&&\x20(mch>>>16)<opt[1]\x20&&\x20i+1<dlen-2)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20nmch\x20=\x20UZIP.F._bestMatch(data,\x20i+1,\x20prev,\x20nc,\x20opt[2],\x20opt[3]);\x20\x20nmci=i+1;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//let\x20mch2\x20=\x20UZIP.F._bestMatch(data,\x20i+2,\x20prev,\x20nnc);\x20\x20//nmci=i+1;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if((nmch>>>16)>(mch>>>16))\x20mch=0;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}//*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20len\x20=\x20mch>>>16,\x20dst\x20=\x20mch&0xffff;\x20\x20//if(i-dst<0)\x20throw\x20\x22e\x22;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(mch!=0)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20len\x20=\x20mch>>>16,\x20dst\x20=\x20mch&0xffff;\x20\x20//if(i-dst<0)\x20throw\x20\x22e\x22;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20lgi\x20=\x20goodIndex(len,\x20U.of0);\x20\x20U.lhst[257+lgi]++;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20dgi\x20=\x20goodIndex(dst,\x20U.df0);\x20\x20U.dhst[\x20\x20\x20\x20dgi]++;\x20\x20ebits\x20+=\x20U.exb[lgi]\x20+\x20U.dxb[dgi];\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20lits[li]\x20=\x20(len<<23)|(i-cvrd);\x20\x20lits[li+1]\x20=\x20(dst<<16)|(lgi<<8)|dgi;\x20\x20li+=2;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20cvrd\x20=\x20i\x20+\x20len;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20{\x09U.lhst[data[i]]++;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20lc++;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20if(bs!=i\x20||\x20data.length==0)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(cvrd<i)\x20{\x20\x20lits[li]=i-cvrd;\x20\x20li+=2;\x20\x20cvrd=i;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20pos\x20=\x20UZIP.F._writeBlock(1,\x20lits,\x20li,\x20ebits,\x20data,bs,i-bs,\x20out,\x20pos);\x20\x20li=0;\x20\x20lc=0;\x20\x20li=lc=ebits=0;\x20\x20bs=i;\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20while((pos&7)!=0)\x20pos++;\x0a\x20\x20\x20\x20return\x20pos>>>3;\x0a}\x0aUZIP.F._bestMatch\x20=\x20function(data,\x20i,\x20prev,\x20c,\x20nice,\x20chain)\x20{\x0a\x20\x20\x20\x20let\x20ci\x20=\x20(i&0x7fff),\x20pi=prev[ci];\x0a\x20\x20\x20\x20//console.log(\x22----\x22,\x20i);\x0a\x20\x20\x20\x20let\x20dif\x20=\x20((ci-pi\x20+\x20(1<<15))\x20&\x200x7fff);\x20\x20if(pi==ci\x20||\x20c!=UZIP.F._hash(data,i-dif))\x20return\x200;\x0a\x20\x20\x20\x20let\x20tl=0,\x20td=0;\x20\x20//\x20top\x20length,\x20top\x20distance\x0a\x20\x20\x20\x20let\x20dlim\x20=\x20Math.min(0x7fff,\x20i);\x0a\x20\x20\x20\x20while(dif<=dlim\x20&&\x20--chain!=0\x20&&\x20pi!=ci\x20/*&&\x20c==UZIP.F._hash(data,i-dif)*/)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(tl==0\x20||\x20(data[i+tl]==data[i+tl-dif]))\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20cl\x20=\x20UZIP.F._howLong(data,\x20i,\x20dif);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(cl>tl)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20tl=cl;\x20\x20td=dif;\x20\x20if(tl>=nice)\x20break;\x20\x20\x20\x20//*\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(dif+2<cl)\x20cl\x20=\x20dif+2;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20maxd\x20=\x200;\x20//\x20pi\x20does\x20not\x20point\x20to\x20the\x20start\x20of\x20the\x20word\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20for(let\x20j=0;\x20j<cl-2;\x20j++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20ei\x20=\x20\x20(i-dif+j+\x20(1<<15))\x20&\x200x7fff;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20li\x20=\x20prev[ei];\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20curd\x20=\x20(ei-li\x20+\x20(1<<15))\x20&\x200x7fff;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(curd>maxd)\x20{\x20\x20maxd=curd;\x20\x20pi\x20=\x20ei;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x20\x20//*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20ci=pi;\x20\x20pi\x20=\x20prev[ci];\x0a\x20\x20\x20\x20\x20\x20\x20\x20dif\x20+=\x20((ci-pi\x20+\x20(1<<15))\x20&\x200x7fff);\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20return\x20(tl<<16)|td;\x0a}\x0aUZIP.F._howLong\x20=\x20function(data,\x20i,\x20dif)\x20{\x0a\x20\x20\x20\x20if(data[i]!=data[i-dif]\x20||\x20data[i+1]!=data[i+1-dif]\x20||\x20data[i+2]!=data[i+2-dif])\x20return\x200;\x0a\x20\x20\x20\x20let\x20oi=i,\x20l\x20=\x20Math.min(data.length,\x20i+258);\x20\x20i+=3;\x0a\x20\x20\x20\x20//while(i+4<l\x20&&\x20data[i]==data[i-dif]\x20&&\x20data[i+1]==data[i+1-dif]\x20&&\x20data[i+2]==data[i+2-dif]\x20&&\x20data[i+3]==data[i+3-dif])\x20i+=4;\x0a\x20\x20\x20\x20while(i<l\x20&&\x20data[i]==data[i-dif])\x20i++;\x0a\x20\x20\x20\x20return\x20i-oi;\x0a}\x0aUZIP.F._hash\x20=\x20function(data,\x20i)\x20{\x0a\x20\x20\x20\x20return\x20(((data[i]<<8)\x20|\x20data[i+1])+(data[i+2]<<4))&0xffff;\x0a\x20\x20\x20\x20//let\x20hash_shift\x20=\x200,\x20hash_mask\x20=\x20255;\x0a\x20\x20\x20\x20//let\x20h\x20=\x20data[i+1]\x20%\x20251;\x0a\x20\x20\x20\x20//h\x20=\x20(((h\x20<<\x208)\x20+\x20data[i+2])\x20%\x20251);\x0a\x20\x20\x20\x20//h\x20=\x20(((h\x20<<\x208)\x20+\x20data[i+2])\x20%\x20251);\x0a\x20\x20\x20\x20//h\x20=\x20((h<<hash_shift)\x20^\x20(c)\x20)\x20&\x20hash_mask;\x0a\x20\x20\x20\x20//return\x20h\x20|\x20(data[i]<<8);\x0a\x20\x20\x20\x20//return\x20(data[i]\x20|\x20(data[i+1]<<8));\x0a}\x0a//UZIP.___toth\x20=\x200;\x0aUZIP.saved\x20=\x200;\x0aUZIP.F._writeBlock\x20=\x20function(BFINAL,\x20lits,\x20li,\x20ebits,\x20data,o0,l0,\x20out,\x20pos)\x20{\x0a\x20\x20\x20\x20let\x20U\x20=\x20UZIP.F.U,\x20putsF\x20=\x20UZIP.F._putsF,\x20putsE\x20=\x20UZIP.F._putsE;\x0a\x0a\x20\x20\x20\x20//*\x0a\x20\x20\x20\x20let\x20T,\x20ML,\x20MD,\x20MH,\x20numl,\x20numd,\x20numh,\x20lset,\x20dset;\x20\x20U.lhst[256]++;\x0a\x20\x20\x20\x20T\x20=\x20UZIP.F.getTrees();\x20ML=T[0];\x20MD=T[1];\x20MH=T[2];\x20numl=T[3];\x20numd=T[4];\x20numh=T[5];\x20lset=T[6];\x20dset=T[7];\x0a\x0a\x20\x20\x20\x20let\x20cstSize\x20=\x20(((pos+3)&7)==0\x20?\x200\x20:\x208-((pos+3)&7))\x20+\x2032\x20+\x20(l0<<3);\x0a\x20\x20\x20\x20let\x20fxdSize\x20=\x20ebits\x20+\x20UZIP.F.contSize(U.fltree,\x20U.lhst)\x20+\x20UZIP.F.contSize(U.fdtree,\x20U.dhst);\x0a\x20\x20\x20\x20let\x20dynSize\x20=\x20ebits\x20+\x20UZIP.F.contSize(U.ltree\x20,\x20U.lhst)\x20+\x20UZIP.F.contSize(U.dtree\x20,\x20U.dhst);\x0a\x20\x20\x20\x20dynSize\x20\x20\x20\x20+=\x2014\x20+\x203*numh\x20+\x20UZIP.F.contSize(U.itree,\x20U.ihst)\x20+\x20(U.ihst[16]*2\x20+\x20U.ihst[17]*3\x20+\x20U.ihst[18]*7);\x0a\x0a\x20\x20\x20\x20for(let\x20j=0;\x20j<286;\x20j++)\x20U.lhst[j]=0;\x20\x20\x20for(let\x20j=0;\x20j<30;\x20j++)\x20U.dhst[j]=0;\x20\x20\x20for(let\x20j=0;\x20j<19;\x20j++)\x20U.ihst[j]=0;\x0a\x20\x20\x20\x20//*/\x0a\x20\x20\x20\x20let\x20BTYPE\x20=\x20(cstSize<fxdSize\x20&&\x20cstSize<dynSize)\x20?\x200\x20:\x20(\x20fxdSize<dynSize\x20?\x201\x20:\x202\x20);\x0a\x20\x20\x20\x20putsF(out,\x20pos,\x20BFINAL);\x20\x20putsF(out,\x20pos+1,\x20BTYPE);\x20\x20pos+=3;\x0a\x0a\x20\x20\x20\x20let\x20opos\x20=\x20pos;\x0a\x20\x20\x20\x20if(BTYPE==0)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20while((pos&7)!=0)\x20pos++;\x0a\x20\x20\x20\x20\x20\x20\x20\x20pos\x20=\x20UZIP.F._copyExact(data,\x20o0,\x20l0,\x20out,\x20pos);\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20ltree,\x20dtree;\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(BTYPE==1)\x20{\x20\x20ltree=U.fltree;\x20\x20dtree=U.fdtree;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(BTYPE==2)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20UZIP.F.makeCodes(U.ltree,\x20ML);\x20\x20UZIP.F.revCodes(U.ltree,\x20ML);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20UZIP.F.makeCodes(U.dtree,\x20MD);\x20\x20UZIP.F.revCodes(U.dtree,\x20MD);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20UZIP.F.makeCodes(U.itree,\x20MH);\x20\x20UZIP.F.revCodes(U.itree,\x20MH);\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ltree\x20=\x20U.ltree;\x20\x20dtree\x20=\x20U.dtree;\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20putsE(out,\x20pos,numl-257);\x20\x20pos+=5;\x20\x20//\x20286\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20putsE(out,\x20pos,numd-\x20\x201);\x20\x20pos+=5;\x20\x20//\x2030\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20putsE(out,\x20pos,numh-\x20\x204);\x20\x20pos+=4;\x20\x20//\x2019\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20for(let\x20i=0;\x20i<numh;\x20i++)\x20putsE(out,\x20pos+i*3,\x20U.itree[(U.ordr[i]<<1)+1]);\x20\x20\x20pos+=3*\x20numh;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20pos\x20=\x20UZIP.F._codeTiny(lset,\x20U.itree,\x20out,\x20pos);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20pos\x20=\x20UZIP.F._codeTiny(dset,\x20U.itree,\x20out,\x20pos);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20off=o0;\x0a\x20\x20\x20\x20\x20\x20\x20\x20for(let\x20si=0;\x20si<li;\x20si+=2)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20qb=lits[si],\x20len=(qb>>>23),\x20end\x20=\x20off+(qb&((1<<23)-1));\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20while(off<end)\x20pos\x20=\x20UZIP.F._writeLit(data[off++],\x20ltree,\x20out,\x20pos);\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(len!=0)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20qc\x20=\x20lits[si+1],\x20dst=(qc>>16),\x20lgi=(qc>>8)&255,\x20dgi=(qc&255);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20pos\x20=\x20UZIP.F._writeLit(257+lgi,\x20ltree,\x20out,\x20pos);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20putsE(out,\x20pos,\x20len-U.of0[lgi]);\x20\x20pos+=U.exb[lgi];\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20pos\x20=\x20UZIP.F._writeLit(dgi,\x20dtree,\x20out,\x20pos);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20putsF(out,\x20pos,\x20dst-U.df0[dgi]);\x20\x20pos+=U.dxb[dgi];\x20\x20off+=len;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20pos\x20=\x20UZIP.F._writeLit(256,\x20ltree,\x20out,\x20pos);\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20//console.log(pos-opos,\x20fxdSize,\x20dynSize,\x20cstSize);\x0a\x20\x20\x20\x20return\x20pos;\x0a}\x0aUZIP.F._copyExact\x20=\x20function(data,off,len,out,pos)\x20{\x0a\x20\x20\x20\x20let\x20p8\x20=\x20(pos>>>3);\x0a\x20\x20\x20\x20out[p8]=(len);\x20\x20out[p8+1]=(len>>>8);\x20\x20out[p8+2]=255-out[p8];\x20\x20out[p8+3]=255-out[p8+1];\x20\x20p8+=4;\x0a\x20\x20\x20\x20out.set(new\x20Uint8Array(data.buffer,\x20off,\x20len),\x20p8);\x0a\x20\x20\x20\x20//for(let\x20i=0;\x20i<len;\x20i++)\x20out[p8+i]=data[off+i];\x0a\x20\x20\x20\x20return\x20pos\x20+\x20((len+4)<<3);\x0a}\x0a/*\x0a\x09Interesting\x20facts:\x0a\x09-\x20decompressed\x20block\x20can\x20have\x20bytes,\x20which\x20do\x20not\x20occur\x20in\x20a\x20Huffman\x20tree\x20(copied\x20from\x20the\x20previous\x20block\x20by\x20reference)\x0a*/\x0a\x0aUZIP.F.getTrees\x20=\x20function()\x20{\x0a\x20\x20\x20\x20let\x20U\x20=\x20UZIP.F.U;\x0a\x20\x20\x20\x20let\x20ML\x20=\x20UZIP.F._hufTree(U.lhst,\x20U.ltree,\x2015);\x0a\x20\x20\x20\x20let\x20MD\x20=\x20UZIP.F._hufTree(U.dhst,\x20U.dtree,\x2015);\x0a\x20\x20\x20\x20let\x20lset\x20=\x20[],\x20numl\x20=\x20UZIP.F._lenCodes(U.ltree,\x20lset);\x0a\x20\x20\x20\x20let\x20dset\x20=\x20[],\x20numd\x20=\x20UZIP.F._lenCodes(U.dtree,\x20dset);\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<lset.length;\x20i+=2)\x20U.ihst[lset[i]]++;\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<dset.length;\x20i+=2)\x20U.ihst[dset[i]]++;\x0a\x20\x20\x20\x20let\x20MH\x20=\x20UZIP.F._hufTree(U.ihst,\x20U.itree,\x20\x207);\x0a\x20\x20\x20\x20let\x20numh\x20=\x2019;\x20\x20while(numh>4\x20&&\x20U.itree[(U.ordr[numh-1]<<1)+1]==0)\x20numh--;\x0a\x20\x20\x20\x20return\x20[ML,\x20MD,\x20MH,\x20numl,\x20numd,\x20numh,\x20lset,\x20dset];\x0a}\x0aUZIP.F.getSecond=\x20function(a)\x20{\x20\x20let\x20b=[];\x20\x20for(let\x20i=0;\x20i<a.length;\x20i+=2)\x20b.push\x20\x20(a[i+1]);\x20\x20return\x20b;\x20\x20}\x0aUZIP.F.nonZero\x20\x20=\x20function(a)\x20{\x20\x20let\x20b=\x20\x22\x22;\x20\x20for(let\x20i=0;\x20i<a.length;\x20i+=2)\x20if(a[i+1]!=0)b+=(i>>1)+\x22,\x22;\x20\x20return\x20b;\x20\x20}\x0aUZIP.F.contSize\x20=\x20function(tree,\x20hst)\x20{\x20\x20let\x20s=0;\x20\x20for(let\x20i=0;\x20i<hst.length;\x20i++)\x20s+=\x20hst[i]*tree[(i<<1)+1];\x20\x20return\x20s;\x20\x20}\x0aUZIP.F._codeTiny\x20=\x20function(set,\x20tree,\x20out,\x20pos)\x20{\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<set.length;\x20i+=2)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20l\x20=\x20set[i],\x20rst\x20=\x20set[i+1];\x20\x20//console.log(l,\x20pos,\x20tree[(l<<1)+1]);\x0a\x20\x20\x20\x20\x20\x20\x20\x20pos\x20=\x20UZIP.F._writeLit(l,\x20tree,\x20out,\x20pos);\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20rsl\x20=\x20l==16\x20?\x202\x20:\x20(l==17\x20?\x203\x20:\x207);\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(l>15)\x20{\x20\x20UZIP.F._putsE(out,\x20pos,\x20rst,\x20rsl);\x20\x20pos+=rsl;\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20return\x20pos;\x0a}\x0aUZIP.F._lenCodes\x20=\x20function(tree,\x20set)\x20{\x0a\x20\x20\x20\x20let\x20len=tree.length;\x20\x20while(len!=2\x20&&\x20tree[len-1]==0)\x20len-=2;\x20\x20//\x20when\x20no\x20distances,\x20keep\x20one\x20code\x20with\x20length\x200\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<len;\x20i+=2)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20l\x20=\x20tree[i+1],\x20nxt\x20=\x20(i+3<len\x20?\x20tree[i+3]:-1),\x20\x20nnxt\x20=\x20(i+5<len\x20?\x20tree[i+5]:-1),\x20\x20prv\x20=\x20(i==0\x20?\x20-1\x20:\x20tree[i-1]);\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(l==0\x20&&\x20nxt==l\x20&&\x20nnxt==l)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20lz\x20=\x20i+5;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20while(lz+2<len\x20&&\x20tree[lz+2]==l)\x20lz+=2;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20zc\x20=\x20Math.min((lz+1-i)>>>1,\x20138);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(zc<11)\x20set.push(17,\x20zc-3);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20set.push(18,\x20zc-11);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20i\x20+=\x20zc*2-2;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20else\x20if(l==prv\x20&&\x20nxt==l\x20&&\x20nnxt==l)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20lz\x20=\x20i+5;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20while(lz+2<len\x20&&\x20tree[lz+2]==l)\x20lz+=2;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20zc\x20=\x20Math.min((lz+1-i)>>>1,\x206);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20set.push(16,\x20zc-3);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20i\x20+=\x20zc*2-2;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20else\x20set.push(l,\x200);\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20return\x20len>>>1;\x0a}\x0aUZIP.F._hufTree\x20\x20\x20=\x20function(hst,\x20tree,\x20MAXL)\x20{\x0a\x20\x20\x20\x20let\x20list=[],\x20hl\x20=\x20hst.length,\x20tl=tree.length,\x20i=0;\x0a\x20\x20\x20\x20for(i=0;\x20i<tl;\x20i+=2)\x20{\x20\x20tree[i]=0;\x20\x20tree[i+1]=0;\x20\x20}\x0a\x20\x20\x20\x20for(i=0;\x20i<hl;\x20i++)\x20if(hst[i]!=0)\x20list.push({lit:i,\x20f:hst[i]});\x0a\x20\x20\x20\x20let\x20end\x20=\x20list.length,\x20l2=list.slice(0);\x0a\x20\x20\x20\x20if(end==0)\x20return\x200;\x20\x20//\x20empty\x20histogram\x20(usually\x20for\x20dist)\x0a\x20\x20\x20\x20if(end==1)\x20{\x20\x20let\x20lit=list[0].lit,\x20l2=lit==0?1:0;\x20\x20tree[(lit<<1)+1]=1;\x20\x20tree[(l2<<1)+1]=1;\x20\x20return\x201;\x20\x20}\x0a\x20\x20\x20\x20list.sort(function(a,b){return\x20a.f-b.f;});\x0a\x20\x20\x20\x20let\x20a=list[0],\x20b=list[1],\x20i0=0,\x20i1=1,\x20i2=2;\x20\x20list[0]={lit:-1,f:a.f+b.f,l:a,r:b,d:0};\x0a\x20\x20\x20\x20while(i1!=end-1)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(i0!=i1\x20&&\x20(i2==end\x20||\x20list[i0].f<list[i2].f))\x20{\x20\x20a=list[i0++];\x20\x20}\x20\x20else\x20{\x20\x20a=list[i2++];\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(i0!=i1\x20&&\x20(i2==end\x20||\x20list[i0].f<list[i2].f))\x20{\x20\x20b=list[i0++];\x20\x20}\x20\x20else\x20{\x20\x20b=list[i2++];\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20list[i1++]={lit:-1,f:a.f+b.f,\x20l:a,r:b};\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20let\x20maxl\x20=\x20UZIP.F.setDepth(list[i1-1],\x200);\x0a\x20\x20\x20\x20if(maxl>MAXL)\x20{\x20\x20UZIP.F.restrictDepth(l2,\x20MAXL,\x20maxl);\x20\x20maxl\x20=\x20MAXL;\x20\x20}\x0a\x20\x20\x20\x20for(i=0;\x20i<end;\x20i++)\x20tree[(l2[i].lit<<1)+1]=l2[i].d;\x0a\x20\x20\x20\x20return\x20maxl;\x0a}\x0a\x0aUZIP.F.setDepth\x20\x20=\x20function(t,\x20d)\x20{\x0a\x20\x20\x20\x20if(t.lit!=-1)\x20{\x20\x20t.d=d;\x20\x20return\x20d;\x20\x20}\x0a\x20\x20\x20\x20return\x20Math.max(\x20UZIP.F.setDepth(t.l,\x20d+1),\x20\x20UZIP.F.setDepth(t.r,\x20d+1)\x20);\x0a}\x0a\x0aUZIP.F.restrictDepth\x20=\x20function(dps,\x20MD,\x20maxl)\x20{\x0a\x20\x20\x20\x20let\x20i=0,\x20bCost=1<<(maxl-MD),\x20dbt=0;\x0a\x20\x20\x20\x20dps.sort(function(a,b){return\x20b.d==a.d\x20?\x20a.f-b.f\x20:\x20b.d-a.d;});\x0a\x0a\x20\x20\x20\x20for(i=0;\x20i<dps.length;\x20i++)\x20if(dps[i].d>MD)\x20{\x20\x20let\x20od=dps[i].d;\x20\x20dps[i].d=MD;\x20\x20dbt+=bCost-(1<<(maxl-od));\x20\x20}\x20\x20else\x20break;\x0a\x20\x20\x20\x20dbt\x20=\x20dbt>>>(maxl-MD);\x0a\x20\x20\x20\x20while(dbt>0)\x20{\x20\x20let\x20od=dps[i].d;\x20\x20if(od<MD)\x20{\x20\x20dps[i].d++;\x20\x20dbt-=(1<<(MD-od-1));\x20\x20}\x20\x20else\x20\x20i++;\x20\x20}\x0a\x20\x20\x20\x20for(;\x20i>=0;\x20i--)\x20if(dps[i].d==MD\x20&&\x20dbt<0)\x20{\x20\x20dps[i].d--;\x20\x20dbt++;\x20\x20}\x20\x20if(dbt!=0)\x20console.log(\x22debt\x20left\x22);\x0a}\x0a\x0aUZIP.F._goodIndex\x20=\x20function(v,\x20arr)\x20{\x0a\x20\x20\x20\x20let\x20i=0;\x20\x20if(arr[i|16]<=v)\x20i|=16;\x20\x20if(arr[i|8]<=v)\x20i|=8;\x20\x20if(arr[i|4]<=v)\x20i|=4;\x20\x20if(arr[i|2]<=v)\x20i|=2;\x20\x20if(arr[i|1]<=v)\x20i|=1;\x20\x20return\x20i;\x0a}\x0aUZIP.F._writeLit\x20=\x20function(ch,\x20ltree,\x20out,\x20pos)\x20{\x0a\x20\x20\x20\x20UZIP.F._putsF(out,\x20pos,\x20ltree[ch<<1]);\x0a\x20\x20\x20\x20return\x20pos+ltree[(ch<<1)+1];\x0a}\x0aUZIP.F.inflate\x20=\x20function(data,\x20buf)\x20{\x0a\x20\x20\x20\x20let\x20u8=Uint8Array;\x0a\x20\x20\x20\x20if(data[0]==3\x20&&\x20data[1]==0)\x20return\x20(buf\x20?\x20buf\x20:\x20new\x20u8(0));\x0a\x20\x20\x20\x20let\x20F=UZIP.F,\x20bitsF\x20=\x20F._bitsF,\x20bitsE\x20=\x20F._bitsE,\x20decodeTiny\x20=\x20F._decodeTiny,\x20makeCodes\x20=\x20F.makeCodes,\x20codes2map=F.codes2map,\x20get17\x20=\x20F._get17;\x0a\x20\x20\x20\x20let\x20U\x20=\x20F.U;\x0a\x0a\x20\x20\x20\x20let\x20noBuf\x20=\x20(buf==null);\x0a\x20\x20\x20\x20if(noBuf)\x20buf\x20=\x20new\x20u8((data.length>>>2)<<3);\x0a\x0a\x20\x20\x20\x20let\x20BFINAL=0,\x20BTYPE=0,\x20HLIT=0,\x20HDIST=0,\x20HCLEN=0,\x20ML=0,\x20MD=0;\x0a\x20\x20\x20\x20let\x20off\x20=\x200,\x20pos\x20=\x200;\x0a\x20\x20\x20\x20let\x20lmap,\x20dmap;\x0a\x0a\x20\x20\x20\x20while(BFINAL==0)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20BFINAL\x20=\x20bitsF(data,\x20pos\x20\x20,\x201);\x0a\x20\x20\x20\x20\x20\x20\x20\x20BTYPE\x20\x20=\x20bitsF(data,\x20pos+1,\x202);\x20\x20pos+=3;\x0a\x20\x20\x20\x20\x20\x20\x20\x20//console.log(BFINAL,\x20BTYPE);\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(BTYPE==0)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if((pos&7)!=0)\x20pos+=8-(pos&7);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20p8\x20=\x20(pos>>>3)+4,\x20len\x20=\x20data[p8-4]|(data[p8-3]<<8);\x20\x20//console.log(len);//bitsF(data,\x20pos,\x2016),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(noBuf)\x20buf=UZIP.F._check(buf,\x20off+len);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20buf.set(new\x20u8(data.buffer,\x20data.byteOffset+p8,\x20len),\x20off);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//for(let\x20i=0;\x20i<len;\x20i++)\x20buf[off+i]\x20=\x20data[p8+i];\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//for(let\x20i=0;\x20i<len;\x20i++)\x20if(buf[off+i]\x20!=\x20data[p8+i])\x20throw\x20\x22e\x22;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20pos\x20=\x20((p8+len)<<3);\x20\x20off+=len;\x20\x20continue;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(noBuf)\x20buf=UZIP.F._check(buf,\x20off+(1<<17));\x20\x20//\x20really\x20not\x20enough\x20in\x20many\x20cases\x20(but\x20PNG\x20and\x20ZIP\x20provide\x20buffer\x20in\x20advance)\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(BTYPE==1)\x20{\x20\x20lmap\x20=\x20U.flmap;\x20\x20dmap\x20=\x20U.fdmap;\x20\x20ML\x20=\x20(1<<9)-1;\x20\x20MD\x20=\x20(1<<5)-1;\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(BTYPE==2)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20HLIT\x20\x20=\x20bitsE(data,\x20pos\x20\x20\x20,\x205)+257;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20HDIST\x20=\x20bitsE(data,\x20pos+\x205,\x205)+\x20\x201;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20HCLEN\x20=\x20bitsE(data,\x20pos+10,\x204)+\x20\x204;\x20\x20pos+=14;\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20ppos\x20=\x20pos;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20for(let\x20i=0;\x20i<38;\x20i+=2)\x20{\x20\x20U.itree[i]=0;\x20\x20U.itree[i+1]=0;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20tl\x20=\x201;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20for(let\x20i=0;\x20i<HCLEN;\x20i++)\x20{\x20\x20let\x20l=bitsE(data,\x20pos+i*3,\x203);\x20\x20U.itree[(U.ordr[i]<<1)+1]\x20=\x20l;\x20\x20if(l>tl)tl=l;\x20\x20}\x20\x20\x20\x20\x20pos+=3*HCLEN;\x20\x20//console.log(itree);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20makeCodes(U.itree,\x20tl);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20codes2map(U.itree,\x20tl,\x20U.imap);\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20lmap\x20=\x20U.lmap;\x20\x20dmap\x20=\x20U.dmap;\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20pos\x20=\x20decodeTiny(U.imap,\x20(1<<tl)-1,\x20HLIT+HDIST,\x20data,\x20pos,\x20U.ttree);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20mx0\x20=\x20F._copyOut(U.ttree,\x20\x20\x20\x200,\x20HLIT\x20,\x20U.ltree);\x20\x20ML\x20=\x20(1<<mx0)-1;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20mx1\x20=\x20F._copyOut(U.ttree,\x20HLIT,\x20HDIST,\x20U.dtree);\x20\x20MD\x20=\x20(1<<mx1)-1;\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//let\x20ml\x20=\x20decodeTiny(U.imap,\x20(1<<tl)-1,\x20HLIT\x20,\x20data,\x20pos,\x20U.ltree);\x20ML\x20=\x20(1<<(ml>>>24))-1;\x20\x20pos+=(ml&0xffffff);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20makeCodes(U.ltree,\x20mx0);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20codes2map(U.ltree,\x20mx0,\x20lmap);\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//let\x20md\x20=\x20decodeTiny(U.imap,\x20(1<<tl)-1,\x20HDIST,\x20data,\x20pos,\x20U.dtree);\x20MD\x20=\x20(1<<(md>>>24))-1;\x20\x20pos+=(md&0xffffff);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20makeCodes(U.dtree,\x20mx1);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20codes2map(U.dtree,\x20mx1,\x20dmap);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20//let\x20ooff=off,\x20opos=pos;\x0a\x20\x20\x20\x20\x20\x20\x20\x20while(true)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20code\x20=\x20lmap[get17(data,\x20pos)\x20&\x20ML];\x20\x20pos\x20+=\x20code&15;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20lit\x20=\x20code>>>4;\x20\x20//U.lhst[lit]++;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if((lit>>>8)==0)\x20{\x20\x20buf[off++]\x20=\x20lit;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20if(lit==256)\x20{\x20\x20break;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20end\x20=\x20off+lit-254;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(lit>264)\x20{\x20let\x20ebs\x20=\x20U.ldef[lit-257];\x20\x20end\x20=\x20off\x20+\x20(ebs>>>3)\x20+\x20bitsE(data,\x20pos,\x20ebs&7);\x20\x20pos\x20+=\x20ebs&7;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//UZIP.F.dst[end-off]++;\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20dcode\x20=\x20dmap[get17(data,\x20pos)\x20&\x20MD];\x20\x20pos\x20+=\x20dcode&15;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20dlit\x20=\x20dcode>>>4;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20dbs\x20=\x20U.ddef[dlit],\x20dst\x20=\x20(dbs>>>4)\x20+\x20bitsF(data,\x20pos,\x20dbs&15);\x20\x20pos\x20+=\x20dbs&15;\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//let\x20o0\x20=\x20off-dst,\x20stp\x20=\x20Math.min(end-off,\x20dst);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//if(stp>20)\x20while(off<end)\x20{\x20\x20buf.copyWithin(off,\x20o0,\x20o0+stp);\x20\x20off+=stp;\x20\x20}\x20\x20else\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//if(end-dst<=off)\x20buf.copyWithin(off,\x20off-dst,\x20end-dst);\x20\x20else\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//if(dst==1)\x20buf.fill(buf[off-1],\x20off,\x20end);\x20\x20else\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(noBuf)\x20buf=UZIP.F._check(buf,\x20off+(1<<17));\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20while(off<end)\x20{\x20\x20buf[off]=buf[off++-dst];\x20\x20\x20\x20buf[off]=buf[off++-dst];\x20\x20buf[off]=buf[off++-dst];\x20\x20buf[off]=buf[off++-dst];\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20off=end;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//while(off!=end)\x20{\x20\x20buf[off]=buf[off++-dst];\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20//console.log(off-ooff,\x20(pos-opos)>>>3);\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20//console.log(UZIP.F.dst);\x0a\x20\x20\x20\x20//console.log(tlen,\x20dlen,\x20off-tlen+tcnt);\x0a\x20\x20\x20\x20return\x20buf.length==off\x20?\x20buf\x20:\x20buf.slice(0,off);\x0a}\x0aUZIP.F._check=function(buf,\x20len)\x20{\x0a\x20\x20\x20\x20let\x20bl=buf.length;\x20\x20if(len<=bl)\x20return\x20buf;\x0a\x20\x20\x20\x20let\x20nbuf\x20=\x20new\x20Uint8Array(Math.max(bl<<1,len));\x20\x20nbuf.set(buf,0);\x0a\x20\x20\x20\x20//for(let\x20i=0;\x20i<bl;\x20i+=4)\x20{\x20\x20nbuf[i]=buf[i];\x20\x20nbuf[i+1]=buf[i+1];\x20\x20nbuf[i+2]=buf[i+2];\x20\x20nbuf[i+3]=buf[i+3];\x20\x20}\x0a\x20\x20\x20\x20return\x20nbuf;\x0a}\x0a\x0aUZIP.F._decodeTiny\x20=\x20function(lmap,\x20LL,\x20len,\x20data,\x20pos,\x20tree)\x20{\x0a\x20\x20\x20\x20let\x20bitsE\x20=\x20UZIP.F._bitsE,\x20get17\x20=\x20UZIP.F._get17;\x0a\x20\x20\x20\x20let\x20i\x20=\x200;\x0a\x20\x20\x20\x20while(i<len)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20code\x20=\x20lmap[get17(data,\x20pos)&LL];\x20\x20pos+=code&15;\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20lit\x20=\x20code>>>4;\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(lit<=15)\x20{\x20\x20tree[i]=lit;\x20\x20i++;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20ll\x20=\x200,\x20n\x20=\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(lit==16)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20n\x20=\x20(3\x20\x20+\x20bitsE(data,\x20pos,\x202));\x20\x20pos\x20+=\x202;\x20\x20ll\x20=\x20tree[i-1];\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20if(lit==17)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20n\x20=\x20(3\x20\x20+\x20bitsE(data,\x20pos,\x203));\x20\x20pos\x20+=\x203;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20if(lit==18)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20n\x20=\x20(11\x20+\x20bitsE(data,\x20pos,\x207));\x20\x20pos\x20+=\x207;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20ni\x20=\x20i+n;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20while(i<ni)\x20{\x20\x20tree[i]=ll;\x20\x20i++;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20return\x20pos;\x0a}\x0aUZIP.F._copyOut\x20=\x20function(src,\x20off,\x20len,\x20tree)\x20{\x0a\x20\x20\x20\x20let\x20mx=0,\x20i=0,\x20tl=tree.length>>>1;\x0a\x20\x20\x20\x20while(i<len)\x20{\x20\x20let\x20v=src[i+off];\x20\x20tree[(i<<1)]=0;\x20\x20tree[(i<<1)+1]=v;\x20\x20if(v>mx)mx=v;\x20\x20i++;\x20\x20}\x0a\x20\x20\x20\x20while(i<tl\x20)\x20{\x20\x20tree[(i<<1)]=0;\x20\x20tree[(i<<1)+1]=0;\x20\x20i++;\x20\x20}\x0a\x20\x20\x20\x20return\x20mx;\x0a}\x0a\x0aUZIP.F.makeCodes\x20=\x20function(tree,\x20MAX_BITS)\x20{\x20\x20//\x20code,\x20length\x0a\x20\x20\x20\x20let\x20U\x20=\x20UZIP.F.U;\x0a\x20\x20\x20\x20let\x20max_code\x20=\x20tree.length;\x0a\x20\x20\x20\x20let\x20code,\x20bits,\x20n,\x20i,\x20len;\x0a\x0a\x20\x20\x20\x20let\x20bl_count\x20=\x20U.bl_count;\x20\x20for(let\x20i=0;\x20i<=MAX_BITS;\x20i++)\x20bl_count[i]=0;\x0a\x20\x20\x20\x20for(i=1;\x20i<max_code;\x20i+=2)\x20bl_count[tree[i]]++;\x0a\x0a\x20\x20\x20\x20let\x20next_code\x20=\x20U.next_code;\x09//\x20smallest\x20code\x20for\x20each\x20length\x0a\x0a\x20\x20\x20\x20code\x20=\x200;\x0a\x20\x20\x20\x20bl_count[0]\x20=\x200;\x0a\x20\x20\x20\x20for\x20(bits\x20=\x201;\x20bits\x20<=\x20MAX_BITS;\x20bits++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20code\x20=\x20(code\x20+\x20bl_count[bits-1])\x20<<\x201;\x0a\x20\x20\x20\x20\x20\x20\x20\x20next_code[bits]\x20=\x20code;\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20for\x20(n\x20=\x200;\x20n\x20<\x20max_code;\x20n+=2)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20len\x20=\x20tree[n+1];\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(len\x20!=\x200)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20tree[n]\x20=\x20next_code[len];\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20next_code[len]++;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a}\x0aUZIP.F.codes2map\x20=\x20function(tree,\x20MAX_BITS,\x20map)\x20{\x0a\x20\x20\x20\x20let\x20max_code\x20=\x20tree.length;\x0a\x20\x20\x20\x20let\x20U=UZIP.F.U,\x20r15\x20=\x20U.rev15;\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<max_code;\x20i+=2)\x20if(tree[i+1]!=0)\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20lit\x20=\x20i>>1;\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20cl\x20=\x20tree[i+1],\x20val\x20=\x20(lit<<4)|cl;\x20//\x20:\x20\x20(0x8000\x20|\x20(U.of0[lit-257]<<7)\x20|\x20(U.exb[lit-257]<<4)\x20|\x20cl);\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20rest\x20=\x20(MAX_BITS-cl),\x20i0\x20=\x20tree[i]<<rest,\x20i1\x20=\x20i0\x20+\x20(1<<rest);\x0a\x20\x20\x20\x20\x20\x20\x20\x20//tree[i]=r15[i0]>>>(15-MAX_BITS);\x0a\x20\x20\x20\x20\x20\x20\x20\x20while(i0!=i1)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20p0\x20=\x20r15[i0]>>>(15-MAX_BITS);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20map[p0]=val;\x20\x20i0++;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a}\x0aUZIP.F.revCodes\x20=\x20function(tree,\x20MAX_BITS)\x20{\x0a\x20\x20\x20\x20let\x20r15\x20=\x20UZIP.F.U.rev15,\x20imb\x20=\x2015-MAX_BITS;\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<tree.length;\x20i+=2)\x20{\x20\x20let\x20i0\x20=\x20(tree[i]<<(MAX_BITS-tree[i+1]));\x20\x20tree[i]\x20=\x20r15[i0]>>>imb;\x20\x20}\x0a}\x0a\x0a//\x20used\x20only\x20in\x20deflate\x0aUZIP.F._putsE=\x20function(dt,\x20pos,\x20val\x20\x20\x20)\x20{\x20\x20val\x20=\x20val<<(pos&7);\x20\x20let\x20o=(pos>>>3);\x20\x20dt[o]|=val;\x20\x20dt[o+1]|=(val>>>8);\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0aUZIP.F._putsF=\x20function(dt,\x20pos,\x20val\x20\x20\x20)\x20{\x20\x20val\x20=\x20val<<(pos&7);\x20\x20let\x20o=(pos>>>3);\x20\x20dt[o]|=val;\x20\x20dt[o+1]|=(val>>>8);\x20\x20dt[o+2]|=(val>>>16);\x20\x20}\x0a\x0aUZIP.F._bitsE=\x20function(dt,\x20pos,\x20length)\x20{\x20\x20return\x20((dt[pos>>>3]\x20|\x20(dt[(pos>>>3)+1]<<8)\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20)>>>(pos&7))&((1<<length)-1);\x20\x20}\x0aUZIP.F._bitsF=\x20function(dt,\x20pos,\x20length)\x20{\x20\x20return\x20((dt[pos>>>3]\x20|\x20(dt[(pos>>>3)+1]<<8)\x20|\x20(dt[(pos>>>3)+2]<<16))>>>(pos&7))&((1<<length)-1);\x20\x20}\x0a/*\x0aUZIP.F._get9\x20=\x20function(dt,\x20pos)\x20{\x0a\x09return\x20((dt[pos>>>3]\x20|\x20(dt[(pos>>>3)+1]<<8))>>>(pos&7))&511;\x0a}\x20*/\x0aUZIP.F._get17=\x20function(dt,\x20pos)\x20{\x09//\x20return\x20at\x20least\x2017\x20meaningful\x20bytes\x0a\x20\x20\x20\x20return\x20(dt[pos>>>3]\x20|\x20(dt[(pos>>>3)+1]<<8)\x20|\x20(dt[(pos>>>3)+2]<<16)\x20)>>>(pos&7);\x0a}\x0aUZIP.F._get25=\x20function(dt,\x20pos)\x20{\x09//\x20return\x20at\x20least\x2017\x20meaningful\x20bytes\x0a\x20\x20\x20\x20return\x20(dt[pos>>>3]\x20|\x20(dt[(pos>>>3)+1]<<8)\x20|\x20(dt[(pos>>>3)+2]<<16)\x20|\x20(dt[(pos>>>3)+3]<<24)\x20)>>>(pos&7);\x0a}\x0aUZIP.F.U\x20=\x20function(){\x0a\x20\x20\x20\x20let\x20u16=Uint16Array,\x20u32=Uint32Array;\x0a\x20\x20\x20\x20return\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20next_code\x20:\x20new\x20u16(16),\x0a\x20\x20\x20\x20\x20\x20\x20\x20bl_count\x20\x20:\x20new\x20u16(16),\x0a\x20\x20\x20\x20\x20\x20\x20\x20ordr\x20:\x20[\x2016,\x2017,\x2018,\x200,\x208,\x207,\x209,\x206,\x2010,\x205,\x2011,\x204,\x2012,\x203,\x2013,\x202,\x2014,\x201,\x2015\x20],\x0a\x20\x20\x20\x20\x20\x20\x20\x20of0\x20\x20:\x20[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,999,999,999],\x0a\x20\x20\x20\x20\x20\x20\x20\x20exb\x20\x20:\x20[0,0,0,0,0,0,0,\x200,\x201,\x201,\x201,\x201,\x202,\x202,\x202,\x202,\x203,\x203,\x203,\x203,\x204,\x204,\x204,\x20\x204,\x20\x205,\x20\x205,\x20\x205,\x20\x205,\x20\x200,\x20\x200,\x20\x200,\x20\x200],\x0a\x20\x20\x20\x20\x20\x20\x20\x20ldef\x20:\x20new\x20u16(32),\x0a\x20\x20\x20\x20\x20\x20\x20\x20df0\x20\x20:\x20[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,\x2065535,\x2065535],\x0a\x20\x20\x20\x20\x20\x20\x20\x20dxb\x20\x20:\x20[0,0,0,0,1,1,2,\x202,\x203,\x203,\x204,\x204,\x205,\x205,\x20\x206,\x20\x206,\x20\x207,\x20\x207,\x20\x208,\x20\x208,\x20\x20\x209,\x20\x20\x209,\x20\x2010,\x20\x2010,\x20\x2011,\x20\x2011,\x20\x2012,\x20\x20\x2012,\x20\x20\x2013,\x20\x20\x2013,\x20\x20\x20\x20\x200,\x20\x20\x20\x20\x200],\x0a\x20\x20\x20\x20\x20\x20\x20\x20ddef\x20:\x20new\x20u32(32),\x0a\x20\x20\x20\x20\x20\x20\x20\x20flmap:\x20new\x20u16(\x20\x20512),\x20\x20fltree:\x20[],\x0a\x20\x20\x20\x20\x20\x20\x20\x20fdmap:\x20new\x20u16(\x20\x20\x2032),\x20\x20fdtree:\x20[],\x0a\x20\x20\x20\x20\x20\x20\x20\x20lmap\x20:\x20new\x20u16(32768),\x20\x20ltree\x20:\x20[],\x20\x20ttree:[],\x0a\x20\x20\x20\x20\x20\x20\x20\x20dmap\x20:\x20new\x20u16(32768),\x20\x20dtree\x20:\x20[],\x0a\x20\x20\x20\x20\x20\x20\x20\x20imap\x20:\x20new\x20u16(\x20\x20512),\x20\x20itree\x20:\x20[],\x0a\x20\x20\x20\x20\x20\x20\x20\x20//rev9\x20:\x20new\x20u16(\x20\x20512)\x0a\x20\x20\x20\x20\x20\x20\x20\x20rev15:\x20new\x20u16(1<<15),\x0a\x20\x20\x20\x20\x20\x20\x20\x20lhst\x20:\x20new\x20u32(286),\x20dhst\x20:\x20new\x20u32(\x2030),\x20ihst\x20:\x20new\x20u32(19),\x0a\x20\x20\x20\x20\x20\x20\x20\x20lits\x20:\x20new\x20u32(15000),\x0a\x20\x20\x20\x20\x20\x20\x20\x20strt\x20:\x20new\x20u16(1<<16),\x0a\x20\x20\x20\x20\x20\x20\x20\x20prev\x20:\x20new\x20u16(1<<15)\x0a\x20\x20\x20\x20};\x0a}\x20();\x0a\x0a(function(){\x0a\x20\x20\x20\x20let\x20U\x20=\x20UZIP.F.U;\x0a\x20\x20\x20\x20let\x20len\x20=\x201<<15;\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<len;\x20i++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20x\x20=\x20i;\x0a\x20\x20\x20\x20\x20\x20\x20\x20x\x20=\x20(((x\x20&\x200xaaaaaaaa)\x20>>>\x201)\x20|\x20((x\x20&\x200x55555555)\x20<<\x201));\x0a\x20\x20\x20\x20\x20\x20\x20\x20x\x20=\x20(((x\x20&\x200xcccccccc)\x20>>>\x202)\x20|\x20((x\x20&\x200x33333333)\x20<<\x202));\x0a\x20\x20\x20\x20\x20\x20\x20\x20x\x20=\x20(((x\x20&\x200xf0f0f0f0)\x20>>>\x204)\x20|\x20((x\x20&\x200x0f0f0f0f)\x20<<\x204));\x0a\x20\x20\x20\x20\x20\x20\x20\x20x\x20=\x20(((x\x20&\x200xff00ff00)\x20>>>\x208)\x20|\x20((x\x20&\x200x00ff00ff)\x20<<\x208));\x0a\x20\x20\x20\x20\x20\x20\x20\x20U.rev15[i]\x20=\x20(((x\x20>>>\x2016)\x20|\x20(x\x20<<\x2016)))>>>17;\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20function\x20pushV(tgt,\x20n,\x20sv)\x20{\x20\x20while(n--!=0)\x20tgt.push(0,sv);\x20\x20}\x0a\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<32;\x20i++)\x20{\x20\x20U.ldef[i]=(U.of0[i]<<3)|U.exb[i];\x20\x20U.ddef[i]=(U.df0[i]<<4)|U.dxb[i];\x20\x20}\x0a\x0a\x20\x20\x20\x20pushV(U.fltree,\x20144,\x208);\x20\x20pushV(U.fltree,\x20255-143,\x209);\x20\x20pushV(U.fltree,\x20279-255,\x207);\x20\x20pushV(U.fltree,287-279,8);\x0a\x20\x20\x20\x20/*\x0a\x20\x20\x20\x20let\x20i\x20=\x200;\x0a\x20\x20\x20\x20for(;\x20i<=143;\x20i++)\x20U.fltree.push(0,8);\x0a\x20\x20\x20\x20for(;\x20i<=255;\x20i++)\x20U.fltree.push(0,9);\x0a\x20\x20\x20\x20for(;\x20i<=279;\x20i++)\x20U.fltree.push(0,7);\x0a\x20\x20\x20\x20for(;\x20i<=287;\x20i++)\x20U.fltree.push(0,8);\x0a\x20\x20\x20\x20*/\x0a\x20\x20\x20\x20UZIP.F.makeCodes(U.fltree,\x209);\x0a\x20\x20\x20\x20UZIP.F.codes2map(U.fltree,\x209,\x20U.flmap);\x0a\x20\x20\x20\x20UZIP.F.revCodes\x20(U.fltree,\x209)\x0a\x0a\x20\x20\x20\x20pushV(U.fdtree,32,5);\x0a\x20\x20\x20\x20//for(i=0;i<32;\x20i++)\x20U.fdtree.push(0,5);\x0a\x20\x20\x20\x20UZIP.F.makeCodes(U.fdtree,\x205);\x0a\x20\x20\x20\x20UZIP.F.codes2map(U.fdtree,\x205,\x20U.fdmap);\x0a\x20\x20\x20\x20UZIP.F.revCodes\x20(U.fdtree,\x205)\x0a\x0a\x20\x20\x20\x20pushV(U.itree,19,0);\x20\x20pushV(U.ltree,286,0);\x20\x20pushV(U.dtree,30,0);\x20\x20pushV(U.ttree,320,0);\x0a\x20\x20\x20\x20/*\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<\x2019;\x20i++)\x20U.itree.push(0,0);\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<286;\x20i++)\x20U.ltree.push(0,0);\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<\x2030;\x20i++)\x20U.dtree.push(0,0);\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<320;\x20i++)\x20U.ttree.push(0,0);\x0a\x20\x20\x20\x20*/\x0a})();\x0a\x0a\x0a\x0alet\x20started\x20=\x20false;\x0alet\x20cloudFrontURL\x20=\x20\x22\x22;\x0alet\x20folderName\x20=\x20\x22\x22;\x0alet\x20lastRequest\x20=\x20{};//{tc:\x2200_00_00_00\x22,\x20path:\x22...\x22}\x0alet\x20lastTimeCodeFound\x20=\x20null;//for\x20statistics\x0alet\x20msecAvg\x20=\x20[];//for\x20statistics\x0aconst\x20delimiter\x20=\x20\x22_\x22;\x0alet\x20maxTimeCode\x20=\x20{};//don\x27t\x20pass\x20this\x20timecode\x0alet\x20enabled\x20=\x20true;\x0alet\x20isWorking\x20=\x20false;\x0a\x0aconst\x20HandleData\x20=\x20async\x20(data)\x20=>\x20{\x0a\x20\x20\x20\x20const\x20result\x20=\x20UZIP.parse(data);\x0a\x20\x20\x20\x20let\x20sortedKeys\x20=\x20Object.keys(result).sort();\x0a\x09\x0a\x20\x20\x20\x20for\x20(const\x20key\x20of\x20sortedKeys)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(key.endsWith(\x22.json\x22))\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20transferableArray\x20=\x20[];\x0a\x09\x09\x09const\x20metadata\x20=\x20JSON.parse(new\x20TextDecoder().decode(result[key]));\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20tc\x20=\x20metadata.timecode.replace(/:/g,\x22_\x22);//replaceAll(\x22:\x22,\x20\x22_\x22);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(metadata.placeholders)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20for\x20(const\x20groupId\x20in\x20metadata.placeholders)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20alphaKey\x20=\x20`${tc}_${groupId}.alpha`;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(result[alphaKey])\x20{\x0a\x09\x09\x09\x09\x09\x09metadata.placeholders[groupId].alphaAsUint8Array\x20=\x20result[alphaKey];//new\x20Uint8Array(result[alphaKey].buffer);\x0a\x09\x09\x09\x09\x09\x09transferableArray.push(result[alphaKey].buffer);\x0a\x09\x09\x09\x09\x09}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20postMessage(metadata,transferableArray);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a}\x0a\x0aconst\x20Str2TimeCode\x20=\x20(str)\x20=>\x20{\x0a\x20\x20\x20\x20const\x20list\x20=\x20str.split(delimiter);\x0a\x20\x20\x20\x20const\x20timecode\x20=\x20{h:\x20parseInt(list[0]),\x20m:\x20parseInt(list[1]),\x20s:\x20parseInt(list[2]),\x20f:\x20parseInt(list[3])};\x0a\x20\x20\x20\x20return\x20timecode;\x0a}\x0aconst\x20TimeCode2Str\x20=\x20(timecode)\x20=>\x20{\x0a\x20\x20\x20\x20return\x20(\x220\x22\x20+\x20timecode.h).slice(-2)\x20+\x20delimiter\x20+\x20(\x220\x22\x20+\x20timecode.m).slice(-2)\x20+\x20delimiter\x20+\x20(\x220\x22\x20+\x20timecode.s).slice(-2)\x20+\x20delimiter\x20+\x20(\x220\x22\x20+\x20timecode.f).slice(-2);\x0a}\x0aconst\x20AddSecondsToTimeCode\x20=\x20(timecode,\x20seconds)\x20=>\x20{\x0a\x20\x20\x20\x20let\x20ret\x20=\x20{...timecode};//cloning\x20araay\x0a\x09ret.s\x20+=\x20seconds;\x0a\x20\x20\x20\x20if\x20(ret.s\x20>=\x2060)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20ret.s\x20=\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20ret.m++;\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(ret.m\x20>=\x2060)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ret.m\x20=\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ret.h++;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20return\x20ret;\x0a}\x0aconst\x20GetNextTimeCode_TC\x20=\x20(tc,\x20seconds\x20=\x200)\x20=>\x20{\x0a\x20\x20\x20\x20let\x20timecode\x20=\x20Str2TimeCode(tc);\x0a\x20\x20\x20\x20if\x20(seconds)\x20timecode\x20=\x20AddSecondsToTimeCode(timecode,\x20seconds);\x0a\x09return\x20timecode;\x0a}\x0aconst\x20GetNextTimeCode\x20=\x20(tc,\x20seconds\x20=\x200)\x20=>\x20{\x0a\x20\x20\x20\x20let\x20timecode\x20=\x20GetNextTimeCode_TC(tc,seconds);\x0a\x20\x20\x20\x20return\x20TimeCode2Str(timecode);\x0a}\x0a\x0a\x0aconst\x20IsTCBigger\x20=\x20(tc1,\x20tc2)\x20=>\x20{\x0a\x09//return\x20true\x20iif\x20tc1\x20>\x20tc2\x0a\x09if\x20(tc1.h\x20>\x20tc2.h)\x20return\x20true;\x0a\x09else\x20if\x20(tc1.h\x20<\x20tc2.h)\x20return\x20false;\x0a\x09else\x20if\x20(tc1.m\x20>\x20tc2.m)\x20return\x20true;\x0a\x09else\x20if\x20(tc1.m\x20<\x20tc2.m)\x20return\x20false;\x0a\x09else\x20if\x20(tc1.s\x20>\x20tc2.s)\x20return\x20true;\x0a\x09else\x20if\x20(tc1.s\x20<\x20tc2.s)\x20return\x20false;\x0a\x09else\x20if\x20(tc1.f\x20>\x20tc2.f)\x20return\x20true;\x0a\x09else\x20return\x20false;\x0a}\x0aconst\x20TryNextFrame\x20=\x20(seconds)\x20=>\x20{\x0a\x09if(!enabled)\x20return;\x0a\x09//if\x20the\x20required\x20time\x20code\x20exceed\x20the\x20max\x20time\x20code,\x20wait\x20a\x20bit\x0a\x09if\x20(seconds\x20>\x200\x20&&\x20IsTCBigger(GetNextTimeCode_TC(lastRequest.tc,\x20seconds),\x20maxTimeCode))\x20{\x0a\x09\x09//console.log(\x22the\x20current\x20TC\x20\x22,\x20GetNextTimeCode_TC(lastRequest.tc,\x20seconds),\x20\x22\x20is\x20bigger\x20than\x20the\x20max\x20time\x20code:\x20\x22,\x20maxTimeCode);//@oror\x0a\x09\x09setTimeout(()\x20=>\x20{\x0a\x09\x09\x09TryNextFrame(seconds);\x0a\x09\x09},\x20100);\x0a\x09}\x0a\x20\x20\x20\x20else\x20\x0a\x09{\x0a\x09\x09//console.log(\x22We\x27re\x20good\x20to\x20take\x20the\x20next\x20timecode\x22);//@oror\x0a\x09\x09setTimeout(()\x20=>\x20{\x0a\x09\x09\x09lastRequest.tc\x20=\x20GetNextTimeCode(lastRequest.tc,\x20seconds);\x0a\x09\x09\x09//console.log(\x22next\x20time\x20code:\x20\x22,\x20lastRequest.tc);//@oror\x0a\x09\x09\x09GetMetaData();\x0a\x09\x09\x09},\x200);\x0a\x09}\x0a}\x0a\x0aconst\x20AvgMetaDataMsec\x20=\x20()\x20=>\x20{\x0a\x20\x20\x20\x20let\x20sum\x20=\x200;\x0a\x20\x20\x20\x20for\x20(let\x20i\x20=\x200;\x20i\x20<\x20msecAvg.length;\x20i++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20sum\x20+=\x20msecAvg[i];\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20return\x20sum\x20/\x20msecAvg.length;\x0a};\x0aconst\x20GetMetaData\x20=\x20async\x20()\x20=>\x20{\x0a\x20\x20\x20\x20isWorking\x20=\x20true;\x0a\x09const\x20item\x20=\x20lastRequest;\x0a\x20\x20\x20\x20const\x20url\x20=\x20`${item.path}/${item.tc}.zip`;\x0a\x20\x20\x20\x20try\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20t1\x20=\x20performance.now();\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20res\x20=\x20await\x20fetch(url);\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(res.status\x20>=\x20400)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//console.log(`${item.tc}\x20time\x20code\x20not\x20found,\x20url\x20is\x20${url}`);\x0a\x09\x09\x09let\x20now\x20=\x20performance.now();\x0a\x09\x09\x09let\x20msecSinceLastTimeDate\x20=\x20now\x20-\x20lastTimeCodeFound;\x0a\x09\x09\x09let\x20secSinceLastTimeDate\x20=\x20(msecSinceLastTimeDate/1000);\x0a\x09\x09\x09if\x20(secSinceLastTimeDate\x20>\x204)\x20{\x0a\x09\x09\x09\x09console.error(\x22Didn\x27t\x20find\x20timecode\x20\x22,\x20item.tc,\x20\x22,\x20now\x20for\x20\x22\x20+\x20secSinceLastTimeDate.toFixed(2)\x20+\x20\x22\x20seconds\x20-\x20give\x20up\x20!\x22);\x0a\x09\x09\x09\x09TryNextFrame(2);//try\x20the\x20same\x20time\x20\x20code\x20again\x0a\x09\x09\x09}\x0a\x09\x09\x09else\x20{\x0a\x09\x09\x09\x09console.error(\x22Didn\x27t\x20find\x20timecode\x20\x22,\x20item.tc,\x20\x22,\x20now\x20for\x20\x22\x20+\x20secSinceLastTimeDate.toFixed(2)\x20+\x20\x22\x20seconds\x22);\x0a\x09\x09\x09\x09TryNextFrame(0);//try\x20the\x20same\x20time\x20\x20code\x20again\x0a\x09\x09\x09}\x0a\x09\x09\x09isWorking\x20=\x20false;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20now\x20=\x20performance.now();\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20msecSinceLastTimeDate\x20=\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(lastTimeCodeFound)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20msecSinceLastTimeDate\x20=\x20now\x20-\x20lastTimeCodeFound;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20msecAvg.push(msecSinceLastTimeDate);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20while\x20(msecAvg.length\x20>\x201000)\x20msecAvg.shift();\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20lastTimeCodeFound\x20=\x20now;\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20//console.log(`${item.tc}\x20time\x20code\x20found,\x20(${msecSinceLastTimeDate}\x20msec\x20from\x20last\x20time,\x20avg:\x20${AvgMetaDataMsec()})`);\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20data\x20=\x20await\x20res.arrayBuffer();\x0a\x20\x20\x20\x20\x20\x20\x20\x20await\x20HandleData(data);\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20t2\x20=\x20performance.now();\x0a\x20\x20\x20\x20\x20\x20\x20\x20//postMessage({time:\x20`Fetch\x20and\x20Decompress:\x20${t2\x20-\x20t1}\x20msec`});\x0a\x20\x20\x20\x20}\x20catch\x20(err)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20console.error(`Error\x20on\x20url\x20${url}`,\x20err);\x0a\x20\x20\x20\x20}\x0a\x09isWorking\x20=\x20false;\x0a\x20\x20\x20\x20TryNextFrame(2);\x0a}\x0a\x0aaddEventListener(\x22message\x22,\x20(request)\x20=>\x20{\x0a\x09if\x20(!started\x20&&\x20request.data.cloudFrontURL)\x20{\x0a\x09\x09started\x20=\x20true;\x0a\x09\x09cloudFrontURL\x20=\x20request.data.cloudFrontURL;\x0a\x09\x09folderName\x20=\x20request.data.folderName;\x0a\x09\x09let\x20tcReplaced\x20=\x20request.data.tc.replace(/:/g,\x22_\x22);//replaceAll(\x22:\x22,\x20\x22_\x22)\x0a\x09\x09lastRequest\x20=\x20{tc:\x20tcReplaced,\x20path:\x20`${cloudFrontURL}/${folderName}`};//from\x20the\x20lastReqest\x20object\x0a\x09\x09let\x20timeCode\x20=\x20Str2TimeCode(lastRequest.tc);//parse\x20the\x20time\x20code\x20string\x20into\x20a\x20real\x20time-code\x0a\x09\x09maxTimeCode\x20=\x20AddSecondsToTimeCode(Object.assign({},\x20timeCode),\x204);//set\x20the\x20max\x20limit\x20(on\x20a\x20clone)\x0a\x09\x09//set\x20the\x20timecode\x20needed\x20\x0a\x09\x09timeCode.f\x20=\x200;\x0a\x09\x09timeCode.s\x20=\x20timeCode.s\x20%\x202\x20===\x200\x20?\x20timeCode.s\x20:\x20timeCode.s\x20-\x201;\x0a\x09\x09lastRequest.tc\x20=\x20TimeCode2Str(timeCode);\x0a\x09\x09console.log(\x22Meta-data\x20worker\x20starting\x20from\x20this\x20time-code:\x20\x22,\x20lastRequest.tc);//@oror\x0a\x09\x09GetMetaData();\x0a\x09}\x0a\x09else\x20{\x0a\x09\x09let\x20tcReplaced\x20=\x20request.data.tc.replace(/:/g,\x22_\x22);\x0a\x09\x09//console.log(\x22metaDataDownloader\x20new\x20timecode\x20=\x20\x22\x20+\x20tcReplaced);\x0a\x09\x09let\x20timeCode\x20=\x20Str2TimeCode(tcReplaced);\x0a\x09\x09timeCode.f\x20=\x200;\x0a\x09\x09timeCode.s\x20=\x20timeCode.s\x20%\x202\x20===\x200\x20?\x20timeCode.s\x20:\x20timeCode.s\x20-\x201;\x0a\x09\x09if\x20(IsTCBigger(timeCode,\x20maxTimeCode))\x0a\x09\x09{\x0a\x09\x09\x09lastRequest.tc\x20=\x20TimeCode2Str(timeCode);\x0a\x09\x09\x09console.log(\x22Meta-data\x20worker\x20jumps\x20forward\x20to\x20this\x20time-code:\x20\x22,\x20lastRequest.tc);\x0a\x09\x09}\x0a\x09\x09if\x20(IsTCBigger(Str2TimeCode(lastRequest.tc),\x20AddSecondsToTimeCode(timeCode,4)))\x0a\x09\x09{\x0a\x09\x09\x09lastRequest.tc\x20=\x20TimeCode2Str(timeCode);\x0a\x09\x09\x09console.log(\x22Meta-data\x20worker\x20jumps\x20back\x20to\x20this\x20time-code:\x20\x22,\x20lastRequest.tc);\x0a\x09\x09}\x0a\x09\x09maxTimeCode\x20=\x20AddSecondsToTimeCode(timeCode,\x204);\x0a\x09\x09if(!enabled\x20&&\x20request.data.enabled)\x0a\x09\x09{\x0a\x09\x09\x09enabled\x20=\x20request.data.enabled;\x09\x0a\x09\x09\x09if(!isWorking)\x20GetMetaData();\x0a\x09\x09}\x0a\x09\x09else\x20{\x0a\x09\x09\x09enabled\x20=\x20request.data.enabled;\x09\x0a\x09\x09}\x0a\x09\x09//console.log(\x22max\x20time\x20code:\x20\x22,\x20maxTimeCode);\x0a\x09}\x0a});\x0a\x0a}\x20catch\x20(e){\x0a\x09console.error(e);\x0a}','Video\x20object\x20is\x20not\x20defined.\x20This\x20script\x20might\x20not\x20be\x20running\x20in\x20a\x20browser\x20environment.','getUTCMinutes','GenerateTexture','#version\x20300\x20es\x0a\x0a//High\x20precision\x20mode\x0aprecision\x20highp\x20float;\x0a\x0a//The\x20textures\x0a//uniform\x20sampler2D\x20u_image;//video\x20frame\x27s\x20texture\x0auniform\x20sampler2D\x20ad0;//the\x20ad\x20texture\x0auniform\x20sampler2D\x20ad1;//the\x20ad\x20texture\x0auniform\x20sampler2D\x20ad2;//the\x20ad\x20texture\x0auniform\x20sampler2D\x20ad3;//the\x20ad\x20texture\x0a\x0auniform\x20vec2\x20u_resolution2;//resolution\x20of\x20the\x20canvas\x0a\x0a//v_texCoord\x20from\x20the\x20vertex\x20shader\x0a//in\x20vec2\x20v_texCoord;\x0a\x0a//Logos\x27\x20staff\x0auniform\x20int\x20hasLogo0;//has\x20logo\x20?\x0auniform\x20int\x20adForLogo0;\x0auniform\x20sampler2D\x20alpha0;//the\x20alpha\x27s\x20mate\x0auniform\x20mat3\x20u_matrix0;//the\x20reverse\x20homography\x0auniform\x20vec2\x20u_alpha0TopLeft;//the\x20alpha\x20mate\x27s\x20top-left\x0auniform\x20vec2\x20u_alpha0Size;//the\x20alpha\x20mate\x27s\x20size\x0a\x0auniform\x20int\x20hasLogo1;//has\x20logo\x20?\x0auniform\x20int\x20adForLogo1;\x0auniform\x20sampler2D\x20alpha1;//the\x20alpha\x27s\x20mate\x0auniform\x20mat3\x20u_matrix1;//the\x20reverse\x20homography\x0auniform\x20vec2\x20u_alpha1TopLeft;//the\x20alpha\x20mate\x27s\x20top-left\x0auniform\x20vec2\x20u_alpha1Size;//the\x20alpha\x20mate\x27s\x20size\x0a\x0auniform\x20int\x20hasLogo2;//has\x20logo\x20?\x0auniform\x20int\x20adForLogo2;\x0auniform\x20sampler2D\x20alpha2;//the\x20alpha\x27s\x20mate\x0auniform\x20mat3\x20u_matrix2;//the\x20reverse\x20homography\x0auniform\x20vec2\x20u_alpha2TopLeft;//the\x20alpha\x20mate\x27s\x20top-left\x0auniform\x20vec2\x20u_alpha2Size;//the\x20alpha\x20mate\x27s\x20size\x0a\x0auniform\x20int\x20hasLogo3;//has\x20logo\x20?\x0auniform\x20int\x20adForLogo3;\x0auniform\x20sampler2D\x20alpha3;//the\x20alpha\x27s\x20mate\x0auniform\x20mat3\x20u_matrix3;//the\x20reverse\x20homography\x0auniform\x20vec2\x20u_alpha3TopLeft;//the\x20alpha\x20mate\x27s\x20top-left\x0auniform\x20vec2\x20u_alpha3Size;//the\x20alpha\x20mate\x27s\x20size\x0a\x0auniform\x20int\x20hasDigit;//has\x20debug\x20digit\x20texture\x0auniform\x20sampler2D\x20digitTex;//the\x20digits\x27s\x20mate\x0auniform\x20vec2\x20u_digitTopLeft;//the\x20digit\x20mate\x27s\x20top-left\x0auniform\x20vec2\x20u_digitTopLeft2;//the\x20digit\x20mate\x27s\x20top-left\x0auniform\x20vec2\x20u_digitSize;//the\x20digit\x20mate\x27s\x20size\x0a\x0a//Output\x0aout\x20vec4\x20outColor;\x0abool\x20BlendDigit(in\x20vec2\x20curCoord)\x20{\x0a\x09//vec2\x20texCoord\x20=\x20curCoord;\x0a\x09//texCoord\x20/=\x20u_resolution2;\x0a\x09vec2\x20digitCoord\x20=\x20(curCoord\x20-\x20u_digitTopLeft)/u_digitSize;//get\x20the\x20coordinate\x20on\x20the\x20digit\x20size\x0a\x09if\x20(digitCoord.x\x20>=\x200.0\x20&&\x20digitCoord.y\x20>=\x200.0\x20&&\x20digitCoord.x\x20<=\x201.0\x20&&\x20digitCoord.y\x20<=\x201.0)\x0a\x09{\x0a\x09\x09outColor\x20=\x20texture(digitTex,\x20digitCoord);\x0a\x09\x09return\x20true;\x0a\x09}\x0a\x09return\x20false;\x0a}\x0abool\x20BlendDigit2(in\x20vec2\x20curCoord)\x20{\x0a\x09//vec2\x20texCoord\x20=\x20curCoord;\x0a\x09//texCoord\x20/=\x20u_resolution2;\x0a\x09vec2\x20digitCoord\x20=\x20(curCoord\x20-\x20u_digitTopLeft2)/u_digitSize;//get\x20the\x20coordinate\x20on\x20the\x20digit\x20size\x0a\x09if\x20(digitCoord.x\x20>=\x200.0\x20&&\x20digitCoord.y\x20>=\x200.0\x20&&\x20digitCoord.x\x20<=\x201.0\x20&&\x20digitCoord.y\x20<=\x201.0)\x0a\x09{\x0a\x09\x09outColor\x20=\x20texture(digitTex,\x20digitCoord);\x0a\x09\x09return\x20true;\x0a\x09}\x0a\x09return\x20false;\x0a}\x0abool\x20BlendWithLogo(\x0a\x09in\x20int\x20adUnit,\x0a\x20\x20\x20\x20in\x20sampler2D\x20alphaTexture,\x0a\x20\x20\x20\x20in\x20mat3\x20matrix,\x0a\x20\x20\x20\x20in\x20vec2\x20curCoord,\x0a\x20\x20\x20\x20in\x20vec2\x20alphaTopLeft,\x0a\x20\x20\x20\x20in\x20vec2\x20alphaSize)\x20\x0a{\x0a\x09\x0a\x09\x0a\x09\x0a\x20\x20\x20\x20vec2\x20texCoord;\x0a\x20\x20\x20\x20texCoord.x\x20=\x20(matrix[0][0]*curCoord.x\x20+\x20matrix[0][1]*curCoord.y\x20+\x20matrix[0][2])\x20/\x20(matrix[2][0]*curCoord.x\x20+\x20matrix[2][1]*curCoord.y\x20+\x201.0);\x0a\x20\x20\x20\x20texCoord.y\x20=\x20(matrix[1][0]*curCoord.x\x20+\x20matrix[1][1]*curCoord.y\x20+\x20matrix[1][2])\x20/\x20(matrix[2][0]*curCoord.x\x20+\x20matrix[2][1]*curCoord.y\x20+\x201.0);\x0a\x20\x20\x20\x20texCoord\x20/=\x20u_resolution2;\x0a\x0a\x20\x20\x20\x20//if\x20we\x27re\x20in\x20the\x20bounding\x20rect\x20of\x20the\x20logo\x0a\x20\x20\x20\x20if\x20(texCoord.x\x20>=\x200.0\x20&&\x20texCoord.y\x20>=\x200.0\x20&&\x20texCoord.x\x20<=\x201.0\x20&&\x20texCoord.y\x20<=\x201.0)\x0a\x20\x20\x20\x20{\x0a\x09\x09\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20float\x20alpha\x20=\x201.0;\x0a\x20\x20\x20\x20\x20\x20\x20\x20vec2\x20alphaCoord\x20=\x20(curCoord\x20-\x20alphaTopLeft)/alphaSize;//get\x20the\x20coordinate\x20on\x20the\x20alpha\x20mate\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(\x0a\x09\x09alphaCoord.x\x20>=\x200.0\x20&&\x20\x0a\x09\x09alphaCoord.y\x20>=\x200.0\x20&&\x20\x0a\x09\x09alphaCoord.x\x20<=\x201.0\x20&&\x20\x0a\x09\x09alphaCoord.y\x20<=\x201.0\x0a\x09\x09)\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//get\x20the\x20alpha\x20texel:\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20alpha\x20*=\x20texture(alphaTexture,\x20alphaCoord).a;//without\x20blur\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x09\x09\x0a\x09\x09vec4\x20ad0Pix\x20=\x20\x0a\x09\x09\x09adUnit\x20==\x200\x20?\x20texture(ad0,\x20texCoord)\x20:\x0a\x09\x09\x09adUnit\x20==\x201\x20?\x20texture(ad1,\x20texCoord)\x20:\x0a\x09\x09\x09adUnit\x20==\x202\x20?\x20texture(ad2,\x20texCoord)\x20:\x0a\x09\x09\x09\x09\x09\x09\x20\x20texture(ad3,\x20texCoord);//get\x20the\x20logo\x27s\x20texel\x0a\x09\x09alpha\x20*=\x20ad0Pix.a;//consider\x20the\x20alpha\x20of\x20the\x20logo\x0a\x20\x20\x20\x20\x20\x20\x20\x20vec3\x20resultRGB\x20=\x20ad0Pix.rgb;//\x20+\x20videoImagePix.rgb*(1.0-alpha);//blend\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(alpha\x20==\x200.0)\x20resultRGB\x20=\x20vec3(0,0,0);\x0a\x09\x09outColor\x20=\x20vec4(resultRGB,\x20alpha);\x0a\x20\x20\x20\x20\x20\x20\x20\x20return\x20true;\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20else\x20return\x20false;\x0a\x20\x20\x0a}\x0avoid\x20main()\x0a{\x0a\x20\x20//calculate\x20cur-coord\x20(with\x20pixels\x20units)\x0a\x20\x20vec2\x20curCoord\x20=\x20gl_FragCoord.xy;\x0a\x20\x20curCoord.y\x20=\x20u_resolution2[1]\x20-\x20curCoord.y;\x0a\x20\x20//if\x20(hasDigit\x20==\x201\x20&&\x20(BlendDigit(curCoord)\x20||\x20BlendDigit2(curCoord)))\x20return;\x0a\x20\x20if\x20(hasDigit\x20==\x201\x20&&\x20(BlendDigit(curCoord)))\x20return;\x0a\x20\x20else\x20if\x20(hasLogo0\x20==\x201\x20&&\x20\x0a\x20\x20\x20\x20\x20BlendWithLogo(adForLogo0,\x0a\x09\x20alpha0,\x20u_matrix0,\x20curCoord,u_alpha0TopLeft,\x20u_alpha0Size))\x0a\x20\x20{\x0a\x20\x20\x20\x20return;\x0a\x20\x20}\x0a\x20\x20else\x20if\x20(hasLogo1\x20==\x201\x20&&\x0a\x20\x20\x20\x20\x20BlendWithLogo(adForLogo1,\x0a\x09\x20alpha1,\x20u_matrix1,\x20curCoord,u_alpha1TopLeft,\x20u_alpha1Size))\x0a\x20\x20{\x0a\x20\x20\x20\x20return;\x0a\x20\x20}\x0a\x20\x20else\x20if\x20(hasLogo2\x20==\x201\x20&&\x0a\x20\x20\x20\x20\x20BlendWithLogo(adForLogo2,\x0a\x09\x20alpha2,\x20u_matrix2,\x20curCoord,u_alpha2TopLeft,\x20u_alpha2Size))\x0a\x20\x20{\x0a\x20\x20\x20\x20return;\x0a\x20\x20}\x0a\x20\x20else\x20if\x20(hasLogo3\x20==\x201\x20&&\x0a\x20\x20\x20\x20\x20BlendWithLogo(adForLogo3,\x0a\x09\x20alpha3,\x20u_matrix3,\x20curCoord,u_alpha3TopLeft,\x20u_alpha3Size))\x0a\x20\x20{\x0a\x20\x20\x20\x20return;\x0a\x20\x20}\x0a\x20\x20else\x20{//no\x20logo\x0a\x20\x20\x20\x20outColor\x20=\x20vec4(0,0,0,0);\x0a\x20\x20}\x0a}\x0a','Probable\x20videoFrameCallback\x20was\x20not\x20fired.\x20Apllying\x20correction\x20mechanism\x20(','Mac','dateTime','searchParams','floor','split','src','error','enabled','canvas','checked','LINEAR','options\x20after\x20merge\x20with\x20MK\x27s\x20options:\x20','header','bindTexture','Src29_MediaTime29',',\x20offset:\x20<span\x20style=\x27color:','corners','SelectAd','paused','iOS','digitTex','ALPHA','uniform1i','width','url','GameId\x20for\x20mediaid=\x20','GetCanvas','Connect','timeCodeStr2TimeCodeArray:\x20Failed\x20to\x20parse\x20','getBoundingClientRect','addEventListener','This\x20videoCallback\x20can\x20be\x20incorrect.\x20This\x20time\x20doing\x20stuff\x20in\x20requestAnimation\x20frame','innerHTML','debugText2','u_digitSize','CreateDigitImg','getElementById','offs','toLowerCase','MAX_LOGOS','color:blue;font-weight:bold;','clientHeight','application/javascript','bindVertexArray','cloudFrontURL','key','abs','composer::SelectAd:\x20selected\x20ad\x20is\x20','reduce','createProgram','then','Failed\x20to\x20create\x20alpha\x20texture','join\x20\x20','callback','toString','getMilliseconds','https://games-prod.virtualott.com/offset','hasDigit','value','match','RenderDigits','logoURL','Mozilla','from','adLoopTime','lastAdName','clearColor','fillRect','\x20Frame:\x20','click','\x20playing\x20at\x20','a\x20Windows\x20PC','tranform','ad2Url','VID.\x20','getShaderParameter','u_resolution','texImage2D','TexUnitForGenericAd','alpha','FRAGMENT_SHADER','Platform','includes','name','LINK_STATUS','getShaderSource','length','TopLeft','Linux','TexUnitForAdInPlace','RenderingMode','CleanGL','TimeCodeAddFrames','createObjectURL','head','https://games-prod.virtualott.com/map','attachShader','BB.Augmenter\x20Start','Anonymous','doNotRenderAugmentationCheckbox','createTexture','fragmentShaderSource','counter','refreshRate','InitGL','augmentation','toISOString','TEXTURE_MIN_FILTER','requestAnimationFrame\x20is\x20not\x20supported','TEXTURE0','isApple','undefined','FrameRateMode','keys','Setting\x20Callbacks','getContext',',\x20Time\x20Fired:\x20','composer::AddAdvertisement:\x20place-to-ads\x20mapping:\x20','MKsync','red','padStart',')</span>','assign','x-shader/x-vertex','Checking\x20window\x20and\x20methods','placeholders','tex','Something\x20else','isWindows','shift','TRIANGLES','Error\x20in\x20creating\x20MetaDataDownloaderThread','Folder\x20name\x20for\x20','The\x20window\x20object\x20is\x20defined.\x20This\x20script\x20is\x20running\x20in\x20a\x20browser\x20environment.','clientWidth','TimeCodesFramesTranslator','Safari','setMediaFPS:\x20Unknown\x20Source\x20FrameRate\x20mode','clientY','style','306140qEqXXW','rect','insertBefore','Network\x20response\x20was\x20not\x20ok','json',',\x20resultTime:\x20','height','***\x20Error:\x20unknown\x20shader\x20type','deleteShader','The\x20window\x20object\x20is\x20not\x20defined.\x20This\x20script\x20might\x20not\x20be\x20running\x20in\x20a\x20browser\x20environment.','ANI.','\x20!!!!!!!!!!!!!!!!!!!!!!','postMessage','channelName','Utils','isArray','forDoNotRender','clear','databrowser','stopAugment','frames','frameDrawer','vertexShaderSource','offset','zIndex','.json','bufferData','ANI','generateMipmap','iPad','filter','time','setLastFrame','OnMetadata','getUTCMilliseconds','renderAugmentation','br2','currentAds2BoundingRect','presentationTime','100%','getCanvas','an\x20Android\x20phone','found','slice','pointer-events','#ad',',\x20Stream\x20Time-Code:\x20','adTexture','onNewMetadata','video','HTTP\x20error!\x20Status:\x20','isPowerOf2','videoCopier','compileShader','SetRectangle','\x20Setting\x20(some)\x20ms\x20timer','url:\x20','Unknown','None','[-\x20/:;]([\x5cd._]+)','appVersion','printTimecode','NOT\x20SUPPORTED','www.mediakind.com/NTC','frame','TEXTURE_WRAP_T','render():\x20lastVideoFrameRenderedInGL==currentFrame:\x20','debug','getShaderInfoLog','renderingMode','SelectAd:\x20Failed\x20to\x20find\x20image\x20\x27','metadata','RenderTimecode','adForLogo','Average\x20refresh\x20screen\x20rate:\x20','get','absolute','SynchMethod','options','call','Version','utc_','matchItem','ARRAY_BUFFER','offset\x20for\x20','RenderFrame','ANI2','Android','srcFrameRate','Frames2Timecode','\x20Time\x20Fired:\x20','hasOwnProperty','forEach','\x0a\x0a//High\x20precision\x20mode\x0aprecision\x20highp\x20float;\x0a\x0a//The\x20textures\x0auniform\x20sampler2D\x20u_image;//video\x20frame\x27s\x20texture2D\x0auniform\x20sampler2D\x20ad0;//the\x20ad\x20texture2D\x0auniform\x20sampler2D\x20ad1;//the\x20ad\x20texture2D\x0auniform\x20sampler2D\x20ad2;//the\x20ad\x20texture2D\x0auniform\x20sampler2D\x20ad3;//the\x20ad\x20texture2D\x0a\x0auniform\x20vec2\x20u_resolution2;//resolution\x20of\x20the\x20canvas\x0a\x0a//v_texCoord\x20from\x20the\x20vertex\x20shader\x0avarying\x20vec2\x20v_texCoord;\x0a\x0a//Logos\x27\x20staff\x0auniform\x20int\x20hasLogo0;//has\x20logo\x20?\x0auniform\x20int\x20adForLogo0;\x0auniform\x20sampler2D\x20alpha0;//the\x20alpha\x27s\x20mate\x0auniform\x20mat3\x20u_matrix0;//the\x20reverse\x20homography\x0auniform\x20vec2\x20u_alpha0TopLeft;//the\x20alpha\x20mate\x27s\x20top-left\x0auniform\x20vec2\x20u_alpha0Size;//the\x20alpha\x20mate\x27s\x20size\x0a\x0auniform\x20int\x20hasLogo1;//has\x20logo\x20?\x0auniform\x20int\x20adForLogo1;\x0auniform\x20sampler2D\x20alpha1;//the\x20alpha\x27s\x20mate\x0auniform\x20mat3\x20u_matrix1;//the\x20reverse\x20homography\x0auniform\x20vec2\x20u_alpha1TopLeft;//the\x20alpha\x20mate\x27s\x20top-left\x0auniform\x20vec2\x20u_alpha1Size;//the\x20alpha\x20mate\x27s\x20size\x0a\x0auniform\x20int\x20hasLogo2;//has\x20logo\x20?\x0auniform\x20int\x20adForLogo2;\x0auniform\x20sampler2D\x20alpha2;//the\x20alpha\x27s\x20mate\x0auniform\x20mat3\x20u_matrix2;//the\x20reverse\x20homography\x0auniform\x20vec2\x20u_alpha2TopLeft;//the\x20alpha\x20mate\x27s\x20top-left\x0auniform\x20vec2\x20u_alpha2Size;//the\x20alpha\x20mate\x27s\x20size\x0a\x0auniform\x20int\x20hasLogo3;//has\x20logo\x20?\x0auniform\x20int\x20adForLogo3;\x0auniform\x20sampler2D\x20alpha3;//the\x20alpha\x27s\x20mate\x0auniform\x20mat3\x20u_matrix3;//the\x20reverse\x20homography\x0auniform\x20vec2\x20u_alpha3TopLeft;//the\x20alpha\x20mate\x27s\x20top-left\x0auniform\x20vec2\x20u_alpha3Size;//the\x20alpha\x20mate\x27s\x20size\x0a\x0auniform\x20sampler2D\x20injectoLogo;//the\x20injecto\x20logo\x20to\x20cover\x20the\x20timecode\x20watermark\x0a\x0aconst\x20float\x20Directions\x20=\x2016.0;\x20//\x20BLUR\x20DIRECTIONS\x20(Default\x2016.0\x20-\x20More\x20is\x20better\x20but\x20slower)\x0aconst\x20float\x20Quality\x20=\x203.0;\x20//\x20BLUR\x20QUALITY\x20(Default\x203.0\x20-\x20More\x20is\x20better\x20but\x20slower)\x0aconst\x20float\x20Size\x20=\x2012.0;\x20//\x20BLUR\x20SIZE\x20(Radius)\x0aconst\x20float\x20Pi\x20=\x206.28318530718;\x20//\x20Pi*2\x0a\x0avec3\x20BlurBGR(vec4\x20videoImagePix)\x0a{\x0a\x09vec3\x20res\x20=\x20videoImagePix.rgb;\x0a\x20//get\x20the\x20kernel\x20radius:\x0a\x20\x20\x20\x20vec2\x20Radius\x20=\x20Size/u_resolution2.xy;\x0a\x20\x20\x20\x0a\x20\x20\x20\x20//\x20Blur\x20around:\x0a\x20\x20\x20\x20for(\x20float\x20d=0.0;\x20d<Pi;\x20d+=Pi/Directions)\x0a\x20\x20\x20\x20{\x0a\x09\x09for(float\x20i=1.0/Quality;\x20i<=1.0;\x20i+=1.0/Quality)\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x0a\x09\x09\x09res\x20+=\x20texture2D(\x20u_image,\x20v_texCoord+vec2(cos(d),sin(d))*Radius*i).rgb;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20res\x20/=\x20Quality\x20*\x20Directions\x20-\x2015.0;\x0a\x0a\x20\x20\x20\x20return\x20res;\x0a}\x0a\x0abool\x20BlendWithLogo(\x0a\x09int\x20adUnit,\x0a\x20\x20\x20\x20\x20sampler2D\x20alphaTexture,\x0a\x20\x20\x20\x20\x20mat3\x20matrix,\x0a\x20\x20\x20\x20\x20vec2\x20curCoord,\x0a\x20\x20\x20\x20\x20vec2\x20alphaTopLeft,\x0a\x20\x20\x20\x20\x20vec2\x20alphaSize,\x0a\x20\x20\x20\x20\x20vec4\x20videoImagePix)\x20\x0a{\x0a\x20\x20\x20\x20vec2\x20texCoord;\x0a\x20\x20\x20\x20texCoord.x\x20=\x20(matrix[0][0]*curCoord.x\x20+\x20matrix[0][1]*curCoord.y\x20+\x20matrix[0][2])\x20/\x20(matrix[2][0]*curCoord.x\x20+\x20matrix[2][1]*curCoord.y\x20+\x201.0);\x0a\x20\x20\x20\x20texCoord.y\x20=\x20(matrix[1][0]*curCoord.x\x20+\x20matrix[1][1]*curCoord.y\x20+\x20matrix[1][2])\x20/\x20(matrix[2][0]*curCoord.x\x20+\x20matrix[2][1]*curCoord.y\x20+\x201.0);\x0a\x20\x20\x20\x20texCoord\x20/=\x20u_resolution2;\x0a\x0a\x20\x20\x20\x20//if\x20we\x27re\x20in\x20the\x20bounding\x20rect\x20of\x20the\x20logo\x0a\x20\x20\x20\x20if\x20(texCoord.x\x20>=\x200.0\x20&&\x20texCoord.y\x20>=\x200.0\x20&&\x20texCoord.x\x20<=\x201.0\x20&&\x20texCoord.y\x20<=\x201.0)\x0a\x20\x20\x20\x20{\x0a\x09\x09\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20float\x20alpha\x20=\x201.0;\x0a\x20\x20\x20\x20\x20\x20\x20\x20vec2\x20alphaCoord\x20=\x20(curCoord\x20-\x20alphaTopLeft)/alphaSize;//get\x20the\x20coordinate\x20on\x20the\x20alpha\x20mate\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(alphaCoord.x\x20>=\x200.0\x20&&\x20alphaCoord.y\x20>=\x200.0\x20&&\x20alphaCoord.x\x20<=\x201.0\x20&&\x20alphaCoord.y\x20<=\x201.0)\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//get\x20the\x20alpha\x20texel:\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//alpha\x20*=\x20BlurAlpha(alphaCoord);//blurred\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20alpha\x20*=\x20texture2D(alphaTexture,\x20alphaCoord).a;//without\x20blur\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x09\x09if\x20(adUnit\x20==\x2099)//blur\x0a\x09\x09{\x0a\x09\x09\x09gl_FragColor\x20=\x20vec4(BlurBGR(videoImagePix)*alpha\x20+\x20\x20videoImagePix.rgb*(1.0-alpha),\x201.0);\x0a\x09\x09\x09//outColor\x20=\x20vec4(BlurBGR(videoImagePix),\x201.0);\x0a\x09\x09\x09return\x20true;\x0a\x09\x09}\x0a\x09\x09vec4\x20ad0Pix\x20=\x20\x0a\x09\x09\x09adUnit\x20==\x200\x20?\x20texture2D(ad0,\x20texCoord)\x20:\x0a\x09\x09\x09adUnit\x20==\x201\x20?\x20texture2D(ad1,\x20texCoord)\x20:\x0a\x09\x09\x09adUnit\x20==\x202\x20?\x20texture2D(ad2,\x20texCoord)\x20:\x0a\x09\x09\x09\x09\x09\x09\x20\x20texture2D(ad3,\x20texCoord);//get\x20the\x20logo\x27s\x20texel\x0a\x09\x09alpha\x20*=\x20ad0Pix.a;//consider\x20the\x20alpha\x20of\x20the\x20logo\x0a\x20\x20\x20\x20\x20\x20\x20\x20vec3\x20resultRGB\x20=\x20ad0Pix.rgb*alpha\x20+\x20videoImagePix.rgb*(1.0-alpha);//blend\x0a\x20\x20\x20\x20\x20\x20\x20\x20gl_FragColor\x20=\x20vec4(resultRGB,\x201.0);\x0a\x20\x20\x20\x20\x20\x20\x20\x20return\x20true;\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20else\x20return\x20false;\x0a\x20\x20\x0a}\x0avoid\x20main()\x0a{\x0a\x20\x20//calculate\x20cur-coord\x20(with\x20pixels\x20units)\x0a\x20\x20vec2\x20curCoord\x20=\x20gl_FragCoord.xy;\x0a\x20\x20curCoord.y\x20=\x20u_resolution2[1]\x20-\x20curCoord.y;\x0a\x0a\x20\x20//cover\x20the\x20timecode\x20with\x20some\x20watermark\x0a\x20\x20if\x20(v_texCoord[0]\x20<=\x200.125\x20&&\x20(1.0-v_texCoord[1])\x20<=\x200.125)\x0a\x20\x20{\x20\x0a\x20\x20\x20\x20gl_FragColor\x20=\x20texture2D(injectoLogo,\x20vec2(v_texCoord[0]*8.0,\x201.0-(1.0-v_texCoord[1])*8.0));\x0a\x20\x20\x20\x20return;\x0a\x20\x20}\x0a\x0a\x20\x20vec4\x20videoImagePix\x20=\x20texture2D(u_image,\x20v_texCoord);\x0a\x20\x20\x0a\x20\x20if\x20(hasLogo0\x20==\x201\x20&&\x20\x0a\x20\x20\x20\x20\x20BlendWithLogo(\x0a\x09\x20adForLogo0,\x0a\x09\x20alpha0,\x20u_matrix0,\x20curCoord,u_alpha0TopLeft,\x20u_alpha0Size,\x20videoImagePix))\x0a\x20\x20{\x0a\x20\x20\x20\x20return;\x0a\x20\x20}\x0a\x20\x20else\x20if\x20(hasLogo1\x20==\x201\x20&&\x0a\x20\x20\x20\x20\x20BlendWithLogo(\x0a\x09\x20adForLogo1,\x0a\x09\x20alpha1,\x20u_matrix1,\x20curCoord,u_alpha1TopLeft,\x20u_alpha1Size,\x20videoImagePix))\x0a\x20\x20{\x0a\x20\x20\x20\x20return;\x0a\x20\x20}\x0a\x20\x20else\x20if\x20(hasLogo2\x20==\x201\x20&&\x0a\x20\x20\x20\x20\x20BlendWithLogo(\x0a\x09\x20adForLogo2,\x0a\x09\x20alpha2,\x20u_matrix2,\x20curCoord,u_alpha2TopLeft,\x20u_alpha2Size,\x20videoImagePix))\x0a\x20\x20{\x0a\x20\x20\x20\x20return;\x0a\x20\x20}\x0a\x20\x20else\x20if\x20(hasLogo3\x20==\x201\x20&&\x0a\x20\x20\x20\x20\x20BlendWithLogo(\x0a\x09\x20adForLogo3,\x0a\x09\x20alpha3,\x20u_matrix3,\x20curCoord,u_alpha3TopLeft,\x20u_alpha3Size,\x20videoImagePix))\x0a\x20\x20{\x0a\x20\x20\x20\x20return;\x0a\x20\x20}\x0a\x20\x20else\x20{//only\x20video\x20texel,\x20no\x20logo\x0a\x20\x20\x20\x20gl_FragColor\x20=\x20videoImagePix;\x0a\x20\x20}\x0a}\x0a','pixelStorei','debugText',',\x20so\x20I\x27m\x20launching\x20the\x20meta-data\x20fetcher\x20web-worker','TexUnitBaseForAlpha','MetaDataDownloaderThread\x20created','log','\x20not\x20found\x20in\x20JSON.','ad2place','ontouchstart','map','catch','34947PWsqyf','vendor','dataos','unknown','top','OTTPlayer:\x20','http://webgl2fundamentals.org/webgl/lessons/webgl-boilerplate.html','Windows','ads','replace','alphaTex','Firefox','912eXGTmw','plus05CorrectionCheckbox','videoStarted','createVertexArray','numberInput','init','messageData','\x20dblFrame:\x20','AdNameForPlaceHolder','Error\x20in\x20program\x20linking:\x20','Platform\x20not\x20supported','getTime','getUTCSeconds','an\x20iPhone','Src60_MediaTime60','messageroom','VID.','userAgent','toFixed','ntc','currentTime','indexOf','x-shader/x-fragment','requestAnimationFrame','script','Ads',',\x20took:\x20','CLDC','requestAnimationFrame\x20is\x20supported','stringTime','getSeconds','text','location','frameRateMode','getProgramInfoLog','right','data','left','fromCharCode','timecode','playerTime','TEXTURE_2D','):\x20','textContent','OnUserClickOnCanvas','fetchOffsetForGameId','roommembers\x20message:\x20','metadataArr','timeCodeStr2TimeCodeArray','\x20Game:\x20','onNewMetadataInterface','Chrome','Opera','We\x20are\x20HERE:TimeCode','viewport','onerror','bindAttribLocation','UNPACK_ALIGNMENT','black','msMaxTouchPoints','playbackTime','bindBuffer','webgl2','\x0a\x0a^^^\x20','Macintosh','AddAdvertisement','alphaAsUint8Array','activeTexture','GAME_ID','max','linkProgram','396036FSqsBn','Composer3d','texParameteri','requestVideoFrameCallback','maskY','webkitRequestFullscreen','if\x20(alpha\x20<\x200.8)','914655piWtVX','field','Palm','PlayBook','ScreenFPS','getElementsByTagName','Unsupported\x20src\x20frame-rate:\x20','matchAll','SetSyncPoint','globalConfig','onNewSegment','getGlobalConfig','requestVideoFrameCallback\x20is\x20supported','clientX','digitImg','84UENRAm','readyState','https://www.virtualott.com/ads/','VID','weHaveTheGameID','UNPACK_FLIP_Y_WEBGL','ctx','fillStyle','round','\x20version\x20','enableVertexAttribArray','BBlog','opera','Silk','33EBOnQl','getMinutes','place2ad','BBerror','VERTEX_SHADER','Size','TimeCodeArray2TimeCodeJson','OnNewSegment','Src59_MediaTime59','Got\x20the\x20following\x20config:\x20','a_position','COLOR_BUFFER_BIT','Video\x20object\x20is\x20defined.\x20This\x20script\x20is\x20running\x20in\x20a\x20browser\x20environment.','\x20TimeFired:\x20','%c%s','vertexShaderSourceV1','setinfo','getSourceFPS','appendChild','\x20\x20correction','type','config','Kindle','display','TexUnitForPlaceHolder','fetchAndFindGameIdAndOffsetFromMediaId'];_0x103e=function(){return _0x217378;};return _0x103e();}(function(_0x478999,_0x1958a7){const _0x4749e8=_0x530f,_0x322a37=_0x478999();while(!![]){try{const _0x794e7c=parseInt(_0x4749e8(0x2a4))/0x1*(parseInt(_0x4749e8(0x2bc))/0x2)+-parseInt(_0x4749e8(0x263))/0x3+-parseInt(_0x4749e8(0x3a8))/0x4+parseInt(_0x4749e8(0x26a))/0x5+-parseInt(_0x4749e8(0x279))/0x6*(-parseInt(_0x4749e8(0x2c2))/0x7)+-parseInt(_0x4749e8(0x21c))/0x8*(-parseInt(_0x4749e8(0x210))/0x9)+parseInt(_0x4749e8(0x2f1))/0xa*(-parseInt(_0x4749e8(0x287))/0xb);if(_0x794e7c===_0x1958a7)break;else _0x322a37['push'](_0x322a37['shift']());}catch(_0x4817d0){_0x322a37['push'](_0x322a37['shift']());}}}(_0x103e,0x3bd80));const META_WORKER=_0x5f573c(0x316);let debug_lastFrameFromVideoCallback=-0x1,debug_tc='';function _0x530f(_0x4d43a5,_0x1b2c23){const _0x103e7e=_0x103e();return _0x530f=function(_0x530fcf,_0x43feca){_0x530fcf=_0x530fcf-0x1d4;let _0x45d26d=_0x103e7e[_0x530fcf];return _0x45d26d;},_0x530f(_0x4d43a5,_0x1b2c23);}(function(_0x347b1f,_0x479361){const _0x119808=_0x5f573c;typeof define==='function'&&define['amd']?define([],function(){const _0x3a9ed0=_0x530f;return _0x479361[_0x3a9ed0(0x1f6)](_0x347b1f);}):_0x347b1f[_0x119808(0x2c3)]=_0x479361['call'](_0x347b1f);}(this,function(){'use strict';const _0x774c03=_0x5f573c;const _0x654461=this;function _0x3af33f(_0x2f8cf5){const _0x1c28d5=_0x530f;return _0x2f8cf5=_0x2f8cf5||_0x654461,_0x2f8cf5!==_0x2f8cf5[_0x1c28d5(0x214)];}!_0x3af33f()&&(console[_0x774c03(0x20a)](_0x774c03(0x295),_0x774c03(0x344),'for\x20more\x20about\x20webgl-utils.js\x20see:'),console[_0x774c03(0x20a)](_0x774c03(0x295),'color:blue;font-weight:bold;',_0x774c03(0x216)));function _0x18e66c(_0x51b3ed){const _0x317cc7=_0x774c03;if(_0x654461['console']){if(_0x654461[_0x317cc7(0x30f)][_0x317cc7(0x322)])_0x654461['console'][_0x317cc7(0x322)](_0x51b3ed);else _0x654461['console'][_0x317cc7(0x20a)]&&_0x654461['console'][_0x317cc7(0x20a)](_0x51b3ed);}}const _0x5e520d=/ERROR:\s*\d+:(\d+)/gi;function _0x507e3e(_0x4c1123,_0xf1724b=''){const _0x2985fc=_0x774c03,_0x38540c=[..._0xf1724b[_0x2985fc(0x271)](_0x5e520d)],_0x44396f=new Map(_0x38540c['map']((_0x4685db,_0xb6904f)=>{const _0x1d48b6=_0x2985fc,_0x2c9b06=parseInt(_0x4685db[0x1]),_0x57e0e3=_0x38540c[_0xb6904f+0x1],_0x41030f=_0x57e0e3?_0x57e0e3[_0x1d48b6(0x2e8)]:_0xf1724b[_0x1d48b6(0x372)],_0x9277d3=_0xf1724b[_0x1d48b6(0x2b9)](_0x4685db['index'],_0x41030f);return[_0x2c9b06-0x1,_0x9277d3];}));return _0x4c1123[_0x2985fc(0x320)]('\x0a')[_0x2985fc(0x20e)]((_0xfea275,_0x3a0d5a)=>{const _0x266009=_0x2985fc,_0x2c1711=_0x44396f['get'](_0x3a0d5a);return _0x3a0d5a+0x1+':\x20'+_0xfea275+(_0x2c1711?_0x266009(0x25b)+_0x2c1711:'');})[_0x2985fc(0x2de)]('\x0a');}function _0x5671d4(_0x5d9748,_0x2e19ef,_0x43bccc,_0x4ae9d7){const _0x5649d2=_0x774c03,_0x5b9a34=_0x4ae9d7||_0x18e66c,_0x4b7098=_0x5d9748['createShader'](_0x43bccc);_0x5d9748['shaderSource'](_0x4b7098,_0x2e19ef),_0x5d9748[_0x5649d2(0x1dc)](_0x4b7098);const _0x2f2fc4=_0x5d9748[_0x5649d2(0x367)](_0x4b7098,_0x5d9748['COMPILE_STATUS']);if(!_0x2f2fc4){const _0x5ce798=_0x5d9748[_0x5649d2(0x1eb)](_0x4b7098);return _0x5b9a34(_0x5649d2(0x2f5)+_0x5ce798+'\x0a'+_0x507e3e(_0x2e19ef,_0x5ce798)),_0x5d9748[_0x5649d2(0x3b0)](_0x4b7098),null;}return _0x4b7098;}function _0x383b63(_0x49f3ef,_0x157548,_0x4d07fa,_0x14c80e,_0x5b7360){const _0x25802f=_0x774c03,_0x315197=_0x5b7360||_0x18e66c,_0x19f869=_0x49f3ef[_0x25802f(0x34d)]();_0x157548[_0x25802f(0x203)](function(_0x5a31f1){const _0x3d1a45=_0x25802f;_0x49f3ef[_0x3d1a45(0x37c)](_0x19f869,_0x5a31f1);});_0x4d07fa&&_0x4d07fa[_0x25802f(0x203)](function(_0x3e9dbf,_0x565108){const _0x571b57=_0x25802f;_0x49f3ef[_0x571b57(0x254)](_0x19f869,_0x14c80e?_0x14c80e[_0x565108]:_0x565108,_0x3e9dbf);});_0x49f3ef[_0x25802f(0x262)](_0x19f869);const _0x28ef0d=_0x49f3ef[_0x25802f(0x315)](_0x19f869,_0x49f3ef[_0x25802f(0x370)]);if(!_0x28ef0d){const _0x256dea=_0x49f3ef[_0x25802f(0x23e)](_0x19f869);return _0x315197(_0x25802f(0x225)+_0x256dea+'\x0a'+_0x157548[_0x25802f(0x20e)](_0x5f44b6=>{const _0x2ea66a=_0x25802f,_0x47b868=_0x507e3e(_0x49f3ef[_0x2ea66a(0x371)](_0x5f44b6)),_0x3da9bd=_0x49f3ef[_0x2ea66a(0x367)](_0x5f44b6,_0x49f3ef['SHADER_TYPE']);return glEnumToString(_0x49f3ef,_0x3da9bd)+':\x0a'+_0x47b868;})['join']('\x0a')),_0x49f3ef['deleteProgram'](_0x19f869),null;}return _0x19f869;}function _0x1b6b74(_0x9f3597,_0x5e93f6,_0x53dd53,_0x6814b0){const _0x3ee6e7=_0x774c03;let _0x16b138='',_0x2a5b03;const _0x2ecc59=document[_0x3ee6e7(0x340)](_0x5e93f6);if(!_0x2ecc59)throw'***\x20Error:\x20unknown\x20script\x20element'+_0x5e93f6;_0x16b138=_0x2ecc59[_0x3ee6e7(0x23b)];if(!_0x53dd53){if(_0x2ecc59[_0x3ee6e7(0x29b)]===_0x3ee6e7(0x397))_0x2a5b03=_0x9f3597['VERTEX_SHADER'];else{if(_0x2ecc59['type']===_0x3ee6e7(0x232))_0x2a5b03=_0x9f3597['FRAGMENT_SHADER'];else{if(_0x2a5b03!==_0x9f3597[_0x3ee6e7(0x28b)]&&_0x2a5b03!==_0x9f3597[_0x3ee6e7(0x36c)])throw _0x3ee6e7(0x3af);}}}return _0x5671d4(_0x9f3597,_0x16b138,_0x53dd53?_0x53dd53:_0x2a5b03,_0x6814b0);}const _0x36fbb6=[_0x774c03(0x28b),_0x774c03(0x36c)];function _0x3b86b1(_0x3475cc,_0x491b92,_0xfbb992,_0x31606e,_0x546ecb){const _0x410980=_0x774c03,_0x2d2b05=[];for(let _0x1cd2a3=0x0;_0x1cd2a3<_0x491b92[_0x410980(0x372)];++_0x1cd2a3){_0x2d2b05['push'](_0x1b6b74(_0x3475cc,_0x491b92[_0x1cd2a3],_0x3475cc[_0x36fbb6[_0x1cd2a3]],_0x546ecb));}return _0x383b63(_0x3475cc,_0x2d2b05,_0xfbb992,_0x31606e,_0x546ecb);}function _0x4a3db0(_0x30d70d,_0x4d1d27,_0x137ed2,_0x153f8f,_0x554026){const _0x42cc64=_0x774c03,_0x4d118b=[];for(let _0x1441d6=0x0;_0x1441d6<_0x4d1d27[_0x42cc64(0x372)];++_0x1441d6){_0x4d118b['push'](_0x5671d4(_0x30d70d,_0x4d1d27[_0x1441d6],_0x30d70d[_0x36fbb6[_0x1441d6]],_0x554026));}return _0x383b63(_0x30d70d,_0x4d118b,_0x137ed2,_0x153f8f,_0x554026);}function _0x44229c(_0x1ea26f,_0x236ac4){const _0x6714ff=_0x774c03;_0x236ac4=_0x236ac4||0x1;const _0x410bbf=_0x1ea26f[_0x6714ff(0x3a2)]*_0x236ac4|0x0,_0x14b365=_0x1ea26f['clientHeight']*_0x236ac4|0x0;if(_0x1ea26f[_0x6714ff(0x333)]!==_0x410bbf||_0x1ea26f[_0x6714ff(0x3ae)]!==_0x14b365)return _0x1ea26f[_0x6714ff(0x333)]=_0x410bbf,_0x1ea26f[_0x6714ff(0x3ae)]=_0x14b365,!![];return![];}return{'createProgram':_0x383b63,'createProgramFromScripts':_0x3b86b1,'createProgramFromSources':_0x4a3db0,'resizeCanvasToDisplaySize':_0x44229c};}));const BB={'MAX_LOGOS':0x4};BB['GL']={'vertexShaderSource':_0x5f573c(0x314),'fragmentShaderSource':_0x5f573c(0x31a),'vertexShaderSourceV1':_0x5f573c(0x2f0),'fragmentShaderSourceV1':_0x5f573c(0x204)},BB['FrameRateMode']={'Src60_MediaTime60':Symbol(_0x5f573c(0x22a)),'Src59_MediaTime60':Symbol(_0x5f573c(0x2d4)),'Src59_MediaTime59':Symbol('Src59_MediaTime59'),'Src29_MediaTime29':Symbol(_0x5f573c(0x32a))},BB[_0x5f573c(0x376)]={'RenderDigits':Symbol(_0x5f573c(0x358)),'RenderTimecode':Symbol(_0x5f573c(0x1ef)),'Augment':Symbol('Augment')},BB[_0x5f573c(0x1f4)]={'OnNewSegment':Symbol(_0x5f573c(0x28e)),'OnMetadata':Symbol(_0x5f573c(0x3c9)),'None':Symbol(_0x5f573c(0x1e1))},BB['Utils']=((()=>{const _0x5b49f8=_0x23eca8=>{const _0x58ee70=_0x530f;return _0x23eca8[_0x58ee70(0x352)]()['padStart'](0x2,'0');},_0x29db6a=((()=>{const _0x8d7cc5=(_0x5e0e19,_0x10defa,_0x3030f8)=>{const _0x248b43=_0x530f;let _0x3aa049='';if(Array[_0x248b43(0x3b7)](_0x5e0e19)){_0x3aa049=[_0x5b49f8(_0x5e0e19[0x0]),_0x5b49f8(_0x5e0e19[0x1]),_0x5b49f8(_0x5e0e19[0x2]),_0x5b49f8(_0x5e0e19[0x3])]['join'](':');if(_0x3030f8==!![]){if(_0x5e0e19[0x4]==0x1&&(_0x10defa===undefined||_0x10defa))_0x3aa049+='.2';else _0x3aa049+='.1';}else{if(_0x5e0e19[0x4]==0x1&&(_0x10defa===undefined||_0x10defa))_0x3aa049+='.1';}}else{const _0x115a4a=':';_0x3aa049=('0'+_0x5e0e19['h'])[_0x248b43(0x3d3)](-0x2)+_0x115a4a+('0'+_0x5e0e19['m'])[_0x248b43(0x3d3)](-0x2)+_0x115a4a+('0'+_0x5e0e19['s'])['slice'](-0x2)+_0x115a4a+('0'+_0x5e0e19['f'])[_0x248b43(0x3d3)](-0x2);if(_0x10defa)_0x3aa049+='.'+(_0x5e0e19[_0x248b43(0x26b)]?'1':'2');}return _0x3aa049;},_0x39608e=_0x11ab4e=>{const _0x14b7e1=_0x530f;let _0x2a3efd=_0x11ab4e[_0x14b7e1(0x320)](':');if(_0x2a3efd['length']!=0x4)return console[_0x14b7e1(0x322)](_0x14b7e1(0x338)+_0x11ab4e),[0x0,0x0,0x0,0x0,0x0];let _0x532a12=[parseInt(_0x2a3efd[0x0]),parseInt(_0x2a3efd[0x1]),parseInt(_0x2a3efd[0x2])];if(_0x2a3efd[0x3][_0x14b7e1(0x231)]('.')>=0x0){let _0xd6a9e1=_0x2a3efd[0x3]['split']('.');_0x532a12[_0x14b7e1(0x2b5)](parseInt(_0xd6a9e1[0x0])),_0x532a12['push'](parseInt(_0xd6a9e1[0x1]));}else _0x532a12[_0x14b7e1(0x2b5)](parseInt(_0x2a3efd[0x3])),_0x532a12[_0x14b7e1(0x2b5)](0x0);return _0x532a12;},_0x305c07=(_0x589097,_0x411cdf,_0x7cf724)=>{const _0xf14bdf=_0x530f;let _0x3db4aa=0x3c,_0x101fef=0x0;if(Math[_0xf14bdf(0x31f)](_0x411cdf)==0x3c)_0x3db4aa=0x3c,_0x101fef=0x0;else{if(Math[_0xf14bdf(0x31f)](_0x411cdf)==0x3b)_0x3db4aa=0x3c,_0x101fef=0x4;else{if(Math['floor'](_0x411cdf)==0x1e)_0x3db4aa=0x1e,_0x101fef=0x0;else Math[_0xf14bdf(0x31f)](_0x411cdf)==0x1d&&(_0x3db4aa=0x1e,_0x101fef=0x2);}}let _0x1e83e5=0x0,_0x41e959=Math[_0xf14bdf(0x31f)](_0x411cdf*0x3c),_0x184870=Math[_0xf14bdf(0x31f)](_0x411cdf*0x3c*0xa),_0x37fc58=_0x184870*0x6,_0x4a5e37=_0x589097[0x0],_0x3a92e7=_0x589097[0x1],_0x42d6b7=_0x589097[0x2],_0x4b9358=_0x589097[0x3],_0x537308=_0x589097[0x4];_0x1e83e5+=_0x4a5e37*_0x37fc58,_0x1e83e5+=_0x3a92e7*(_0x3db4aa*0x3c),_0x1e83e5+=_0x42d6b7*_0x3db4aa;if(_0x7cf724)_0x1e83e5+=_0x4b9358*0x2+_0x537308;else _0x1e83e5+=_0x4b9358;return _0x1e83e5-=_0x101fef*_0x3a92e7,_0x1e83e5+=_0x101fef*Math[_0xf14bdf(0x31f)](_0x3a92e7/0xa),_0x1e83e5;},_0x107d5a=(_0x2eea12,_0x1dabcf,_0x49f436)=>{const _0x2cdcf1=_0x530f;let _0x3ad953=0x3c,_0x2b3e8d=0x0;if(Math[_0x2cdcf1(0x31f)](_0x1dabcf)==0x3c)_0x3ad953=0x3c,_0x2b3e8d=0x0;else{if(Math[_0x2cdcf1(0x31f)](_0x1dabcf)==0x3b)_0x3ad953=0x3c,_0x2b3e8d=0x4;else{if(Math[_0x2cdcf1(0x31f)](_0x1dabcf)==0x1e)_0x3ad953=0x1e,_0x2b3e8d=0x0;else Math['floor'](_0x1dabcf)==0x1d&&(_0x3ad953=0x1e,_0x2b3e8d=0x2);}}let _0x2117fe=0x0,_0x3733ac=Math[_0x2cdcf1(0x31f)](_0x1dabcf*0x3c),_0x5558a3=Math[_0x2cdcf1(0x31f)](_0x1dabcf*0x3c*0xa),_0x491536=_0x5558a3*0x6,_0x5571f1=_0x2eea12,_0x1c8423=Math['floor'](_0x5571f1/_0x491536);_0x5571f1-=_0x1c8423*_0x491536;let _0x3d90c4=Math[_0x2cdcf1(0x31f)](_0x5571f1/_0x5558a3);_0x5571f1-=_0x3d90c4*_0x5558a3;if(_0x5571f1>=_0x3ad953*0x3c)_0x5571f1+=_0x2b3e8d*(Math['floor']((_0x5571f1-_0x3ad953*0x3c)/_0x3733ac)+0x1);let _0x146305=Math[_0x2cdcf1(0x31f)](_0x5571f1/(_0x3ad953*0x3c));_0x5571f1-=_0x146305*(_0x3ad953*0x3c);let _0x14fe00=Math[_0x2cdcf1(0x31f)](_0x5571f1/_0x3ad953);_0x5571f1-=_0x14fe00*_0x3ad953;let _0x3d0a66=_0x5571f1;_0x146305+=_0x3d90c4*0xa,dotOne=0x0;_0x49f436&&(dotOne=_0x3d0a66%0x2,_0x3d0a66=Math[_0x2cdcf1(0x31f)](_0x3d0a66/0x2));let _0x5ae58d=[_0x1c8423,_0x146305,_0x14fe00,_0x3d0a66,dotOne];return _0x5ae58d;},_0x451419=(_0x440f5c,_0x15a88d,_0x24cd1e)=>{let _0x579037=_0x24cd1e>0x1e,_0x5aeb6a=_0x305c07(_0x440f5c,_0x24cd1e,_0x579037);return _0x5aeb6a+=_0x15a88d,_0x107d5a(_0x5aeb6a,_0x24cd1e,_0x579037);},_0x10d632=_0x5ce0a2=>{return{'h':_0x5ce0a2[0x0],'m':_0x5ce0a2[0x1],'s':_0x5ce0a2[0x2],'f':_0x5ce0a2[0x3],'field':_0x5ce0a2[0x4]};},_0x753381=(_0x26a48c,_0x4c1993)=>{const _0x523f22=_0x530f;let _0x2b7fc7=BB[_0x523f22(0x3b6)][_0x523f22(0x2b7)](_0x26a48c,_0x4c1993);return _0x4c1993>0x3b?BB[_0x523f22(0x3b6)][_0x523f22(0x3a3)][_0x523f22(0x1e4)](tcFromMessage,!![]):BB[_0x523f22(0x3b6)][_0x523f22(0x3a3)][_0x523f22(0x1e4)](tcFromMessage,![]);let _0x54f64e=BB[_0x523f22(0x3b6)][_0x523f22(0x36d)],_0x5ccedb='';_0x54f64e[_0x523f22(0x38a)]()?_0x5ccedb=_0x26a48c:_0x5ccedb=_0x26a48c[_0x523f22(0x386)]();let _0x41069e=_0x5ccedb[_0x523f22(0x320)]('T')[0x1],_0x58e833=_0x41069e[_0x523f22(0x320)](':'),_0x4ef0f4=parseInt(_0x58e833[0x0]),_0x1be2a7=parseInt(_0x58e833[0x1]),_0x122967=_0x58e833[0x2][_0x523f22(0x320)]('.'),_0x26f3fb=parseInt(_0x122967[0x0]),_0x8e0615=parseInt(_0x122967[0x1]['substring'](0x0,0x3)),_0x1ee5ab=Math[_0x523f22(0x281)](_0x8e0615/0x3e8*_0x4c1993);if(_0x4c1993>0x3b){let _0x2d6f1b=_0x1ee5ab%0x2==0x0?0x1:0x2;_0x1ee5ab=Math[_0x523f22(0x31f)](_0x1ee5ab/0x2);let _0x5bb1cf=_0x4ef0f4[_0x523f22(0x352)]()[_0x523f22(0x394)](0x2,'0')+':'+_0x1be2a7['toString']()['padStart'](0x2,'0')+':'+_0x26f3fb['toString']()['padStart'](0x2,'0')+':'+_0x1ee5ab[_0x523f22(0x352)]()[_0x523f22(0x394)](0x2,'0')+'.'+_0x2d6f1b[_0x523f22(0x352)]();return _0x5bb1cf;}else{let _0x1ace84=_0x4ef0f4[_0x523f22(0x352)]()[_0x523f22(0x394)](0x2,'0')+':'+_0x1be2a7['toString']()[_0x523f22(0x394)](0x2,'0')+':'+_0x26f3fb[_0x523f22(0x352)]()[_0x523f22(0x394)](0x2,'0')+':'+_0x1ee5ab[_0x523f22(0x352)]()['padStart'](0x2,'0');return _0x1ace84;}return str;},_0xc0c62f=(_0x5772ad,_0x1dec12)=>{const _0x33dbe0=_0x530f;let _0x97ad97=BB[_0x33dbe0(0x3b6)][_0x33dbe0(0x36d)],_0x48216c='';_0x97ad97[_0x33dbe0(0x38a)]()?_0x48216c=_0x5772ad:_0x48216c=_0x5772ad[_0x33dbe0(0x386)]();let _0x165a62=_0x48216c[_0x33dbe0(0x320)]('T')[0x1],_0x259bf4=_0x165a62[_0x33dbe0(0x320)](':'),_0xd3b9de=parseInt(_0x259bf4[0x0]),_0x243ea1=parseInt(_0x259bf4[0x1]),_0x422dfa=_0x259bf4[0x2][_0x33dbe0(0x320)]('.'),_0x4a7fe6=parseInt(_0x422dfa[0x0]),_0x348e06=parseInt(_0x422dfa[0x1]['substring'](0x0,0x3));if(_0x1dec12>0x3b){let _0x2b7091=Math['round']((_0x348e06/0x3e8+_0x4a7fe6+_0x243ea1*0x3c+_0xd3b9de*0x3c*0x3c)*_0x1dec12),_0x2728b9=BB[_0x33dbe0(0x3b6)][_0x33dbe0(0x3a3)][_0x33dbe0(0x200)](_0x2b7091,_0x1dec12,!![]);return _0x2728b9;}else{let _0x424c9=Math[_0x33dbe0(0x281)]((_0x348e06/0x3e8+_0x4a7fe6+_0x243ea1*0x3c+_0xd3b9de*0x3c*0x3c)*_0x1dec12),_0x540fb0=BB[_0x33dbe0(0x3b6)][_0x33dbe0(0x3a3)]['Frames2Timecode'](_0x424c9,_0x1dec12,![]);return _0x540fb0;}};return{'printTimecode':_0x8d7cc5,'timeCodeStr2TimeCodeArray':_0x39608e,'Timecode2Frames':_0x305c07,'Frames2Timecode':_0x107d5a,'TimeCodeAddFrames':_0x451419,'TimeCodeArray2TimeCodeJson':_0x10d632,'timeDate2TCString':_0x753381,'timeDate2TC':_0xc0c62f};})()),_0x52159f=_0x3ab321=>{let _0x565b17=_0x3ab321||0x2540be3ff,_0x20731d=[],_0x24175c=0x0;const _0x5ccd76=_0x4f5ac3=>{const _0x3a2ab5=_0x530f;++_0x24175c,_0x20731d[_0x3a2ab5(0x2b5)](_0x4f5ac3);while(_0x20731d[_0x3a2ab5(0x372)]>_0x565b17)_0x20731d[_0x3a2ab5(0x39d)]();},_0x285922=()=>{const _0x414807=_0x530f;if(_0x20731d[_0x414807(0x372)]==0x0)return-0x1;let _0x3e1c59=Array[_0x414807(0x35b)](_0x20731d)['sort']((_0x4cdba3,_0x215c0a)=>{return _0x4cdba3-_0x215c0a;});return _0x3e1c59[parseInt(_0x3e1c59['length']/0x2)];},_0x1cc49c=()=>{return _0x24175c;};return{'add':_0x5ccd76,'getMedian':_0x285922,'howMany':_0x1cc49c};},_0x17789c=((()=>{const _0x5b8eb4=()=>{const _0xc973bd=_0x530f,_0x2b6ad8=navigator[_0xc973bd(0x22d)];if(/windows/i[_0xc973bd(0x2f4)](_0x2b6ad8))return _0xc973bd(0x217);else{if(/android/i[_0xc973bd(0x2f4)](_0x2b6ad8))return'Android';else{if(/iphone|ipad|ipod/i[_0xc973bd(0x2f4)](_0x2b6ad8))return'iOS';else{if(/mac/i[_0xc973bd(0x2f4)](_0x2b6ad8)){let _0xc1d9b9=_0xc973bd(0x20d)in window||navigator['maxTouchPoints']>0x0||navigator[_0xc973bd(0x257)]>0x0;if(_0xc1d9b9)return _0xc973bd(0x3c5);else return'Mac';}else return/ipad/i['test'](_0x2b6ad8)?_0xc973bd(0x3c5):_0xc973bd(0x39b);}}}},_0x1c8a4c=()=>{const _0x24a2ba=_0x530f;let _0x56ff3a=_0x5b8eb4();return _0x56ff3a==_0x24a2ba(0x31c);},_0x1b1551=()=>{const _0x5bd4df=_0x530f;let _0x2ed2b6=_0x5b8eb4();return _0x2ed2b6==_0x5bd4df(0x3c5);},_0x27d1ea=()=>{const _0x5a3735=_0x530f;let _0x43e1ee=_0x5b8eb4();return _0x43e1ee==_0x5a3735(0x32f);},_0x26564f=()=>{const _0x15308b=_0x530f;let _0x1cb928=_0x5b8eb4();return _0x1cb928==_0x15308b(0x32f)||_0x1cb928==_0x15308b(0x31c)||_0x1cb928==_0x15308b(0x3c5);},_0x2f03e6=()=>{const _0x29ef11=_0x530f;let _0x4ea216=_0x5b8eb4();return _0x4ea216==_0x29ef11(0x217);},_0x481401=()=>{const _0x2feaef=_0x530f;let _0x4c0a05=_0x5b8eb4();return _0x4c0a05==_0x2feaef(0x1fe);},_0x53fc18=()=>{const _0x28a1e0=_0x530f;let _0x533164=_0x5b8eb4();if(_0x533164==_0x28a1e0(0x217))return _0x28a1e0(0x363);else{if(_0x533164==_0x28a1e0(0x1fe))return _0x28a1e0(0x3d1);else{if(_0x533164==_0x28a1e0(0x32f))return _0x28a1e0(0x229);else{if(_0x533164=='Mac')return'a\x20Mac';else{if(_0x533164=='iPad')return _0x28a1e0(0x2e7);else return'an\x20Unknown\x20device';}}}}},_0x40e883=()=>{const _0x5eecf5=_0x530f;let _0x555a05={'options':[],'header':[navigator['platform'],navigator[_0x5eecf5(0x22d)],navigator[_0x5eecf5(0x1e3)],navigator[_0x5eecf5(0x211)],window[_0x5eecf5(0x285)]],'dataos':[{'name':_0x5eecf5(0x2d1),'value':_0x5eecf5(0x2d1),'version':'OS'},{'name':_0x5eecf5(0x217),'value':_0x5eecf5(0x30d),'version':'NT'},{'name':_0x5eecf5(0x2ba),'value':_0x5eecf5(0x2ba),'version':'OS'},{'name':_0x5eecf5(0x3c5),'value':_0x5eecf5(0x3c5),'version':'OS'},{'name':_0x5eecf5(0x29d),'value':_0x5eecf5(0x286),'version':_0x5eecf5(0x286)},{'name':'Android','value':'Android','version':'Android'},{'name':'PlayBook','value':_0x5eecf5(0x26d),'version':'OS'},{'name':'BlackBerry','value':_0x5eecf5(0x2aa),'version':'/'},{'name':_0x5eecf5(0x25c),'value':_0x5eecf5(0x31c),'version':'OS\x20X'},{'name':'Linux','value':_0x5eecf5(0x374),'version':'rv'},{'name':_0x5eecf5(0x26c),'value':'Palm','version':_0x5eecf5(0x2f6)}],'databrowser':[{'name':_0x5eecf5(0x24f),'value':'Chrome','version':'Chrome'},{'name':_0x5eecf5(0x21b),'value':_0x5eecf5(0x21b),'version':_0x5eecf5(0x21b)},{'name':_0x5eecf5(0x3a4),'value':_0x5eecf5(0x3a4),'version':_0x5eecf5(0x1f7)},{'name':'Internet\x20Explorer','value':_0x5eecf5(0x2c6),'version':_0x5eecf5(0x2c6)},{'name':_0x5eecf5(0x250),'value':_0x5eecf5(0x250),'version':_0x5eecf5(0x250)},{'name':'BlackBerry','value':'CLDC','version':_0x5eecf5(0x237)},{'name':_0x5eecf5(0x35a),'value':_0x5eecf5(0x35a),'version':'Mozilla'}],'init':function(){const _0x192f68=_0x5eecf5;let _0x36b00c=this[_0x192f68(0x328)][_0x192f68(0x2de)]('\x20'),_0x412afa=this[_0x192f68(0x1f9)](_0x36b00c,this[_0x192f68(0x212)]),_0x22e0b8=this[_0x192f68(0x1f9)](_0x36b00c,this[_0x192f68(0x3ba)]);return{'os':_0x412afa,'browser':_0x22e0b8};},'matchItem':function(_0x5d8640,_0xf7dee5){const _0x475a76=_0x5eecf5;let _0x3b26fb=0x0,_0x457c7d=0x0,_0x3eb8c7='',_0x5f2974,_0x2f8c61,_0xad7822,_0x5ae83e,_0x1f9e60;for(_0x3b26fb=0x0;_0x3b26fb<_0xf7dee5[_0x475a76(0x372)];_0x3b26fb+=0x1){_0x5f2974=new RegExp(_0xf7dee5[_0x3b26fb][_0x475a76(0x356)],'i'),_0xad7822=_0x5f2974[_0x475a76(0x2f4)](_0x5d8640);if(_0xad7822){_0x2f8c61=new RegExp(_0xf7dee5[_0x3b26fb][_0x475a76(0x2d3)]+_0x475a76(0x1e2),'i'),_0x5ae83e=_0x5d8640[_0x475a76(0x357)](_0x2f8c61),_0x1f9e60='';_0x5ae83e&&(_0x5ae83e[0x1]&&(_0x5ae83e=_0x5ae83e[0x1]));if(_0x5ae83e){_0x5ae83e=_0x5ae83e[_0x475a76(0x320)](/[._]+/);for(_0x457c7d=0x0;_0x457c7d<_0x5ae83e[_0x475a76(0x372)];_0x457c7d+=0x1){_0x457c7d===0x0?_0x1f9e60+=_0x5ae83e[_0x457c7d]+'.':_0x1f9e60+=_0x5ae83e[_0x457c7d];}}else _0x1f9e60='0';return{'name':_0xf7dee5[_0x3b26fb][_0x475a76(0x36f)],'version':parseFloat(_0x1f9e60)};}}return{'name':_0x475a76(0x213),'version':0x0};}},_0x422564=_0x555a05[_0x5eecf5(0x221)]();return _0x422564['os']['name'];};return{'getDeviceName':_0x40e883,'getCurrentPlatform':_0x5b8eb4,'isApple':_0x26564f,'isWindows':_0x2f03e6,'isAndroid':_0x481401,'isMac':_0x1c8a4c,'isiPhone':_0x27d1ea,'isiPad':_0x1b1551,'getDeviceDescription':_0x53fc18};})()),_0x189fb4=_0x20aeaa=>{const _0x60a2ee=_0x530f;let _0x3ddb97=0x3c;switch(_0x20aeaa){case BB[_0x60a2ee(0x38c)][_0x60a2ee(0x22a)]:_0x3ddb97=0x3c;break;case BB[_0x60a2ee(0x38c)][_0x60a2ee(0x2d4)]:_0x3ddb97=0x3c;break;case BB[_0x60a2ee(0x38c)][_0x60a2ee(0x28f)]:_0x3ddb97=0xea60/0x3e9;break;case BB[_0x60a2ee(0x38c)][_0x60a2ee(0x32a)]:_0x3ddb97=0x7530/0x3e9;break;default:console['error']('BB.Utils.getMediaTimeFPS:\x20Unknown\x20FrameRate\x20mode');break;};return _0x3ddb97;},_0x136e8c=_0x5abb52=>{const _0x4202fe=_0x530f;let _0x661549=0x3c;switch(_0x5abb52){case BB['FrameRateMode'][_0x4202fe(0x22a)]:_0x661549=0x3c;break;case BB[_0x4202fe(0x38c)][_0x4202fe(0x2d4)]:_0x661549=0xea60/0x3e9;break;case BB['FrameRateMode'][_0x4202fe(0x28f)]:_0x661549=0xea60/0x3e9;break;case BB[_0x4202fe(0x38c)][_0x4202fe(0x32a)]:_0x661549=0x7530/0x3e9;break;default:console[_0x4202fe(0x322)]('BB.Utils.getSourceFPS:\x20Unknown\x20FrameRate\x20mode');break;};return _0x661549;},_0x265f25=(_0x1851b6,_0x9e17b8)=>{const _0x48aaf2=_0x530f,_0x2fdfad=(_0x4a4461,_0x1a6c1e)=>{if(Math['abs'](_0x4a4461-_0x1a6c1e)<0.01)return!![];else return![];};if(_0x2fdfad(_0x1851b6,0x3c)){if(_0x2fdfad(BB['Utils'][_0x48aaf2(0x298)](_0x9e17b8[_0x48aaf2(0x23d)]),0x3c))_0x9e17b8[_0x48aaf2(0x23d)]=BB[_0x48aaf2(0x38c)][_0x48aaf2(0x22a)];else{if(_0x2fdfad(BB[_0x48aaf2(0x3b6)][_0x48aaf2(0x298)](_0x9e17b8[_0x48aaf2(0x23d)]),0xea60/0x3e9))_0x9e17b8[_0x48aaf2(0x23d)]=BB[_0x48aaf2(0x38c)][_0x48aaf2(0x2d4)];else console[_0x48aaf2(0x322)]('setMediaFPS:\x20Unknown\x20Source\x20FrameRate\x20mode');}}else{if(_0x2fdfad(_0x1851b6,0xea60/0x3e9)){if(_0x2fdfad(BB['Utils'][_0x48aaf2(0x298)](_0x9e17b8[_0x48aaf2(0x23d)]),0x3c))_0x9e17b8[_0x48aaf2(0x23d)]=BB['FrameRateMode']['Src60_MediaTime59'];else{if(_0x2fdfad(BB[_0x48aaf2(0x3b6)][_0x48aaf2(0x298)](_0x9e17b8['frameRateMode']),0xea60/0x3e9))_0x9e17b8['frameRateMode']=BB[_0x48aaf2(0x38c)][_0x48aaf2(0x28f)];else console[_0x48aaf2(0x322)](_0x48aaf2(0x3a5));}}else{if(_0x2fdfad(_0x1851b6,0x7530/0x3e9)){if(_0x2fdfad(BB['Utils'][_0x48aaf2(0x298)](_0x9e17b8[_0x48aaf2(0x23d)]),0x7530/0x3e9))_0x9e17b8[_0x48aaf2(0x23d)]=BB['FrameRateMode'][_0x48aaf2(0x32a)];else console[_0x48aaf2(0x322)]('setMediaFPS:\x20Unknown\x20Source\x20FrameRate\x20mode,\x20fps\x20=\x20'+_0x1851b6);}else console[_0x48aaf2(0x322)]('setMediaFPS:\x20Unknown\x20Media\x20FrameRate\x20mode');}}},_0x1e177d=()=>{const _0x406d84=[0x7530/0x3e9,0x1e/0x1],_0x27e462=[0xea60/0x3e9,0x3c/0x1];let _0x42cbb0=[],_0x1a86b3=[],_0x2ac974=0x0,_0x297485=-0x1,_0x520a39=0x0;const _0x2ffb0d=_0x5d42c0=>{const _0x5a23c5=_0x530f;_0x520a39++;let _0x3d68a4=0x3e7,_0x3b0080=0x0;if(_0x297485==-0x1){_0x297485=_0x5d42c0;return;}else{let _0x228354=_0x5d42c0-_0x297485;if(_0x2ac974<0x64){_0x1a86b3['push'](_0x228354),_0x2ac974++;return;}else _0x1a86b3[_0x5a23c5(0x2b5)](_0x228354),_0x1a86b3[_0x5a23c5(0x39d)]();let _0xaae5fc=0x0;for(let _0x46d15f=0x0;_0x46d15f<_0x1a86b3[_0x5a23c5(0x372)];_0x46d15f++){_0xaae5fc+=_0x1a86b3[_0x46d15f];}_0x228354=_0xaae5fc/_0x1a86b3[_0x5a23c5(0x372)];if(0x1/_0x228354<0x28)possibleFps=_0x406d84;else possibleFps=_0x27e462;}_0x297485=_0x5d42c0;for(let _0x31b7fa=0x0;_0x31b7fa<possibleFps[_0x5a23c5(0x372)];++_0x31b7fa){let _0x27e7f5=possibleFps[_0x31b7fa],_0x1ab519=_0x5d42c0*_0x27e7f5,_0x4c79ee=Math[_0x5a23c5(0x281)](_0x1ab519),_0x360c15=Math[_0x5a23c5(0x34a)](_0x1ab519-_0x4c79ee);_0x360c15<_0x3d68a4&&(_0x3d68a4=_0x360c15,_0x3b0080=_0x27e7f5);}let _0x52665f=_0x3b0080;_0x42cbb0[_0x5a23c5(0x2b5)](_0x52665f);if(_0x520a39>0x3e8)_0x42cbb0[_0x5a23c5(0x39d)]();},_0x3ab330=()=>{const _0x57f3c9=_0x530f;let _0x3d14aa={},_0x5e4f83,_0xff6487=0x0;for(let _0x25c5e9=0x0;_0x25c5e9<_0x42cbb0[_0x57f3c9(0x372)];_0x25c5e9++){let _0x4c2b27=_0x42cbb0[_0x25c5e9];_0x3d14aa[_0x4c2b27]=(_0x3d14aa[_0x4c2b27]||0x0)+0x1,_0x3d14aa[_0x4c2b27]>_0xff6487&&(_0x5e4f83=_0x4c2b27,_0xff6487=_0x3d14aa[_0x4c2b27]);}return _0x5e4f83;},_0xee2aa9=()=>{return _0x520a39;};return{'addTime':_0x2ffb0d,'getProbableFPS':_0x3ab330,'howMany':_0xee2aa9};};return{'TimeCodesFramesTranslator':_0x29db6a,'MedianCalculator':_0x52159f,'Platform':_0x17789c,'getMediaTimeFPS':_0x189fb4,'getSourceFPS':_0x136e8c,'setMediaFPS':_0x265f25,'FPSGetter':_0x1e177d};})()),BB['Socket']=class{constructor(_0x55e89f){const _0x347724=_0x5f573c;this['isConnected']=![],this[_0x347724(0x2d0)]='',this[_0x347724(0x351)]=_0x55e89f,this[_0x347724(0x36f)]='';}[_0x5f573c(0x337)](_0x2b106e){const _0x16c12f=_0x5f573c;if(typeof io==_0x16c12f(0x38b)||this[_0x16c12f(0x305)])return;this['isConnected']=!![];const _0x5a2c9b=io(_0x16c12f(0x2ea));_0x5a2c9b['on']('connect',()=>{const _0x37514d=_0x16c12f;console[_0x37514d(0x20a)]('socket\x20connected');let _0x3434d5=BB[_0x37514d(0x3b6)][_0x37514d(0x36d)];_0x5a2c9b[_0x37514d(0x2af)](_0x37514d(0x297),{'device':_0x3434d5[_0x37514d(0x2c0)]()},_0xc27aa9=>{const _0x221453=_0x37514d;this[_0x221453(0x36f)]=_0xc27aa9[_0x221453(0x36f)],_0x5a2c9b[_0x221453(0x2af)](_0x221453(0x2de),_0x2b106e,_0x2e5552=>{const _0x2d67e7=_0x221453;console[_0x2d67e7(0x20a)](_0x2d67e7(0x350)+_0x2b106e+_0x2d67e7(0x2e1)),this['callback'](_0x2d67e7(0x2de),_0x2e5552);});});}),_0x5a2c9b['on'](_0x16c12f(0x322),_0x240c1e=>{const _0x13b31c=_0x16c12f;console[_0x13b31c(0x322)](_0x13b31c(0x2e2)+_0x240c1e);}),_0x5a2c9b['on'](_0x16c12f(0x303),_0x479803=>{const _0x20315c=_0x16c12f;console[_0x20315c(0x322)]('disconnect\x20from\x20signaling::'+_0x479803);}),_0x5a2c9b['on'](_0x16c12f(0x22b),_0x4ee557=>{const _0xb87331=_0x16c12f;this[_0xb87331(0x351)](_0xb87331(0x22b),_0x4ee557),console[_0xb87331(0x20a)]('messageroom:\x20',_0x4ee557);}),_0x5a2c9b['on']('ads',_0x12a353=>{const _0x2cfc05=_0x16c12f;this[_0x2cfc05(0x351)](_0x2cfc05(0x218),_0x12a353),console[_0x2cfc05(0x20a)](_0x2cfc05(0x306),_0x12a353);});}},BB[_0x5f573c(0x2ad)]=(_0xe0b818,_0x53a797,_0x181e3f)=>{const _0x418aaf=_0x5f573c;console[_0x418aaf(0x20a)](_0x418aaf(0x37d));function _0x1e393c(_0x23f0ba,_0x1d8d64){const _0x5bf51d=_0x418aaf;let _0x1d5d5e='';if(_0x23f0ba&&_0x23f0ba[_0x5bf51d(0x36e)](_0x5bf51d(0x1e6))){const _0x53eb7c=_0x23f0ba[_0x5bf51d(0x219)](/.*NTC./,'');let _0x3b9ad4=0x0;while(_0x3b9ad4+0x8<=_0x53eb7c[_0x5bf51d(0x372)]){const _0xb59e25=_0x53eb7c['substring'](_0x3b9ad4,_0x3b9ad4+0x4),_0x209899=((_0x53eb7c[_0x5bf51d(0x2db)](_0x3b9ad4+0x4)*0x100+_0x53eb7c[_0x5bf51d(0x2db)](_0x3b9ad4+0x5))*0x100+_0x53eb7c[_0x5bf51d(0x2db)](_0x3b9ad4+0x6))*0x100+_0x53eb7c[_0x5bf51d(0x2db)](_0x3b9ad4+0x7);if(_0x3b9ad4+0x8+_0x209899>_0x53eb7c[_0x5bf51d(0x372)])break;const _0x56d51c=_0x53eb7c['substring'](_0x3b9ad4+0x8,_0x3b9ad4+0x8+_0x209899);_0xb59e25==_0x5bf51d(0x1f8)&&(timecodeDateTime=new Date(parseInt(_0x56d51c))[_0x5bf51d(0x227)]()/0x3e8,timecodeDelta=timecodeDateTime-_0x1d8d64);_0xb59e25=='tc__'&&(tcTimeStamp=new Date(parseInt(_0x56d51c))['getTime']());if(_0xb59e25===_0x5bf51d(0x341)){timecode_offset=parseInt(_0x56d51c)/0x5a;if(_0x181e3f[_0x5bf51d(0x1ea)])console[_0x5bf51d(0x20a)](_0x5bf51d(0x251),timecode_offset);}_0x3b9ad4+=0x8+_0x209899;}}return _0x1d5d5e;}let _0x5b18f7=[0x0,0x0,0x0,0x0,0x0];function _0x3d4129(_0x544eea){const _0x4377c0=_0x418aaf;if(_0x544eea&&_0x544eea[_0x4377c0(0x1ee)]&&_0x544eea[_0x4377c0(0x1ee)]['id']==0x0||_0x23bfc9['isMac']()){if(_0x544eea[_0x4377c0(0x1ee)][_0x4377c0(0x222)])_0x544eea[_0x4377c0(0x1ee)]['messageData']=_0x1e393c(_0x544eea[_0x4377c0(0x1ee)][_0x4377c0(0x222)],_0x544eea[_0x4377c0(0x1ee)]['presentationTime']);else{if(_0x544eea['metadata'][_0x4377c0(0x3bc)]&&_0x544eea[_0x4377c0(0x1ee)][_0x4377c0(0x3bc)][_0x4377c0(0x372)]&&_0x544eea[_0x4377c0(0x1ee)]['frames'][0x0][_0x4377c0(0x349)]&&_0x544eea[_0x4377c0(0x1ee)][_0x4377c0(0x3bc)][0x0][_0x4377c0(0x349)][_0x4377c0(0x342)]()===_0x4377c0(0x2cc)){const _0x169dc2=_0x544eea['metadata']['frames'][_0x4377c0(0x3c6)](_0x7058be=>{const _0x2a8df8=_0x4377c0;return _0x7058be['info']&&_0x7058be['info']['toLowerCase']()[_0x2a8df8(0x36e)](_0x2a8df8(0x22f));});_0x169dc2[_0x4377c0(0x372)]&&(messageData=_0x169dc2[_0x169dc2[_0x4377c0(0x372)]-0x1][_0x4377c0(0x2bb)]+'\x00'+String[_0x4377c0(0x242)](..._0x169dc2[_0x169dc2[_0x4377c0(0x372)]-0x1][_0x4377c0(0x240)]),_0x544eea['metadata'][_0x4377c0(0x222)]=_0x1e393c(messageData,_0x544eea[_0x4377c0(0x1ee)][_0x4377c0(0x3ce)]));}}(_0x544eea[_0x4377c0(0x1ee)]['id']==0x0||_0x23bfc9[_0x4377c0(0x2f2)]()&&timecode_offset==0x0)&&(presentationTime=_0x544eea['metadata'][_0x4377c0(0x3ce)]*0x3e8,offsetTimeCode=new Date(tcTimeStamp-timecode_offset),offsetTimeCodeframeNumber=Math[_0x4377c0(0x281)](offsetTimeCode[_0x4377c0(0x3ca)]()*0x1e*0x2/0x3e9)/0x2,decimalPartOff=offsetTimeCodeframeNumber%0x1,partoff=0x1,decimalPartOff==0.5&&(offsetTimeCodeframeNumber=Math[_0x4377c0(0x31f)](offsetTimeCodeframeNumber),partoff=0x2),_0x5b18f7=[offsetTimeCode['getUTCHours'](),offsetTimeCode[_0x4377c0(0x318)](),offsetTimeCode[_0x4377c0(0x228)](),parseInt(offsetTimeCodeframeNumber),partoff==0x1?0x0:0x1]);}}function _0x45ab46(_0x554b71){const _0x52569b=_0x418aaf;if(typeof globalConfig!==_0x52569b(0x38b)){if(typeof globalConfig[_0x52569b(0x392)]!==_0x52569b(0x38b)){if(globalConfig[_0x52569b(0x392)]=='no')return;}}if(BB[_0x52569b(0x3b6)][_0x52569b(0x298)](_0x181e3f[_0x52569b(0x23d)])==0x7530/0x3e9){let _0x5a5ba0={'frame':0x0,'playerTime':0x0};_0x5a5ba0[_0x52569b(0x1e7)]=BB[_0x52569b(0x3b6)][_0x52569b(0x3a3)][_0x52569b(0x2a1)](_0x5b18f7,0x7530/0x3e9,![]),_0x5a5ba0['stringTime']=BB[_0x52569b(0x3b6)]['TimeCodesFramesTranslator']['printTimecode'](_0x5b18f7,![],![]),console[_0x52569b(0x20a)]('New\x20segment\x20('+_0x554b71[_0x52569b(0x334)]+'):\x20'+_0x5a5ba0[_0x52569b(0x239)]+'\x20('+_0x5a5ba0[_0x52569b(0x1e7)]+')'+'\x20playing\x20at\x20'+_0x554b71[_0x52569b(0x258)]),_0x5a5ba0[_0x52569b(0x244)]=_0x554b71[_0x52569b(0x258)],_0x181e3f[_0x52569b(0x2a2)]=_0x5a5ba0;}else{if(BB[_0x52569b(0x3b6)][_0x52569b(0x298)](_0x181e3f[_0x52569b(0x23d)])==0xea60/0x3e9){let _0x37f6f3={'frame':0x0,'playerTime':0x0};_0x37f6f3[_0x52569b(0x1e7)]=BB[_0x52569b(0x3b6)][_0x52569b(0x3a3)][_0x52569b(0x2a1)](_0x5b18f7,0xea60/0x3e9,!![]),_0x37f6f3['stringTime']=BB['Utils'][_0x52569b(0x3a3)][_0x52569b(0x1e4)](_0x5b18f7,!![],![]),console[_0x52569b(0x20a)]('New\x20segment\x20('+_0x554b71[_0x52569b(0x334)]+'):\x20'+_0x37f6f3[_0x52569b(0x239)]+'\x20('+_0x37f6f3[_0x52569b(0x1e7)]+')'+_0x52569b(0x362)+_0x554b71['playbackTime']),_0x37f6f3[_0x52569b(0x244)]=_0x554b71[_0x52569b(0x258)],_0x181e3f[_0x52569b(0x2a2)]=_0x37f6f3;}}_0x554b71[_0x52569b(0x2f3)][_0x52569b(0x36e)](_0x52569b(0x1d8))&&console[_0x52569b(0x20a)](_0x52569b(0x1df)+_0x554b71[_0x52569b(0x334)]);}function _0x5d5650(_0xdca5ea){const _0x1e57b3=_0x418aaf;switch(_0xdca5ea['eventType']){case wmcEvents['AMC_EVENT_PLAYER_SEGMENT_PLAYBACK']:let _0x3f97a4={'frame':0x0,'playerTime':0x0};BB[_0x1e57b3(0x3b6)][_0x1e57b3(0x298)](_0x181e3f[_0x1e57b3(0x23d)])==0x7530/0x3e9&&(console[_0x1e57b3(0x20a)](_0x1e57b3(0x2ac)+_0xdca5ea[_0x1e57b3(0x334)]+_0x1e57b3(0x246)+BB[_0x1e57b3(0x3b6)][_0x1e57b3(0x3a3)][_0x1e57b3(0x307)](_0xdca5ea[_0x1e57b3(0x31d)],0x7530/0x3e9)+_0x1e57b3(0x362)+_0xdca5ea[_0x1e57b3(0x258)]),_0x3f97a4[_0x1e57b3(0x1e7)]=BB[_0x1e57b3(0x3b6)][_0x1e57b3(0x3a3)][_0x1e57b3(0x2a1)](BB[_0x1e57b3(0x3b6)][_0x1e57b3(0x3a3)][_0x1e57b3(0x2b7)](_0xdca5ea['dateTime'],0x7530/0x3e9),0x7530/0x3e9,![]),_0x3f97a4[_0x1e57b3(0x239)]=BB[_0x1e57b3(0x3b6)]['TimeCodesFramesTranslator'][_0x1e57b3(0x307)](_0xdca5ea[_0x1e57b3(0x31d)],0x7530/0x3e9));BB[_0x1e57b3(0x3b6)][_0x1e57b3(0x298)](_0x181e3f[_0x1e57b3(0x23d)])==0xea60/0x3e9&&(console['log'](_0x1e57b3(0x2ac)+_0xdca5ea[_0x1e57b3(0x334)]+_0x1e57b3(0x246)+BB[_0x1e57b3(0x3b6)][_0x1e57b3(0x3a3)][_0x1e57b3(0x307)](_0xdca5ea[_0x1e57b3(0x31d)],0xea60/0x3e9)+_0x1e57b3(0x362)+_0xdca5ea['playbackTime']),_0x3f97a4['frame']=BB[_0x1e57b3(0x3b6)][_0x1e57b3(0x3a3)]['Timecode2Frames'](BB[_0x1e57b3(0x3b6)]['TimeCodesFramesTranslator'][_0x1e57b3(0x2b7)](_0xdca5ea['dateTime']),fps,!![]),_0x3f97a4['stringTime']=BB['Utils']['TimeCodesFramesTranslator'][_0x1e57b3(0x307)](_0xdca5ea['dateTime'],0xea60/0x3e9));_0x3f97a4['playerTime']=_0xdca5ea[_0x1e57b3(0x258)],_0x181e3f['syncPoint']=_0x3f97a4;break;default:}}let _0x2126a7=BB[_0x418aaf(0x3b6)][_0x418aaf(0x3a3)],_0x44a92b=BB[_0x418aaf(0x3b6)]['getSourceFPS'](_0x181e3f[_0x418aaf(0x23d)]),_0x47405f=BB[_0x418aaf(0x3b6)][_0x418aaf(0x2e9)](_0x181e3f[_0x418aaf(0x23d)]);refreshRate=_0x181e3f[_0x418aaf(0x383)];let _0x4639bb=null,_0x3bb012=null,_0x3425ef=null;if(_0x181e3f[_0x418aaf(0x1ec)]==BB[_0x418aaf(0x376)]['Augment']){}else{let _0x5d6e08=document[_0x418aaf(0x2df)](_0x418aaf(0x324));_0x5d6e08[_0x418aaf(0x333)]=0x1f4,_0x5d6e08[_0x418aaf(0x3ae)]=0x1f4,document[_0x418aaf(0x30e)][_0x418aaf(0x299)](_0x5d6e08),_0x3425ef=_0x5d6e08['getContext']('webgl');}let _0x23bfc9=BB[_0x418aaf(0x3b6)][_0x418aaf(0x36d)],_0x27dc84=-0x1,_0x32366b=![];const _0x2b9cdb=(_0x13fdb3,_0x1938b9)=>{const _0x8d61f3=_0x418aaf,_0x50ba59=performance[_0x8d61f3(0x2fc)]();if(_0x27dc84==_0x13fdb3&&_0x1938b9==_0x32366b){if(_0x181e3f[_0x8d61f3(0x1ea)])console[_0x8d61f3(0x284)](_0x8d61f3(0x1e9)+_0x13fdb3);return 0x0;}if(!_0x181e3f['enabled']||_0x181e3f['stopAugment'])return _0x3bb012[_0x8d61f3(0x377)](),0x0;if(_0x181e3f[_0x8d61f3(0x1ec)]==BB[_0x8d61f3(0x376)]['RenderDigits'])renderDigit(_0x3425ef,_0x13fdb3);else{if(_0x181e3f['renderingMode']==BB[_0x8d61f3(0x376)]['RenderTimecode']){if(_0x44a92b==0xea60/0x3e9||_0x44a92b==0x3c)renderTimecode(_0x3425ef,_0x2126a7[_0x8d61f3(0x200)](_0x13fdb3,_0x44a92b,!![]),!![]);else{if(_0x44a92b==0x7530/0x3e9||_0x44a92b==0x1e)renderTimecode(_0x3425ef,_0x2126a7[_0x8d61f3(0x200)](_0x13fdb3,_0x44a92b,![]),![]);}}else{if(_0x181e3f['renderingMode']==BB['RenderingMode'][_0x8d61f3(0x2ee)]){if(_0x44a92b==0xea60/0x3e9||_0x44a92b==0x3c)_0x3bb012[_0x8d61f3(0x3cb)](_0x2126a7[_0x8d61f3(0x1e4)](_0x2126a7['Frames2Timecode'](_0x13fdb3,_0x44a92b,!![])));else(_0x44a92b==0x7530/0x3e9||_0x44a92b==0x1e)&&(_0x1938b9?_0x3bb012[_0x8d61f3(0x3cb)](_0x2126a7[_0x8d61f3(0x1e4)](_0x2126a7['Frames2Timecode'](_0x13fdb3*0x2+0x1,_0x44a92b*0x2,!![]),!![])):_0x3bb012[_0x8d61f3(0x3cb)](_0x2126a7[_0x8d61f3(0x1e4)](_0x2126a7[_0x8d61f3(0x200)](_0x13fdb3,_0x44a92b,![]),![])));}}}_0x27dc84=_0x13fdb3,_0x32366b=_0x1938b9;const _0x519300=performance[_0x8d61f3(0x2fc)]();return _0x519300-_0x50ba59;};let _0x420bfb=0x0,_0x5326da=0x0,_0xe822d5=0x20,_0x5d4c17=0x20,_0x562446='',_0x514c1e=0x0,_0x47532b,_0xa6df14=function(_0x15e8b6,_0x15ee4c){const _0x11912f=_0x418aaf;if(_0x562446==_0x11912f(0x1fd)){if(_0x181e3f['debug'])console[_0x11912f(0x284)](_0x11912f(0x33b));_0x53a797['requestVideoFrameCallback'](_0xa6df14);return;}_0x562446=_0x11912f(0x27c),lastNow=_0x15e8b6;let _0x27fdbf=(_0x15ee4c[_0x11912f(0x2bd)]-_0x181e3f[_0x11912f(0x2a2)][_0x11912f(0x244)])%(0x3c*0x3c*0x18)*_0x47405f,_0x392a16=_0x15ee4c[_0x11912f(0x2bd)]-_0x181e3f[_0x11912f(0x2a2)]['playerTime'];lastFrameFromVideoCallback=Math['floor'](_0x27fdbf+0.1)+_0x181e3f[_0x11912f(0x2a2)][_0x11912f(0x1e7)];if(_0x181e3f['debug']){var _0xf9d739=document['getElementById']('numberInput')[_0x11912f(0x356)],_0x5f5cc5=parseInt(_0xf9d739);lastFrameFromVideoCallback+=_0x5f5cc5;}else lastFrameFromVideoCallback+=0x1;_0x2f0b1e=_0x15ee4c[_0x11912f(0x2bd)];let _0x2abf37=_0x53a797[_0x11912f(0x230)],_0x3f62fa=document['getElementById']('debugText2');var _0x52f929='';if(BB['Utils'][_0x11912f(0x298)](_0x181e3f[_0x11912f(0x23d)])==0xea60/0x3e9)_0x52f929=_0x2126a7[_0x11912f(0x1e4)](_0x2126a7[_0x11912f(0x200)](lastFrameFromVideoCallback,_0x44a92b,!![]),!![],!![]);else BB[_0x11912f(0x3b6)][_0x11912f(0x298)](_0x181e3f[_0x11912f(0x23d)])==0x7530/0x3e9?_0x52f929=_0x2126a7['printTimecode'](_0x2126a7[_0x11912f(0x200)](lastFrameFromVideoCallback,_0x44a92b,![]),![],![]):_0x52f929='NOT\x20SUPPORTED';var _0x4bb48d='';if(BB[_0x11912f(0x3b6)][_0x11912f(0x298)](_0x181e3f[_0x11912f(0x23d)])==0xea60/0x3e9)_0x4bb48d=_0x2126a7[_0x11912f(0x1e4)](_0x2126a7['Frames2Timecode'](_0x181e3f[_0x11912f(0x385)][_0x11912f(0x3bf)],_0x44a92b,!![]),!![],!![]);else BB[_0x11912f(0x3b6)]['getSourceFPS'](_0x181e3f[_0x11912f(0x23d)])==0x7530/0x3e9?_0x4bb48d=_0x2126a7[_0x11912f(0x1e4)](_0x2126a7[_0x11912f(0x200)](_0x181e3f[_0x11912f(0x385)][_0x11912f(0x3bf)],_0x44a92b,![]),![],![]):_0x4bb48d=_0x11912f(0x1e5);let _0x2ad2a9=lastFrameFromVideoCallback-_0x181e3f[_0x11912f(0x385)]['offset'];if(_0x4639bb)_0x4639bb[_0x11912f(0x3c8)](_0x2ad2a9);var _0x4ceb00='';if(BB['Utils']['getSourceFPS'](_0x181e3f[_0x11912f(0x23d)])==0xea60/0x3e9)_0x4ceb00=_0x2126a7[_0x11912f(0x1e4)](_0x2126a7['Frames2Timecode'](_0x2ad2a9,_0x44a92b,!![]),!![],!![]);else BB[_0x11912f(0x3b6)]['getSourceFPS'](_0x181e3f[_0x11912f(0x23d)])==0x7530/0x3e9?_0x4ceb00=_0x2126a7['printTimecode'](_0x2126a7['Frames2Timecode'](_0x2ad2a9,_0x44a92b,![]),![],![]):_0x4ceb00='NOT\x20SUPPORTED';let _0x3c405f=Date[_0x11912f(0x2fc)]()-_0x5326da,_0x54187b=new Date(),_0x40404a=String(_0x54187b[_0x11912f(0x2e5)]())[_0x11912f(0x394)](0x2,'0'),_0x4a79ba=String(_0x54187b['getMinutes']())[_0x11912f(0x394)](0x2,'0'),_0x50ce67=String(_0x54187b[_0x11912f(0x23a)]())[_0x11912f(0x394)](0x2,'0'),_0x183fd5=String(_0x54187b[_0x11912f(0x353)]())['padStart'](0x3,'0'),_0x20915b=_0x40404a+':'+_0x4a79ba+':'+_0x50ce67+'.'+_0x183fd5;if(_0x181e3f[_0x11912f(0x1ea)]){if(_0x181e3f[_0x11912f(0x385)][_0x11912f(0x3bf)]!=_0x514c1e||_0x47532b<0xa*0x3c)var _0x227526=_0x11912f(0x393);else var _0x227526='black';_0x3f62fa[_0x11912f(0x33c)]=_0x11912f(0x366)+_0x11912f(0x24d)+_0x181e3f[_0x11912f(0x312)]+_0x11912f(0x390)+_0x20915b+_0x11912f(0x1d5)+_0x52f929+_0x11912f(0x32b)+_0x227526+'\x27>'+_0x181e3f[_0x11912f(0x385)]['offset']+'('+_0x4bb48d+_0x11912f(0x395)+_0x11912f(0x2c9)+_0x4ceb00+'\x20</br>',_0x181e3f[_0x11912f(0x385)]['offset']!=_0x514c1e&&(_0x47532b=0x0),_0x514c1e=_0x181e3f['augmentation'][_0x11912f(0x3bf)],_0x47532b++;}_0x420bfb++,_0x5326da=Date[_0x11912f(0x2fc)]();let _0x216382=![];if(_0x181e3f[_0x11912f(0x1ea)]){var _0x55597b=document['getElementById'](_0x11912f(0x21d));_0x216382=_0x55597b[_0x11912f(0x325)];}let _0x8f5f00=0x0;if(BB[_0x11912f(0x3b6)][_0x11912f(0x298)](_0x181e3f['frameRateMode'])==0x7530/0x3e9){let _0x34f980=0x18,_0xf2348=0x21+(0x21-_0x34f980);_0x3c405f<_0x34f980&&_0xe822d5<_0xf2348||_0xe822d5<_0x34f980&&_0x3c405f<_0xf2348||_0x5d4c17<_0x34f980&&_0xe822d5<_0xf2348&&_0x3c405f<_0xf2348||_0x216382==!![]?(_0x3f62fa[_0x11912f(0x33c)]+=_0x11912f(0x1de),setTimeout(function(){_0x2b9cdb(_0x2ad2a9,![]);},0xa)):_0x2b9cdb(_0x2ad2a9,![]);}else BB['Utils'][_0x11912f(0x298)](_0x181e3f[_0x11912f(0x23d)])==0xea60/0x3e9?_0x8f5f00=_0x2b9cdb(_0x2ad2a9,![]):console[_0x11912f(0x284)]('FPS\x20not\x20supported');_0x5d4c17=_0xe822d5,_0xe822d5=_0x3c405f;_0x181e3f[_0x11912f(0x1ea)]&&console[_0x11912f(0x284)](_0x11912f(0x22c)+_0x11912f(0x294)+_0x20915b+',\x20rendering:\x20'+_0x52f929+',\x20took:\x20'+_0x8f5f00[_0x11912f(0x22e)](0x4)+_0x11912f(0x2d7));_0x53a797[_0x11912f(0x266)](_0xa6df14);return;};const _0x3ddd2f=_0x30d1fc=>{const _0x4943bd=_0x418aaf;let _0x533b42=new Date(),_0x46558c=String(_0x533b42[_0x4943bd(0x2e5)]())[_0x4943bd(0x394)](0x2,'0'),_0x46d627=String(_0x533b42[_0x4943bd(0x288)]())[_0x4943bd(0x394)](0x2,'0'),_0x42ee76=String(_0x533b42[_0x4943bd(0x23a)]())[_0x4943bd(0x394)](0x2,'0'),_0x473e3a=String(_0x533b42[_0x4943bd(0x353)]())[_0x4943bd(0x394)](0x3,'0'),_0x21bb62=_0x46558c+':'+_0x46d627+':'+_0x42ee76+'.'+_0x473e3a;if(_0x53a797[_0x4943bd(0x32e)]){window[_0x4943bd(0x233)](_0x3ddd2f);return;}let _0x38e101=document[_0x4943bd(0x340)](_0x4943bd(0x206));if(_0x181e3f[_0x4943bd(0x1ea)])_0x38e101[_0x4943bd(0x33c)]='ANI.\x20'+'\x20Time\x20Fired:\x20'+_0x21bb62;if(_0x562446==_0x4943bd(0x3c3)||_0x562446==_0x4943bd(0x1fd)){var _0x45bb60='';if(BB['Utils']['getSourceFPS'](_0x181e3f['frameRateMode'])==0xea60/0x3e9)_0x45bb60=_0x2126a7[_0x4943bd(0x1e4)](_0x2126a7[_0x4943bd(0x200)](_0x27dc84+0x1,_0x44a92b,!![]),!![],!![]);else BB[_0x4943bd(0x3b6)]['getSourceFPS'](_0x181e3f[_0x4943bd(0x23d)])==0x7530/0x3e9?_0x45bb60=_0x2126a7['printTimecode'](_0x2126a7[_0x4943bd(0x200)](_0x27dc84+0x1,_0x44a92b,![]),![],![]):_0x45bb60='NOT\x20SUPPORTED';var _0x17ebf6='';if(BB[_0x4943bd(0x3b6)]['getSourceFPS'](_0x181e3f[_0x4943bd(0x23d)])==0xea60/0x3e9)_0x17ebf6=_0x2126a7[_0x4943bd(0x1e4)](_0x2126a7[_0x4943bd(0x200)](_0x181e3f[_0x4943bd(0x385)][_0x4943bd(0x3bf)],_0x44a92b,!![]),!![],!![]);else BB[_0x4943bd(0x3b6)][_0x4943bd(0x298)](_0x181e3f[_0x4943bd(0x23d)])==0x7530/0x3e9?_0x17ebf6=_0x2126a7[_0x4943bd(0x1e4)](_0x2126a7['Frames2Timecode'](_0x181e3f[_0x4943bd(0x385)][_0x4943bd(0x3bf)],_0x44a92b,![]),![],![]):_0x17ebf6=_0x4943bd(0x1e5);let _0x4bef93=_0x27dc84-_0x181e3f[_0x4943bd(0x385)][_0x4943bd(0x3bf)];var _0xea9a3='';if(BB[_0x4943bd(0x3b6)][_0x4943bd(0x298)](_0x181e3f['frameRateMode'])==0xea60/0x3e9)_0xea9a3=_0x2126a7[_0x4943bd(0x1e4)](_0x2126a7[_0x4943bd(0x200)](_0x4bef93,_0x44a92b,!![]),!![],!![]);else BB['Utils'][_0x4943bd(0x298)](_0x181e3f[_0x4943bd(0x23d)])==0x7530/0x3e9?_0xea9a3=_0x2126a7[_0x4943bd(0x1e4)](_0x2126a7[_0x4943bd(0x200)](_0x4bef93,_0x44a92b,![]),![],![]):_0xea9a3=_0x4943bd(0x1e5);_0x181e3f[_0x4943bd(0x1ea)]&&(console[_0x4943bd(0x284)](_0x4943bd(0x31b)+_0x45bb60+')'+_0x4943bd(0x310)+_0x562446),_0x38e101[_0x4943bd(0x33c)]+=_0x4943bd(0x29a));let _0x3a0a90=_0x2b9cdb(_0x27dc84+0x1,![]);if(_0x181e3f[_0x4943bd(0x1ea)])console[_0x4943bd(0x284)](_0x4943bd(0x3b2)+_0x4943bd(0x201)+_0x21bb62+_0x4943bd(0x2c1)+_0x4943bd(0x2dd)+_0x45bb60+',\x20offset:\x20'+_0x181e3f[_0x4943bd(0x385)][_0x4943bd(0x3bf)]+'('+_0x17ebf6+')'+_0x4943bd(0x3ad)+_0xea9a3+_0x4943bd(0x236)+_0x3a0a90[_0x4943bd(0x22e)](0x4)+_0x4943bd(0x2d7));if(_0x562446==_0x4943bd(0x3c3))_0x562446=_0x4943bd(0x1fd);else{if(_0x562446==_0x4943bd(0x1fd))_0x562446='ANI';}}else{if(_0x181e3f[_0x4943bd(0x1ea)])console['BBlog'](_0x4943bd(0x3b2)+'\x20Time\x20Fired:\x20'+_0x21bb62);_0x562446='ANI';}window['requestAnimationFrame'](_0x3ddd2f);};let _0x1eda45=_0x181e3f['frameRateMode']==BB['FrameRateMode'][_0x418aaf(0x2d4)]?-0.04:+0.05,_0x25f3e3=0x0,_0x27dcfe={},_0x4a4ece=0x0,_0x4b808f=0x0,_0x195e8c=0x0,_0x19948f=0x0,_0x230920=0x0,_0x2f0b1e=-0x1,_0x3d8e3e=0x0,_0xde7253=![],_0x3d785b=0x0,_0x128a67=0x0,_0x17dcb7=![];const _0x1b0c9c=_0x3e4089=>{const _0xa4dacd=_0x418aaf;var _0x586759=0x2;if(_0x181e3f[_0xa4dacd(0x1ea)]){let _0x3def1c=document[_0xa4dacd(0x340)](_0xa4dacd(0x206));var _0x2655af=document['getElementById']('numberInput')[_0xa4dacd(0x356)];_0x586759=parseInt(_0x2655af);}var _0x58f904=0x0,_0x553273=(_0x53a797[_0xa4dacd(0x230)]-_0x181e3f[_0xa4dacd(0x2a2)]['playerTime'])%(0x3c*0x3c*0x18)*_0x47405f;_0x58f904=Math[_0xa4dacd(0x31f)](_0x553273)+_0x181e3f[_0xa4dacd(0x2a2)][_0xa4dacd(0x1e7)],_0x58f904+=_0x586759;var _0x36a5b7=_0x553273-Math[_0xa4dacd(0x31f)](_0x553273);if(_0x17dcb7||_0x36a5b7<0.226)_0x17dcb7=!![];if(_0x36a5b7>0.8)_0x17dcb7=![];if(_0x17dcb7)_0x58f904--;var _0x436237='';if(BB[_0xa4dacd(0x3b6)][_0xa4dacd(0x298)](_0x181e3f[_0xa4dacd(0x23d)])==0xea60/0x3e9)_0x436237=_0x2126a7['printTimecode'](_0x2126a7[_0xa4dacd(0x200)](_0x58f904,_0x44a92b,!![]),!![],!![]);else BB[_0xa4dacd(0x3b6)][_0xa4dacd(0x298)](_0x181e3f[_0xa4dacd(0x23d)])==0x7530/0x3e9?_0x436237=_0x2126a7[_0xa4dacd(0x1e4)](_0x2126a7[_0xa4dacd(0x200)](_0x58f904,_0x44a92b,![]),![],![]):_0x436237=_0xa4dacd(0x1e5);var _0x280ce0='';if(BB[_0xa4dacd(0x3b6)][_0xa4dacd(0x298)](_0x181e3f['frameRateMode'])==0xea60/0x3e9)_0x280ce0=_0x2126a7['printTimecode'](_0x2126a7['Frames2Timecode'](_0x181e3f['augmentation'][_0xa4dacd(0x3bf)],_0x44a92b,!![]),!![],!![]);else BB[_0xa4dacd(0x3b6)][_0xa4dacd(0x298)](_0x181e3f[_0xa4dacd(0x23d)])==0x7530/0x3e9?_0x280ce0=_0x2126a7[_0xa4dacd(0x1e4)](_0x2126a7[_0xa4dacd(0x200)](_0x181e3f['augmentation']['offset'],_0x44a92b,![]),![],![]):_0x280ce0=_0xa4dacd(0x1e5);let _0x3cc6ed=_0x58f904-_0x181e3f[_0xa4dacd(0x385)][_0xa4dacd(0x3bf)];if(_0x4639bb)_0x4639bb[_0xa4dacd(0x3c8)](_0x3cc6ed);_0x2b9cdb(_0x3cc6ed),_0x4023b9++,window[_0xa4dacd(0x233)](_0x1b0c9c);return;},_0x17887a=(_0x15f1d1,_0x468294)=>{const _0x75f5ec=_0x418aaf;let _0x3eca93=_0x468294[_0x75f5ec(0x2bd)]*_0x47405f;var _0x1a58ad=0x0;if(_0x181e3f[_0x75f5ec(0x1ea)]){var _0x160d37=document[_0x75f5ec(0x340)]('numberInput')[_0x75f5ec(0x356)];_0x1a58ad=parseInt(_0x160d37);}_0x3eca93+=_0x1a58ad,_0x230920=Math['floor'](_0x3eca93);var _0x277372='';if(BB[_0x75f5ec(0x3b6)]['getSourceFPS'](_0x181e3f[_0x75f5ec(0x23d)])==0xea60/0x3e9)_0x277372=_0x2126a7[_0x75f5ec(0x1e4)](_0x2126a7[_0x75f5ec(0x200)](_0x230920,_0x44a92b,!![]),!![],!![]);else BB['Utils'][_0x75f5ec(0x298)](_0x181e3f[_0x75f5ec(0x23d)])==0x7530/0x3e9?_0x277372=_0x2126a7['printTimecode'](_0x2126a7[_0x75f5ec(0x200)](_0x230920,_0x44a92b,![]),![],![]):_0x277372=_0x75f5ec(0x1e5);let _0x39fbe1=document[_0x75f5ec(0x340)](_0x75f5ec(0x33d));_0x39fbe1[_0x75f5ec(0x247)]=_0x75f5ec(0x223)+_0x3eca93[_0x75f5ec(0x22e)](0x4)+_0x75f5ec(0x360)+_0x230920+'\x20countAppleVideo:\x20'+_0x19948f+_0x75f5ec(0x2ed)+_0x277372,_0x19948f++,_0x2f0b1e=_0x468294[_0x75f5ec(0x2bd)],_0x53a797[_0x75f5ec(0x266)](_0x17887a);return;_0x195e8c=_0x15f1d1,_0x27dcfe=_0x468294;let _0x1c9558=_0x53a797[_0x75f5ec(0x230)],_0x2eb40c=(_0x1c9558-_0x468294['mediaTime'])*0x3e8;_0x25f3e3=_0x2eb40c,_0x53a797[_0x75f5ec(0x266)](_0x17887a);};let _0x4036a0=-0x1,_0x339242=0x270f,_0x4bac89=0x0,_0x4023b9=0x0,_0xbc915e=0x0;console['BBlog'](_0x418aaf(0x38e)),console['BBlog'](_0x418aaf(0x398));typeof window!==_0x418aaf(0x38b)?console[_0x418aaf(0x284)](_0x418aaf(0x3a1)):console['BBlog'](_0x418aaf(0x3b1));'requestAnimationFrame'in window?console[_0x418aaf(0x284)](_0x418aaf(0x238)):console[_0x418aaf(0x284)](_0x418aaf(0x388));typeof _0x53a797!==_0x418aaf(0x38b)?console[_0x418aaf(0x284)](_0x418aaf(0x293)):console[_0x418aaf(0x284)](_0x418aaf(0x317));_0x418aaf(0x266)in _0x53a797?console[_0x418aaf(0x284)](_0x418aaf(0x276)):console['BBlog']('requestVideoFrameCallback\x20is\x20not\x20supported');if(_0x23bfc9[_0x418aaf(0x39c)]()||_0x23bfc9['isAndroid']())window[_0x418aaf(0x233)](_0x3ddd2f),_0x53a797[_0x418aaf(0x27a)]>=0x2?(console[_0x418aaf(0x284)](_0x418aaf(0x2f7)),_0x53a797[_0x418aaf(0x266)](_0xa6df14)):(console[_0x418aaf(0x284)](_0x418aaf(0x2f9)),_0x53a797[_0x418aaf(0x33a)](_0x418aaf(0x2fe),()=>{const _0x1c2d52=_0x418aaf;_0x53a797[_0x1c2d52(0x266)](_0xa6df14);}));else _0x23bfc9[_0x418aaf(0x2f2)]()?window[_0x418aaf(0x233)](_0x1b0c9c):console[_0x418aaf(0x284)](_0x418aaf(0x226));console[_0x418aaf(0x284)]('CallBacks\x20are\x20set'),console['BBlog']('Calculating\x20ScreenFrameRate');function _0x24b411(){return new Promise(_0x54be8a=>{let _0x5cddfc=0x0;const _0x574cda=[],_0x51dfba=0x14;function _0x5a8ec8(_0x3e0de9){const _0x4f07dd=_0x530f;if(_0x5cddfc){const _0x30632d=_0x3e0de9-_0x5cddfc,_0x56839f=0x3e8/_0x30632d;if(!(_0x56839f===undefined)){if(_0x56839f>0x0&&_0x56839f<0xc8)_0x574cda[_0x4f07dd(0x2b5)](_0x56839f);}if(_0x574cda[_0x4f07dd(0x372)]===_0x51dfba){const _0x5e7648=_0x574cda[_0x4f07dd(0x34c)]((_0x55ea5b,_0x27b4f5)=>_0x55ea5b+_0x27b4f5,0x0)/_0x51dfba;_0x54be8a(Math[_0x4f07dd(0x281)](_0x5e7648));return;}}_0x5cddfc=_0x3e0de9,requestAnimationFrame(_0x5a8ec8);}requestAnimationFrame(_0x5a8ec8);});}_0x24b411()[_0x418aaf(0x34e)](_0x1aab18=>{const _0x189487=_0x418aaf;_0x181e3f[_0x189487(0x26e)]=_0x1aab18,_0x181e3f['ScreenFPS']>0x46||_0x181e3f[_0x189487(0x26e)]<0x32?(console[_0x189487(0x28a)](_0x189487(0x1f1)+_0x1aab18+'\x20FPS,\x20Aborting\x20augmentation.\x20Only\x2060FPS\x20screens\x20supported'),_0x181e3f[_0x189487(0x3bb)]=!![]):console[_0x189487(0x284)](_0x189487(0x1f1)+_0x1aab18+'\x20FPS,\x20Continuing\x20augmentation');});const _0x4b67d8=()=>{const _0x2cb8d4=_0x418aaf;let _0x32fe60=_0x53a797['parentElement'];_0x3bb012=new BB[(_0x2cb8d4(0x264))](_0x32fe60,_0x53a797,_0x181e3f),ads=BB[_0x2cb8d4(0x235)](_0x3bb012,_0x181e3f),_0x4639bb=BB['MetaDataFetcher'](_0x181e3f,_0x3bb012);},_0x453982=()=>{const _0xa2ba73=_0x418aaf;return _0x3bb012[_0xa2ba73(0x3d0)]();},_0x1d40a9=_0xce9bf6=>{_0x45ab46(_0xce9bf6);},_0x3b14b4=_0x19615a=>{_0x3d4129(_0x19615a);};return{'getCanvas':_0x453982,'onNewSegmentInterface':_0x1d40a9,'onNewMetadataInterface':_0x3b14b4,'initializeComponents':_0x4b67d8};},BB[_0x5f573c(0x264)]=class{constructor(_0x491611,_0x286485,_0x5c5599){const _0x4f3aab=_0x5f573c;if(_0x5c5599[_0x4f3aab(0x385)][_0x4f3aab(0x2dc)]){this[_0x4f3aab(0x278)]={};for(let _0x1bdf60=0x0;_0x1bdf60<0xa;++_0x1bdf60){let _0x5d10fc=_0x1bdf60+'.1',_0x5ca60a=_0x1bdf60+'.2';this[_0x4f3aab(0x278)][_0x5d10fc]=this['CreateDigitImg'](_0x5d10fc),this[_0x4f3aab(0x278)][_0x5ca60a]=this[_0x4f3aab(0x33f)](_0x5ca60a);}}this[_0x4f3aab(0x1f5)]=Object['assign']({'adLoopTime':0x1388,'isAdLoop':![]},_0x5c5599||{}),this[_0x4f3aab(0x2ca)]=BB[_0x4f3aab(0x3b6)]['getSourceFPS'](this[_0x4f3aab(0x1f5)]['frameRateMode']),this[_0x4f3aab(0x24b)]=[],this['metadataMap']={},this['videoStarted']=![],this[_0x4f3aab(0x309)]={},this[_0x4f3aab(0x365)]={},this[_0x4f3aab(0x1db)]=null,this[_0x4f3aab(0x324)]=document[_0x4f3aab(0x2df)](_0x4f3aab(0x324)),this[_0x4f3aab(0x27f)]=this['canvas']['getContext'](_0x4f3aab(0x25a),{'premultipliedAlpha':![]});this[_0x4f3aab(0x27f)]==null?(this['ctx']=this['canvas'][_0x4f3aab(0x38f)](_0x4f3aab(0x301),{'premultipliedAlpha':![]}),this[_0x4f3aab(0x2b0)]=0x1):this[_0x4f3aab(0x2b0)]=0x2;console[_0x4f3aab(0x20a)]('Created\x20webgl1\x20context:\x20'+this[_0x4f3aab(0x27f)]+_0x4f3aab(0x282)+this['webGLVersion']);let _0x3d5411=_0x491611[_0x4f3aab(0x2c5)],_0x25998f=_0x491611['offsetLeft'],_0x273b86=_0x491611[_0x4f3aab(0x26f)](_0x4f3aab(0x1d8))[0x0];this[_0x4f3aab(0x324)][_0x4f3aab(0x3a7)]['top']=0x0,this[_0x4f3aab(0x324)][_0x4f3aab(0x3a7)][_0x4f3aab(0x241)]=0x0,this[_0x4f3aab(0x324)][_0x4f3aab(0x3a7)]['width']=_0x4f3aab(0x3cf),this['canvas'][_0x4f3aab(0x3a7)][_0x4f3aab(0x3c0)]=0x186a0,this[_0x4f3aab(0x324)][_0x4f3aab(0x333)]=_0x491611[_0x4f3aab(0x3a2)],this[_0x4f3aab(0x324)][_0x4f3aab(0x3ae)]=_0x491611[_0x4f3aab(0x345)],this['canvas'][_0x4f3aab(0x3a7)][_0x4f3aab(0x30c)]=_0x4f3aab(0x1f3);let _0x7a2d64=_0x273b86['nextSibling'];if(_0x7a2d64)_0x491611[_0x4f3aab(0x3aa)](this[_0x4f3aab(0x324)],_0x7a2d64);else _0x491611[_0x4f3aab(0x299)](this[_0x4f3aab(0x324)]);this[_0x4f3aab(0x324)][_0x4f3aab(0x3a7)][_0x4f3aab(0x3d4)]=_0x4f3aab(0x2be),_0x273b86[_0x4f3aab(0x33a)](_0x4f3aab(0x361),_0x354ec6=>{const _0x3ce501=_0x4f3aab;this[_0x3ce501(0x248)](_0x354ec6);}),this['InitGL'](),this[_0x4f3aab(0x1d6)]=null,this[_0x4f3aab(0x2b2)]={},this[_0x4f3aab(0x289)]={},this[_0x4f3aab(0x20c)]={},this[_0x4f3aab(0x3cd)]=[],this['lastTimeReportedIncomingTC']=0x0,this[_0x4f3aab(0x313)]=null;}[_0x5f573c(0x1da)](_0x2dbf99){return(_0x2dbf99&_0x2dbf99-0x1)==0x0;}[_0x5f573c(0x33f)](_0x4c350c){const _0x220ed8=_0x5f573c;let _0x5aee02=document[_0x220ed8(0x2df)](_0x220ed8(0x324));_0x5aee02[_0x220ed8(0x333)]=0x32,_0x5aee02[_0x220ed8(0x3ae)]=0x32;let _0x1a5cfe=_0x5aee02[_0x220ed8(0x38f)]('2d');_0x1a5cfe['fillStyle']=_0x220ed8(0x256),_0x1a5cfe[_0x220ed8(0x35f)](0x0,0x0,_0x5aee02['width'],_0x5aee02[_0x220ed8(0x3ae)]),_0x1a5cfe['font']='30px\x20Arial',_0x1a5cfe[_0x220ed8(0x280)]='white',_0x1a5cfe['fillText'](_0x4c350c,0xa,0x23);let _0x20f193=_0x5aee02['toDataURL'](),_0x440a3f=document[_0x220ed8(0x2df)]('img');return _0x440a3f[_0x220ed8(0x321)]=_0x20f193,_0x440a3f;}[_0x5f573c(0x248)](_0x24b7b){const _0x318534=_0x5f573c,_0x56a221=this['canvas'][_0x318534(0x339)]();let _0x196009=event[_0x318534(0x277)]-_0x56a221['left'],_0x45af7d=event[_0x318534(0x3a6)]-_0x56a221[_0x318534(0x214)];_0x196009=_0x196009/(_0x56a221[_0x318534(0x23f)]-_0x56a221[_0x318534(0x241)]),_0x45af7d=_0x45af7d/(_0x56a221['bottom']-_0x56a221['top']);for(let _0x3aa630 of this[_0x318534(0x3cd)]){if(_0x3aa630['rect']['l']<=_0x196009&&_0x3aa630[_0x318534(0x3a9)]['r']>=_0x196009&&_0x3aa630[_0x318534(0x3a9)]['t']<=_0x45af7d&&_0x3aa630[_0x318534(0x3a9)]['b']>=_0x45af7d){let _0x2676e1=_0x3aa630['name'][_0x318534(0x2b9)](0x1);if(this[_0x318534(0x365)][_0x2676e1]){let _0x3fb9af=this[_0x318534(0x365)][_0x2676e1];console['log']('Clicked\x20on\x20ad:\x20'+_0x2676e1+_0x318534(0x2ff)+_0x3fb9af+_0x318534(0x3b3)),window['open'](_0x3fb9af,'_blank');}return;}}}[_0x5f573c(0x36a)](){return 0x0;}[_0x5f573c(0x375)](_0x5853b4){const _0x52738a=_0x5f573c;let _0x4157b8=Object[_0x52738a(0x38d)](this[_0x52738a(0x289)]);for(let _0x5732a2=0x0;_0x5732a2<_0x4157b8[_0x52738a(0x372)];++_0x5732a2){if(_0x5853b4==_0x4157b8[_0x5732a2])return _0x5732a2+0x1;}return 0x0;}['TexUnitForPlaceHolder'](_0x299936){const _0x2cc037=_0x5f573c;let _0x3648c2=Object[_0x2cc037(0x38d)](this[_0x2cc037(0x289)]);for(let _0x2ea8a3=0x0;_0x2ea8a3<_0x3648c2[_0x2cc037(0x372)];++_0x2ea8a3){let _0x6fc0f1=_0x3648c2[_0x2ea8a3];if(_0x299936[_0x2cc037(0x36f)][_0x2cc037(0x231)](_0x6fc0f1)>=0x0)return _0x2ea8a3;}return 0x0;}[_0x5f573c(0x224)](_0x5ade51){const _0x9eb693=_0x5f573c;let _0x5ce585=Object['keys'](this[_0x9eb693(0x289)]);for(let _0x5d78af=0x0;_0x5d78af<_0x5ce585[_0x9eb693(0x372)];++_0x5d78af){let _0x84f94a=_0x5ce585[_0x5d78af];if(_0x5ade51[_0x9eb693(0x36f)][_0x9eb693(0x231)](_0x84f94a)>=0x0&&this[_0x9eb693(0x2b2)]&&this[_0x9eb693(0x2b2)][_0x84f94a]&&this[_0x9eb693(0x2b2)][_0x84f94a][_0x9eb693(0x36f)])return this[_0x9eb693(0x2b2)][_0x84f94a][_0x9eb693(0x36f)];}return this[_0x9eb693(0x35d)];}['TexUnitBaseForAlpha'](){const _0x5b8538=_0x5f573c;return 0x1+Object['keys'](this[_0x5b8538(0x289)])[_0x5b8538(0x372)];}[_0x5f573c(0x384)](){const _0x45d3ba=_0x5f573c;let _0x2d6efb=BB['GL'][_0x45d3ba(0x381)];if(BB[_0x45d3ba(0x3b6)][_0x45d3ba(0x36d)][_0x45d3ba(0x2f2)]())_0x2d6efb=BB['GL'][_0x45d3ba(0x381)][_0x45d3ba(0x219)]('if\x20(alpha\x20==\x200.0)',_0x45d3ba(0x269));this['program']=webglUtils['createProgramFromSources'](this[_0x45d3ba(0x27f)],this[_0x45d3ba(0x2b0)]==0x2?[BB['GL'][_0x45d3ba(0x3be)],_0x2d6efb]:[BB['GL'][_0x45d3ba(0x296)],BB['GL']['fragmentShaderSourceV1']]),this['ctx'][_0x45d3ba(0x35e)](0x0,0x0,0x0,0x0),this['ctx']['clear'](this['ctx'][_0x45d3ba(0x292)]),this['ctx']['useProgram'](this[_0x45d3ba(0x2fb)]),this[_0x45d3ba(0x382)]=0x0,this[_0x45d3ba(0x377)]();}[_0x5f573c(0x377)](){const _0x1afd43=_0x5f573c;this[_0x1afd43(0x324)][_0x1afd43(0x3a7)][_0x1afd43(0x29e)]='none',this[_0x1afd43(0x2d5)]=0x0;}[_0x5f573c(0x319)](_0x1ab5c3,_0x4879e0,_0x3de82a,_0x27b83c,_0x441a81,_0x231462,_0x183ed4){const _0x58bd84=_0x5f573c;_0x183ed4?this[_0x58bd84(0x27f)]['pixelStorei'](this[_0x58bd84(0x27f)][_0x58bd84(0x255)],0x1):this[_0x58bd84(0x27f)][_0x58bd84(0x205)](this['ctx'][_0x58bd84(0x255)],0x4);this[_0x58bd84(0x27f)][_0x58bd84(0x205)](this[_0x58bd84(0x27f)][_0x58bd84(0x27e)],![]);const _0x162e54=this['ctx'][_0x58bd84(0x380)]();this[_0x58bd84(0x27f)][_0x58bd84(0x25f)](this[_0x58bd84(0x27f)][_0x58bd84(0x389)]+_0x4879e0),this[_0x58bd84(0x27f)][_0x58bd84(0x329)](this[_0x58bd84(0x27f)][_0x58bd84(0x245)],_0x162e54);try{_0x441a81&&_0x231462?this[_0x58bd84(0x27f)][_0x58bd84(0x369)](this[_0x58bd84(0x27f)]['TEXTURE_2D'],0x0,_0x27b83c==null?this['ctx']['RGBA']:_0x27b83c,_0x441a81,_0x231462,0x0,_0x27b83c==null?this[_0x58bd84(0x27f)][_0x58bd84(0x30a)]:_0x27b83c,this['ctx']['UNSIGNED_BYTE'],_0x1ab5c3):this[_0x58bd84(0x27f)][_0x58bd84(0x369)](this[_0x58bd84(0x27f)][_0x58bd84(0x245)],0x0,_0x27b83c==null?this[_0x58bd84(0x27f)][_0x58bd84(0x30a)]:_0x27b83c,this[_0x58bd84(0x27f)]['RGBA'],this['ctx']['UNSIGNED_BYTE'],_0x1ab5c3);}catch(_0x4e3aaf){return console['error'](_0x4e3aaf),null;}if(this['webGLVersion']==0x1){let _0x37ff8c=_0x441a81||_0x1ab5c3[_0x58bd84(0x333)],_0x1a8c88=_0x231462||_0x1ab5c3['height'];_0x37ff8c&&this['isPowerOf2'](_0x37ff8c)&&_0x1a8c88&&this['isPowerOf2'](_0x1a8c88)?this['ctx'][_0x58bd84(0x3c4)](this[_0x58bd84(0x27f)]['TEXTURE_2D']):(this['ctx'][_0x58bd84(0x265)](this['ctx']['TEXTURE_2D'],this[_0x58bd84(0x27f)]['TEXTURE_WRAP_S'],this[_0x58bd84(0x27f)]['CLAMP_TO_EDGE']),this['ctx'][_0x58bd84(0x265)](this[_0x58bd84(0x27f)]['TEXTURE_2D'],this['ctx'][_0x58bd84(0x1e8)],this['ctx']['CLAMP_TO_EDGE']),this[_0x58bd84(0x27f)]['texParameteri'](this[_0x58bd84(0x27f)][_0x58bd84(0x245)],this[_0x58bd84(0x27f)][_0x58bd84(0x387)],this[_0x58bd84(0x27f)][_0x58bd84(0x326)]));}else this[_0x58bd84(0x27f)][_0x58bd84(0x265)](this['ctx'][_0x58bd84(0x245)],this['ctx']['TEXTURE_WRAP_S'],this[_0x58bd84(0x27f)]['CLAMP_TO_EDGE']),this['ctx'][_0x58bd84(0x265)](this[_0x58bd84(0x27f)][_0x58bd84(0x245)],this[_0x58bd84(0x27f)][_0x58bd84(0x1e8)],this[_0x58bd84(0x27f)]['CLAMP_TO_EDGE']),this[_0x58bd84(0x27f)][_0x58bd84(0x265)](this[_0x58bd84(0x27f)][_0x58bd84(0x245)],this[_0x58bd84(0x27f)]['TEXTURE_MIN_FILTER'],this['ctx']['LINEAR']),this[_0x58bd84(0x27f)][_0x58bd84(0x265)](this[_0x58bd84(0x27f)][_0x58bd84(0x245)],this['ctx']['TEXTURE_MAG_FILTER'],this[_0x58bd84(0x27f)][_0x58bd84(0x326)]);let _0x14dd12=this[_0x58bd84(0x27f)][_0x58bd84(0x2a6)](this[_0x58bd84(0x2fb)],_0x3de82a);return _0x14dd12&&this[_0x58bd84(0x27f)][_0x58bd84(0x332)](_0x14dd12,_0x4879e0),_0x162e54;}[_0x5f573c(0x2e6)](){const _0x5b9734=_0x5f573c;this[_0x5b9734(0x313)]=setTimeout(()=>{const _0x330393=_0x5b9734,_0x372029=Object[_0x330393(0x38d)](this[_0x330393(0x309)]);_0x372029[_0x330393(0x372)]&&(this[_0x330393(0x32d)](_0x372029[Math[_0x330393(0x31f)](Math['random']()*_0x372029[_0x330393(0x372)])]),this[_0x330393(0x2e6)]());},this[_0x5b9734(0x1f5)][_0x5b9734(0x35c)]);}[_0x5f573c(0x25d)](_0x1e8deb,_0x4afbc0,_0x43de3a=null){const _0x2957dd=_0x5f573c;if(_0x1e8deb[_0x2957dd(0x231)](_0x2957dd(0x3c1))>-0x1){fetch(_0x4afbc0)['then'](async _0x128a09=>{const _0x15d8e1=_0x2957dd;this[_0x15d8e1(0x289)]=await _0x128a09[_0x15d8e1(0x3ac)](),this[_0x15d8e1(0x20c)]={};let _0x5091a6=Object[_0x15d8e1(0x38d)](this[_0x15d8e1(0x289)]);for(let _0xcfcf89=0x0;_0xcfcf89<_0x5091a6['length'];++_0xcfcf89){let _0x18fd15=_0x5091a6[_0xcfcf89];if(_0x18fd15==_0x15d8e1(0x2b4)){this[_0x15d8e1(0x365)]=this[_0x15d8e1(0x289)][_0x18fd15],delete this[_0x15d8e1(0x289)][_0x18fd15];continue;}let _0x27a5a5=this[_0x15d8e1(0x289)][_0x18fd15];for(let _0xa37b83=0x0;_0xa37b83<_0x27a5a5['length'];++_0xa37b83){let _0x324fb7=_0x27a5a5[_0xa37b83];this[_0x15d8e1(0x20c)]['#'+_0x324fb7]=_0x18fd15;}}Object[_0x15d8e1(0x38d)](this[_0x15d8e1(0x289)])['length']>0x0&&(console['log'](_0x15d8e1(0x391),this[_0x15d8e1(0x289)]),console[_0x15d8e1(0x20a)](_0x15d8e1(0x2c8),this[_0x15d8e1(0x20c)]),setTimeout(()=>{this['MakeSureAdPerPlace']();},0xbb8));});if(_0x43de3a)_0x43de3a();return;}const _0x2e721e=new Image();return _0x2e721e['crossOrigin']=_0x2957dd(0x37e),_0x2e721e[_0x2957dd(0x2cf)]=()=>{const _0x5f89fc=_0x2957dd;let _0x4caebb=Object[_0x5f89fc(0x38d)](this[_0x5f89fc(0x309)])['length']===0x0;this[_0x5f89fc(0x309)][_0x1e8deb]=_0x2e721e;_0x4caebb&&(this[_0x5f89fc(0x32d)](_0x1e8deb),this['options'][_0x5f89fc(0x302)]&&(clearTimeout(this['autoAddIndex']),this[_0x5f89fc(0x2e6)]()));if(_0x43de3a)_0x43de3a();},_0x2e721e['onerror']=()=>{const _0x40e2dc=_0x2957dd;alert(_0x40e2dc(0x2fa)+_0x4afbc0+'\x20.');},_0x2e721e[_0x2957dd(0x321)]=_0x4afbc0,_0x2e721e;}['MakeSureAdPerPlace'](){const _0x1ad221=_0x5f573c;if(this[_0x1ad221(0x289)]){let _0x342c73=Object[_0x1ad221(0x38d)](this['place2ad']);for(let _0x2ad034=0x0;_0x2ad034<_0x342c73[_0x1ad221(0x372)];++_0x2ad034){let _0x2c0a7b=_0x342c73[_0x2ad034];!this['place2AdTexture'][_0x2c0a7b]&&this[_0x1ad221(0x289)][_0x2c0a7b][_0x1ad221(0x372)]>0x0&&(console['log']('MakeSureAdPerPlace:\x20Set\x20default\x20image\x20'+this[_0x1ad221(0x289)][_0x2c0a7b][0x0]+_0x1ad221(0x2ce)+_0x2c0a7b),this[_0x1ad221(0x32d)]('#'+this['place2ad'][_0x2c0a7b][0x0]));}}}[_0x5f573c(0x32d)](_0x6202b){const _0x253efd=_0x5f573c;console[_0x253efd(0x20a)](_0x253efd(0x34b)+_0x6202b);let _0x6f12bb=this[_0x253efd(0x309)][_0x6202b];if(!_0x6f12bb)console[_0x253efd(0x322)](_0x253efd(0x1ed)+_0x6202b+'\x27');else{if(this[_0x253efd(0x20c)]&&this[_0x253efd(0x20c)][_0x6202b]){let _0x144f4d=this[_0x253efd(0x20c)][_0x6202b];console[_0x253efd(0x20a)](_0x253efd(0x2e3)+_0x144f4d);let _0x209e6a=this[_0x253efd(0x375)](_0x144f4d),_0x6deb7a='ad'+(_0x209e6a-0x1);if(this['place2AdTexture'][_0x144f4d])this[_0x253efd(0x27f)][_0x253efd(0x2d2)](this[_0x253efd(0x2b2)][_0x144f4d][_0x253efd(0x39a)]);this[_0x253efd(0x2b2)][_0x144f4d]={'tex':this['GenerateTexture'](_0x6f12bb,_0x209e6a,_0x6deb7a),'texUnitId':_0x209e6a,'texName':_0x6deb7a,'name':_0x6202b};}else this[_0x253efd(0x1d6)]!=null&&this[_0x253efd(0x27f)][_0x253efd(0x2d2)](this[_0x253efd(0x1d6)]),this[_0x253efd(0x1d6)]=this[_0x253efd(0x319)](_0x6f12bb,this[_0x253efd(0x36a)](),'ad0'),this[_0x253efd(0x2ae)]=_0x6f12bb,this[_0x253efd(0x35d)]=_0x6202b;}}[_0x5f573c(0x30b)](_0x39bd0e){const _0x489b0f=_0x5f573c;this['metadataMap'][_0x39bd0e['timecode']]=_0x39bd0e,this['metadataArr']['push'](_0x39bd0e[_0x489b0f(0x243)]);}[_0x5f573c(0x2fd)](){const _0x3d6668=_0x5f573c;(this['requestFullscreen']||this[_0x3d6668(0x268)])[_0x3d6668(0x1f6)](this)[_0x3d6668(0x20f)](_0x4182fc=>{const _0x79b4f4=_0x3d6668;console[_0x79b4f4(0x322)](_0x4182fc);});}[_0x5f573c(0x1fc)](){const _0x2f959d=_0x5f573c;let _0xe23971=this[_0x2f959d(0x27f)]['getAttribLocation'](this['program'],_0x2f959d(0x291)),_0x315201=this[_0x2f959d(0x27f)]['getUniformLocation'](this[_0x2f959d(0x2fb)],_0x2f959d(0x368)),_0x8b718=this[_0x2f959d(0x27f)]['getUniformLocation'](this['program'],'u_resolution2');this[_0x2f959d(0x27f)]['uniform2f'](_0x315201,this[_0x2f959d(0x27f)]['canvas']['width'],this[_0x2f959d(0x27f)][_0x2f959d(0x324)][_0x2f959d(0x3ae)]),this['ctx']['uniform2f'](_0x8b718,this[_0x2f959d(0x27f)][_0x2f959d(0x324)][_0x2f959d(0x333)],this[_0x2f959d(0x27f)][_0x2f959d(0x324)][_0x2f959d(0x3ae)]);if(this[_0x2f959d(0x2b0)]==0x2){let _0x136c69=this['ctx'][_0x2f959d(0x2a6)](this[_0x2f959d(0x2fb)],'u_matrix'),_0x516b9f=[0x1,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x1];this[_0x2f959d(0x27f)][_0x2f959d(0x2ab)](_0x136c69,![],_0x516b9f);}let _0x3145bc=null;this[_0x2f959d(0x2b0)]==0x2&&(_0x3145bc=this[_0x2f959d(0x27f)][_0x2f959d(0x21f)](),this[_0x2f959d(0x27f)][_0x2f959d(0x347)](_0x3145bc));let _0x557fc4=this[_0x2f959d(0x27f)][_0x2f959d(0x2b1)]();this[_0x2f959d(0x27f)][_0x2f959d(0x283)](_0xe23971),this[_0x2f959d(0x27f)]['bindBuffer'](this[_0x2f959d(0x27f)][_0x2f959d(0x1fa)],_0x557fc4);let _0x28fb25=0x2,_0x10a016=this[_0x2f959d(0x27f)]['FLOAT'],_0x27b6af=![],_0xa416f5=0x0,_0x470f6f=0x0;this[_0x2f959d(0x27f)][_0x2f959d(0x2a3)](_0xe23971,_0x28fb25,_0x10a016,_0x27b6af,_0xa416f5,_0x470f6f);let _0x20b8f0=this[_0x2f959d(0x27f)][_0x2f959d(0x2b1)]();this[_0x2f959d(0x27f)][_0x2f959d(0x259)](this['ctx'][_0x2f959d(0x1fa)],_0x20b8f0),this[_0x2f959d(0x27f)][_0x2f959d(0x3c2)](this['ctx']['ARRAY_BUFFER'],new Float32Array([0x0,0x0,0x1,0x0,0x0,0x1,0x0,0x1,0x1,0x0,0x1,0x1]),this['ctx'][_0x2f959d(0x2cb)]),this['ctx'][_0x2f959d(0x252)](0x0,0x0,this[_0x2f959d(0x27f)][_0x2f959d(0x324)][_0x2f959d(0x333)],this[_0x2f959d(0x27f)][_0x2f959d(0x324)][_0x2f959d(0x3ae)]),this[_0x2f959d(0x27f)]['clearColor'](0x0,0x0,0x0,0x0),this[_0x2f959d(0x27f)][_0x2f959d(0x3b9)](this[_0x2f959d(0x27f)][_0x2f959d(0x292)]|this[_0x2f959d(0x27f)]['DEPTH_BUFFER_BIT']),this[_0x2f959d(0x27f)]['bindBuffer'](this[_0x2f959d(0x27f)][_0x2f959d(0x1fa)],_0x557fc4),this[_0x2f959d(0x1dd)](this['ctx'],0x0,0x0,this[_0x2f959d(0x324)][_0x2f959d(0x333)],this['canvas'][_0x2f959d(0x3ae)]);let _0x507f04=this[_0x2f959d(0x27f)][_0x2f959d(0x39e)],_0x4c7e72=0x6;this[_0x2f959d(0x27f)][_0x2f959d(0x2a7)](_0x507f04,_0x470f6f,_0x4c7e72);}[_0x5f573c(0x1dd)](_0x196f46,_0x15bd0e,_0x30fddd,_0xcb15b6,_0x4b8bc1){const _0x72edda=_0x5f573c;let _0x2b6ff1=_0x15bd0e,_0x308a57=_0x15bd0e+_0xcb15b6,_0x33f151=_0x30fddd,_0x3c96e1=_0x30fddd+_0x4b8bc1;this[_0x72edda(0x27f)][_0x72edda(0x3c2)](this['ctx'][_0x72edda(0x1fa)],new Float32Array([_0x2b6ff1,_0x33f151,_0x308a57,_0x33f151,_0x2b6ff1,_0x3c96e1,_0x2b6ff1,_0x3c96e1,_0x308a57,_0x33f151,_0x308a57,_0x3c96e1]),this['ctx'][_0x72edda(0x2cb)]);}[_0x5f573c(0x3cb)](_0x5c213b){const _0x339be9=_0x5f573c;let _0x2e5e29=BB[_0x339be9(0x3b6)][_0x339be9(0x3a3)],_0x12db3f=_0x2e5e29[_0x339be9(0x24c)](_0x5c213b),_0x216e5e=_0x2e5e29[_0x339be9(0x378)](_0x12db3f,0x1,this[_0x339be9(0x2ca)]),_0x237af2=_0x2e5e29[_0x339be9(0x378)](_0x12db3f,0x2,this[_0x339be9(0x2ca)]),_0x58ac4c=_0x2e5e29['printTimecode'](_0x216e5e),_0x118593=_0x2e5e29[_0x339be9(0x1e4)](_0x237af2);this[_0x339be9(0x21e)]=!![];const _0x1d0a4b=performance[_0x339be9(0x2fc)]();let _0x372601=null,_0x26180b=[];if(this[_0x339be9(0x300)][_0x5c213b]){_0x372601=this[_0x339be9(0x300)][_0x5c213b];this[_0x339be9(0x300)][_0x58ac4c]&&_0x26180b['push']({'nextVideo':this[_0x339be9(0x300)][_0x58ac4c],'nextTimeCode':_0x58ac4c});this[_0x339be9(0x300)][_0x118593]&&_0x26180b[_0x339be9(0x2b5)]({'nextVideo':this[_0x339be9(0x300)][_0x118593],'nextTimeCode':_0x118593});const _0x3361e3=this[_0x339be9(0x24b)][_0x339be9(0x231)](_0x5c213b);if(_0x3361e3>-0x5)this[_0x339be9(0x24b)][_0x339be9(0x2a5)](0x0,_0x3361e3-0x4)['forEach'](_0x4ffe81=>{delete this['metadataMap'][_0x4ffe81];});this[_0x339be9(0x2d5)]++;}else this[_0x339be9(0x382)]++,this['counter']>0x3c&&(this[_0x339be9(0x382)]=0x0,console[_0x339be9(0x322)](_0x339be9(0x2eb)+_0x5c213b)),this['alphaFound']++;this[_0x339be9(0x2d5)]>0x1e&&this[_0x339be9(0x324)]['style'][_0x339be9(0x29e)]==_0x339be9(0x2be)&&(this[_0x339be9(0x324)][_0x339be9(0x3a7)]['display']='');let _0x48f6c6=[];this['canvas']['width']=0x500,this[_0x339be9(0x324)]['height']=0x2d0;let _0x10a6bc=0x0;this[_0x339be9(0x3cd)]=[];if(_0x372601){let _0x305550=![];if(this[_0x339be9(0x1f5)]['debug']){var _0x2030f2=document['getElementById'](_0x339be9(0x37f));_0x305550=_0x2030f2['checked'];}if(!_0x305550)for(const _0x248ba8 in _0x372601[_0x339be9(0x399)]){const _0x4e6147=_0x372601[_0x339be9(0x399)][_0x248ba8];if(!_0x4e6147[_0x339be9(0x25e)])continue;let _0xaac2c7=_0x339be9(0x36b)+_0x10a6bc,_0x37ef40=this[_0x339be9(0x208)]()+_0x10a6bc;_0x4e6147[_0x339be9(0x21a)]=this['GenerateTexture'](_0x4e6147[_0x339be9(0x25e)],_0x37ef40,_0xaac2c7,this[_0x339be9(0x27f)][_0x339be9(0x331)],_0x4e6147[_0x339be9(0x333)],_0x4e6147[_0x339be9(0x3ae)],!![]),_0x4e6147[_0x339be9(0x25e)]=null;if(!_0x4e6147[_0x339be9(0x21a)]){console[_0x339be9(0x322)](_0x339be9(0x34f));continue;}_0x48f6c6[_0x339be9(0x2b5)](_0x4e6147['alphaTex']);let _0x3f2243='hasLogo'+_0x10a6bc,_0x44d70b=this[_0x339be9(0x27f)]['getUniformLocation'](this[_0x339be9(0x2fb)],_0x3f2243);this['ctx'][_0x339be9(0x332)](_0x44d70b,0x1);let _0x437747=_0x339be9(0x1f0)+_0x10a6bc,_0x3acdec=this['ctx'][_0x339be9(0x2a6)](this['program'],_0x437747),_0x27ef99=![];_0x4e6147['name'][_0x339be9(0x231)]('blur')>=0x0?(this[_0x339be9(0x27f)][_0x339be9(0x332)](_0x3acdec,0x63),_0x27ef99=!![]):this[_0x339be9(0x27f)][_0x339be9(0x332)](_0x3acdec,this[_0x339be9(0x29f)](_0x4e6147));let _0x263566='u_alpha'+_0x10a6bc+_0x339be9(0x373),_0x16b73d=this[_0x339be9(0x27f)][_0x339be9(0x2a6)](this[_0x339be9(0x2fb)],_0x263566);this['ctx']['uniform2fv'](_0x16b73d,[_0x4e6147['maskX'],_0x4e6147[_0x339be9(0x267)]]);let _0x114c44=_0x339be9(0x311)+_0x10a6bc+_0x339be9(0x28c),_0x194d20=this['ctx'][_0x339be9(0x2a6)](this[_0x339be9(0x2fb)],_0x114c44);this[_0x339be9(0x27f)][_0x339be9(0x2ec)](_0x194d20,[_0x4e6147[_0x339be9(0x333)],_0x4e6147[_0x339be9(0x3ae)]]);let _0x94f0d2=_0x339be9(0x2a9)+_0x10a6bc,_0x3a80b3=this[_0x339be9(0x27f)][_0x339be9(0x2a6)](this[_0x339be9(0x2fb)],_0x94f0d2);this[_0x339be9(0x27f)][_0x339be9(0x2ab)](_0x3a80b3,![],_0x4e6147[_0x339be9(0x364)]);if(!_0x27ef99){let _0x27c5b6={'l':-0x1,'t':-0x1,'r':-0x1,'b':-0x1};for(let _0x47057c of _0x4e6147[_0x339be9(0x32c)]){if(_0x47057c['x']<_0x27c5b6['l']||_0x27c5b6['l']==-0x1)_0x27c5b6['l']=_0x47057c['x'];if(_0x47057c['x']>_0x27c5b6['r']||_0x27c5b6['r']==-0x1)_0x27c5b6['r']=_0x47057c['x'];if(_0x47057c['y']<_0x27c5b6['t']||_0x27c5b6['t']==-0x1)_0x27c5b6['t']=_0x47057c['y'];if(_0x47057c['y']>_0x27c5b6['b']||_0x27c5b6['b']==-0x1)_0x27c5b6['b']=_0x47057c['y'];}_0x27c5b6['l']/=_0x372601[_0x339be9(0x2d6)][_0x339be9(0x333)],_0x27c5b6['r']/=_0x372601['canvasSize']['width'],_0x27c5b6['t']/=_0x372601['canvasSize'][_0x339be9(0x3ae)],_0x27c5b6['b']/=_0x372601['canvasSize'][_0x339be9(0x3ae)],this[_0x339be9(0x3cd)][_0x339be9(0x2b5)]({'name':this['AdNameForPlaceHolder'](_0x4e6147),'rect':_0x27c5b6});}_0x10a6bc++;}}else{}for(;_0x10a6bc<BB[_0x339be9(0x343)];++_0x10a6bc){let _0x322c44='hasLogo'+_0x10a6bc,_0x2a93cf=this[_0x339be9(0x27f)]['getUniformLocation'](this[_0x339be9(0x2fb)],_0x322c44);this[_0x339be9(0x27f)][_0x339be9(0x332)](_0x2a93cf,0x0);let _0x2328d6=_0x339be9(0x36b)+_0x10a6bc,_0x386e09=this['ctx'][_0x339be9(0x2a6)](this[_0x339be9(0x2fb)],_0x2328d6);this['ctx'][_0x339be9(0x332)](_0x386e09,0x0);}if(this[_0x339be9(0x1f5)][_0x339be9(0x385)][_0x339be9(0x2dc)]){let _0x12a01f=_0x5c213b[_0x339be9(0x320)](':')[0x3],_0x40f0fc=_0x12a01f[_0x339be9(0x231)]('.')>=0x0?0x2:0x1,_0x45a9a0=parseInt(_0x12a01f[_0x339be9(0x320)]('.')[0x0])%0xa,_0x1730a8=_0x45a9a0+'.'+_0x40f0fc,_0x3c7901=this[_0x339be9(0x208)]()+0x5,_0x8706f9=this[_0x339be9(0x319)](this['digitImg'][_0x1730a8],_0x3c7901,_0x339be9(0x330));_0x48f6c6[_0x339be9(0x2b5)](_0x8706f9);let _0x50555a=_0x339be9(0x355),_0x26c4d8=this[_0x339be9(0x27f)][_0x339be9(0x2a6)](this[_0x339be9(0x2fb)],_0x50555a);this['ctx'][_0x339be9(0x332)](_0x26c4d8,0x1);let _0x8953c2='u_digitTopLeft',_0xe075bc=this[_0x339be9(0x27f)]['getUniformLocation'](this[_0x339be9(0x2fb)],_0x8953c2);this['ctx'][_0x339be9(0x2ec)](_0xe075bc,[0x0,0x0]);let _0x8c9d34=_0x339be9(0x33e),_0x28a6d3=this[_0x339be9(0x27f)][_0x339be9(0x2a6)](this[_0x339be9(0x2fb)],_0x8c9d34);this[_0x339be9(0x27f)][_0x339be9(0x2ec)](_0x28a6d3,[0xc8,0xc8]);}else{let _0x3d5bb7=_0x339be9(0x355),_0x2e0e70=this[_0x339be9(0x27f)]['getUniformLocation'](this[_0x339be9(0x2fb)],_0x3d5bb7);this[_0x339be9(0x27f)][_0x339be9(0x332)](_0x2e0e70,0x0);}this[_0x339be9(0x1fc)]();for(const _0xbfa201 of _0x48f6c6){this[_0x339be9(0x27f)][_0x339be9(0x2d2)](_0xbfa201);}}[_0x5f573c(0x3d0)](){const _0x48efe0=_0x5f573c;return this[_0x48efe0(0x324)];}},BB['Ads']=(_0x453a1c,_0x4f30b7)=>{const _0x34f8c9=_0x5f573c;let _0x17363a=[];const _0x111417=new BB['Socket']((_0x4229f4,_0x22b6dd)=>{const _0x4259a3=_0x530f;switch(_0x4229f4){case _0x4259a3(0x2c4):console[_0x4259a3(0x20a)](_0x4259a3(0x24a),_0x22b6dd);break;case'join':const _0x2e14f1=document[_0x4259a3(0x340)]('name');_0x2e14f1&&(_0x2e14f1[_0x4259a3(0x247)]=_0x111417[_0x4259a3(0x36f)]);break;case _0x4259a3(0x22b):if(_0x22b6dd['player']===_0x111417[_0x4259a3(0x36f)]){if(_0x22b6dd[_0x4259a3(0x334)]){const _0x511a23='#external';_0x453a1c[_0x4259a3(0x25d)](_0x511a23,_0x22b6dd[_0x4259a3(0x334)],()=>{_0x453a1c['SelectAd'](_0x511a23);});}else _0x17363a=_0x22b6dd[_0x4259a3(0x218)],_0x17363a[_0x4259a3(0x372)]&&_0x453a1c[_0x4259a3(0x32d)](_0x17363a[0x0]);}break;case _0x4259a3(0x218):_0x17363a=_0x22b6dd;_0x17363a['length']&&_0x453a1c[_0x4259a3(0x32d)](_0x17363a[0x0]);break;}});var _0x1ab333=document[_0x34f8c9(0x2df)](_0x34f8c9(0x234));_0x1ab333[_0x34f8c9(0x321)]=_0x34f8c9(0x2c7),document[_0x34f8c9(0x26f)](_0x34f8c9(0x37a))[0x0][_0x34f8c9(0x299)](_0x1ab333),_0x1ab333[_0x34f8c9(0x2cf)]=function(){const _0x22e014=_0x34f8c9;_0x111417[_0x22e014(0x337)](_0x4f30b7['augmentation']['channelName']);},_0x4f30b7[_0x34f8c9(0x385)][_0x34f8c9(0x359)]?_0x453a1c[_0x34f8c9(0x25d)](_0x34f8c9(0x1d4),_0x4f30b7[_0x34f8c9(0x385)][_0x34f8c9(0x359)]):fetch(_0x34f8c9(0x27b)+_0x4f30b7['augmentation'][_0x34f8c9(0x3b5)])[_0x34f8c9(0x34e)](async _0x2f4912=>{const _0x5880c9=_0x34f8c9,_0x185603=await _0x2f4912[_0x5880c9(0x3ac)]();_0x185603['forEach'](_0x2a5eac=>{const _0x3bfe0d=_0x5880c9;_0x453a1c[_0x3bfe0d(0x25d)]('#'+_0x2a5eac[_0x3bfe0d(0x36f)],_0x2a5eac['url']);});});},BB['MetaDataFetcher']=(_0x334898,_0x59dfdc)=>{const _0x27f36c=_0x5f573c;let _0x4064f6=BB[_0x27f36c(0x3b6)][_0x27f36c(0x3a3)],_0x3170c8=BB[_0x27f36c(0x3b6)][_0x27f36c(0x298)](_0x334898[_0x27f36c(0x23d)]),_0x53010f,_0xf897ff,_0x3b7ff7=null,_0x15e19d=null;console[_0x27f36c(0x20a)]('Project\x20name:\x20'+_0x334898[_0x27f36c(0x312)]);const _0x3a91fc=_0x844dc=>{const _0x3a8e24=_0x27f36c;_0x53010f=_0x844dc,console[_0x3a8e24(0x20a)](_0x3a8e24(0x3a0)+_0x334898[_0x3a8e24(0x312)]+':\x20'+_0x53010f),_0xf897ff&&_0x59b023(_0xf897ff);};async function _0x43a26b(){const _0x39cf0f=_0x27f36c,_0x1119f1=await fetch(_0x334898[_0x39cf0f(0x2a8)]),_0xf5475f=await _0x1119f1[_0x39cf0f(0x3ac)]();_0x3a91fc(_0x334898[_0x39cf0f(0x312)]);}_0x43a26b();const _0x93c4af=_0x111ee0=>{_0xf897ff=_0x111ee0,_0x53010f&&_0x59b023(_0xf897ff);},_0x59b023=_0x2f9b84=>{const _0x492582=_0x27f36c;if(_0x3b7ff7==null){console[_0x492582(0x284)](_0x492582(0x2da));let _0x512201=new Blob([META_WORKER],{'type':_0x492582(0x346)});_0x3b7ff7=new Worker(URL[_0x492582(0x379)](_0x512201)),_0x3b7ff7[_0x492582(0x253)]=function(_0x1c4341){const _0x2e7072=_0x492582;console[_0x2e7072(0x322)](_0x2e7072(0x2b6),_0x1c4341);},_0x3b7ff7[_0x492582(0x33a)](_0x492582(0x322),function(_0x3175f4){const _0x5f3705=_0x492582;console[_0x5f3705(0x322)](_0x5f3705(0x2e0),_0x3175f4[_0x5f3705(0x2d8)]);});if(_0x3b7ff7)console[_0x492582(0x284)](_0x492582(0x209));else console[_0x492582(0x284)](_0x492582(0x39f));_0x3b7ff7[_0x492582(0x33a)](_0x492582(0x2d8),_0x305035=>{const _0x27bd71=_0x492582;if(_0x305035[_0x27bd71(0x240)][_0x27bd71(0x3c7)]){}else _0x59dfdc[_0x27bd71(0x30b)](_0x305035['data']);});let _0x47630a=_0x4064f6['TimeCodeArray2TimeCodeJson'](_0x4064f6[_0x492582(0x200)](_0x2f9b84,_0x3170c8,!![]));_0x3b7ff7[_0x492582(0x3b4)]({'cloudFrontURL':_0x334898[_0x492582(0x348)],'folderName':_0x53010f,'tc':_0x4064f6['printTimecode'](_0x47630a,![])});}else{let _0x125108=_0x4064f6[_0x492582(0x28d)](_0x4064f6['Frames2Timecode'](_0x2f9b84,_0x3170c8,!![]));_0x3b7ff7[_0x492582(0x3b4)]({'tc':_0x4064f6[_0x492582(0x1e4)](_0x125108,![]),'enabled':_0x334898[_0x492582(0x323)]});}};return{'setLastFrame':_0x93c4af};},BB[_0x5f573c(0x2bf)]=class{constructor(_0x58969c,_0x5031eb,_0x2bf5af){const _0x374b0d=_0x5f573c;this[_0x374b0d(0x1d8)]=_0x58969c,this[_0x374b0d(0x1ff)]=_0x5031eb,console[_0x374b0d(0x20a)](_0x374b0d(0x2f8),_0x2bf5af),this[_0x374b0d(0x1f5)]=Object[_0x374b0d(0x396)]({'enabled':!![],'stopAugment':![],'gameId':_0x374b0d(0x1e0),'medialook':![],'allGamesURL':'https://www.virtualott.com/games/','cloudFrontURL':'https://db8igqxlbvayn.cloudfront.net/prod','mediaIdJsonURL':_0x374b0d(0x37b),'offsetJsonURL':_0x374b0d(0x354),'frameRateMode':BB[_0x374b0d(0x38c)][_0x374b0d(0x2d4)],'renderingMode':BB['RenderingMode']['Augment'],'SynchMethod':BB[_0x374b0d(0x1f4)][_0x374b0d(0x1e1)],'debug':![],'augmentation':{'renderTimecode':!![],'offset':0x0},'syncPoint':{'frame':0x0,'playerTime':0x0,'mediaTimeMS':0x0}},_0x2bf5af||{}),console[_0x374b0d(0x20a)](_0x374b0d(0x327),this['options']),this[_0x374b0d(0x1f5)][_0x374b0d(0x385)][_0x374b0d(0x3b5)]=_0x374b0d(0x2d9),console[_0x374b0d(0x284)]=function(_0x476a81){console['log']('OTTPlayer:\x20'+_0x476a81);},console[_0x374b0d(0x28a)]=function(_0x3403a7){const _0x270ced=_0x374b0d;console[_0x270ced(0x322)](_0x270ced(0x215)+_0x3403a7);};function _0x5c2c9b(_0x581575,_0x5d7c62){const _0x1d442e=_0x374b0d,_0x6c9b6e=_0x581575[_0x1d442e(0x320)]('.')[_0x1d442e(0x20e)](Number),_0x802adb=_0x5d7c62[_0x1d442e(0x320)]('.')[_0x1d442e(0x20e)](Number);for(let _0x58ee32=0x0;_0x58ee32<Math[_0x1d442e(0x261)](_0x6c9b6e[_0x1d442e(0x372)],_0x802adb[_0x1d442e(0x372)]);_0x58ee32++){const _0xe81b27=_0x6c9b6e[_0x58ee32]||0x0,_0x2865a2=_0x802adb[_0x58ee32]||0x0;if(_0xe81b27<_0x2865a2)return-0x1;else{if(_0xe81b27>_0x2865a2)return 0x1;}}return 0x0;}this[_0x374b0d(0x275)]();}[_0x5f573c(0x221)](){const _0x422e4d=_0x5f573c;if(typeof globalConfig==='undefined')this[_0x422e4d(0x1f5)]=Object[_0x422e4d(0x396)](this[_0x422e4d(0x1f5)],{});else this[_0x422e4d(0x1f5)]=Object[_0x422e4d(0x396)](this[_0x422e4d(0x1f5)],globalConfig);this[_0x422e4d(0x1f5)]['augmentation'][_0x422e4d(0x3bf)]=0x0,console['log'](_0x422e4d(0x308),this[_0x422e4d(0x1f5)]);if(!this[_0x422e4d(0x1f5)][_0x422e4d(0x1ea)]){let _0x5bf7b8=[_0x422e4d(0x206),'forplus',_0x422e4d(0x3b8),'debugText2','toggleBtn',_0x422e4d(0x220),_0x422e4d(0x21d),_0x422e4d(0x37f),'br1',_0x422e4d(0x3cc)];for(let _0x3aa087=0x0;_0x3aa087<_0x5bf7b8[_0x422e4d(0x372)];_0x3aa087++){const _0x32257e=document[_0x422e4d(0x340)](_0x5bf7b8[_0x3aa087]);_0x32257e&&(_0x32257e[_0x422e4d(0x3a7)]['display']=_0x422e4d(0x2be));}}let _0x181d08=BB[_0x422e4d(0x3b6)][_0x422e4d(0x36d)],_0x36db63=BB[_0x422e4d(0x3b6)]['TimeCodesFramesTranslator'];if(this['srcFrameRate'])this['SetFps'](this[_0x422e4d(0x1ff)]);this[_0x422e4d(0x2a0)](this[_0x422e4d(0x1f5)][_0x422e4d(0x312)]);}[_0x5f573c(0x27d)](){const _0x56e008=_0x5f573c;let _0x106050={};this['frameDrawer']=BB['Augmenter'](_0x106050,this[_0x56e008(0x1d8)],this[_0x56e008(0x1f5)]),this['options'][_0x56e008(0x1ec)]==BB[_0x56e008(0x376)]['Augment']&&this[_0x56e008(0x3bd)][_0x56e008(0x304)]();}async[_0x5f573c(0x275)](){const _0x569683=_0x5f573c,_0x192a7d=new URL(document[_0x569683(0x23c)]),_0x1e06b9=_0x192a7d[_0x569683(0x31e)][_0x569683(0x1f2)](_0x569683(0x29c))||'';if(_0x1e06b9!=='')try{const _0x37f1a8=await fetch(_0x1e06b9);if(!_0x37f1a8['ok'])throw new Error(_0x569683(0x3ab));const _0x1f3a12=await _0x37f1a8[_0x569683(0x3ac)]();console[_0x569683(0x20a)](_0x569683(0x290),_0x1f3a12);if(typeof globalConfig=='undefined')window[_0x569683(0x273)]={};globalConfig=Object[_0x569683(0x396)]({},globalConfig,_0x1f3a12);}catch(_0x572640){console[_0x569683(0x322)]('Error\x20fetching\x20JSON:',_0x572640);}this['init']();}async['fetchAndFindGameIdAndOffsetFromMediaId'](_0xbc893c){const _0x4828fa=_0x5f573c;try{const _0x4fc4cc=await fetch(this['options'][_0x4828fa(0x2cd)]+'/'+_0xbc893c);if(!_0x4fc4cc['ok'])throw new Error(_0x4828fa(0x1d9)+_0x4fc4cc[_0x4828fa(0x2e4)]);const _0x132be5=await _0x4fc4cc['json']();if(_0x132be5[_0x4828fa(0x202)]('GAME_ID')){const _0x4e6730=_0x132be5[_0x4828fa(0x260)];console[_0x4828fa(0x284)](_0x4828fa(0x335)+_0xbc893c+':\x20'+_0x4e6730),this['options'][_0x4828fa(0x312)]=_0x4e6730,console[_0x4828fa(0x20a)]('fetchAndFindGameIdAndOffsetFromMediaId:\x20I\x20Know\x20what\x20is\x20the\x20game\x20id\x20!\x20Its\x20'+this[_0x4828fa(0x1f5)][_0x4828fa(0x312)]+_0x4828fa(0x207)),this[_0x4828fa(0x27d)](),this[_0x4828fa(0x249)](this['options'][_0x4828fa(0x312)]);}else console[_0x4828fa(0x28a)]('MediaID\x20'+_0xbc893c+_0x4828fa(0x20b)),this[_0x4828fa(0x1f5)][_0x4828fa(0x3bb)]=!![];}catch(_0x244c38){console[_0x4828fa(0x28a)]('Error\x20fetching\x20and\x20processing\x20GameId\x20JSON:',_0x244c38);}}async[_0x5f573c(0x249)](_0x54d4a0){const _0x22ef6c=_0x5f573c;try{const _0x2510fb=await fetch(this[_0x22ef6c(0x1f5)][_0x22ef6c(0x2b8)]+'/'+this['options'][_0x22ef6c(0x312)]);!_0x2510fb['ok']&&(console[_0x22ef6c(0x284)](_0x22ef6c(0x1d9)+_0x2510fb[_0x22ef6c(0x2e4)]),setTimeout(()=>{const _0x331b07=_0x22ef6c;this[_0x331b07(0x249)](_0x54d4a0);},0x1388));const _0x6bf96c=await _0x2510fb['json']();if(_0x6bf96c[_0x22ef6c(0x202)]('offset')&&_0x6bf96c[_0x22ef6c(0x202)](_0x22ef6c(0x3d2))){const _0x43b061=_0x6bf96c[_0x22ef6c(0x3bf)],_0x1ea687=_0x6bf96c[_0x22ef6c(0x3d2)];_0x1ea687==!![]&&(console[_0x22ef6c(0x284)](_0x22ef6c(0x2b3)+_0x54d4a0+':\x20'+_0x43b061),this[_0x22ef6c(0x1f5)]['augmentation'][_0x22ef6c(0x3bf)]=_0x43b061,setTimeout(()=>{const _0x455cdc=_0x22ef6c;this[_0x455cdc(0x249)](_0x54d4a0);},0xea60));}else console[_0x22ef6c(0x284)](_0x22ef6c(0x1fb)+mediaID+_0x22ef6c(0x20b)),setTimeout(()=>{const _0x158f07=_0x22ef6c;this[_0x158f07(0x249)](_0x54d4a0);},0x1388);}catch(_0x10dc99){console[_0x22ef6c(0x28a)]('Error\x20fetching\x20and\x20processing\x20JSON:',_0x10dc99),setTimeout(()=>{const _0x4219bc=_0x22ef6c;this[_0x4219bc(0x249)](_0x54d4a0);},0x1388);}}['Toggle'](_0x178d2b){const _0x508ecd=_0x5f573c;this[_0x508ecd(0x1f5)][_0x508ecd(0x323)]=_0x178d2b;}[_0x5f573c(0x336)](){const _0x2823a5=_0x5f573c;return this[_0x2823a5(0x3bd)]['getCanvas']();}['SetFps'](_0x3cbc3a){const _0x2dc515=_0x5f573c;let _0x5e590a=BB[_0x2dc515(0x3b6)][_0x2dc515(0x36d)];switch(_0x3cbc3a){case 0x3c:this[_0x2dc515(0x1f5)][_0x2dc515(0x23d)]=BB[_0x2dc515(0x38c)]['Src60_MediaTime60'];break;case 0xea60/0x3e9:case 59.94:_0x5e590a[_0x2dc515(0x39c)]()||_0x5e590a['isAndroid']()?this[_0x2dc515(0x1f5)]['frameRateMode']=BB[_0x2dc515(0x38c)]['Src59_MediaTime59']:this[_0x2dc515(0x1f5)][_0x2dc515(0x23d)]=BB[_0x2dc515(0x38c)][_0x2dc515(0x28f)];break;case 0x7530/0x3e9:case 29.97:this[_0x2dc515(0x1f5)][_0x2dc515(0x23d)]=BB[_0x2dc515(0x38c)]['Src29_MediaTime29'];break;default:console[_0x2dc515(0x322)](_0x2dc515(0x270)+_0x3cbc3a+'fps');break;}}[_0x5f573c(0x272)](_0x4a7604){this['options']['syncPoint']=_0x4a7604;}[_0x5f573c(0x274)](_0x421e68){const _0x5ba900=_0x5f573c;this[_0x5ba900(0x3bd)][_0x5ba900(0x2ef)](_0x421e68);}[_0x5f573c(0x1d7)](_0x90a5e2){const _0xf84e2=_0x5f573c;this[_0xf84e2(0x3bd)][_0xf84e2(0x24e)](_0x90a5e2);}};
1
+ const _0x2629b0=_0x4c2f;function _0x27d9(){const _0x1b9f10=['AdNameForPlaceHolder','for\x20more\x20about\x20webgl-utils.js\x20see:','attachShader','lastAd','forplus','doNotRenderAugmentationCheckbox','BBlog','name','offset\x20for\x20','roommembers\x20message:\x20','padStart','Error\x20fetching\x20and\x20processing\x20GameId\x20JSON:','HTTP\x20error!\x20Status:\x20','CLDC',',\x20time:\x20','clear','Error\x20from\x20worker:','shift','iPad','onNewMetadata','msMaxTouchPoints','channelName','clientWidth','textContent','MetaDataFetcher','right','field','indexOf','left','top','\x20room','bindTexture','now','location','hasDigit','priv','maskY','digitImg','ad2place',',\x20so\x20I\x27m\x20launching\x20the\x20meta-data\x20fetcher\x20web-worker','data',',\x20offset:\x20','STATIC_DRAW','Win','an\x20Android\x20phone','Failed\x20to\x20create\x20alpha\x20texture','display','getMinutes','weHaveTheGameID','messageroom','join','message','\x20playing\x20at\x20','globalConfig','u_digitSize','Video\x20object\x20is\x20not\x20defined.\x20This\x20script\x20might\x20not\x20be\x20running\x20in\x20a\x20browser\x20environment.','Src60_MediaTime59','Probable\x20videoFrameCallback\x20was\x20not\x20fired.\x20Apllying\x20correction\x20mechanism\x20(','Average\x20refresh\x20screen\x20rate:\x20','videoStarted','isConnected','absolute','img','Socket','ads:','value','searchParams','srcFrameRate','onNewSegment','stopAugment','matchItem','fromCharCode','toLowerCase','renderingMode','1929770cpWkyM','\x0a\x0a^^^\x20','u_resolution','Calculating\x20ScreenFrameRate','TexUnitForPlaceHolder','FrameRateMode',',\x20offset:\x20<span\x20style=\x27color:','SHADER_TYPE','digitTex','Silk','FPS\x20not\x20supported','substring','splice','video','COLOR_BUFFER_BIT','keys','appendChild','maskX','width','undefined','RenderDigits','\x0a\x0a//High\x20precision\x20mode\x0aprecision\x20highp\x20float;\x0a\x0a//\x20an\x20attribute\x20is\x20an\x20input\x20(in)\x20to\x20a\x20vertex\x20shader.\x0a//\x20It\x20will\x20receive\x20vertex\x20data\x20from\x20the\x20buffer\x0aattribute\x20vec2\x20a_position;\x0aattribute\x20vec2\x20a_texCoord;\x0auniform\x20vec2\x20u_resolution;\x0avarying\x20vec2\x20v_texCoord;\x0a\x0a\x0a//\x20Main\x20vertex\x20shader\x0avoid\x20main()\x20{\x0a\x20\x20//\x20convert\x20the\x20rectangle\x20from\x20pixels\x20to\x200.0\x20to\x201.0\x0a\x20\x20\x20vec2\x20zeroToOne\x20=\x20a_position\x20/\x20u_resolution;\x0a\x0a\x20\x20\x20//\x20convert\x20from\x200->1\x20to\x200->2\x0a\x20\x20\x20vec2\x20zeroToTwo\x20=\x20zeroToOne\x20*\x202.0;\x0a\x0a\x20\x20\x20//\x20convert\x20from\x200->2\x20to\x20-1->+1\x20(clipspace)\x0a\x20\x20\x20vec2\x20clipSpace\x20=\x20zeroToTwo\x20-\x201.0;\x0a\x0a\x20\x20\x20gl_Position\x20=\x20vec4(clipSpace\x20*\x20vec2(1,\x20-1),\x200,\x201);\x0a\x0a\x20\x20\x20//\x20pass\x20the\x20texCoord\x20to\x20the\x20fragment\x20shader\x0a\x20\x20\x20//\x20The\x20GPU\x20will\x20interpolate\x20this\x20value\x20between\x20points.\x0a\x20\x20\x20v_texCoord\x20=\x20a_texCoord;\x0a}\x0a','script','composer::SelectAd:\x20selected\x20ad\x20is\x20','ANI','fragmentShaderSource','offsetTop','requestAnimationFrame\x20is\x20not\x20supported','currentAds2BoundingRect','an\x20iPad','OnNewSegment','metadata','br2','Opera','console','\x20Time:\x20','canvasSize','push','a\x20Mac','timeDate2TCString','BB.Utils.getMediaTimeFPS:\x20Unknown\x20FrameRate\x20mode','autoAddIndex','enabled','Unknown','debugText','videoCopier','platform','getProgramParameter','VID','UNPACK_FLIP_Y_WEBGL','requestVideoFrameCallback\x20is\x20supported','socket\x20connected','DEPTH_BUFFER_BIT','_nextAdvertisement','loadedmetadata','Unsupported\x20src\x20frame-rate:\x20','SelectAd:\x20Failed\x20to\x20find\x20image\x20\x27','userAgent','bindVertexArray','https://www.virtualott.com/ads/','getGlobalConfig','isArray','UNSIGNED_BYTE','Android','3NBSrAv',',\x20took:\x20','Src59_MediaTime60','getUTCHours','log','timeCodeStr2TimeCodeArray:\x20Failed\x20to\x20parse\x20','requestAnimationFrame\x20is\x20supported','black','placeholders','vendor','map','Error\x20in\x20program\x20linking:\x20',',\x20PlayerTime:','options\x20after\x20merge\x20with\x20the\x20global\x20options:\x20','split','webgl2','alphaAsUint8Array','PlayBook','isWindows','https://cdnjs.cloudflare.com/ajax/libs/socket.io/2.3.0/socket.io.js','uniform1i','ALPHA','text','place2AdTexture','abs','bindBuffer','getSeconds','options\x20after\x20merge\x20with\x20MK\x27s\x20options:\x20','x-shader/x-fragment','Missing\x20meta\x20data\x20at\x20time\x20code\x20','RenderFrame','getProgramInfoLog','pointer-events','MetaDataDownloaderThread\x20created','ontouchstart',')</span>','adTexture','doNotRenderAugmentationLabel','MakeSureAdPerPlace:\x20Set\x20default\x20image\x20','iPhone','adLoopTime','alpha','Error\x20fetching\x20and\x20processing\x20JSON:','BlackBerry','Anonymous','clientHeight','We\x20have\x20no\x20MetaDataDownloaderThread\x20yet.\x20Creating\x20it','toString','error','Internet\x20Explorer','offsetLeft','https://games-prod.virtualott.com/map','#ad','(\x20Security\x20)\x20We\x20cant\x20reach\x20','Src29_MediaTime29','innerHTML','TimeCodesFramesTranslator','fillStyle','getSourceFPS','createBuffer','MAX_LOGOS','SetSyncPoint','Network\x20response\x20was\x20not\x20ok','NOT\x20SUPPORTED','mimeType','\x20so\x20should\x20navigate\x20to\x20','Something\x20else','Edge','dataos','Utils','header','http://webgl2fundamentals.org/webgl/lessons/webgl-boilerplate.html','FRAGMENT_SHADER','AMC_EVENT_PLAYER_SEGMENT_PLAYBACK','postMessage','getUTCMinutes','x-shader/x-vertex','metadataMap','GetCanvas','gameId','TopLeft','Toggle','setMediaFPS:\x20Unknown\x20Source\x20FrameRate\x20mode','matchAll','CreateDigitImg','stringTime','Safari','opera','body','Error\x20fetching\x20JSON:','Macintosh','alphaTex','TEXTURE_MAG_FILTER','activeTexture','ScreenFPS','Trident','ctx','numberInput','callback','getDeviceName','setLastFrame','toDataURL','MakeSureAdPerPlace','setinfo','info','counter','compileShader','then','Size','program','playerTime','urls','RenderTimecode','Platform','messageData','charCodeAt','516FDItUT','none','\x20countAppleVideo:\x20','renderTimecode','GAME_ID','getContext','This\x20videoCallback\x20can\x20be\x20incorrect.\x20This\x20time\x20doing\x20stuff\x20in\x20requestAnimation\x20frame','getShaderInfoLog','27252NSakNA','getShaderSource','None','hasLogo','BB.Augmenter\x20Start','height','catch','MSIE','\x20FPS,\x20Aborting\x20augmentation.\x20Only\x2060FPS\x20screens\x20supported','\x20TimeFired:\x20','toFixed','UNPACK_ALIGNMENT','OTTPlayer:\x20','Frames2Timecode','player','fetchOffsetForGameId','onNewMetadataInterface','GameId\x20for\x20mediaid=\x20','webGLVersion','CleanGL','isAdLoop','key','Firefox','webglUtils','\x20dblFrame:\x20','CLAMP_TO_EDGE','color:blue;font-weight:bold;','currentTime','TimeCodeAddFrames','test','New\x20segment\x20(','RGBA','length','connect','playbackTime','syncPoint','ntc','Platform\x20not\x20supported','uniform2f','init','url','LINK_STATUS','src','frames','LINEAR','white','toggleBtn','pixelStorei','Connect','replace',',\x20LastSyncPoint:','TimeCodeArray2TimeCodeJson','ANI2','\x0a\x0a//High\x20precision\x20mode\x0aprecision\x20highp\x20float;\x0a\x0a//The\x20textures\x0auniform\x20sampler2D\x20u_image;//video\x20frame\x27s\x20texture2D\x0auniform\x20sampler2D\x20ad0;//the\x20ad\x20texture2D\x0auniform\x20sampler2D\x20ad1;//the\x20ad\x20texture2D\x0auniform\x20sampler2D\x20ad2;//the\x20ad\x20texture2D\x0auniform\x20sampler2D\x20ad3;//the\x20ad\x20texture2D\x0a\x0auniform\x20vec2\x20u_resolution2;//resolution\x20of\x20the\x20canvas\x0a\x0a//v_texCoord\x20from\x20the\x20vertex\x20shader\x0avarying\x20vec2\x20v_texCoord;\x0a\x0a//Logos\x27\x20staff\x0auniform\x20int\x20hasLogo0;//has\x20logo\x20?\x0auniform\x20int\x20adForLogo0;\x0auniform\x20sampler2D\x20alpha0;//the\x20alpha\x27s\x20mate\x0auniform\x20mat3\x20u_matrix0;//the\x20reverse\x20homography\x0auniform\x20vec2\x20u_alpha0TopLeft;//the\x20alpha\x20mate\x27s\x20top-left\x0auniform\x20vec2\x20u_alpha0Size;//the\x20alpha\x20mate\x27s\x20size\x0a\x0auniform\x20int\x20hasLogo1;//has\x20logo\x20?\x0auniform\x20int\x20adForLogo1;\x0auniform\x20sampler2D\x20alpha1;//the\x20alpha\x27s\x20mate\x0auniform\x20mat3\x20u_matrix1;//the\x20reverse\x20homography\x0auniform\x20vec2\x20u_alpha1TopLeft;//the\x20alpha\x20mate\x27s\x20top-left\x0auniform\x20vec2\x20u_alpha1Size;//the\x20alpha\x20mate\x27s\x20size\x0a\x0auniform\x20int\x20hasLogo2;//has\x20logo\x20?\x0auniform\x20int\x20adForLogo2;\x0auniform\x20sampler2D\x20alpha2;//the\x20alpha\x27s\x20mate\x0auniform\x20mat3\x20u_matrix2;//the\x20reverse\x20homography\x0auniform\x20vec2\x20u_alpha2TopLeft;//the\x20alpha\x20mate\x27s\x20top-left\x0auniform\x20vec2\x20u_alpha2Size;//the\x20alpha\x20mate\x27s\x20size\x0a\x0auniform\x20int\x20hasLogo3;//has\x20logo\x20?\x0auniform\x20int\x20adForLogo3;\x0auniform\x20sampler2D\x20alpha3;//the\x20alpha\x27s\x20mate\x0auniform\x20mat3\x20u_matrix3;//the\x20reverse\x20homography\x0auniform\x20vec2\x20u_alpha3TopLeft;//the\x20alpha\x20mate\x27s\x20top-left\x0auniform\x20vec2\x20u_alpha3Size;//the\x20alpha\x20mate\x27s\x20size\x0a\x0auniform\x20sampler2D\x20injectoLogo;//the\x20injecto\x20logo\x20to\x20cover\x20the\x20timecode\x20watermark\x0a\x0aconst\x20float\x20Directions\x20=\x2016.0;\x20//\x20BLUR\x20DIRECTIONS\x20(Default\x2016.0\x20-\x20More\x20is\x20better\x20but\x20slower)\x0aconst\x20float\x20Quality\x20=\x203.0;\x20//\x20BLUR\x20QUALITY\x20(Default\x203.0\x20-\x20More\x20is\x20better\x20but\x20slower)\x0aconst\x20float\x20Size\x20=\x2012.0;\x20//\x20BLUR\x20SIZE\x20(Radius)\x0aconst\x20float\x20Pi\x20=\x206.28318530718;\x20//\x20Pi*2\x0a\x0avec3\x20BlurBGR(vec4\x20videoImagePix)\x0a{\x0a\x09vec3\x20res\x20=\x20videoImagePix.rgb;\x0a\x20//get\x20the\x20kernel\x20radius:\x0a\x20\x20\x20\x20vec2\x20Radius\x20=\x20Size/u_resolution2.xy;\x0a\x20\x20\x20\x0a\x20\x20\x20\x20//\x20Blur\x20around:\x0a\x20\x20\x20\x20for(\x20float\x20d=0.0;\x20d<Pi;\x20d+=Pi/Directions)\x0a\x20\x20\x20\x20{\x0a\x09\x09for(float\x20i=1.0/Quality;\x20i<=1.0;\x20i+=1.0/Quality)\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x0a\x09\x09\x09res\x20+=\x20texture2D(\x20u_image,\x20v_texCoord+vec2(cos(d),sin(d))*Radius*i).rgb;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20res\x20/=\x20Quality\x20*\x20Directions\x20-\x2015.0;\x0a\x0a\x20\x20\x20\x20return\x20res;\x0a}\x0a\x0abool\x20BlendWithLogo(\x0a\x09int\x20adUnit,\x0a\x20\x20\x20\x20\x20sampler2D\x20alphaTexture,\x0a\x20\x20\x20\x20\x20mat3\x20matrix,\x0a\x20\x20\x20\x20\x20vec2\x20curCoord,\x0a\x20\x20\x20\x20\x20vec2\x20alphaTopLeft,\x0a\x20\x20\x20\x20\x20vec2\x20alphaSize,\x0a\x20\x20\x20\x20\x20vec4\x20videoImagePix)\x20\x0a{\x0a\x20\x20\x20\x20vec2\x20texCoord;\x0a\x20\x20\x20\x20texCoord.x\x20=\x20(matrix[0][0]*curCoord.x\x20+\x20matrix[0][1]*curCoord.y\x20+\x20matrix[0][2])\x20/\x20(matrix[2][0]*curCoord.x\x20+\x20matrix[2][1]*curCoord.y\x20+\x201.0);\x0a\x20\x20\x20\x20texCoord.y\x20=\x20(matrix[1][0]*curCoord.x\x20+\x20matrix[1][1]*curCoord.y\x20+\x20matrix[1][2])\x20/\x20(matrix[2][0]*curCoord.x\x20+\x20matrix[2][1]*curCoord.y\x20+\x201.0);\x0a\x20\x20\x20\x20texCoord\x20/=\x20u_resolution2;\x0a\x0a\x20\x20\x20\x20//if\x20we\x27re\x20in\x20the\x20bounding\x20rect\x20of\x20the\x20logo\x0a\x20\x20\x20\x20if\x20(texCoord.x\x20>=\x200.0\x20&&\x20texCoord.y\x20>=\x200.0\x20&&\x20texCoord.x\x20<=\x201.0\x20&&\x20texCoord.y\x20<=\x201.0)\x0a\x20\x20\x20\x20{\x0a\x09\x09\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20float\x20alpha\x20=\x201.0;\x0a\x20\x20\x20\x20\x20\x20\x20\x20vec2\x20alphaCoord\x20=\x20(curCoord\x20-\x20alphaTopLeft)/alphaSize;//get\x20the\x20coordinate\x20on\x20the\x20alpha\x20mate\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(alphaCoord.x\x20>=\x200.0\x20&&\x20alphaCoord.y\x20>=\x200.0\x20&&\x20alphaCoord.x\x20<=\x201.0\x20&&\x20alphaCoord.y\x20<=\x201.0)\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//get\x20the\x20alpha\x20texel:\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//alpha\x20*=\x20BlurAlpha(alphaCoord);//blurred\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20alpha\x20*=\x20texture2D(alphaTexture,\x20alphaCoord).a;//without\x20blur\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x09\x09if\x20(adUnit\x20==\x2099)//blur\x0a\x09\x09{\x0a\x09\x09\x09gl_FragColor\x20=\x20vec4(BlurBGR(videoImagePix)*alpha\x20+\x20\x20videoImagePix.rgb*(1.0-alpha),\x201.0);\x0a\x09\x09\x09//outColor\x20=\x20vec4(BlurBGR(videoImagePix),\x201.0);\x0a\x09\x09\x09return\x20true;\x0a\x09\x09}\x0a\x09\x09vec4\x20ad0Pix\x20=\x20\x0a\x09\x09\x09adUnit\x20==\x200\x20?\x20texture2D(ad0,\x20texCoord)\x20:\x0a\x09\x09\x09adUnit\x20==\x201\x20?\x20texture2D(ad1,\x20texCoord)\x20:\x0a\x09\x09\x09adUnit\x20==\x202\x20?\x20texture2D(ad2,\x20texCoord)\x20:\x0a\x09\x09\x09\x09\x09\x09\x20\x20texture2D(ad3,\x20texCoord);//get\x20the\x20logo\x27s\x20texel\x0a\x09\x09alpha\x20*=\x20ad0Pix.a;//consider\x20the\x20alpha\x20of\x20the\x20logo\x0a\x20\x20\x20\x20\x20\x20\x20\x20vec3\x20resultRGB\x20=\x20ad0Pix.rgb*alpha\x20+\x20videoImagePix.rgb*(1.0-alpha);//blend\x0a\x20\x20\x20\x20\x20\x20\x20\x20gl_FragColor\x20=\x20vec4(resultRGB,\x201.0);\x0a\x20\x20\x20\x20\x20\x20\x20\x20return\x20true;\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20else\x20return\x20false;\x0a\x20\x20\x0a}\x0avoid\x20main()\x0a{\x0a\x20\x20//calculate\x20cur-coord\x20(with\x20pixels\x20units)\x0a\x20\x20vec2\x20curCoord\x20=\x20gl_FragCoord.xy;\x0a\x20\x20curCoord.y\x20=\x20u_resolution2[1]\x20-\x20curCoord.y;\x0a\x0a\x20\x20//cover\x20the\x20timecode\x20with\x20some\x20watermark\x0a\x20\x20if\x20(v_texCoord[0]\x20<=\x200.125\x20&&\x20(1.0-v_texCoord[1])\x20<=\x200.125)\x0a\x20\x20{\x20\x0a\x20\x20\x20\x20gl_FragColor\x20=\x20texture2D(injectoLogo,\x20vec2(v_texCoord[0]*8.0,\x201.0-(1.0-v_texCoord[1])*8.0));\x0a\x20\x20\x20\x20return;\x0a\x20\x20}\x0a\x0a\x20\x20vec4\x20videoImagePix\x20=\x20texture2D(u_image,\x20v_texCoord);\x0a\x20\x20\x0a\x20\x20if\x20(hasLogo0\x20==\x201\x20&&\x20\x0a\x20\x20\x20\x20\x20BlendWithLogo(\x0a\x09\x20adForLogo0,\x0a\x09\x20alpha0,\x20u_matrix0,\x20curCoord,u_alpha0TopLeft,\x20u_alpha0Size,\x20videoImagePix))\x0a\x20\x20{\x0a\x20\x20\x20\x20return;\x0a\x20\x20}\x0a\x20\x20else\x20if\x20(hasLogo1\x20==\x201\x20&&\x0a\x20\x20\x20\x20\x20BlendWithLogo(\x0a\x09\x20adForLogo1,\x0a\x09\x20alpha1,\x20u_matrix1,\x20curCoord,u_alpha1TopLeft,\x20u_alpha1Size,\x20videoImagePix))\x0a\x20\x20{\x0a\x20\x20\x20\x20return;\x0a\x20\x20}\x0a\x20\x20else\x20if\x20(hasLogo2\x20==\x201\x20&&\x0a\x20\x20\x20\x20\x20BlendWithLogo(\x0a\x09\x20adForLogo2,\x0a\x09\x20alpha2,\x20u_matrix2,\x20curCoord,u_alpha2TopLeft,\x20u_alpha2Size,\x20videoImagePix))\x0a\x20\x20{\x0a\x20\x20\x20\x20return;\x0a\x20\x20}\x0a\x20\x20else\x20if\x20(hasLogo3\x20==\x201\x20&&\x0a\x20\x20\x20\x20\x20BlendWithLogo(\x0a\x09\x20adForLogo3,\x0a\x09\x20alpha3,\x20u_matrix3,\x20curCoord,u_alpha3TopLeft,\x20u_alpha3Size,\x20videoImagePix))\x0a\x20\x20{\x0a\x20\x20\x20\x20return;\x0a\x20\x20}\x0a\x20\x20else\x20{//only\x20video\x20texel,\x20no\x20logo\x0a\x20\x20\x20\x20gl_FragColor\x20=\x20videoImagePix;\x0a\x20\x20}\x0a}\x0a','getElementsByTagName','an\x20iPhone','initializeComponents','1004112oXeyWj','Chrome','if\x20(alpha\x20==\x200.0)','%c%s',',\x20Brain\x20Time-Code:\x20','slice','TRIANGLES',',\x20LastSyncPointTime:','frameDrawer','canvas','uniform2fv','forEach','110436VqfgoJ','16975jcVNoL','Windows','roommembers','Mozilla','getUTCMilliseconds','iOS','fetchAndFindGameIdAndOffsetFromMediaId:\x20I\x20Know\x20what\x20is\x20the\x20game\x20id\x20!\x20Its\x20','offsetJsonURL','presentationTime','3498ULWEuC','AddAdvertisement','TexUnitBaseForAlpha','emit','Ads','TEXTURE_WRAP_T','ads','getElementById','adForLogo','addEventListener','json','RenderingMode','SelectAd','isApple','30px\x20Arial','18NFhuqK','https://www.virtualott.com/games/','Project\x20name:\x20','InitGL','createShader','#external','Palm','Src59_MediaTime59','Created\x20webgl1\x20context:\x20','u_matrix','isAndroid','head','getCanvas','isChromeMac','printTimecode','offs','createElement','ANI.','ANI.\x20','BBerror','offset','The\x20window\x20object\x20is\x20not\x20defined.\x20This\x20script\x20might\x20not\x20be\x20running\x20in\x20a\x20browser\x20environment.','max','Setting\x20Callbacks','MediaID\x20','clientY','linkProgram','advertisementMap','We\x20are\x20HERE:TimeCode','TEXTURE_2D','folderName',',\x20rendering:\x20','SynchMethod','Error\x20in\x20creating\x20MetaDataDownloaderThread',',\x20resultTime:\x20','augmentation','requestFullscreen','fillRect','\x20Time\x20Fired:\x20','https://www.virtualott.com','version','timecode','requestAnimationFrame','bufferData','texImage2D','logoURL','nextSibling','GenerateTexture','getUTCSeconds','onerror','vertexAttribPointer','requestVideoFrameCallback','crossOrigin','BB.Utils.getSourceFPS:\x20Unknown\x20FrameRate\x20mode','includes','renderAugmentation','metadataArr','frameRateMode','Src60_MediaTime60','createProgram','u_digitTopLeft','ToggleFullscreen','lastAdName','drawArrays','toISOString','messageroom:\x20','useProgram','enableVertexAttribArray','function','getHours','ad0','type','clientX','getMediaTimeFPS','isPowerOf2','Windows\x20Phone','clearColor','deleteTexture','https://games-prod.virtualott.com/offset',',\x20stage:\x20','match','FLOAT','***\x20Error:\x20unknown\x20shader\x20type','#version\x20300\x20es\x0a\x0a//\x20an\x20attribute\x20is\x20an\x20input\x20(in)\x20to\x20a\x20vertex\x20shader.\x0a//\x20It\x20will\x20receive\x20vertex\x20data\x20from\x20the\x20buffer\x0ain\x20vec2\x20a_position;\x0a\x0a//Identity\x20matrix\x20for\x20now\x0auniform\x20mat3\x20u_matrix;\x0a\x0a//The\x20canvas\x20resolution,\x20to\x20covert\x20to\x20ZeTor\x0auniform\x20vec2\x20u_resolution;\x0a\x0a//a_texCoord->v_texCoord\x20interpolation\x0a//in\x20vec2\x20a_texCoord;\x0a//out\x20vec2\x20v_texCoord;\x0a\x0a//\x20Main\x20vertex\x20shader\x0avoid\x20main()\x20{\x0a\x20\x20//Translate,\x20rotate,\x20scale\x20by\x20u_matrix:\x0a\x20\x20vec2\x20position\x20=\x20(u_matrix\x20*\x20vec3(a_position,\x201)).xy;\x0a\x0a\x20\x20//Convert\x20the\x20position\x20from\x20pixels\x20to\x20ZeTor\x20[0.0,1.0]\x0a\x20\x20vec2\x20zeroToOne\x20=\x20position\x20/\x20u_resolution;\x0a\x0a\x20\x20//Convert\x20from\x20[0,1]\x20to\x20[0,2]\x0a\x20\x20vec2\x20zeroToTwo\x20=\x20zeroToOne\x20*\x202.0;\x0a\x0a\x20\x20//Convert\x20from\x20[0,2]\x20to\x20[-1,+1]\x20(clipspace)\x0a\x20\x20vec2\x20clipSpace\x20=\x20zeroToTwo\x20-\x201.0;\x0a\x0a\x20\x20gl_Position\x20=\x20vec4(clipSpace\x20*\x20vec2(1,\x20-1),\x200,\x201);\x0a\x0a\x20\x20//Pass\x20the\x20texCoord\x20to\x20the\x20fragment\x20shader\x0a\x20\x20//The\x20GPU\x20will\x20interpolate\x20this\x20value\x20between\x20points.\x0a\x20\x20//v_texCoord\x20=\x20a_texCoord;\x0a}\x0a','\x20Game:\x20','TEXTURE_WRAP_S','Clicked\x20on\x20ad:\x20','maxTouchPoints','SetFps','fetchAndFindGameIdAndOffsetFromMediaId','fps','disconnect','u_resolution2','getTime','floor','texParameteri','):\x20','rect','debugText2','tc__','call','parentElement','config','setMediaFPS:\x20Unknown\x20Media\x20FrameRate\x20mode','join\x20\x20','COMPILE_STATUS','Video\x20object\x20is\x20defined.\x20This\x20script\x20is\x20running\x20in\x20a\x20browser\x20environment.','video\x20element\x20is\x20not\x20yet\x20loaded.\x20Setting\x20up\x20loadedmetadata\x20event\x20to\x20wait\x20until\x20it\x27s\x20loaded','Linux','debug','\x20Setting\x20(some)\x20ms\x20timer','SetRectangle','assign','getShaderParameter','Error\x20from\x20worker\x20(via\x20addEventListener):','webkitRequestFullscreen','isSafariMac','Augment','found','Kindle','Mac','dateTime','VERTEX_SHADER','viewport','MKsync','TEXTURE_MIN_FILTER','TexUnitForAdInPlace','appVersion','options','frame','Version','[-\x20/:;]([\x5cd._]+)','render():\x20lastVideoFrameRenderedInGL==currentFrame:\x20','composer::SelectAd:\x20The\x20selected\x20ad\x20should\x20be\x20in\x20place\x20','15494sVpOrv','disconnect\x20from\x20signaling::','webgl','zIndex','\x20\x20correction','Timecode2Frames','a_position','ARRAY_BUFFER','index','getUniformLocation','get','bindAttribLocation',',\x20Stream\x20Time-Code:\x20','ad2Url','setMediaFPS:\x20Unknown\x20Source\x20FrameRate\x20mode,\x20fps\x20=\x20','timeDate2TC','100%','checked',',\x20correction','***\x20Error:\x20unknown\x20script\x20element','hasOwnProperty','OnMetaData','\x20ms','click','style','mediaTime','alphaFound','\x20FPS,\x20Continuing\x20augmentation','br1','u_alpha','place2ad','font','sourceFPS','191856GyGwvv','65cxFeCx','amd','uniformMatrix3fv','round'];_0x27d9=function(){return _0x1b9f10;};return _0x27d9();}(function(_0x300e3f,_0x585ba2){const _0x48675d=_0x4c2f,_0xad5d64=_0x300e3f();while(!![]){try{const _0x22fe7e=-parseInt(_0x48675d(0x222))/0x1+parseInt(_0x48675d(0x201))/0x2*(-parseInt(_0x48675d(0x2b1))/0x3)+parseInt(_0x48675d(0x372))/0x4*(-parseInt(_0x48675d(0x223))/0x5)+-parseInt(_0x48675d(0x325))/0x6*(parseInt(_0x48675d(0x373))/0x7)+-parseInt(_0x48675d(0x366))/0x8+-parseInt(_0x48675d(0x38b))/0x9*(-parseInt(_0x48675d(0x271))/0xa)+-parseInt(_0x48675d(0x37c))/0xb*(-parseInt(_0x48675d(0x32d))/0xc);if(_0x22fe7e===_0x585ba2)break;else _0xad5d64['push'](_0xad5d64['shift']());}catch(_0x575664){_0xad5d64['push'](_0xad5d64['shift']());}}}(_0x27d9,0x349fc));const META_WORKER='try\x20{\x0a\x0alet\x20UZIP\x20=\x20{};\x0aif(typeof\x20module\x20==\x20\x22object\x22)\x20module.exports\x20=\x20UZIP;\x0aUZIP[\x22parse\x22]\x20=\x20function(buf,\x20onlyNames)\x09//\x20ArrayBuffer\x0a{\x0a\x20\x20\x20\x20let\x20rUs\x20=\x20UZIP.bin.readUshort,\x20rUi\x20=\x20UZIP.bin.readUint,\x20o\x20=\x200,\x20out\x20=\x20{};\x0a\x20\x20\x20\x20let\x20data\x20=\x20new\x20Uint8Array(buf);\x0a\x20\x20\x20\x20let\x20eocd\x20=\x20data.length-4;\x0a\x0a\x20\x20\x20\x20while(rUi(data,\x20eocd)!=0x06054b50)\x20eocd--;\x0a\x0a\x20\x20\x20\x20o\x20=\x20eocd;\x0a\x20\x20\x20\x20o+=4;\x09//\x20sign\x20\x20=\x200x06054b50\x0a\x20\x20\x20\x20o+=4;\x20\x20//\x20disks\x20=\x200;\x0a\x20\x20\x20\x20let\x20cnu\x20=\x20rUs(data,\x20o);\x20\x20o+=2;\x0a\x20\x20\x20\x20let\x20cnt\x20=\x20rUs(data,\x20o);\x20\x20o+=2;\x0a\x0a\x20\x20\x20\x20let\x20csize\x20=\x20rUi(data,\x20o);\x20\x20o+=4;\x0a\x20\x20\x20\x20let\x20coffs\x20=\x20rUi(data,\x20o);\x20\x20o+=4;\x0a\x0a\x20\x20\x20\x20o\x20=\x20coffs;\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<cnu;\x20i++)\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20sign\x20=\x20rUi(data,\x20o);\x20\x20o+=4;\x0a\x20\x20\x20\x20\x20\x20\x20\x20o\x20+=\x204;\x20\x20//\x20versions;\x0a\x20\x20\x20\x20\x20\x20\x20\x20o\x20+=\x204;\x20\x20//\x20flag\x20+\x20compr\x0a\x20\x20\x20\x20\x20\x20\x20\x20o\x20+=\x204;\x20\x20//\x20time\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20crc32\x20=\x20rUi(data,\x20o);\x20\x20o+=4;\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20csize\x20=\x20rUi(data,\x20o);\x20\x20o+=4;\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20usize\x20=\x20rUi(data,\x20o);\x20\x20o+=4;\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20nl\x20=\x20rUs(data,\x20o),\x20el\x20=\x20rUs(data,\x20o+2),\x20cl\x20=\x20rUs(data,\x20o+4);\x20\x20o\x20+=\x206;\x20\x20//\x20name,\x20extra,\x20comment\x0a\x20\x20\x20\x20\x20\x20\x20\x20o\x20+=\x208;\x20\x20//\x20disk,\x20attribs\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20roff\x20=\x20rUi(data,\x20o);\x20\x20o+=4;\x0a\x20\x20\x20\x20\x20\x20\x20\x20o\x20+=\x20nl\x20+\x20el\x20+\x20cl;\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20UZIP._readLocal(data,\x20roff,\x20out,\x20csize,\x20usize,\x20onlyNames);\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20//console.log(out);\x0a\x20\x20\x20\x20return\x20out;\x0a}\x0a\x0aUZIP._readLocal\x20=\x20function(data,\x20o,\x20out,\x20csize,\x20usize,\x20onlyNames)\x0a{\x0a\x20\x20\x20\x20let\x20rUs\x20=\x20UZIP.bin.readUshort,\x20rUi\x20=\x20UZIP.bin.readUint;\x0a\x20\x20\x20\x20let\x20sign\x20\x20=\x20rUi(data,\x20o);\x20\x20o+=4;\x0a\x20\x20\x20\x20let\x20ver\x20\x20\x20=\x20rUs(data,\x20o);\x20\x20o+=2;\x0a\x20\x20\x20\x20let\x20gpflg\x20=\x20rUs(data,\x20o);\x20\x20o+=2;\x0a\x20\x20\x20\x20//if((gpflg&8)!=0)\x20throw\x20\x22unknown\x20sizes\x22;\x0a\x20\x20\x20\x20let\x20cmpr\x20\x20=\x20rUs(data,\x20o);\x20\x20o+=2;\x0a\x0a\x20\x20\x20\x20let\x20time\x20\x20=\x20rUi(data,\x20o);\x20\x20o+=4;\x0a\x0a\x20\x20\x20\x20let\x20crc32\x20=\x20rUi(data,\x20o);\x20\x20o+=4;\x0a\x20\x20\x20\x20//let\x20csize\x20=\x20rUi(data,\x20o);\x20\x20o+=4;\x0a\x20\x20\x20\x20//let\x20usize\x20=\x20rUi(data,\x20o);\x20\x20o+=4;\x0a\x20\x20\x20\x20o+=8;\x0a\x0a\x20\x20\x20\x20let\x20nlen\x20\x20=\x20rUs(data,\x20o);\x20\x20o+=2;\x0a\x20\x20\x20\x20let\x20elen\x20\x20=\x20rUs(data,\x20o);\x20\x20o+=2;\x0a\x0a\x20\x20\x20\x20let\x20name\x20=\x20\x20UZIP.bin.readUTF8(data,\x20o,\x20nlen);\x20\x20o+=nlen;\x20\x20//console.log(name);\x0a\x20\x20\x20\x20o\x20+=\x20elen;\x0a\x0a\x20\x20\x20\x20//console.log(sign.toString(16),\x20ver,\x20gpflg,\x20cmpr,\x20crc32.toString(16),\x20\x22csize,\x20usize\x22,\x20csize,\x20usize,\x20nlen,\x20elen,\x20name,\x20o);\x0a\x20\x20\x20\x20if(onlyNames)\x20{\x20\x20out[name]={size:usize,\x20csize:csize};\x20\x20return;\x20\x20}\x0a\x20\x20\x20\x20let\x20file\x20=\x20new\x20Uint8Array(data.buffer,\x20o);\x0a\x20\x20\x20\x20if(false)\x20{}\x0a\x20\x20\x20\x20else\x20if(cmpr==0)\x20out[name]\x20=\x20new\x20Uint8Array(file.buffer.slice(o,\x20o+csize));\x0a\x20\x20\x20\x20else\x20if(cmpr==8)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20buf\x20=\x20new\x20Uint8Array(usize);\x20\x20UZIP.inflateRaw(file,\x20buf);\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*let\x20nbuf\x20=\x20pako[\x22inflateRaw\x22](file);\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(usize>8514000)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//console.log(PUtils.readASCII(buf\x20,\x208514500,\x20500));\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//console.log(PUtils.readASCII(nbuf,\x208514500,\x20500));\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20for(let\x20i=0;\x20i<buf.length;\x20i++)\x20if(buf[i]!=nbuf[i])\x20{\x20\x20console.log(buf.length,\x20nbuf.length,\x20usize,\x20i);\x20\x20throw\x20\x22e\x22;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20out[name]\x20=\x20buf;\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20else\x20throw\x20\x22unknown\x20compression\x20method:\x20\x22+cmpr;\x0a}\x0a\x0aUZIP.inflateRaw\x20=\x20function(file,\x20buf)\x20{\x20\x20return\x20UZIP.F.inflate(file,\x20buf);\x20\x20}\x0aUZIP.inflate\x20\x20\x20\x20=\x20function(file,\x20buf)\x20{\x0a\x20\x20\x20\x20let\x20CMF\x20=\x20file[0],\x20FLG\x20=\x20file[1];\x0a\x20\x20\x20\x20let\x20CM\x20=\x20(CMF&15),\x20CINFO\x20=\x20(CMF>>>4);\x0a\x20\x20\x20\x20//console.log(CM,\x20CINFO,CMF,FLG);\x0a\x20\x20\x20\x20return\x20UZIP.inflateRaw(new\x20Uint8Array(file.buffer,\x20file.byteOffset+2,\x20file.length-6),\x20buf);\x0a}\x0aUZIP.deflate\x20\x20\x20\x20=\x20function(data,\x20opts/*,\x20buf,\x20off*/)\x20{\x0a\x20\x20\x20\x20if(opts==null)\x20opts={level:6};\x0a\x20\x20\x20\x20let\x20off=0,\x20buf=new\x20Uint8Array(50+Math.floor(data.length*1.1));\x0a\x20\x20\x20\x20buf[off]=120;\x20\x20buf[off+1]=156;\x20\x20off+=2;\x0a\x20\x20\x20\x20off\x20=\x20UZIP.F.deflateRaw(data,\x20buf,\x20off,\x20opts.level);\x0a\x20\x20\x20\x20let\x20crc\x20=\x20UZIP.adler(data,\x200,\x20data.length);\x0a\x20\x20\x20\x20buf[off+0]=((crc>>>24)&255);\x0a\x20\x20\x20\x20buf[off+1]=((crc>>>16)&255);\x0a\x20\x20\x20\x20buf[off+2]=((crc>>>\x208)&255);\x0a\x20\x20\x20\x20buf[off+3]=((crc>>>\x200)&255);\x0a\x20\x20\x20\x20return\x20new\x20Uint8Array(buf.buffer,\x200,\x20off+4);\x0a}\x0aUZIP.deflateRaw\x20=\x20function(data,\x20opts)\x20{\x0a\x20\x20\x20\x20if(opts==null)\x20opts={level:6};\x0a\x20\x20\x20\x20let\x20buf=new\x20Uint8Array(50+Math.floor(data.length*1.1));\x0a\x20\x20\x20\x20let\x20off\x20=\x20UZIP.F.deflateRaw(data,\x20buf,\x20off,\x20opts.level);\x0a\x20\x20\x20\x20return\x20new\x20Uint8Array(buf.buffer,\x200,\x20off);\x0a}\x0a\x0a\x0aUZIP.encode\x20=\x20function(obj,\x20noCmpr)\x20{\x0a\x20\x20\x20\x20if(noCmpr==null)\x20noCmpr=false;\x0a\x20\x20\x20\x20let\x20tot\x20=\x200,\x20wUi\x20=\x20UZIP.bin.writeUint,\x20wUs\x20=\x20UZIP.bin.writeUshort;\x0a\x20\x20\x20\x20let\x20zpd\x20=\x20{};\x0a\x20\x20\x20\x20for(let\x20p\x20in\x20obj)\x20{\x20\x20let\x20cpr\x20=\x20!UZIP._noNeed(p)\x20&&\x20!noCmpr,\x20buf\x20=\x20obj[p],\x20crc\x20=\x20UZIP.crc.crc(buf,0,buf.length);\x0a\x20\x20\x20\x20\x20\x20\x20\x20zpd[p]\x20=\x20{\x20\x20cpr:cpr,\x20usize:buf.length,\x20crc:crc,\x20file:\x20(cpr\x20?\x20UZIP.deflateRaw(buf)\x20:\x20buf)\x20\x20};\x20\x20}\x0a\x0a\x20\x20\x20\x20for(let\x20p\x20in\x20zpd)\x20tot\x20+=\x20zpd[p].file.length\x20+\x2030\x20+\x2046\x20+\x202*UZIP.bin.sizeUTF8(p);\x0a\x20\x20\x20\x20tot\x20+=\x20\x2022;\x0a\x0a\x20\x20\x20\x20let\x20data\x20=\x20new\x20Uint8Array(tot),\x20o\x20=\x200;\x0a\x20\x20\x20\x20let\x20fof\x20=\x20[]\x0a\x0a\x20\x20\x20\x20for(let\x20p\x20in\x20zpd)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20file\x20=\x20zpd[p];\x20\x20fof.push(o);\x0a\x20\x20\x20\x20\x20\x20\x20\x20o\x20=\x20UZIP._writeHeader(data,\x20o,\x20p,\x20file,\x200);\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20let\x20i=0,\x20ioff\x20=\x20o;\x0a\x20\x20\x20\x20for(let\x20p\x20in\x20zpd)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20file\x20=\x20zpd[p];\x20\x20fof.push(o);\x0a\x20\x20\x20\x20\x20\x20\x20\x20o\x20=\x20UZIP._writeHeader(data,\x20o,\x20p,\x20file,\x201,\x20fof[i++]);\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20let\x20csize\x20=\x20o-ioff;\x0a\x0a\x20\x20\x20\x20wUi(data,\x20o,\x200x06054b50);\x20\x20o+=4;\x0a\x20\x20\x20\x20o\x20+=\x204;\x20\x20//\x20disks\x0a\x20\x20\x20\x20wUs(data,\x20o,\x20i);\x20\x20o\x20+=\x202;\x0a\x20\x20\x20\x20wUs(data,\x20o,\x20i);\x20\x20o\x20+=\x202;\x09//\x20number\x20of\x20c\x20d\x20records\x0a\x20\x20\x20\x20wUi(data,\x20o,\x20csize);\x20\x20o\x20+=\x204;\x0a\x20\x20\x20\x20wUi(data,\x20o,\x20ioff\x20);\x20\x20o\x20+=\x204;\x0a\x20\x20\x20\x20o\x20+=\x202;\x0a\x20\x20\x20\x20return\x20data.buffer;\x0a}\x0a//\x20no\x20need\x20to\x20compress\x20.PNG,\x20.ZIP,\x20.JPEG\x20....\x0aUZIP._noNeed\x20=\x20function(fn)\x20{\x20\x20let\x20ext\x20=\x20fn.split(\x22.\x22).pop().toLowerCase();\x20\x20return\x20\x22png,jpg,jpeg,zip\x22.indexOf(ext)!=-1;\x20\x20}\x0a\x0aUZIP._writeHeader\x20=\x20function(data,\x20o,\x20p,\x20obj,\x20t,\x20roff)\x0a{\x0a\x20\x20\x20\x20let\x20wUi\x20=\x20UZIP.bin.writeUint,\x20wUs\x20=\x20UZIP.bin.writeUshort;\x0a\x20\x20\x20\x20let\x20file\x20=\x20obj.file;\x0a\x0a\x20\x20\x20\x20wUi(data,\x20o,\x20t==0\x20?\x200x04034b50\x20:\x200x02014b50);\x20\x20o+=4;\x20//\x20sign\x0a\x20\x20\x20\x20if(t==1)\x20o+=2;\x20\x20//\x20ver\x20made\x20by\x0a\x20\x20\x20\x20wUs(data,\x20o,\x2020);\x20\x20o+=2;\x09//\x20ver\x0a\x20\x20\x20\x20wUs(data,\x20o,\x20\x200);\x20\x20o+=2;\x20\x20\x20\x20//\x20gflip\x0a\x20\x20\x20\x20wUs(data,\x20o,\x20\x20obj.cpr?8:0);\x20\x20o+=2;\x09//\x20cmpr\x0a\x0a\x20\x20\x20\x20wUi(data,\x20o,\x20\x200);\x20\x20o+=4;\x09//\x20time\x0a\x20\x20\x20\x20wUi(data,\x20o,\x20obj.crc);\x20\x20o+=4;\x09//\x20crc32\x0a\x20\x20\x20\x20wUi(data,\x20o,\x20file.length);\x20\x20o+=4;\x09//\x20csize\x0a\x20\x20\x20\x20wUi(data,\x20o,\x20obj.usize);\x20\x20o+=4;\x09//\x20usize\x0a\x0a\x20\x20\x20\x20wUs(data,\x20o,\x20UZIP.bin.sizeUTF8(p));\x20\x20o+=2;\x09//\x20nlen\x0a\x20\x20\x20\x20wUs(data,\x20o,\x200);\x20\x20o+=2;\x09//\x20elen\x0a\x0a\x20\x20\x20\x20if(t==1)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20o\x20+=\x202;\x20\x20//\x20comment\x20length\x0a\x20\x20\x20\x20\x20\x20\x20\x20o\x20+=\x202;\x20\x20//\x20disk\x20number\x0a\x20\x20\x20\x20\x20\x20\x20\x20o\x20+=\x206;\x20\x20//\x20attributes\x0a\x20\x20\x20\x20\x20\x20\x20\x20wUi(data,\x20o,\x20roff);\x20\x20o+=4;\x09//\x20usize\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20let\x20nlen\x20=\x20UZIP.bin.writeUTF8(data,\x20o,\x20p);\x20\x20o+=\x20nlen;\x0a\x20\x20\x20\x20if(t==0)\x20{\x20\x20data.set(file,\x20o);\x20\x20o\x20+=\x20file.length;\x20\x20}\x0a\x20\x20\x20\x20return\x20o;\x0a}\x0aUZIP.crc\x20=\x20{\x0a\x20\x20\x20\x20table\x20:\x20(\x20function()\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20tab\x20=\x20new\x20Uint32Array(256);\x0a\x20\x20\x20\x20\x20\x20\x20\x20for\x20(let\x20n=0;\x20n<256;\x20n++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20c\x20=\x20n;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20for\x20(let\x20k=0;\x20k<8;\x20k++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(c\x20&\x201)\x20\x20c\x20=\x200xedb88320\x20^\x20(c\x20>>>\x201);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20\x20\x20\x20\x20\x20\x20\x20c\x20=\x20c\x20>>>\x201;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20tab[n]\x20=\x20c;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20return\x20tab;\x20\x20})(),\x0a\x20\x20\x20\x20update\x20:\x20function(c,\x20buf,\x20off,\x20len)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20for\x20(let\x20i=0;\x20i<len;\x20i++)\x20\x20c\x20=\x20UZIP.crc.table[(c\x20^\x20buf[off+i])\x20&\x200xff]\x20^\x20(c\x20>>>\x208);\x0a\x20\x20\x20\x20\x20\x20\x20\x20return\x20c;\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20crc\x20:\x20function(b,o,l)\x20\x20{\x20\x20return\x20UZIP.crc.update(0xffffffff,b,o,l)\x20^\x200xffffffff;\x20\x20}\x0a}\x0aUZIP.adler\x20=\x20function(data,o,len)\x20{\x0a\x20\x20\x20\x20let\x20a\x20=\x201,\x20b\x20=\x200;\x0a\x20\x20\x20\x20let\x20off\x20=\x20o,\x20end=o+len;\x0a\x20\x20\x20\x20while(off<end)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20eend\x20=\x20Math.min(off+5552,\x20end);\x0a\x20\x20\x20\x20\x20\x20\x20\x20while(off<eend)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20a\x20+=\x20data[off++];\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20b\x20+=\x20a;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20a=a%65521;\x0a\x20\x20\x20\x20\x20\x20\x20\x20b=b%65521;\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20return\x20(b\x20<<\x2016)\x20|\x20a;\x0a}\x0a\x0aUZIP.bin\x20=\x20{\x0a\x20\x20\x20\x20readUshort\x20:\x20function(buff,p)\x20\x20{\x20\x20return\x20(buff[p])\x20|\x20(buff[p+1]<<8);\x20\x20},\x0a\x20\x20\x20\x20writeUshort:\x20function(buff,p,n){\x20\x20buff[p]\x20=\x20(n)&255;\x20\x20buff[p+1]\x20=\x20(n>>8)&255;\x20\x20},\x0a\x20\x20\x20\x20readUint\x20\x20\x20:\x20function(buff,p)\x20\x20{\x20\x20return\x20(buff[p+3]*(256*256*256))\x20+\x20((buff[p+2]<<16)\x20|\x20(buff[p+1]<<\x208)\x20|\x20buff[p]);\x20\x20},\x0a\x20\x20\x20\x20writeUint\x20\x20:\x20function(buff,p,n){\x20\x20buff[p]=n&255;\x20\x20buff[p+1]=(n>>8)&255;\x20\x20buff[p+2]=(n>>16)&255;\x20\x20buff[p+3]=(n>>24)&255;\x20\x20},\x0a\x20\x20\x20\x20readASCII\x20\x20:\x20function(buff,p,l){\x20\x20let\x20s\x20=\x20\x22\x22;\x20\x20for(let\x20i=0;\x20i<l;\x20i++)\x20s\x20+=\x20String.fromCharCode(buff[p+i]);\x20\x20return\x20s;\x20\x20\x20\x20},\x0a\x20\x20\x20\x20writeASCII\x20:\x20function(data,p,s){\x20\x20for(let\x20i=0;\x20i<s.length;\x20i++)\x20data[p+i]\x20=\x20s.charCodeAt(i);\x20\x20},\x0a\x20\x20\x20\x20pad\x20:\x20function(n)\x20{\x20return\x20n.length\x20<\x202\x20?\x20\x220\x22\x20+\x20n\x20:\x20n;\x20},\x0a\x20\x20\x20\x20readUTF8\x20:\x20function(buff,\x20p,\x20l)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20s\x20=\x20\x22\x22,\x20ns;\x0a\x20\x20\x20\x20\x20\x20\x20\x20for(let\x20i=0;\x20i<l;\x20i++)\x20s\x20+=\x20\x22%\x22\x20+\x20UZIP.bin.pad(buff[p+i].toString(16));\x0a\x20\x20\x20\x20\x20\x20\x20\x20try\x20{\x20\x20ns\x20=\x20decodeURIComponent(s);\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20catch(e)\x20{\x20\x20return\x20UZIP.bin.readASCII(buff,\x20p,\x20l);\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20return\x20\x20ns;\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20writeUTF8\x20:\x20function(buff,\x20p,\x20str)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20strl\x20=\x20str.length,\x20i=0;\x0a\x20\x20\x20\x20\x20\x20\x20\x20for(let\x20ci=0;\x20ci<strl;\x20ci++)\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20code\x20=\x20str.charCodeAt(ci);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20\x20\x20\x20\x20((code&(0xffffffff-(1<<\x207)+1))==0)\x20{\x20\x20buff[p+i]\x20=\x20(\x20\x20\x20\x20\x20code\x20\x20\x20\x20\x20);\x20\x20i++;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20if((code&(0xffffffff-(1<<11)+1))==0)\x20{\x20\x20buff[p+i]\x20=\x20(192|(code>>\x206));\x20\x20buff[p+i+1]\x20=\x20(128|((code>>\x200)&63));\x20\x20i+=2;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20if((code&(0xffffffff-(1<<16)+1))==0)\x20{\x20\x20buff[p+i]\x20=\x20(224|(code>>12));\x20\x20buff[p+i+1]\x20=\x20(128|((code>>\x206)&63));\x20\x20buff[p+i+2]\x20=\x20(128|((code>>0)&63));\x20\x20i+=3;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20if((code&(0xffffffff-(1<<21)+1))==0)\x20{\x20\x20buff[p+i]\x20=\x20(240|(code>>18));\x20\x20buff[p+i+1]\x20=\x20(128|((code>>12)&63));\x20\x20buff[p+i+2]\x20=\x20(128|((code>>6)&63));\x20\x20buff[p+i+3]\x20=\x20(128|((code>>0)&63));\x20i+=4;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20throw\x20\x22e\x22;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20return\x20i;\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20sizeUTF8\x20:\x20function(str)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20strl\x20=\x20str.length,\x20i=0;\x0a\x20\x20\x20\x20\x20\x20\x20\x20for(let\x20ci=0;\x20ci<strl;\x20ci++)\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20code\x20=\x20str.charCodeAt(ci);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20\x20\x20\x20\x20((code&(0xffffffff-(1<<\x207)+1))==0)\x20{\x20\x20i++\x20;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20if((code&(0xffffffff-(1<<11)+1))==0)\x20{\x20\x20i+=2;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20if((code&(0xffffffff-(1<<16)+1))==0)\x20{\x20\x20i+=3;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20if((code&(0xffffffff-(1<<21)+1))==0)\x20{\x20\x20i+=4;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20throw\x20\x22e\x22;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20return\x20i;\x0a\x20\x20\x20\x20}\x0a}\x0aUZIP.F\x20=\x20{};\x0a\x0aUZIP.F.deflateRaw\x20=\x20function(data,\x20out,\x20opos,\x20lvl)\x20{\x0a\x20\x20\x20\x20let\x20opts\x20=\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ush\x20good_length;\x20/*\x20reduce\x20lazy\x20search\x20above\x20this\x20match\x20length\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ush\x20max_lazy;\x20\x20\x20\x20/*\x20do\x20not\x20perform\x20lazy\x20search\x20above\x20this\x20match\x20length\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ush\x20nice_length;\x20/*\x20quit\x20search\x20above\x20this\x20match\x20length\x0a\x20\x20\x20\x20\x20\x20\x20\x20*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x20\x20\x20\x20\x20\x20good\x20lazy\x20nice\x20chain\x20*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x200\x20*/\x20[\x200,\x20\x20\x200,\x20\x20\x200,\x20\x20\x20\x200,0],\x20\x20/*\x20store\x20only\x20*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x201\x20*/\x20[\x204,\x20\x20\x204,\x20\x20\x208,\x20\x20\x20\x204,0],\x20/*\x20max\x20speed,\x20no\x20lazy\x20matches\x20*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x202\x20*/\x20[\x204,\x20\x20\x205,\x20\x2016,\x20\x20\x20\x208,0],\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x203\x20*/\x20[\x204,\x20\x20\x206,\x20\x2016,\x20\x20\x2016,0],\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x204\x20*/\x20[\x204,\x20\x2010,\x20\x2016,\x20\x20\x2032,0],\x20\x20/*\x20lazy\x20matches\x20*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x205\x20*/\x20[\x208,\x20\x2016,\x20\x2032,\x20\x20\x2032,0],\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x206\x20*/\x20[\x208,\x20\x2016,\x20128,\x20\x20128,0],\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x207\x20*/\x20[\x208,\x20\x2032,\x20128,\x20\x20256,0],\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x208\x20*/\x20[32,\x20128,\x20258,\x201024,1],\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x209\x20*/\x20[32,\x20258,\x20258,\x204096,1]];\x20/*\x20max\x20compression\x20*/\x0a\x0a\x20\x20\x20\x20let\x20opt\x20=\x20opts[lvl];\x0a\x0a\x0a\x20\x20\x20\x20let\x20U\x20=\x20UZIP.F.U,\x20goodIndex\x20=\x20UZIP.F._goodIndex,\x20hash\x20=\x20UZIP.F._hash,\x20putsE\x20=\x20UZIP.F._putsE;\x0a\x20\x20\x20\x20let\x20i\x20=\x200,\x20pos\x20=\x20opos<<3,\x20cvrd\x20=\x200,\x20dlen\x20=\x20data.length;\x0a\x0a\x20\x20\x20\x20if(lvl==0)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20while(i<dlen)\x20{\x20\x20\x20let\x20len\x20=\x20Math.min(0xffff,\x20dlen-i);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20putsE(out,\x20pos,\x20(i+len==dlen\x20?\x201\x20:\x200));\x20\x20pos\x20=\x20UZIP.F._copyExact(data,\x20i,\x20len,\x20out,\x20pos+8);\x20\x20i\x20+=\x20len;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20return\x20pos>>>3;\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20let\x20lits\x20=\x20U.lits,\x20strt=U.strt,\x20prev=U.prev,\x20li=0,\x20lc=0,\x20bs=0,\x20ebits=0,\x20c=0,\x20nc=0;\x20\x20//\x20last_item,\x20literal_count,\x20block_start\x0a\x20\x20\x20\x20if(dlen>2)\x20{\x20\x20nc=UZIP.F._hash(data,0);\x20\x20strt[nc]=0;\x20\x20}\x0a\x20\x20\x20\x20let\x20nmch=0,nmci=0;\x0a\x0a\x20\x20\x20\x20for(i=0;\x20i<dlen;\x20i++)\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20c\x20=\x20nc;\x0a\x20\x20\x20\x20\x20\x20\x20\x20//*\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(i+1<dlen-2)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20nc\x20=\x20UZIP.F._hash(data,\x20i+1);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20ii\x20=\x20((i+1)&0x7fff);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20prev[ii]=strt[nc];\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20strt[nc]=ii;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x20//*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(cvrd<=i)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if((li>14000\x20||\x20lc>26697)\x20&&\x20(dlen-i)>100)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(cvrd<i)\x20{\x20\x20lits[li]=i-cvrd;\x20\x20li+=2;\x20\x20cvrd=i;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20pos\x20=\x20UZIP.F._writeBlock(((i==dlen-1)\x20||\x20(cvrd==dlen))?1:0,\x20lits,\x20li,\x20ebits,\x20data,bs,i-bs,\x20out,\x20pos);\x20\x20li=lc=ebits=0;\x20\x20bs=i;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20mch\x20=\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//if(nmci==i)\x20mch=\x20nmch;\x20\x20else\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(i<dlen-2)\x20mch\x20=\x20UZIP.F._bestMatch(data,\x20i,\x20prev,\x20c,\x20Math.min(opt[2],dlen-i),\x20opt[3]);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20/*\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(mch!=0\x20&&\x20opt[4]==1\x20&&\x20(mch>>>16)<opt[1]\x20&&\x20i+1<dlen-2)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20nmch\x20=\x20UZIP.F._bestMatch(data,\x20i+1,\x20prev,\x20nc,\x20opt[2],\x20opt[3]);\x20\x20nmci=i+1;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//let\x20mch2\x20=\x20UZIP.F._bestMatch(data,\x20i+2,\x20prev,\x20nnc);\x20\x20//nmci=i+1;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if((nmch>>>16)>(mch>>>16))\x20mch=0;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}//*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20len\x20=\x20mch>>>16,\x20dst\x20=\x20mch&0xffff;\x20\x20//if(i-dst<0)\x20throw\x20\x22e\x22;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(mch!=0)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20len\x20=\x20mch>>>16,\x20dst\x20=\x20mch&0xffff;\x20\x20//if(i-dst<0)\x20throw\x20\x22e\x22;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20lgi\x20=\x20goodIndex(len,\x20U.of0);\x20\x20U.lhst[257+lgi]++;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20dgi\x20=\x20goodIndex(dst,\x20U.df0);\x20\x20U.dhst[\x20\x20\x20\x20dgi]++;\x20\x20ebits\x20+=\x20U.exb[lgi]\x20+\x20U.dxb[dgi];\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20lits[li]\x20=\x20(len<<23)|(i-cvrd);\x20\x20lits[li+1]\x20=\x20(dst<<16)|(lgi<<8)|dgi;\x20\x20li+=2;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20cvrd\x20=\x20i\x20+\x20len;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20{\x09U.lhst[data[i]]++;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20lc++;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20if(bs!=i\x20||\x20data.length==0)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(cvrd<i)\x20{\x20\x20lits[li]=i-cvrd;\x20\x20li+=2;\x20\x20cvrd=i;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20pos\x20=\x20UZIP.F._writeBlock(1,\x20lits,\x20li,\x20ebits,\x20data,bs,i-bs,\x20out,\x20pos);\x20\x20li=0;\x20\x20lc=0;\x20\x20li=lc=ebits=0;\x20\x20bs=i;\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20while((pos&7)!=0)\x20pos++;\x0a\x20\x20\x20\x20return\x20pos>>>3;\x0a}\x0aUZIP.F._bestMatch\x20=\x20function(data,\x20i,\x20prev,\x20c,\x20nice,\x20chain)\x20{\x0a\x20\x20\x20\x20let\x20ci\x20=\x20(i&0x7fff),\x20pi=prev[ci];\x0a\x20\x20\x20\x20//console.log(\x22----\x22,\x20i);\x0a\x20\x20\x20\x20let\x20dif\x20=\x20((ci-pi\x20+\x20(1<<15))\x20&\x200x7fff);\x20\x20if(pi==ci\x20||\x20c!=UZIP.F._hash(data,i-dif))\x20return\x200;\x0a\x20\x20\x20\x20let\x20tl=0,\x20td=0;\x20\x20//\x20top\x20length,\x20top\x20distance\x0a\x20\x20\x20\x20let\x20dlim\x20=\x20Math.min(0x7fff,\x20i);\x0a\x20\x20\x20\x20while(dif<=dlim\x20&&\x20--chain!=0\x20&&\x20pi!=ci\x20/*&&\x20c==UZIP.F._hash(data,i-dif)*/)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(tl==0\x20||\x20(data[i+tl]==data[i+tl-dif]))\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20cl\x20=\x20UZIP.F._howLong(data,\x20i,\x20dif);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(cl>tl)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20tl=cl;\x20\x20td=dif;\x20\x20if(tl>=nice)\x20break;\x20\x20\x20\x20//*\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(dif+2<cl)\x20cl\x20=\x20dif+2;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20maxd\x20=\x200;\x20//\x20pi\x20does\x20not\x20point\x20to\x20the\x20start\x20of\x20the\x20word\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20for(let\x20j=0;\x20j<cl-2;\x20j++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20ei\x20=\x20\x20(i-dif+j+\x20(1<<15))\x20&\x200x7fff;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20li\x20=\x20prev[ei];\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20curd\x20=\x20(ei-li\x20+\x20(1<<15))\x20&\x200x7fff;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(curd>maxd)\x20{\x20\x20maxd=curd;\x20\x20pi\x20=\x20ei;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x20\x20//*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20ci=pi;\x20\x20pi\x20=\x20prev[ci];\x0a\x20\x20\x20\x20\x20\x20\x20\x20dif\x20+=\x20((ci-pi\x20+\x20(1<<15))\x20&\x200x7fff);\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20return\x20(tl<<16)|td;\x0a}\x0aUZIP.F._howLong\x20=\x20function(data,\x20i,\x20dif)\x20{\x0a\x20\x20\x20\x20if(data[i]!=data[i-dif]\x20||\x20data[i+1]!=data[i+1-dif]\x20||\x20data[i+2]!=data[i+2-dif])\x20return\x200;\x0a\x20\x20\x20\x20let\x20oi=i,\x20l\x20=\x20Math.min(data.length,\x20i+258);\x20\x20i+=3;\x0a\x20\x20\x20\x20//while(i+4<l\x20&&\x20data[i]==data[i-dif]\x20&&\x20data[i+1]==data[i+1-dif]\x20&&\x20data[i+2]==data[i+2-dif]\x20&&\x20data[i+3]==data[i+3-dif])\x20i+=4;\x0a\x20\x20\x20\x20while(i<l\x20&&\x20data[i]==data[i-dif])\x20i++;\x0a\x20\x20\x20\x20return\x20i-oi;\x0a}\x0aUZIP.F._hash\x20=\x20function(data,\x20i)\x20{\x0a\x20\x20\x20\x20return\x20(((data[i]<<8)\x20|\x20data[i+1])+(data[i+2]<<4))&0xffff;\x0a\x20\x20\x20\x20//let\x20hash_shift\x20=\x200,\x20hash_mask\x20=\x20255;\x0a\x20\x20\x20\x20//let\x20h\x20=\x20data[i+1]\x20%\x20251;\x0a\x20\x20\x20\x20//h\x20=\x20(((h\x20<<\x208)\x20+\x20data[i+2])\x20%\x20251);\x0a\x20\x20\x20\x20//h\x20=\x20(((h\x20<<\x208)\x20+\x20data[i+2])\x20%\x20251);\x0a\x20\x20\x20\x20//h\x20=\x20((h<<hash_shift)\x20^\x20(c)\x20)\x20&\x20hash_mask;\x0a\x20\x20\x20\x20//return\x20h\x20|\x20(data[i]<<8);\x0a\x20\x20\x20\x20//return\x20(data[i]\x20|\x20(data[i+1]<<8));\x0a}\x0a//UZIP.___toth\x20=\x200;\x0aUZIP.saved\x20=\x200;\x0aUZIP.F._writeBlock\x20=\x20function(BFINAL,\x20lits,\x20li,\x20ebits,\x20data,o0,l0,\x20out,\x20pos)\x20{\x0a\x20\x20\x20\x20let\x20U\x20=\x20UZIP.F.U,\x20putsF\x20=\x20UZIP.F._putsF,\x20putsE\x20=\x20UZIP.F._putsE;\x0a\x0a\x20\x20\x20\x20//*\x0a\x20\x20\x20\x20let\x20T,\x20ML,\x20MD,\x20MH,\x20numl,\x20numd,\x20numh,\x20lset,\x20dset;\x20\x20U.lhst[256]++;\x0a\x20\x20\x20\x20T\x20=\x20UZIP.F.getTrees();\x20ML=T[0];\x20MD=T[1];\x20MH=T[2];\x20numl=T[3];\x20numd=T[4];\x20numh=T[5];\x20lset=T[6];\x20dset=T[7];\x0a\x0a\x20\x20\x20\x20let\x20cstSize\x20=\x20(((pos+3)&7)==0\x20?\x200\x20:\x208-((pos+3)&7))\x20+\x2032\x20+\x20(l0<<3);\x0a\x20\x20\x20\x20let\x20fxdSize\x20=\x20ebits\x20+\x20UZIP.F.contSize(U.fltree,\x20U.lhst)\x20+\x20UZIP.F.contSize(U.fdtree,\x20U.dhst);\x0a\x20\x20\x20\x20let\x20dynSize\x20=\x20ebits\x20+\x20UZIP.F.contSize(U.ltree\x20,\x20U.lhst)\x20+\x20UZIP.F.contSize(U.dtree\x20,\x20U.dhst);\x0a\x20\x20\x20\x20dynSize\x20\x20\x20\x20+=\x2014\x20+\x203*numh\x20+\x20UZIP.F.contSize(U.itree,\x20U.ihst)\x20+\x20(U.ihst[16]*2\x20+\x20U.ihst[17]*3\x20+\x20U.ihst[18]*7);\x0a\x0a\x20\x20\x20\x20for(let\x20j=0;\x20j<286;\x20j++)\x20U.lhst[j]=0;\x20\x20\x20for(let\x20j=0;\x20j<30;\x20j++)\x20U.dhst[j]=0;\x20\x20\x20for(let\x20j=0;\x20j<19;\x20j++)\x20U.ihst[j]=0;\x0a\x20\x20\x20\x20//*/\x0a\x20\x20\x20\x20let\x20BTYPE\x20=\x20(cstSize<fxdSize\x20&&\x20cstSize<dynSize)\x20?\x200\x20:\x20(\x20fxdSize<dynSize\x20?\x201\x20:\x202\x20);\x0a\x20\x20\x20\x20putsF(out,\x20pos,\x20BFINAL);\x20\x20putsF(out,\x20pos+1,\x20BTYPE);\x20\x20pos+=3;\x0a\x0a\x20\x20\x20\x20let\x20opos\x20=\x20pos;\x0a\x20\x20\x20\x20if(BTYPE==0)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20while((pos&7)!=0)\x20pos++;\x0a\x20\x20\x20\x20\x20\x20\x20\x20pos\x20=\x20UZIP.F._copyExact(data,\x20o0,\x20l0,\x20out,\x20pos);\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20ltree,\x20dtree;\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(BTYPE==1)\x20{\x20\x20ltree=U.fltree;\x20\x20dtree=U.fdtree;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(BTYPE==2)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20UZIP.F.makeCodes(U.ltree,\x20ML);\x20\x20UZIP.F.revCodes(U.ltree,\x20ML);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20UZIP.F.makeCodes(U.dtree,\x20MD);\x20\x20UZIP.F.revCodes(U.dtree,\x20MD);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20UZIP.F.makeCodes(U.itree,\x20MH);\x20\x20UZIP.F.revCodes(U.itree,\x20MH);\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ltree\x20=\x20U.ltree;\x20\x20dtree\x20=\x20U.dtree;\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20putsE(out,\x20pos,numl-257);\x20\x20pos+=5;\x20\x20//\x20286\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20putsE(out,\x20pos,numd-\x20\x201);\x20\x20pos+=5;\x20\x20//\x2030\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20putsE(out,\x20pos,numh-\x20\x204);\x20\x20pos+=4;\x20\x20//\x2019\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20for(let\x20i=0;\x20i<numh;\x20i++)\x20putsE(out,\x20pos+i*3,\x20U.itree[(U.ordr[i]<<1)+1]);\x20\x20\x20pos+=3*\x20numh;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20pos\x20=\x20UZIP.F._codeTiny(lset,\x20U.itree,\x20out,\x20pos);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20pos\x20=\x20UZIP.F._codeTiny(dset,\x20U.itree,\x20out,\x20pos);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20off=o0;\x0a\x20\x20\x20\x20\x20\x20\x20\x20for(let\x20si=0;\x20si<li;\x20si+=2)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20qb=lits[si],\x20len=(qb>>>23),\x20end\x20=\x20off+(qb&((1<<23)-1));\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20while(off<end)\x20pos\x20=\x20UZIP.F._writeLit(data[off++],\x20ltree,\x20out,\x20pos);\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(len!=0)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20qc\x20=\x20lits[si+1],\x20dst=(qc>>16),\x20lgi=(qc>>8)&255,\x20dgi=(qc&255);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20pos\x20=\x20UZIP.F._writeLit(257+lgi,\x20ltree,\x20out,\x20pos);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20putsE(out,\x20pos,\x20len-U.of0[lgi]);\x20\x20pos+=U.exb[lgi];\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20pos\x20=\x20UZIP.F._writeLit(dgi,\x20dtree,\x20out,\x20pos);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20putsF(out,\x20pos,\x20dst-U.df0[dgi]);\x20\x20pos+=U.dxb[dgi];\x20\x20off+=len;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20pos\x20=\x20UZIP.F._writeLit(256,\x20ltree,\x20out,\x20pos);\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20//console.log(pos-opos,\x20fxdSize,\x20dynSize,\x20cstSize);\x0a\x20\x20\x20\x20return\x20pos;\x0a}\x0aUZIP.F._copyExact\x20=\x20function(data,off,len,out,pos)\x20{\x0a\x20\x20\x20\x20let\x20p8\x20=\x20(pos>>>3);\x0a\x20\x20\x20\x20out[p8]=(len);\x20\x20out[p8+1]=(len>>>8);\x20\x20out[p8+2]=255-out[p8];\x20\x20out[p8+3]=255-out[p8+1];\x20\x20p8+=4;\x0a\x20\x20\x20\x20out.set(new\x20Uint8Array(data.buffer,\x20off,\x20len),\x20p8);\x0a\x20\x20\x20\x20//for(let\x20i=0;\x20i<len;\x20i++)\x20out[p8+i]=data[off+i];\x0a\x20\x20\x20\x20return\x20pos\x20+\x20((len+4)<<3);\x0a}\x0a/*\x0a\x09Interesting\x20facts:\x0a\x09-\x20decompressed\x20block\x20can\x20have\x20bytes,\x20which\x20do\x20not\x20occur\x20in\x20a\x20Huffman\x20tree\x20(copied\x20from\x20the\x20previous\x20block\x20by\x20reference)\x0a*/\x0a\x0aUZIP.F.getTrees\x20=\x20function()\x20{\x0a\x20\x20\x20\x20let\x20U\x20=\x20UZIP.F.U;\x0a\x20\x20\x20\x20let\x20ML\x20=\x20UZIP.F._hufTree(U.lhst,\x20U.ltree,\x2015);\x0a\x20\x20\x20\x20let\x20MD\x20=\x20UZIP.F._hufTree(U.dhst,\x20U.dtree,\x2015);\x0a\x20\x20\x20\x20let\x20lset\x20=\x20[],\x20numl\x20=\x20UZIP.F._lenCodes(U.ltree,\x20lset);\x0a\x20\x20\x20\x20let\x20dset\x20=\x20[],\x20numd\x20=\x20UZIP.F._lenCodes(U.dtree,\x20dset);\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<lset.length;\x20i+=2)\x20U.ihst[lset[i]]++;\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<dset.length;\x20i+=2)\x20U.ihst[dset[i]]++;\x0a\x20\x20\x20\x20let\x20MH\x20=\x20UZIP.F._hufTree(U.ihst,\x20U.itree,\x20\x207);\x0a\x20\x20\x20\x20let\x20numh\x20=\x2019;\x20\x20while(numh>4\x20&&\x20U.itree[(U.ordr[numh-1]<<1)+1]==0)\x20numh--;\x0a\x20\x20\x20\x20return\x20[ML,\x20MD,\x20MH,\x20numl,\x20numd,\x20numh,\x20lset,\x20dset];\x0a}\x0aUZIP.F.getSecond=\x20function(a)\x20{\x20\x20let\x20b=[];\x20\x20for(let\x20i=0;\x20i<a.length;\x20i+=2)\x20b.push\x20\x20(a[i+1]);\x20\x20return\x20b;\x20\x20}\x0aUZIP.F.nonZero\x20\x20=\x20function(a)\x20{\x20\x20let\x20b=\x20\x22\x22;\x20\x20for(let\x20i=0;\x20i<a.length;\x20i+=2)\x20if(a[i+1]!=0)b+=(i>>1)+\x22,\x22;\x20\x20return\x20b;\x20\x20}\x0aUZIP.F.contSize\x20=\x20function(tree,\x20hst)\x20{\x20\x20let\x20s=0;\x20\x20for(let\x20i=0;\x20i<hst.length;\x20i++)\x20s+=\x20hst[i]*tree[(i<<1)+1];\x20\x20return\x20s;\x20\x20}\x0aUZIP.F._codeTiny\x20=\x20function(set,\x20tree,\x20out,\x20pos)\x20{\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<set.length;\x20i+=2)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20l\x20=\x20set[i],\x20rst\x20=\x20set[i+1];\x20\x20//console.log(l,\x20pos,\x20tree[(l<<1)+1]);\x0a\x20\x20\x20\x20\x20\x20\x20\x20pos\x20=\x20UZIP.F._writeLit(l,\x20tree,\x20out,\x20pos);\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20rsl\x20=\x20l==16\x20?\x202\x20:\x20(l==17\x20?\x203\x20:\x207);\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(l>15)\x20{\x20\x20UZIP.F._putsE(out,\x20pos,\x20rst,\x20rsl);\x20\x20pos+=rsl;\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20return\x20pos;\x0a}\x0aUZIP.F._lenCodes\x20=\x20function(tree,\x20set)\x20{\x0a\x20\x20\x20\x20let\x20len=tree.length;\x20\x20while(len!=2\x20&&\x20tree[len-1]==0)\x20len-=2;\x20\x20//\x20when\x20no\x20distances,\x20keep\x20one\x20code\x20with\x20length\x200\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<len;\x20i+=2)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20l\x20=\x20tree[i+1],\x20nxt\x20=\x20(i+3<len\x20?\x20tree[i+3]:-1),\x20\x20nnxt\x20=\x20(i+5<len\x20?\x20tree[i+5]:-1),\x20\x20prv\x20=\x20(i==0\x20?\x20-1\x20:\x20tree[i-1]);\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(l==0\x20&&\x20nxt==l\x20&&\x20nnxt==l)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20lz\x20=\x20i+5;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20while(lz+2<len\x20&&\x20tree[lz+2]==l)\x20lz+=2;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20zc\x20=\x20Math.min((lz+1-i)>>>1,\x20138);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(zc<11)\x20set.push(17,\x20zc-3);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20set.push(18,\x20zc-11);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20i\x20+=\x20zc*2-2;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20else\x20if(l==prv\x20&&\x20nxt==l\x20&&\x20nnxt==l)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20lz\x20=\x20i+5;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20while(lz+2<len\x20&&\x20tree[lz+2]==l)\x20lz+=2;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20zc\x20=\x20Math.min((lz+1-i)>>>1,\x206);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20set.push(16,\x20zc-3);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20i\x20+=\x20zc*2-2;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20else\x20set.push(l,\x200);\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20return\x20len>>>1;\x0a}\x0aUZIP.F._hufTree\x20\x20\x20=\x20function(hst,\x20tree,\x20MAXL)\x20{\x0a\x20\x20\x20\x20let\x20list=[],\x20hl\x20=\x20hst.length,\x20tl=tree.length,\x20i=0;\x0a\x20\x20\x20\x20for(i=0;\x20i<tl;\x20i+=2)\x20{\x20\x20tree[i]=0;\x20\x20tree[i+1]=0;\x20\x20}\x0a\x20\x20\x20\x20for(i=0;\x20i<hl;\x20i++)\x20if(hst[i]!=0)\x20list.push({lit:i,\x20f:hst[i]});\x0a\x20\x20\x20\x20let\x20end\x20=\x20list.length,\x20l2=list.slice(0);\x0a\x20\x20\x20\x20if(end==0)\x20return\x200;\x20\x20//\x20empty\x20histogram\x20(usually\x20for\x20dist)\x0a\x20\x20\x20\x20if(end==1)\x20{\x20\x20let\x20lit=list[0].lit,\x20l2=lit==0?1:0;\x20\x20tree[(lit<<1)+1]=1;\x20\x20tree[(l2<<1)+1]=1;\x20\x20return\x201;\x20\x20}\x0a\x20\x20\x20\x20list.sort(function(a,b){return\x20a.f-b.f;});\x0a\x20\x20\x20\x20let\x20a=list[0],\x20b=list[1],\x20i0=0,\x20i1=1,\x20i2=2;\x20\x20list[0]={lit:-1,f:a.f+b.f,l:a,r:b,d:0};\x0a\x20\x20\x20\x20while(i1!=end-1)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(i0!=i1\x20&&\x20(i2==end\x20||\x20list[i0].f<list[i2].f))\x20{\x20\x20a=list[i0++];\x20\x20}\x20\x20else\x20{\x20\x20a=list[i2++];\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(i0!=i1\x20&&\x20(i2==end\x20||\x20list[i0].f<list[i2].f))\x20{\x20\x20b=list[i0++];\x20\x20}\x20\x20else\x20{\x20\x20b=list[i2++];\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20list[i1++]={lit:-1,f:a.f+b.f,\x20l:a,r:b};\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20let\x20maxl\x20=\x20UZIP.F.setDepth(list[i1-1],\x200);\x0a\x20\x20\x20\x20if(maxl>MAXL)\x20{\x20\x20UZIP.F.restrictDepth(l2,\x20MAXL,\x20maxl);\x20\x20maxl\x20=\x20MAXL;\x20\x20}\x0a\x20\x20\x20\x20for(i=0;\x20i<end;\x20i++)\x20tree[(l2[i].lit<<1)+1]=l2[i].d;\x0a\x20\x20\x20\x20return\x20maxl;\x0a}\x0a\x0aUZIP.F.setDepth\x20\x20=\x20function(t,\x20d)\x20{\x0a\x20\x20\x20\x20if(t.lit!=-1)\x20{\x20\x20t.d=d;\x20\x20return\x20d;\x20\x20}\x0a\x20\x20\x20\x20return\x20Math.max(\x20UZIP.F.setDepth(t.l,\x20d+1),\x20\x20UZIP.F.setDepth(t.r,\x20d+1)\x20);\x0a}\x0a\x0aUZIP.F.restrictDepth\x20=\x20function(dps,\x20MD,\x20maxl)\x20{\x0a\x20\x20\x20\x20let\x20i=0,\x20bCost=1<<(maxl-MD),\x20dbt=0;\x0a\x20\x20\x20\x20dps.sort(function(a,b){return\x20b.d==a.d\x20?\x20a.f-b.f\x20:\x20b.d-a.d;});\x0a\x0a\x20\x20\x20\x20for(i=0;\x20i<dps.length;\x20i++)\x20if(dps[i].d>MD)\x20{\x20\x20let\x20od=dps[i].d;\x20\x20dps[i].d=MD;\x20\x20dbt+=bCost-(1<<(maxl-od));\x20\x20}\x20\x20else\x20break;\x0a\x20\x20\x20\x20dbt\x20=\x20dbt>>>(maxl-MD);\x0a\x20\x20\x20\x20while(dbt>0)\x20{\x20\x20let\x20od=dps[i].d;\x20\x20if(od<MD)\x20{\x20\x20dps[i].d++;\x20\x20dbt-=(1<<(MD-od-1));\x20\x20}\x20\x20else\x20\x20i++;\x20\x20}\x0a\x20\x20\x20\x20for(;\x20i>=0;\x20i--)\x20if(dps[i].d==MD\x20&&\x20dbt<0)\x20{\x20\x20dps[i].d--;\x20\x20dbt++;\x20\x20}\x20\x20if(dbt!=0)\x20console.log(\x22debt\x20left\x22);\x0a}\x0a\x0aUZIP.F._goodIndex\x20=\x20function(v,\x20arr)\x20{\x0a\x20\x20\x20\x20let\x20i=0;\x20\x20if(arr[i|16]<=v)\x20i|=16;\x20\x20if(arr[i|8]<=v)\x20i|=8;\x20\x20if(arr[i|4]<=v)\x20i|=4;\x20\x20if(arr[i|2]<=v)\x20i|=2;\x20\x20if(arr[i|1]<=v)\x20i|=1;\x20\x20return\x20i;\x0a}\x0aUZIP.F._writeLit\x20=\x20function(ch,\x20ltree,\x20out,\x20pos)\x20{\x0a\x20\x20\x20\x20UZIP.F._putsF(out,\x20pos,\x20ltree[ch<<1]);\x0a\x20\x20\x20\x20return\x20pos+ltree[(ch<<1)+1];\x0a}\x0aUZIP.F.inflate\x20=\x20function(data,\x20buf)\x20{\x0a\x20\x20\x20\x20let\x20u8=Uint8Array;\x0a\x20\x20\x20\x20if(data[0]==3\x20&&\x20data[1]==0)\x20return\x20(buf\x20?\x20buf\x20:\x20new\x20u8(0));\x0a\x20\x20\x20\x20let\x20F=UZIP.F,\x20bitsF\x20=\x20F._bitsF,\x20bitsE\x20=\x20F._bitsE,\x20decodeTiny\x20=\x20F._decodeTiny,\x20makeCodes\x20=\x20F.makeCodes,\x20codes2map=F.codes2map,\x20get17\x20=\x20F._get17;\x0a\x20\x20\x20\x20let\x20U\x20=\x20F.U;\x0a\x0a\x20\x20\x20\x20let\x20noBuf\x20=\x20(buf==null);\x0a\x20\x20\x20\x20if(noBuf)\x20buf\x20=\x20new\x20u8((data.length>>>2)<<3);\x0a\x0a\x20\x20\x20\x20let\x20BFINAL=0,\x20BTYPE=0,\x20HLIT=0,\x20HDIST=0,\x20HCLEN=0,\x20ML=0,\x20MD=0;\x0a\x20\x20\x20\x20let\x20off\x20=\x200,\x20pos\x20=\x200;\x0a\x20\x20\x20\x20let\x20lmap,\x20dmap;\x0a\x0a\x20\x20\x20\x20while(BFINAL==0)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20BFINAL\x20=\x20bitsF(data,\x20pos\x20\x20,\x201);\x0a\x20\x20\x20\x20\x20\x20\x20\x20BTYPE\x20\x20=\x20bitsF(data,\x20pos+1,\x202);\x20\x20pos+=3;\x0a\x20\x20\x20\x20\x20\x20\x20\x20//console.log(BFINAL,\x20BTYPE);\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(BTYPE==0)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if((pos&7)!=0)\x20pos+=8-(pos&7);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20p8\x20=\x20(pos>>>3)+4,\x20len\x20=\x20data[p8-4]|(data[p8-3]<<8);\x20\x20//console.log(len);//bitsF(data,\x20pos,\x2016),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(noBuf)\x20buf=UZIP.F._check(buf,\x20off+len);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20buf.set(new\x20u8(data.buffer,\x20data.byteOffset+p8,\x20len),\x20off);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//for(let\x20i=0;\x20i<len;\x20i++)\x20buf[off+i]\x20=\x20data[p8+i];\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//for(let\x20i=0;\x20i<len;\x20i++)\x20if(buf[off+i]\x20!=\x20data[p8+i])\x20throw\x20\x22e\x22;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20pos\x20=\x20((p8+len)<<3);\x20\x20off+=len;\x20\x20continue;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(noBuf)\x20buf=UZIP.F._check(buf,\x20off+(1<<17));\x20\x20//\x20really\x20not\x20enough\x20in\x20many\x20cases\x20(but\x20PNG\x20and\x20ZIP\x20provide\x20buffer\x20in\x20advance)\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(BTYPE==1)\x20{\x20\x20lmap\x20=\x20U.flmap;\x20\x20dmap\x20=\x20U.fdmap;\x20\x20ML\x20=\x20(1<<9)-1;\x20\x20MD\x20=\x20(1<<5)-1;\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(BTYPE==2)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20HLIT\x20\x20=\x20bitsE(data,\x20pos\x20\x20\x20,\x205)+257;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20HDIST\x20=\x20bitsE(data,\x20pos+\x205,\x205)+\x20\x201;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20HCLEN\x20=\x20bitsE(data,\x20pos+10,\x204)+\x20\x204;\x20\x20pos+=14;\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20ppos\x20=\x20pos;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20for(let\x20i=0;\x20i<38;\x20i+=2)\x20{\x20\x20U.itree[i]=0;\x20\x20U.itree[i+1]=0;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20tl\x20=\x201;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20for(let\x20i=0;\x20i<HCLEN;\x20i++)\x20{\x20\x20let\x20l=bitsE(data,\x20pos+i*3,\x203);\x20\x20U.itree[(U.ordr[i]<<1)+1]\x20=\x20l;\x20\x20if(l>tl)tl=l;\x20\x20}\x20\x20\x20\x20\x20pos+=3*HCLEN;\x20\x20//console.log(itree);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20makeCodes(U.itree,\x20tl);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20codes2map(U.itree,\x20tl,\x20U.imap);\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20lmap\x20=\x20U.lmap;\x20\x20dmap\x20=\x20U.dmap;\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20pos\x20=\x20decodeTiny(U.imap,\x20(1<<tl)-1,\x20HLIT+HDIST,\x20data,\x20pos,\x20U.ttree);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20mx0\x20=\x20F._copyOut(U.ttree,\x20\x20\x20\x200,\x20HLIT\x20,\x20U.ltree);\x20\x20ML\x20=\x20(1<<mx0)-1;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20mx1\x20=\x20F._copyOut(U.ttree,\x20HLIT,\x20HDIST,\x20U.dtree);\x20\x20MD\x20=\x20(1<<mx1)-1;\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//let\x20ml\x20=\x20decodeTiny(U.imap,\x20(1<<tl)-1,\x20HLIT\x20,\x20data,\x20pos,\x20U.ltree);\x20ML\x20=\x20(1<<(ml>>>24))-1;\x20\x20pos+=(ml&0xffffff);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20makeCodes(U.ltree,\x20mx0);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20codes2map(U.ltree,\x20mx0,\x20lmap);\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//let\x20md\x20=\x20decodeTiny(U.imap,\x20(1<<tl)-1,\x20HDIST,\x20data,\x20pos,\x20U.dtree);\x20MD\x20=\x20(1<<(md>>>24))-1;\x20\x20pos+=(md&0xffffff);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20makeCodes(U.dtree,\x20mx1);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20codes2map(U.dtree,\x20mx1,\x20dmap);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20//let\x20ooff=off,\x20opos=pos;\x0a\x20\x20\x20\x20\x20\x20\x20\x20while(true)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20code\x20=\x20lmap[get17(data,\x20pos)\x20&\x20ML];\x20\x20pos\x20+=\x20code&15;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20lit\x20=\x20code>>>4;\x20\x20//U.lhst[lit]++;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if((lit>>>8)==0)\x20{\x20\x20buf[off++]\x20=\x20lit;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20if(lit==256)\x20{\x20\x20break;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20end\x20=\x20off+lit-254;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(lit>264)\x20{\x20let\x20ebs\x20=\x20U.ldef[lit-257];\x20\x20end\x20=\x20off\x20+\x20(ebs>>>3)\x20+\x20bitsE(data,\x20pos,\x20ebs&7);\x20\x20pos\x20+=\x20ebs&7;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//UZIP.F.dst[end-off]++;\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20dcode\x20=\x20dmap[get17(data,\x20pos)\x20&\x20MD];\x20\x20pos\x20+=\x20dcode&15;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20dlit\x20=\x20dcode>>>4;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20dbs\x20=\x20U.ddef[dlit],\x20dst\x20=\x20(dbs>>>4)\x20+\x20bitsF(data,\x20pos,\x20dbs&15);\x20\x20pos\x20+=\x20dbs&15;\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//let\x20o0\x20=\x20off-dst,\x20stp\x20=\x20Math.min(end-off,\x20dst);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//if(stp>20)\x20while(off<end)\x20{\x20\x20buf.copyWithin(off,\x20o0,\x20o0+stp);\x20\x20off+=stp;\x20\x20}\x20\x20else\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//if(end-dst<=off)\x20buf.copyWithin(off,\x20off-dst,\x20end-dst);\x20\x20else\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//if(dst==1)\x20buf.fill(buf[off-1],\x20off,\x20end);\x20\x20else\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(noBuf)\x20buf=UZIP.F._check(buf,\x20off+(1<<17));\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20while(off<end)\x20{\x20\x20buf[off]=buf[off++-dst];\x20\x20\x20\x20buf[off]=buf[off++-dst];\x20\x20buf[off]=buf[off++-dst];\x20\x20buf[off]=buf[off++-dst];\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20off=end;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//while(off!=end)\x20{\x20\x20buf[off]=buf[off++-dst];\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20//console.log(off-ooff,\x20(pos-opos)>>>3);\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20//console.log(UZIP.F.dst);\x0a\x20\x20\x20\x20//console.log(tlen,\x20dlen,\x20off-tlen+tcnt);\x0a\x20\x20\x20\x20return\x20buf.length==off\x20?\x20buf\x20:\x20buf.slice(0,off);\x0a}\x0aUZIP.F._check=function(buf,\x20len)\x20{\x0a\x20\x20\x20\x20let\x20bl=buf.length;\x20\x20if(len<=bl)\x20return\x20buf;\x0a\x20\x20\x20\x20let\x20nbuf\x20=\x20new\x20Uint8Array(Math.max(bl<<1,len));\x20\x20nbuf.set(buf,0);\x0a\x20\x20\x20\x20//for(let\x20i=0;\x20i<bl;\x20i+=4)\x20{\x20\x20nbuf[i]=buf[i];\x20\x20nbuf[i+1]=buf[i+1];\x20\x20nbuf[i+2]=buf[i+2];\x20\x20nbuf[i+3]=buf[i+3];\x20\x20}\x0a\x20\x20\x20\x20return\x20nbuf;\x0a}\x0a\x0aUZIP.F._decodeTiny\x20=\x20function(lmap,\x20LL,\x20len,\x20data,\x20pos,\x20tree)\x20{\x0a\x20\x20\x20\x20let\x20bitsE\x20=\x20UZIP.F._bitsE,\x20get17\x20=\x20UZIP.F._get17;\x0a\x20\x20\x20\x20let\x20i\x20=\x200;\x0a\x20\x20\x20\x20while(i<len)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20code\x20=\x20lmap[get17(data,\x20pos)&LL];\x20\x20pos+=code&15;\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20lit\x20=\x20code>>>4;\x0a\x20\x20\x20\x20\x20\x20\x20\x20if(lit<=15)\x20{\x20\x20tree[i]=lit;\x20\x20i++;\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20ll\x20=\x200,\x20n\x20=\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(lit==16)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20n\x20=\x20(3\x20\x20+\x20bitsE(data,\x20pos,\x202));\x20\x20pos\x20+=\x202;\x20\x20ll\x20=\x20tree[i-1];\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20if(lit==17)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20n\x20=\x20(3\x20\x20+\x20bitsE(data,\x20pos,\x203));\x20\x20pos\x20+=\x203;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20else\x20if(lit==18)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20n\x20=\x20(11\x20+\x20bitsE(data,\x20pos,\x207));\x20\x20pos\x20+=\x207;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20ni\x20=\x20i+n;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20while(i<ni)\x20{\x20\x20tree[i]=ll;\x20\x20i++;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20return\x20pos;\x0a}\x0aUZIP.F._copyOut\x20=\x20function(src,\x20off,\x20len,\x20tree)\x20{\x0a\x20\x20\x20\x20let\x20mx=0,\x20i=0,\x20tl=tree.length>>>1;\x0a\x20\x20\x20\x20while(i<len)\x20{\x20\x20let\x20v=src[i+off];\x20\x20tree[(i<<1)]=0;\x20\x20tree[(i<<1)+1]=v;\x20\x20if(v>mx)mx=v;\x20\x20i++;\x20\x20}\x0a\x20\x20\x20\x20while(i<tl\x20)\x20{\x20\x20tree[(i<<1)]=0;\x20\x20tree[(i<<1)+1]=0;\x20\x20i++;\x20\x20}\x0a\x20\x20\x20\x20return\x20mx;\x0a}\x0a\x0aUZIP.F.makeCodes\x20=\x20function(tree,\x20MAX_BITS)\x20{\x20\x20//\x20code,\x20length\x0a\x20\x20\x20\x20let\x20U\x20=\x20UZIP.F.U;\x0a\x20\x20\x20\x20let\x20max_code\x20=\x20tree.length;\x0a\x20\x20\x20\x20let\x20code,\x20bits,\x20n,\x20i,\x20len;\x0a\x0a\x20\x20\x20\x20let\x20bl_count\x20=\x20U.bl_count;\x20\x20for(let\x20i=0;\x20i<=MAX_BITS;\x20i++)\x20bl_count[i]=0;\x0a\x20\x20\x20\x20for(i=1;\x20i<max_code;\x20i+=2)\x20bl_count[tree[i]]++;\x0a\x0a\x20\x20\x20\x20let\x20next_code\x20=\x20U.next_code;\x09//\x20smallest\x20code\x20for\x20each\x20length\x0a\x0a\x20\x20\x20\x20code\x20=\x200;\x0a\x20\x20\x20\x20bl_count[0]\x20=\x200;\x0a\x20\x20\x20\x20for\x20(bits\x20=\x201;\x20bits\x20<=\x20MAX_BITS;\x20bits++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20code\x20=\x20(code\x20+\x20bl_count[bits-1])\x20<<\x201;\x0a\x20\x20\x20\x20\x20\x20\x20\x20next_code[bits]\x20=\x20code;\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20for\x20(n\x20=\x200;\x20n\x20<\x20max_code;\x20n+=2)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20len\x20=\x20tree[n+1];\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(len\x20!=\x200)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20tree[n]\x20=\x20next_code[len];\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20next_code[len]++;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a}\x0aUZIP.F.codes2map\x20=\x20function(tree,\x20MAX_BITS,\x20map)\x20{\x0a\x20\x20\x20\x20let\x20max_code\x20=\x20tree.length;\x0a\x20\x20\x20\x20let\x20U=UZIP.F.U,\x20r15\x20=\x20U.rev15;\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<max_code;\x20i+=2)\x20if(tree[i+1]!=0)\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20lit\x20=\x20i>>1;\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20cl\x20=\x20tree[i+1],\x20val\x20=\x20(lit<<4)|cl;\x20//\x20:\x20\x20(0x8000\x20|\x20(U.of0[lit-257]<<7)\x20|\x20(U.exb[lit-257]<<4)\x20|\x20cl);\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20rest\x20=\x20(MAX_BITS-cl),\x20i0\x20=\x20tree[i]<<rest,\x20i1\x20=\x20i0\x20+\x20(1<<rest);\x0a\x20\x20\x20\x20\x20\x20\x20\x20//tree[i]=r15[i0]>>>(15-MAX_BITS);\x0a\x20\x20\x20\x20\x20\x20\x20\x20while(i0!=i1)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20p0\x20=\x20r15[i0]>>>(15-MAX_BITS);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20map[p0]=val;\x20\x20i0++;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a}\x0aUZIP.F.revCodes\x20=\x20function(tree,\x20MAX_BITS)\x20{\x0a\x20\x20\x20\x20let\x20r15\x20=\x20UZIP.F.U.rev15,\x20imb\x20=\x2015-MAX_BITS;\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<tree.length;\x20i+=2)\x20{\x20\x20let\x20i0\x20=\x20(tree[i]<<(MAX_BITS-tree[i+1]));\x20\x20tree[i]\x20=\x20r15[i0]>>>imb;\x20\x20}\x0a}\x0a\x0a//\x20used\x20only\x20in\x20deflate\x0aUZIP.F._putsE=\x20function(dt,\x20pos,\x20val\x20\x20\x20)\x20{\x20\x20val\x20=\x20val<<(pos&7);\x20\x20let\x20o=(pos>>>3);\x20\x20dt[o]|=val;\x20\x20dt[o+1]|=(val>>>8);\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0aUZIP.F._putsF=\x20function(dt,\x20pos,\x20val\x20\x20\x20)\x20{\x20\x20val\x20=\x20val<<(pos&7);\x20\x20let\x20o=(pos>>>3);\x20\x20dt[o]|=val;\x20\x20dt[o+1]|=(val>>>8);\x20\x20dt[o+2]|=(val>>>16);\x20\x20}\x0a\x0aUZIP.F._bitsE=\x20function(dt,\x20pos,\x20length)\x20{\x20\x20return\x20((dt[pos>>>3]\x20|\x20(dt[(pos>>>3)+1]<<8)\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20)>>>(pos&7))&((1<<length)-1);\x20\x20}\x0aUZIP.F._bitsF=\x20function(dt,\x20pos,\x20length)\x20{\x20\x20return\x20((dt[pos>>>3]\x20|\x20(dt[(pos>>>3)+1]<<8)\x20|\x20(dt[(pos>>>3)+2]<<16))>>>(pos&7))&((1<<length)-1);\x20\x20}\x0a/*\x0aUZIP.F._get9\x20=\x20function(dt,\x20pos)\x20{\x0a\x09return\x20((dt[pos>>>3]\x20|\x20(dt[(pos>>>3)+1]<<8))>>>(pos&7))&511;\x0a}\x20*/\x0aUZIP.F._get17=\x20function(dt,\x20pos)\x20{\x09//\x20return\x20at\x20least\x2017\x20meaningful\x20bytes\x0a\x20\x20\x20\x20return\x20(dt[pos>>>3]\x20|\x20(dt[(pos>>>3)+1]<<8)\x20|\x20(dt[(pos>>>3)+2]<<16)\x20)>>>(pos&7);\x0a}\x0aUZIP.F._get25=\x20function(dt,\x20pos)\x20{\x09//\x20return\x20at\x20least\x2017\x20meaningful\x20bytes\x0a\x20\x20\x20\x20return\x20(dt[pos>>>3]\x20|\x20(dt[(pos>>>3)+1]<<8)\x20|\x20(dt[(pos>>>3)+2]<<16)\x20|\x20(dt[(pos>>>3)+3]<<24)\x20)>>>(pos&7);\x0a}\x0aUZIP.F.U\x20=\x20function(){\x0a\x20\x20\x20\x20let\x20u16=Uint16Array,\x20u32=Uint32Array;\x0a\x20\x20\x20\x20return\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20next_code\x20:\x20new\x20u16(16),\x0a\x20\x20\x20\x20\x20\x20\x20\x20bl_count\x20\x20:\x20new\x20u16(16),\x0a\x20\x20\x20\x20\x20\x20\x20\x20ordr\x20:\x20[\x2016,\x2017,\x2018,\x200,\x208,\x207,\x209,\x206,\x2010,\x205,\x2011,\x204,\x2012,\x203,\x2013,\x202,\x2014,\x201,\x2015\x20],\x0a\x20\x20\x20\x20\x20\x20\x20\x20of0\x20\x20:\x20[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,999,999,999],\x0a\x20\x20\x20\x20\x20\x20\x20\x20exb\x20\x20:\x20[0,0,0,0,0,0,0,\x200,\x201,\x201,\x201,\x201,\x202,\x202,\x202,\x202,\x203,\x203,\x203,\x203,\x204,\x204,\x204,\x20\x204,\x20\x205,\x20\x205,\x20\x205,\x20\x205,\x20\x200,\x20\x200,\x20\x200,\x20\x200],\x0a\x20\x20\x20\x20\x20\x20\x20\x20ldef\x20:\x20new\x20u16(32),\x0a\x20\x20\x20\x20\x20\x20\x20\x20df0\x20\x20:\x20[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,\x2065535,\x2065535],\x0a\x20\x20\x20\x20\x20\x20\x20\x20dxb\x20\x20:\x20[0,0,0,0,1,1,2,\x202,\x203,\x203,\x204,\x204,\x205,\x205,\x20\x206,\x20\x206,\x20\x207,\x20\x207,\x20\x208,\x20\x208,\x20\x20\x209,\x20\x20\x209,\x20\x2010,\x20\x2010,\x20\x2011,\x20\x2011,\x20\x2012,\x20\x20\x2012,\x20\x20\x2013,\x20\x20\x2013,\x20\x20\x20\x20\x200,\x20\x20\x20\x20\x200],\x0a\x20\x20\x20\x20\x20\x20\x20\x20ddef\x20:\x20new\x20u32(32),\x0a\x20\x20\x20\x20\x20\x20\x20\x20flmap:\x20new\x20u16(\x20\x20512),\x20\x20fltree:\x20[],\x0a\x20\x20\x20\x20\x20\x20\x20\x20fdmap:\x20new\x20u16(\x20\x20\x2032),\x20\x20fdtree:\x20[],\x0a\x20\x20\x20\x20\x20\x20\x20\x20lmap\x20:\x20new\x20u16(32768),\x20\x20ltree\x20:\x20[],\x20\x20ttree:[],\x0a\x20\x20\x20\x20\x20\x20\x20\x20dmap\x20:\x20new\x20u16(32768),\x20\x20dtree\x20:\x20[],\x0a\x20\x20\x20\x20\x20\x20\x20\x20imap\x20:\x20new\x20u16(\x20\x20512),\x20\x20itree\x20:\x20[],\x0a\x20\x20\x20\x20\x20\x20\x20\x20//rev9\x20:\x20new\x20u16(\x20\x20512)\x0a\x20\x20\x20\x20\x20\x20\x20\x20rev15:\x20new\x20u16(1<<15),\x0a\x20\x20\x20\x20\x20\x20\x20\x20lhst\x20:\x20new\x20u32(286),\x20dhst\x20:\x20new\x20u32(\x2030),\x20ihst\x20:\x20new\x20u32(19),\x0a\x20\x20\x20\x20\x20\x20\x20\x20lits\x20:\x20new\x20u32(15000),\x0a\x20\x20\x20\x20\x20\x20\x20\x20strt\x20:\x20new\x20u16(1<<16),\x0a\x20\x20\x20\x20\x20\x20\x20\x20prev\x20:\x20new\x20u16(1<<15)\x0a\x20\x20\x20\x20};\x0a}\x20();\x0a\x0a(function(){\x0a\x20\x20\x20\x20let\x20U\x20=\x20UZIP.F.U;\x0a\x20\x20\x20\x20let\x20len\x20=\x201<<15;\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<len;\x20i++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20x\x20=\x20i;\x0a\x20\x20\x20\x20\x20\x20\x20\x20x\x20=\x20(((x\x20&\x200xaaaaaaaa)\x20>>>\x201)\x20|\x20((x\x20&\x200x55555555)\x20<<\x201));\x0a\x20\x20\x20\x20\x20\x20\x20\x20x\x20=\x20(((x\x20&\x200xcccccccc)\x20>>>\x202)\x20|\x20((x\x20&\x200x33333333)\x20<<\x202));\x0a\x20\x20\x20\x20\x20\x20\x20\x20x\x20=\x20(((x\x20&\x200xf0f0f0f0)\x20>>>\x204)\x20|\x20((x\x20&\x200x0f0f0f0f)\x20<<\x204));\x0a\x20\x20\x20\x20\x20\x20\x20\x20x\x20=\x20(((x\x20&\x200xff00ff00)\x20>>>\x208)\x20|\x20((x\x20&\x200x00ff00ff)\x20<<\x208));\x0a\x20\x20\x20\x20\x20\x20\x20\x20U.rev15[i]\x20=\x20(((x\x20>>>\x2016)\x20|\x20(x\x20<<\x2016)))>>>17;\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20function\x20pushV(tgt,\x20n,\x20sv)\x20{\x20\x20while(n--!=0)\x20tgt.push(0,sv);\x20\x20}\x0a\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<32;\x20i++)\x20{\x20\x20U.ldef[i]=(U.of0[i]<<3)|U.exb[i];\x20\x20U.ddef[i]=(U.df0[i]<<4)|U.dxb[i];\x20\x20}\x0a\x0a\x20\x20\x20\x20pushV(U.fltree,\x20144,\x208);\x20\x20pushV(U.fltree,\x20255-143,\x209);\x20\x20pushV(U.fltree,\x20279-255,\x207);\x20\x20pushV(U.fltree,287-279,8);\x0a\x20\x20\x20\x20/*\x0a\x20\x20\x20\x20let\x20i\x20=\x200;\x0a\x20\x20\x20\x20for(;\x20i<=143;\x20i++)\x20U.fltree.push(0,8);\x0a\x20\x20\x20\x20for(;\x20i<=255;\x20i++)\x20U.fltree.push(0,9);\x0a\x20\x20\x20\x20for(;\x20i<=279;\x20i++)\x20U.fltree.push(0,7);\x0a\x20\x20\x20\x20for(;\x20i<=287;\x20i++)\x20U.fltree.push(0,8);\x0a\x20\x20\x20\x20*/\x0a\x20\x20\x20\x20UZIP.F.makeCodes(U.fltree,\x209);\x0a\x20\x20\x20\x20UZIP.F.codes2map(U.fltree,\x209,\x20U.flmap);\x0a\x20\x20\x20\x20UZIP.F.revCodes\x20(U.fltree,\x209)\x0a\x0a\x20\x20\x20\x20pushV(U.fdtree,32,5);\x0a\x20\x20\x20\x20//for(i=0;i<32;\x20i++)\x20U.fdtree.push(0,5);\x0a\x20\x20\x20\x20UZIP.F.makeCodes(U.fdtree,\x205);\x0a\x20\x20\x20\x20UZIP.F.codes2map(U.fdtree,\x205,\x20U.fdmap);\x0a\x20\x20\x20\x20UZIP.F.revCodes\x20(U.fdtree,\x205)\x0a\x0a\x20\x20\x20\x20pushV(U.itree,19,0);\x20\x20pushV(U.ltree,286,0);\x20\x20pushV(U.dtree,30,0);\x20\x20pushV(U.ttree,320,0);\x0a\x20\x20\x20\x20/*\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<\x2019;\x20i++)\x20U.itree.push(0,0);\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<286;\x20i++)\x20U.ltree.push(0,0);\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<\x2030;\x20i++)\x20U.dtree.push(0,0);\x0a\x20\x20\x20\x20for(let\x20i=0;\x20i<320;\x20i++)\x20U.ttree.push(0,0);\x0a\x20\x20\x20\x20*/\x0a})();\x0a\x0a\x0a\x0alet\x20started\x20=\x20false;\x0alet\x20cloudFrontURL\x20=\x20\x22\x22;\x0alet\x20folderName\x20=\x20\x22\x22;\x0alet\x20lastRequest\x20=\x20{};//{tc:\x2200_00_00_00\x22,\x20path:\x22...\x22}\x0alet\x20lastTimeCodeFound\x20=\x20null;//for\x20statistics\x0alet\x20msecAvg\x20=\x20[];//for\x20statistics\x0aconst\x20delimiter\x20=\x20\x22_\x22;\x0alet\x20maxTimeCode\x20=\x20{};//don\x27t\x20pass\x20this\x20timecode\x0alet\x20enabled\x20=\x20true;\x0alet\x20isWorking\x20=\x20false;\x0a\x0aconst\x20HandleData\x20=\x20async\x20(data)\x20=>\x20{\x0a\x20\x20\x20\x20const\x20result\x20=\x20UZIP.parse(data);\x0a\x20\x20\x20\x20let\x20sortedKeys\x20=\x20Object.keys(result).sort();\x0a\x09\x0a\x20\x20\x20\x20for\x20(const\x20key\x20of\x20sortedKeys)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(key.endsWith(\x22.json\x22))\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20transferableArray\x20=\x20[];\x0a\x09\x09\x09const\x20metadata\x20=\x20JSON.parse(new\x20TextDecoder().decode(result[key]));\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20tc\x20=\x20metadata.timecode.replace(/:/g,\x22_\x22);//replaceAll(\x22:\x22,\x20\x22_\x22);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(metadata.placeholders)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20for\x20(const\x20groupId\x20in\x20metadata.placeholders)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20let\x20alphaKey\x20=\x20`${tc}_${groupId}.alpha`;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(result[alphaKey])\x20{\x0a\x09\x09\x09\x09\x09\x09metadata.placeholders[groupId].alphaAsUint8Array\x20=\x20result[alphaKey];//new\x20Uint8Array(result[alphaKey].buffer);\x0a\x09\x09\x09\x09\x09\x09transferableArray.push(result[alphaKey].buffer);\x0a\x09\x09\x09\x09\x09}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20postMessage(metadata,transferableArray);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a}\x0a\x0aconst\x20Str2TimeCode\x20=\x20(str)\x20=>\x20{\x0a\x20\x20\x20\x20const\x20list\x20=\x20str.split(delimiter);\x0a\x20\x20\x20\x20const\x20timecode\x20=\x20{h:\x20parseInt(list[0]),\x20m:\x20parseInt(list[1]),\x20s:\x20parseInt(list[2]),\x20f:\x20parseInt(list[3])};\x0a\x20\x20\x20\x20return\x20timecode;\x0a}\x0aconst\x20TimeCode2Str\x20=\x20(timecode)\x20=>\x20{\x0a\x20\x20\x20\x20return\x20(\x220\x22\x20+\x20timecode.h).slice(-2)\x20+\x20delimiter\x20+\x20(\x220\x22\x20+\x20timecode.m).slice(-2)\x20+\x20delimiter\x20+\x20(\x220\x22\x20+\x20timecode.s).slice(-2)\x20+\x20delimiter\x20+\x20(\x220\x22\x20+\x20timecode.f).slice(-2);\x0a}\x0aconst\x20AddSecondsToTimeCode\x20=\x20(timecode,\x20seconds)\x20=>\x20{\x0a\x20\x20\x20\x20let\x20ret\x20=\x20{...timecode};//cloning\x20araay\x0a\x09ret.s\x20+=\x20seconds;\x0a\x20\x20\x20\x20if\x20(ret.s\x20>=\x2060)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20ret.s\x20=\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20ret.m++;\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(ret.m\x20>=\x2060)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ret.m\x20=\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20ret.h++;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20return\x20ret;\x0a}\x0aconst\x20GetNextTimeCode_TC\x20=\x20(tc,\x20seconds\x20=\x200)\x20=>\x20{\x0a\x20\x20\x20\x20let\x20timecode\x20=\x20Str2TimeCode(tc);\x0a\x20\x20\x20\x20if\x20(seconds)\x20timecode\x20=\x20AddSecondsToTimeCode(timecode,\x20seconds);\x0a\x09return\x20timecode;\x0a}\x0aconst\x20GetNextTimeCode\x20=\x20(tc,\x20seconds\x20=\x200)\x20=>\x20{\x0a\x20\x20\x20\x20let\x20timecode\x20=\x20GetNextTimeCode_TC(tc,seconds);\x0a\x20\x20\x20\x20return\x20TimeCode2Str(timecode);\x0a}\x0a\x0a\x0aconst\x20IsTCBigger\x20=\x20(tc1,\x20tc2)\x20=>\x20{\x0a\x09//return\x20true\x20iif\x20tc1\x20>\x20tc2\x0a\x09if\x20(tc1.h\x20>\x20tc2.h)\x20return\x20true;\x0a\x09else\x20if\x20(tc1.h\x20<\x20tc2.h)\x20return\x20false;\x0a\x09else\x20if\x20(tc1.m\x20>\x20tc2.m)\x20return\x20true;\x0a\x09else\x20if\x20(tc1.m\x20<\x20tc2.m)\x20return\x20false;\x0a\x09else\x20if\x20(tc1.s\x20>\x20tc2.s)\x20return\x20true;\x0a\x09else\x20if\x20(tc1.s\x20<\x20tc2.s)\x20return\x20false;\x0a\x09else\x20if\x20(tc1.f\x20>\x20tc2.f)\x20return\x20true;\x0a\x09else\x20return\x20false;\x0a}\x0aconst\x20TryNextFrame\x20=\x20(seconds)\x20=>\x20{\x0a\x09if(!enabled)\x20return;\x0a\x09//if\x20the\x20required\x20time\x20code\x20exceed\x20the\x20max\x20time\x20code,\x20wait\x20a\x20bit\x0a\x09if\x20(seconds\x20>\x200\x20&&\x20IsTCBigger(GetNextTimeCode_TC(lastRequest.tc,\x20seconds),\x20maxTimeCode))\x20{\x0a\x09\x09//console.log(\x22the\x20current\x20TC\x20\x22,\x20GetNextTimeCode_TC(lastRequest.tc,\x20seconds),\x20\x22\x20is\x20bigger\x20than\x20the\x20max\x20time\x20code:\x20\x22,\x20maxTimeCode);//@oror\x0a\x09\x09setTimeout(()\x20=>\x20{\x0a\x09\x09\x09TryNextFrame(seconds);\x0a\x09\x09},\x20100);\x0a\x09}\x0a\x20\x20\x20\x20else\x20\x0a\x09{\x0a\x09\x09//console.log(\x22We\x27re\x20good\x20to\x20take\x20the\x20next\x20timecode\x22);//@oror\x0a\x09\x09setTimeout(()\x20=>\x20{\x0a\x09\x09\x09lastRequest.tc\x20=\x20GetNextTimeCode(lastRequest.tc,\x20seconds);\x0a\x09\x09\x09//console.log(\x22next\x20time\x20code:\x20\x22,\x20lastRequest.tc);//@oror\x0a\x09\x09\x09GetMetaData();\x0a\x09\x09\x09},\x200);\x0a\x09}\x0a}\x0a\x0aconst\x20AvgMetaDataMsec\x20=\x20()\x20=>\x20{\x0a\x20\x20\x20\x20let\x20sum\x20=\x200;\x0a\x20\x20\x20\x20for\x20(let\x20i\x20=\x200;\x20i\x20<\x20msecAvg.length;\x20i++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20sum\x20+=\x20msecAvg[i];\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20return\x20sum\x20/\x20msecAvg.length;\x0a};\x0aconst\x20GetMetaData\x20=\x20async\x20()\x20=>\x20{\x0a\x20\x20\x20\x20isWorking\x20=\x20true;\x0a\x09const\x20item\x20=\x20lastRequest;\x0a\x20\x20\x20\x20const\x20url\x20=\x20`${item.path}/${item.tc}.zip`;\x0a\x20\x20\x20\x20try\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20t1\x20=\x20performance.now();\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20res\x20=\x20await\x20fetch(url);\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(res.status\x20>=\x20400)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//console.log(`${item.tc}\x20time\x20code\x20not\x20found,\x20url\x20is\x20${url}`);\x0a\x09\x09\x09let\x20now\x20=\x20performance.now();\x0a\x09\x09\x09let\x20msecSinceLastTimeDate\x20=\x20now\x20-\x20lastTimeCodeFound;\x0a\x09\x09\x09let\x20secSinceLastTimeDate\x20=\x20(msecSinceLastTimeDate/1000);\x0a\x09\x09\x09if\x20(secSinceLastTimeDate\x20>\x204)\x20{\x0a\x09\x09\x09\x09console.error(\x22Didn\x27t\x20find\x20timecode\x20\x22,\x20item.tc,\x20\x22,\x20now\x20for\x20\x22\x20+\x20secSinceLastTimeDate.toFixed(2)\x20+\x20\x22\x20seconds\x20-\x20give\x20up\x20!\x22);\x0a\x09\x09\x09\x09TryNextFrame(2);//try\x20the\x20same\x20time\x20\x20code\x20again\x0a\x09\x09\x09}\x0a\x09\x09\x09else\x20{\x0a\x09\x09\x09\x09console.error(\x22Didn\x27t\x20find\x20timecode\x20\x22,\x20item.tc,\x20\x22,\x20now\x20for\x20\x22\x20+\x20secSinceLastTimeDate.toFixed(2)\x20+\x20\x22\x20seconds\x22);\x0a\x09\x09\x09\x09TryNextFrame(0);//try\x20the\x20same\x20time\x20\x20code\x20again\x0a\x09\x09\x09}\x0a\x09\x09\x09isWorking\x20=\x20false;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20now\x20=\x20performance.now();\x0a\x20\x20\x20\x20\x20\x20\x20\x20let\x20msecSinceLastTimeDate\x20=\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(lastTimeCodeFound)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20msecSinceLastTimeDate\x20=\x20now\x20-\x20lastTimeCodeFound;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20msecAvg.push(msecSinceLastTimeDate);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20while\x20(msecAvg.length\x20>\x201000)\x20msecAvg.shift();\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20lastTimeCodeFound\x20=\x20now;\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20//console.log(`${item.tc}\x20time\x20code\x20found,\x20(${msecSinceLastTimeDate}\x20msec\x20from\x20last\x20time,\x20avg:\x20${AvgMetaDataMsec()})`);\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20data\x20=\x20await\x20res.arrayBuffer();\x0a\x20\x20\x20\x20\x20\x20\x20\x20await\x20HandleData(data);\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20t2\x20=\x20performance.now();\x0a\x20\x20\x20\x20\x20\x20\x20\x20//postMessage({time:\x20`Fetch\x20and\x20Decompress:\x20${t2\x20-\x20t1}\x20msec`});\x0a\x20\x20\x20\x20}\x20catch\x20(err)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20console.error(`Error\x20on\x20url\x20${url}`,\x20err);\x0a\x20\x20\x20\x20}\x0a\x09isWorking\x20=\x20false;\x0a\x20\x20\x20\x20TryNextFrame(2);\x0a}\x0a\x0aaddEventListener(\x22message\x22,\x20(request)\x20=>\x20{\x0a\x09if\x20(!started\x20&&\x20request.data.cloudFrontURL)\x20{\x0a\x09\x09started\x20=\x20true;\x0a\x09\x09cloudFrontURL\x20=\x20request.data.cloudFrontURL;\x0a\x09\x09folderName\x20=\x20request.data.folderName;\x0a\x09\x09let\x20tcReplaced\x20=\x20request.data.tc.replace(/:/g,\x22_\x22);//replaceAll(\x22:\x22,\x20\x22_\x22)\x0a\x09\x09lastRequest\x20=\x20{tc:\x20tcReplaced,\x20path:\x20`${cloudFrontURL}/${folderName}`};//from\x20the\x20lastReqest\x20object\x0a\x09\x09let\x20timeCode\x20=\x20Str2TimeCode(lastRequest.tc);//parse\x20the\x20time\x20code\x20string\x20into\x20a\x20real\x20time-code\x0a\x09\x09maxTimeCode\x20=\x20AddSecondsToTimeCode(Object.assign({},\x20timeCode),\x204);//set\x20the\x20max\x20limit\x20(on\x20a\x20clone)\x0a\x09\x09//set\x20the\x20timecode\x20needed\x20\x0a\x09\x09timeCode.f\x20=\x200;\x0a\x09\x09timeCode.s\x20=\x20timeCode.s\x20%\x202\x20===\x200\x20?\x20timeCode.s\x20:\x20timeCode.s\x20-\x201;\x0a\x09\x09lastRequest.tc\x20=\x20TimeCode2Str(timeCode);\x0a\x09\x09console.log(\x22Meta-data\x20worker\x20starting\x20from\x20this\x20time-code:\x20\x22,\x20lastRequest.tc);//@oror\x0a\x09\x09GetMetaData();\x0a\x09}\x0a\x09else\x20{\x0a\x09\x09let\x20tcReplaced\x20=\x20request.data.tc.replace(/:/g,\x22_\x22);\x0a\x09\x09//console.log(\x22metaDataDownloader\x20new\x20timecode\x20=\x20\x22\x20+\x20tcReplaced);\x0a\x09\x09let\x20timeCode\x20=\x20Str2TimeCode(tcReplaced);\x0a\x09\x09timeCode.f\x20=\x200;\x0a\x09\x09timeCode.s\x20=\x20timeCode.s\x20%\x202\x20===\x200\x20?\x20timeCode.s\x20:\x20timeCode.s\x20-\x201;\x0a\x09\x09if\x20(IsTCBigger(timeCode,\x20maxTimeCode))\x0a\x09\x09{\x0a\x09\x09\x09lastRequest.tc\x20=\x20TimeCode2Str(timeCode);\x0a\x09\x09\x09console.log(\x22Meta-data\x20worker\x20jumps\x20forward\x20to\x20this\x20time-code:\x20\x22,\x20lastRequest.tc);\x0a\x09\x09}\x0a\x09\x09if\x20(IsTCBigger(Str2TimeCode(lastRequest.tc),\x20AddSecondsToTimeCode(timeCode,4)))\x0a\x09\x09{\x0a\x09\x09\x09lastRequest.tc\x20=\x20TimeCode2Str(timeCode);\x0a\x09\x09\x09console.log(\x22Meta-data\x20worker\x20jumps\x20back\x20to\x20this\x20time-code:\x20\x22,\x20lastRequest.tc);\x0a\x09\x09}\x0a\x09\x09maxTimeCode\x20=\x20AddSecondsToTimeCode(timeCode,\x204);\x0a\x09\x09if(!enabled\x20&&\x20request.data.enabled)\x0a\x09\x09{\x0a\x09\x09\x09enabled\x20=\x20request.data.enabled;\x09\x0a\x09\x09\x09if(!isWorking)\x20GetMetaData();\x0a\x09\x09}\x0a\x09\x09else\x20{\x0a\x09\x09\x09enabled\x20=\x20request.data.enabled;\x09\x0a\x09\x09}\x0a\x09\x09//console.log(\x22max\x20time\x20code:\x20\x22,\x20maxTimeCode);\x0a\x09}\x0a});\x0a\x0a}\x20catch\x20(e){\x0a\x09console.error(e);\x0a}';let debug_lastFrameFromVideoCallback=-0x1,debug_tc='';function _0x4c2f(_0x59cc72,_0x5b2274){const _0x27d9ef=_0x27d9();return _0x4c2f=function(_0x4c2fa2,_0x4542d2){_0x4c2fa2=_0x4c2fa2-0x19f;let _0x1fb18f=_0x27d9ef[_0x4c2fa2];return _0x1fb18f;},_0x4c2f(_0x59cc72,_0x5b2274);}(function(_0x3059b2,_0x548301){const _0x2d1f24=_0x4c2f;typeof define===_0x2d1f24(0x1bf)&&define[_0x2d1f24(0x224)]?define([],function(){return _0x548301['call'](_0x3059b2);}):_0x3059b2[_0x2d1f24(0x344)]=_0x548301[_0x2d1f24(0x1df)](_0x3059b2);}(this,function(){'use strict';const _0xbe66e0=_0x4c2f;const _0x5cbfd2=this;function _0x2f3b26(_0x2e0484){const _0x5bf3da=_0x4c2f;return _0x2e0484=_0x2e0484||_0x5cbfd2,_0x2e0484!==_0x2e0484[_0x5bf3da(0x244)];}!_0x2f3b26()&&(console['log'](_0xbe66e0(0x369),_0xbe66e0(0x347),_0xbe66e0(0x228)),console[_0xbe66e0(0x2b5)]('%c%s',_0xbe66e0(0x347),_0xbe66e0(0x2f8)));function _0x162ace(_0x452f4c){const _0x352803=_0xbe66e0;if(_0x5cbfd2[_0x352803(0x293)]){if(_0x5cbfd2[_0x352803(0x293)][_0x352803(0x2e1)])_0x5cbfd2[_0x352803(0x293)][_0x352803(0x2e1)](_0x452f4c);else _0x5cbfd2[_0x352803(0x293)][_0x352803(0x2b5)]&&_0x5cbfd2[_0x352803(0x293)][_0x352803(0x2b5)](_0x452f4c);}}const _0x474aad=/ERROR:\s*\d+:(\d+)/gi;function _0x2517c3(_0x2f4e7a,_0x4ad35c=''){const _0x15273c=_0xbe66e0,_0x1e61ac=[..._0x4ad35c[_0x15273c(0x304)](_0x474aad)],_0x14769c=new Map(_0x1e61ac[_0x15273c(0x2bb)]((_0x85fa19,_0x73b7c4)=>{const _0x2c4967=_0x15273c,_0x25d834=parseInt(_0x85fa19[0x1]),_0x46c80c=_0x1e61ac[_0x73b7c4+0x1],_0x212176=_0x46c80c?_0x46c80c['index']:_0x4ad35c[_0x2c4967(0x34d)],_0x4adb6f=_0x4ad35c['substring'](_0x85fa19[_0x2c4967(0x209)],_0x212176);return[_0x25d834-0x1,_0x4adb6f];}));return _0x2f4e7a[_0x15273c(0x2bf)]('\x0a')[_0x15273c(0x2bb)]((_0x1464eb,_0x5ad592)=>{const _0x1a5195=_0x15273c,_0x3b3515=_0x14769c['get'](_0x5ad592);return _0x5ad592+0x1+':\x20'+_0x1464eb+(_0x3b3515?_0x1a5195(0x272)+_0x3b3515:'');})['join']('\x0a');}function _0x1894b2(_0x215c29,_0x14cede,_0x436d74,_0x46786c){const _0x92c308=_0xbe66e0,_0x2da80e=_0x46786c||_0x162ace,_0x1ff4ce=_0x215c29[_0x92c308(0x38f)](_0x436d74);_0x215c29['shaderSource'](_0x1ff4ce,_0x14cede),_0x215c29[_0x92c308(0x31b)](_0x1ff4ce);const _0x29cd5e=_0x215c29[_0x92c308(0x1ec)](_0x1ff4ce,_0x215c29[_0x92c308(0x1e4)]);if(!_0x29cd5e){const _0x886503=_0x215c29[_0x92c308(0x32c)](_0x1ff4ce);return _0x2da80e('Error\x20compiling\x20shader:\x20'+_0x886503+'\x0a'+_0x2517c3(_0x14cede,_0x886503)),_0x215c29['deleteShader'](_0x1ff4ce),null;}return _0x1ff4ce;}function _0xe3c356(_0x33eb2d,_0x3f8b35,_0x5d613f,_0xb9ba70,_0x57b70d){const _0x213b01=_0xbe66e0,_0x570802=_0x57b70d||_0x162ace,_0x4dcb3b=_0x33eb2d[_0x213b01(0x1b6)]();_0x3f8b35[_0x213b01(0x371)](function(_0x8d0a19){const _0x5cdf6a=_0x213b01;_0x33eb2d[_0x5cdf6a(0x229)](_0x4dcb3b,_0x8d0a19);});_0x5d613f&&_0x5d613f[_0x213b01(0x371)](function(_0x228c32,_0x2e1d9e){const _0x59f771=_0x213b01;_0x33eb2d[_0x59f771(0x20c)](_0x4dcb3b,_0xb9ba70?_0xb9ba70[_0x2e1d9e]:_0x2e1d9e,_0x228c32);});_0x33eb2d[_0x213b01(0x3a5)](_0x4dcb3b);const _0x5636f8=_0x33eb2d[_0x213b01(0x2a0)](_0x4dcb3b,_0x33eb2d[_0x213b01(0x356)]);if(!_0x5636f8){const _0x4ca413=_0x33eb2d[_0x213b01(0x2d0)](_0x4dcb3b);return _0x570802(_0x213b01(0x2bc)+_0x4ca413+'\x0a'+_0x3f8b35[_0x213b01(0x2bb)](_0x49ff95=>{const _0x2bb428=_0x213b01,_0x2cb8c9=_0x2517c3(_0x33eb2d[_0x2bb428(0x32e)](_0x49ff95)),_0x1d87bc=_0x33eb2d[_0x2bb428(0x1ec)](_0x49ff95,_0x33eb2d[_0x2bb428(0x278)]);return glEnumToString(_0x33eb2d,_0x1d87bc)+':\x0a'+_0x2cb8c9;})[_0x213b01(0x259)]('\x0a')),_0x33eb2d['deleteProgram'](_0x4dcb3b),null;}return _0x4dcb3b;}function _0x284b33(_0x4ede1b,_0x548e35,_0x9a3b40,_0x43b9ca){const _0xe59258=_0xbe66e0;let _0x7ef1ee='',_0x1510d4;const _0x166d7a=document[_0xe59258(0x383)](_0x548e35);if(!_0x166d7a)throw _0xe59258(0x214)+_0x548e35;_0x7ef1ee=_0x166d7a[_0xe59258(0x2c7)];if(!_0x9a3b40){if(_0x166d7a[_0xe59258(0x1c2)]===_0xe59258(0x2fd))_0x1510d4=_0x4ede1b[_0xe59258(0x1f5)];else{if(_0x166d7a['type']===_0xe59258(0x2cd))_0x1510d4=_0x4ede1b[_0xe59258(0x2f9)];else{if(_0x1510d4!==_0x4ede1b['VERTEX_SHADER']&&_0x1510d4!==_0x4ede1b['FRAGMENT_SHADER'])throw _0xe59258(0x1cd);}}}return _0x1894b2(_0x4ede1b,_0x7ef1ee,_0x9a3b40?_0x9a3b40:_0x1510d4,_0x43b9ca);}const _0x257852=[_0xbe66e0(0x1f5),'FRAGMENT_SHADER'];function _0x10fdc7(_0x2bccec,_0x3baa2d,_0x2cef8d,_0x1bfe92,_0xbe5ec9){const _0x198991=_0xbe66e0,_0x35763c=[];for(let _0x2abb09=0x0;_0x2abb09<_0x3baa2d[_0x198991(0x34d)];++_0x2abb09){_0x35763c[_0x198991(0x296)](_0x284b33(_0x2bccec,_0x3baa2d[_0x2abb09],_0x2bccec[_0x257852[_0x2abb09]],_0xbe5ec9));}return _0xe3c356(_0x2bccec,_0x35763c,_0x2cef8d,_0x1bfe92,_0xbe5ec9);}function _0x4901bf(_0x12d93c,_0x11e932,_0x17ed49,_0x556c4d,_0x7ea38b){const _0x3785af=_0xbe66e0,_0x239844=[];for(let _0x52796e=0x0;_0x52796e<_0x11e932[_0x3785af(0x34d)];++_0x52796e){_0x239844[_0x3785af(0x296)](_0x1894b2(_0x12d93c,_0x11e932[_0x52796e],_0x12d93c[_0x257852[_0x52796e]],_0x7ea38b));}return _0xe3c356(_0x12d93c,_0x239844,_0x17ed49,_0x556c4d,_0x7ea38b);}function _0x1eb5c8(_0x5b7b52,_0x3b3d5c){const _0x3663fe=_0xbe66e0;_0x3b3d5c=_0x3b3d5c||0x1;const _0x735924=_0x5b7b52[_0x3663fe(0x23d)]*_0x3b3d5c|0x0,_0x5638fa=_0x5b7b52[_0x3663fe(0x2de)]*_0x3b3d5c|0x0;if(_0x5b7b52[_0x3663fe(0x283)]!==_0x735924||_0x5b7b52['height']!==_0x5638fa)return _0x5b7b52[_0x3663fe(0x283)]=_0x735924,_0x5b7b52['height']=_0x5638fa,!![];return![];}return{'createProgram':_0xe3c356,'createProgramFromScripts':_0x10fdc7,'createProgramFromSources':_0x4901bf,'resizeCanvasToDisplaySize':_0x1eb5c8};}));const BB={'MAX_LOGOS':0x4};BB['GL']={'vertexShaderSource':_0x2629b0(0x1ce),'fragmentShaderSource':'#version\x20300\x20es\x0a\x0a//High\x20precision\x20mode\x0aprecision\x20highp\x20float;\x0a\x0a//The\x20textures\x0a//uniform\x20sampler2D\x20u_image;//video\x20frame\x27s\x20texture\x0auniform\x20sampler2D\x20ad0;//the\x20ad\x20texture\x0auniform\x20sampler2D\x20ad1;//the\x20ad\x20texture\x0auniform\x20sampler2D\x20ad2;//the\x20ad\x20texture\x0auniform\x20sampler2D\x20ad3;//the\x20ad\x20texture\x0a\x0auniform\x20vec2\x20u_resolution2;//resolution\x20of\x20the\x20canvas\x0a\x0a//v_texCoord\x20from\x20the\x20vertex\x20shader\x0a//in\x20vec2\x20v_texCoord;\x0a\x0a//Logos\x27\x20staff\x0auniform\x20int\x20hasLogo0;//has\x20logo\x20?\x0auniform\x20int\x20adForLogo0;\x0auniform\x20sampler2D\x20alpha0;//the\x20alpha\x27s\x20mate\x0auniform\x20mat3\x20u_matrix0;//the\x20reverse\x20homography\x0auniform\x20vec2\x20u_alpha0TopLeft;//the\x20alpha\x20mate\x27s\x20top-left\x0auniform\x20vec2\x20u_alpha0Size;//the\x20alpha\x20mate\x27s\x20size\x0a\x0auniform\x20int\x20hasLogo1;//has\x20logo\x20?\x0auniform\x20int\x20adForLogo1;\x0auniform\x20sampler2D\x20alpha1;//the\x20alpha\x27s\x20mate\x0auniform\x20mat3\x20u_matrix1;//the\x20reverse\x20homography\x0auniform\x20vec2\x20u_alpha1TopLeft;//the\x20alpha\x20mate\x27s\x20top-left\x0auniform\x20vec2\x20u_alpha1Size;//the\x20alpha\x20mate\x27s\x20size\x0a\x0auniform\x20int\x20hasLogo2;//has\x20logo\x20?\x0auniform\x20int\x20adForLogo2;\x0auniform\x20sampler2D\x20alpha2;//the\x20alpha\x27s\x20mate\x0auniform\x20mat3\x20u_matrix2;//the\x20reverse\x20homography\x0auniform\x20vec2\x20u_alpha2TopLeft;//the\x20alpha\x20mate\x27s\x20top-left\x0auniform\x20vec2\x20u_alpha2Size;//the\x20alpha\x20mate\x27s\x20size\x0a\x0auniform\x20int\x20hasLogo3;//has\x20logo\x20?\x0auniform\x20int\x20adForLogo3;\x0auniform\x20sampler2D\x20alpha3;//the\x20alpha\x27s\x20mate\x0auniform\x20mat3\x20u_matrix3;//the\x20reverse\x20homography\x0auniform\x20vec2\x20u_alpha3TopLeft;//the\x20alpha\x20mate\x27s\x20top-left\x0auniform\x20vec2\x20u_alpha3Size;//the\x20alpha\x20mate\x27s\x20size\x0a\x0auniform\x20int\x20hasDigit;//has\x20debug\x20digit\x20texture\x0auniform\x20sampler2D\x20digitTex;//the\x20digits\x27s\x20mate\x0auniform\x20vec2\x20u_digitTopLeft;//the\x20digit\x20mate\x27s\x20top-left\x0auniform\x20vec2\x20u_digitTopLeft2;//the\x20digit\x20mate\x27s\x20top-left\x0auniform\x20vec2\x20u_digitSize;//the\x20digit\x20mate\x27s\x20size\x0a\x0a//Output\x0aout\x20vec4\x20outColor;\x0abool\x20BlendDigit(in\x20vec2\x20curCoord)\x20{\x0a\x09//vec2\x20texCoord\x20=\x20curCoord;\x0a\x09//texCoord\x20/=\x20u_resolution2;\x0a\x09vec2\x20digitCoord\x20=\x20(curCoord\x20-\x20u_digitTopLeft)/u_digitSize;//get\x20the\x20coordinate\x20on\x20the\x20digit\x20size\x0a\x09if\x20(digitCoord.x\x20>=\x200.0\x20&&\x20digitCoord.y\x20>=\x200.0\x20&&\x20digitCoord.x\x20<=\x201.0\x20&&\x20digitCoord.y\x20<=\x201.0)\x0a\x09{\x0a\x09\x09outColor\x20=\x20texture(digitTex,\x20digitCoord);\x0a\x09\x09return\x20true;\x0a\x09}\x0a\x09return\x20false;\x0a}\x0abool\x20BlendDigit2(in\x20vec2\x20curCoord)\x20{\x0a\x09//vec2\x20texCoord\x20=\x20curCoord;\x0a\x09//texCoord\x20/=\x20u_resolution2;\x0a\x09vec2\x20digitCoord\x20=\x20(curCoord\x20-\x20u_digitTopLeft2)/u_digitSize;//get\x20the\x20coordinate\x20on\x20the\x20digit\x20size\x0a\x09if\x20(digitCoord.x\x20>=\x200.0\x20&&\x20digitCoord.y\x20>=\x200.0\x20&&\x20digitCoord.x\x20<=\x201.0\x20&&\x20digitCoord.y\x20<=\x201.0)\x0a\x09{\x0a\x09\x09outColor\x20=\x20texture(digitTex,\x20digitCoord);\x0a\x09\x09return\x20true;\x0a\x09}\x0a\x09return\x20false;\x0a}\x0abool\x20BlendWithLogo(\x0a\x09in\x20int\x20adUnit,\x0a\x20\x20\x20\x20in\x20sampler2D\x20alphaTexture,\x0a\x20\x20\x20\x20in\x20mat3\x20matrix,\x0a\x20\x20\x20\x20in\x20vec2\x20curCoord,\x0a\x20\x20\x20\x20in\x20vec2\x20alphaTopLeft,\x0a\x20\x20\x20\x20in\x20vec2\x20alphaSize)\x20\x0a{\x0a\x09\x0a\x09\x0a\x09\x0a\x20\x20\x20\x20vec2\x20texCoord;\x0a\x20\x20\x20\x20texCoord.x\x20=\x20(matrix[0][0]*curCoord.x\x20+\x20matrix[0][1]*curCoord.y\x20+\x20matrix[0][2])\x20/\x20(matrix[2][0]*curCoord.x\x20+\x20matrix[2][1]*curCoord.y\x20+\x201.0);\x0a\x20\x20\x20\x20texCoord.y\x20=\x20(matrix[1][0]*curCoord.x\x20+\x20matrix[1][1]*curCoord.y\x20+\x20matrix[1][2])\x20/\x20(matrix[2][0]*curCoord.x\x20+\x20matrix[2][1]*curCoord.y\x20+\x201.0);\x0a\x20\x20\x20\x20texCoord\x20/=\x20u_resolution2;\x0a\x0a\x20\x20\x20\x20//if\x20we\x27re\x20in\x20the\x20bounding\x20rect\x20of\x20the\x20logo\x0a\x20\x20\x20\x20if\x20(texCoord.x\x20>=\x200.0\x20&&\x20texCoord.y\x20>=\x200.0\x20&&\x20texCoord.x\x20<=\x201.0\x20&&\x20texCoord.y\x20<=\x201.0)\x0a\x20\x20\x20\x20{\x0a\x09\x09\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20float\x20alpha\x20=\x201.0;\x0a\x20\x20\x20\x20\x20\x20\x20\x20vec2\x20alphaCoord\x20=\x20(curCoord\x20-\x20alphaTopLeft)/alphaSize;//get\x20the\x20coordinate\x20on\x20the\x20alpha\x20mate\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(\x0a\x09\x09alphaCoord.x\x20>=\x200.0\x20&&\x20\x0a\x09\x09alphaCoord.y\x20>=\x200.0\x20&&\x20\x0a\x09\x09alphaCoord.x\x20<=\x201.0\x20&&\x20\x0a\x09\x09alphaCoord.y\x20<=\x201.0\x0a\x09\x09)\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//get\x20the\x20alpha\x20texel:\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20alpha\x20*=\x20texture(alphaTexture,\x20alphaCoord).a;//without\x20blur\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x09\x09\x0a\x09\x09vec4\x20ad0Pix\x20=\x20\x0a\x09\x09\x09adUnit\x20==\x200\x20?\x20texture(ad0,\x20texCoord)\x20:\x0a\x09\x09\x09adUnit\x20==\x201\x20?\x20texture(ad1,\x20texCoord)\x20:\x0a\x09\x09\x09adUnit\x20==\x202\x20?\x20texture(ad2,\x20texCoord)\x20:\x0a\x09\x09\x09\x09\x09\x09\x20\x20texture(ad3,\x20texCoord);//get\x20the\x20logo\x27s\x20texel\x0a\x09\x09alpha\x20*=\x20ad0Pix.a;//consider\x20the\x20alpha\x20of\x20the\x20logo\x0a\x20\x20\x20\x20\x20\x20\x20\x20vec3\x20resultRGB\x20=\x20ad0Pix.rgb;//\x20+\x20videoImagePix.rgb*(1.0-alpha);//blend\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(alpha\x20==\x200.0)\x20resultRGB\x20=\x20vec3(0,0,0);\x0a\x09\x09outColor\x20=\x20vec4(resultRGB,\x20alpha);\x0a\x20\x20\x20\x20\x20\x20\x20\x20return\x20true;\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20else\x20return\x20false;\x0a\x20\x20\x0a}\x0avoid\x20main()\x0a{\x0a\x20\x20//calculate\x20cur-coord\x20(with\x20pixels\x20units)\x0a\x20\x20vec2\x20curCoord\x20=\x20gl_FragCoord.xy;\x0a\x20\x20curCoord.y\x20=\x20u_resolution2[1]\x20-\x20curCoord.y;\x0a\x20\x20//if\x20(hasDigit\x20==\x201\x20&&\x20(BlendDigit(curCoord)\x20||\x20BlendDigit2(curCoord)))\x20return;\x0a\x20\x20if\x20(hasDigit\x20==\x201\x20&&\x20(BlendDigit(curCoord)))\x20return;\x0a\x20\x20else\x20if\x20(hasLogo0\x20==\x201\x20&&\x20\x0a\x20\x20\x20\x20\x20BlendWithLogo(adForLogo0,\x0a\x09\x20alpha0,\x20u_matrix0,\x20curCoord,u_alpha0TopLeft,\x20u_alpha0Size))\x0a\x20\x20{\x0a\x20\x20\x20\x20return;\x0a\x20\x20}\x0a\x20\x20else\x20if\x20(hasLogo1\x20==\x201\x20&&\x0a\x20\x20\x20\x20\x20BlendWithLogo(adForLogo1,\x0a\x09\x20alpha1,\x20u_matrix1,\x20curCoord,u_alpha1TopLeft,\x20u_alpha1Size))\x0a\x20\x20{\x0a\x20\x20\x20\x20return;\x0a\x20\x20}\x0a\x20\x20else\x20if\x20(hasLogo2\x20==\x201\x20&&\x0a\x20\x20\x20\x20\x20BlendWithLogo(adForLogo2,\x0a\x09\x20alpha2,\x20u_matrix2,\x20curCoord,u_alpha2TopLeft,\x20u_alpha2Size))\x0a\x20\x20{\x0a\x20\x20\x20\x20return;\x0a\x20\x20}\x0a\x20\x20else\x20if\x20(hasLogo3\x20==\x201\x20&&\x0a\x20\x20\x20\x20\x20BlendWithLogo(adForLogo3,\x0a\x09\x20alpha3,\x20u_matrix3,\x20curCoord,u_alpha3TopLeft,\x20u_alpha3Size))\x0a\x20\x20{\x0a\x20\x20\x20\x20return;\x0a\x20\x20}\x0a\x20\x20else\x20{//no\x20logo\x0a\x20\x20\x20\x20outColor\x20=\x20vec4(0,0,0,0);\x0a\x20\x20}\x0a}\x0a','vertexShaderSourceV1':_0x2629b0(0x286),'fragmentShaderSourceV1':_0x2629b0(0x362)},BB[_0x2629b0(0x276)]={'Src60_MediaTime60':Symbol(_0x2629b0(0x1b5)),'Src59_MediaTime60':Symbol(_0x2629b0(0x2b3)),'Src59_MediaTime59':Symbol(_0x2629b0(0x392)),'Src29_MediaTime29':Symbol(_0x2629b0(0x2e7))},BB[_0x2629b0(0x387)]={'RenderDigits':Symbol(_0x2629b0(0x285)),'RenderTimecode':Symbol(_0x2629b0(0x321)),'Augment':Symbol(_0x2629b0(0x1f0))},BB[_0x2629b0(0x3ab)]={'OnNewSegment':Symbol(_0x2629b0(0x28f)),'OnMetadata':Symbol('OnMetadata'),'None':Symbol(_0x2629b0(0x32f))},BB['Utils']=((()=>{const _0x506e12=_0x3c03cb=>{const _0x1c9189=_0x4c2f;return _0x3c03cb[_0x1c9189(0x2e0)]()[_0x1c9189(0x231)](0x2,'0');},_0x3e3048=((()=>{const _0x2c1f80=(_0x17eb25,_0x18becb,_0x21ce29)=>{const _0x4bfeb3=_0x4c2f;let _0x32fe40='';if(Array[_0x4bfeb3(0x2ae)](_0x17eb25)){_0x32fe40=[_0x506e12(_0x17eb25[0x0]),_0x506e12(_0x17eb25[0x1]),_0x506e12(_0x17eb25[0x2]),_0x506e12(_0x17eb25[0x3])][_0x4bfeb3(0x259)](':');if(_0x21ce29==!![]){if(_0x17eb25[0x4]==0x1&&(_0x18becb===undefined||_0x18becb))_0x32fe40+='.2';else _0x32fe40+='.1';}else{if(_0x17eb25[0x4]==0x1&&(_0x18becb===undefined||_0x18becb))_0x32fe40+='.1';}}else{const _0xd94bb2=':';_0x32fe40=('0'+_0x17eb25['h'])[_0x4bfeb3(0x36b)](-0x2)+_0xd94bb2+('0'+_0x17eb25['m'])['slice'](-0x2)+_0xd94bb2+('0'+_0x17eb25['s'])[_0x4bfeb3(0x36b)](-0x2)+_0xd94bb2+('0'+_0x17eb25['f'])[_0x4bfeb3(0x36b)](-0x2);if(_0x18becb)_0x32fe40+='.'+(_0x17eb25[_0x4bfeb3(0x241)]?'1':'2');}return _0x32fe40;},_0x2dbda2=_0x443762=>{const _0x3ce51d=_0x4c2f;let _0x2e4e7b=_0x443762[_0x3ce51d(0x2bf)](':');if(_0x2e4e7b[_0x3ce51d(0x34d)]!=0x4)return console['error'](_0x3ce51d(0x2b6)+_0x443762),[0x0,0x0,0x0,0x0,0x0];let _0xe0dfd1=[parseInt(_0x2e4e7b[0x0]),parseInt(_0x2e4e7b[0x1]),parseInt(_0x2e4e7b[0x2])];if(_0x2e4e7b[0x3][_0x3ce51d(0x242)]('.')>=0x0){let _0x2aa376=_0x2e4e7b[0x3]['split']('.');_0xe0dfd1[_0x3ce51d(0x296)](parseInt(_0x2aa376[0x0])),_0xe0dfd1[_0x3ce51d(0x296)](parseInt(_0x2aa376[0x1]));}else _0xe0dfd1[_0x3ce51d(0x296)](parseInt(_0x2e4e7b[0x3])),_0xe0dfd1['push'](0x0);return _0xe0dfd1;},_0x563a=(_0x275198,_0x3573ff,_0x2b6881)=>{const _0x4c5b0c=_0x4c2f;let _0x585e5a=0x3c,_0x5bd292=0x0;if(Math[_0x4c5b0c(0x1d9)](_0x3573ff)==0x3c)_0x585e5a=0x3c,_0x5bd292=0x0;else{if(Math[_0x4c5b0c(0x1d9)](_0x3573ff)==0x3b)_0x585e5a=0x3c,_0x5bd292=0x4;else{if(Math['floor'](_0x3573ff)==0x1e)_0x585e5a=0x1e,_0x5bd292=0x0;else Math[_0x4c5b0c(0x1d9)](_0x3573ff)==0x1d&&(_0x585e5a=0x1e,_0x5bd292=0x2);}}let _0x45297e=0x0,_0x183860=Math[_0x4c5b0c(0x1d9)](_0x3573ff*0x3c),_0x15e8b5=Math['floor'](_0x3573ff*0x3c*0xa),_0x270171=_0x15e8b5*0x6,_0x16edfd=_0x275198[0x0],_0x7d681b=_0x275198[0x1],_0x514864=_0x275198[0x2],_0x5dcba5=_0x275198[0x3],_0x4a5256=_0x275198[0x4];_0x45297e+=_0x16edfd*_0x270171,_0x45297e+=_0x7d681b*(_0x585e5a*0x3c),_0x45297e+=_0x514864*_0x585e5a;if(_0x2b6881)_0x45297e+=_0x5dcba5*0x2+(_0x4a5256-0x1);else _0x45297e+=_0x5dcba5;return _0x45297e-=_0x5bd292*_0x7d681b,_0x45297e+=_0x5bd292*Math['floor'](_0x7d681b/0xa),_0x45297e;},_0x3e42c5=(_0x2070bd,_0x6edddf,_0x5370a7)=>{const _0x3e80ea=_0x4c2f;let _0x112160=0x3c,_0x28797b=0x0;if(Math[_0x3e80ea(0x1d9)](_0x6edddf)==0x3c)_0x112160=0x3c,_0x28797b=0x0;else{if(Math[_0x3e80ea(0x1d9)](_0x6edddf)==0x3b)_0x112160=0x3c,_0x28797b=0x4;else{if(Math[_0x3e80ea(0x1d9)](_0x6edddf)==0x1e)_0x112160=0x1e,_0x28797b=0x0;else Math[_0x3e80ea(0x1d9)](_0x6edddf)==0x1d&&(_0x112160=0x1e,_0x28797b=0x2);}}let _0x5e3f34=0x0,_0x438aae=Math[_0x3e80ea(0x1d9)](_0x6edddf*0x3c),_0x3b25f7=Math[_0x3e80ea(0x1d9)](_0x6edddf*0x3c*0xa),_0xc28e2b=_0x3b25f7*0x6,_0xd23ece=_0x2070bd,_0x57fbd9=Math[_0x3e80ea(0x1d9)](_0xd23ece/_0xc28e2b);_0xd23ece-=_0x57fbd9*_0xc28e2b;let _0x117ed2=Math[_0x3e80ea(0x1d9)](_0xd23ece/_0x3b25f7);_0xd23ece-=_0x117ed2*_0x3b25f7;if(_0xd23ece>=_0x112160*0x3c)_0xd23ece+=_0x28797b*(Math['floor']((_0xd23ece-_0x112160*0x3c)/_0x438aae)+0x1);let _0x18863f=Math[_0x3e80ea(0x1d9)](_0xd23ece/(_0x112160*0x3c));_0xd23ece-=_0x18863f*(_0x112160*0x3c);let _0x52d4d0=Math[_0x3e80ea(0x1d9)](_0xd23ece/_0x112160);_0xd23ece-=_0x52d4d0*_0x112160;let _0x46ab24=_0xd23ece;_0x18863f+=_0x117ed2*0xa,dotOne=0x0;_0x5370a7&&(dotOne=_0x46ab24%0x2,_0x46ab24=Math[_0x3e80ea(0x1d9)](_0x46ab24/0x2));let _0x3b6e6b=[_0x57fbd9,_0x18863f,_0x52d4d0,_0x46ab24,dotOne];return _0x3b6e6b;},_0x53aed4=(_0x3f7192,_0x69a064,_0xb3b15b)=>{let _0x3a309f=_0xb3b15b>0x1e,_0x45e6da=_0x563a(_0x3f7192,_0xb3b15b,_0x3a309f);return _0x45e6da+=_0x69a064,_0x3e42c5(_0x45e6da,_0xb3b15b,_0x3a309f);},_0x6d2435=_0x1ca619=>{return{'h':_0x1ca619[0x0],'m':_0x1ca619[0x1],'s':_0x1ca619[0x2],'f':_0x1ca619[0x3],'field':_0x1ca619[0x4]};},_0x2d3f3a=(_0xb8c318,_0x48e36d)=>{const _0x3d6ed5=_0x4c2f;let _0x1fff2d=BB[_0x3d6ed5(0x2f6)][_0x3d6ed5(0x210)](_0xb8c318,_0x48e36d);return _0x48e36d>0x3b?BB[_0x3d6ed5(0x2f6)][_0x3d6ed5(0x2e9)][_0x3d6ed5(0x399)](tcFromMessage,!![]):BB[_0x3d6ed5(0x2f6)]['TimeCodesFramesTranslator']['printTimecode'](tcFromMessage,![]);let _0x14c61f=BB['Utils'][_0x3d6ed5(0x322)],_0x183259='';_0x14c61f[_0x3d6ed5(0x389)]()?_0x183259=_0xb8c318:_0x183259=_0xb8c318['toISOString']();let _0x270546=_0x183259[_0x3d6ed5(0x2bf)]('T')[0x1],_0x35fe04=_0x270546[_0x3d6ed5(0x2bf)](':'),_0x572ad5=parseInt(_0x35fe04[0x0]),_0x46764d=parseInt(_0x35fe04[0x1]),_0x490879=_0x35fe04[0x2][_0x3d6ed5(0x2bf)]('.'),_0x25b433=parseInt(_0x490879[0x0]),_0x1b62e3=parseInt(_0x490879[0x1][_0x3d6ed5(0x27c)](0x0,0x3)),_0x49a981=Math[_0x3d6ed5(0x226)](_0x1b62e3/0x3e8*_0x48e36d);if(_0x48e36d>0x3b){let _0x34c9b8=_0x49a981%0x2==0x0?0x1:0x2;_0x49a981=Math[_0x3d6ed5(0x1d9)](_0x49a981/0x2);let _0x9dac44=_0x572ad5[_0x3d6ed5(0x2e0)]()['padStart'](0x2,'0')+':'+_0x46764d[_0x3d6ed5(0x2e0)]()[_0x3d6ed5(0x231)](0x2,'0')+':'+_0x25b433[_0x3d6ed5(0x2e0)]()[_0x3d6ed5(0x231)](0x2,'0')+':'+_0x49a981[_0x3d6ed5(0x2e0)]()['padStart'](0x2,'0')+'.'+_0x34c9b8[_0x3d6ed5(0x2e0)]();return _0x9dac44;}else{let _0x470510=_0x572ad5[_0x3d6ed5(0x2e0)]()[_0x3d6ed5(0x231)](0x2,'0')+':'+_0x46764d['toString']()['padStart'](0x2,'0')+':'+_0x25b433[_0x3d6ed5(0x2e0)]()[_0x3d6ed5(0x231)](0x2,'0')+':'+_0x49a981['toString']()[_0x3d6ed5(0x231)](0x2,'0');return _0x470510;}return str;},_0x43e9c8=(_0x3138f2,_0x367cd1)=>{const _0x1086db=_0x4c2f;let _0x244afb=BB[_0x1086db(0x2f6)][_0x1086db(0x322)],_0x280508='';_0x244afb[_0x1086db(0x389)]()?_0x280508=_0x3138f2:_0x280508=_0x3138f2[_0x1086db(0x1bb)]();let _0x31c100=_0x280508[_0x1086db(0x2bf)]('T')[0x1],_0x4db161=_0x31c100[_0x1086db(0x2bf)](':'),_0x44d785=parseInt(_0x4db161[0x0]),_0x248547=parseInt(_0x4db161[0x1]),_0x459ae1=_0x4db161[0x2][_0x1086db(0x2bf)]('.'),_0xf19f5a=parseInt(_0x459ae1[0x0]),_0x562232=parseInt(_0x459ae1[0x1][_0x1086db(0x27c)](0x0,0x3));if(_0x367cd1>0x3b){let _0x5c6770=Math[_0x1086db(0x226)]((_0x562232/0x3e8+_0xf19f5a+_0x248547*0x3c+_0x44d785*0x3c*0x3c)*_0x367cd1),_0xa9c37f=BB[_0x1086db(0x2f6)]['TimeCodesFramesTranslator']['Frames2Timecode'](_0x5c6770,_0x367cd1,!![]);return _0xa9c37f;}else{let _0x1abf2c=Math[_0x1086db(0x226)]((_0x562232/0x3e8+_0xf19f5a+_0x248547*0x3c+_0x44d785*0x3c*0x3c)*_0x367cd1),_0x3ef2e1=BB['Utils'][_0x1086db(0x2e9)][_0x1086db(0x33a)](_0x1abf2c,_0x367cd1,![]);return _0x3ef2e1;}};return{'printTimecode':_0x2c1f80,'timeCodeStr2TimeCodeArray':_0x2dbda2,'Timecode2Frames':_0x563a,'Frames2Timecode':_0x3e42c5,'TimeCodeAddFrames':_0x53aed4,'TimeCodeArray2TimeCodeJson':_0x6d2435,'timeDate2TCString':_0x2d3f3a,'timeDate2TC':_0x43e9c8};})()),_0x4eb1cb=_0x1f3984=>{let _0x22d9b8=_0x1f3984||0x2540be3ff,_0x143386=[],_0x17837d=0x0;const _0xdce9fc=_0x30ced2=>{const _0x2c83d6=_0x4c2f;++_0x17837d,_0x143386[_0x2c83d6(0x296)](_0x30ced2);while(_0x143386[_0x2c83d6(0x34d)]>_0x22d9b8)_0x143386[_0x2c83d6(0x238)]();},_0x7d9580=()=>{const _0x108e08=_0x4c2f;if(_0x143386[_0x108e08(0x34d)]==0x0)return-0x1;let _0x5b2e1a=Array['from'](_0x143386)['sort']((_0x7df1e9,_0x4bbb9e)=>{return _0x7df1e9-_0x4bbb9e;});return _0x5b2e1a[parseInt(_0x5b2e1a[_0x108e08(0x34d)]/0x2)];},_0xd84f96=()=>{return _0x17837d;};return{'add':_0xdce9fc,'getMedian':_0x7d9580,'howMany':_0xd84f96};},_0x2d5176=((()=>{const _0x1aeacc=()=>{const _0x5921d8=_0x4c2f,_0x30a508=navigator[_0x5921d8(0x2aa)];if(/windows/i[_0x5921d8(0x34a)](_0x30a508))return _0x5921d8(0x374);else{if(/android/i[_0x5921d8(0x34a)](_0x30a508))return'Android';else{if(/iphone|ipad|ipod/i[_0x5921d8(0x34a)](_0x30a508))return _0x5921d8(0x378);else{if(/mac/i[_0x5921d8(0x34a)](_0x30a508)){let _0x1bccf4=_0x5921d8(0x2d3)in window||navigator[_0x5921d8(0x1d2)]>0x0||navigator[_0x5921d8(0x23b)]>0x0;if(_0x1bccf4)return _0x5921d8(0x239);else return _0x5921d8(0x1f3);}else return/ipad/i[_0x5921d8(0x34a)](_0x30a508)?'iPad':_0x5921d8(0x2f3);}}}},_0x35e03b=()=>{const _0x3445cb=_0x4c2f;let _0x429348=_0x1aeacc();return _0x429348==_0x3445cb(0x1f3);},_0x2a2804=()=>{const _0x384fa1=_0x4c2f;let _0x15e75f=_0x1aeacc();return _0x15e75f==_0x384fa1(0x239);},_0x298324=()=>{const _0x5b931e=_0x4c2f;let _0x2e3f1a=_0x1aeacc();return _0x2e3f1a==_0x5b931e(0x378);},_0x25d566=()=>{const _0x2773d0=_0x4c2f;let _0x5008af=_0x1aeacc();return _0x5008af==_0x2773d0(0x378)||_0x5008af==_0x2773d0(0x1f3)||_0x5008af==_0x2773d0(0x239);},_0x3e3e62=()=>{const _0x537bda=_0x4c2f;let _0x5d1f03=_0x1aeacc();return _0x5d1f03==_0x537bda(0x374);},_0x26fb32=()=>{const _0x4abe89=_0x4c2f;let _0x188753=_0x1aeacc();return _0x188753==_0x4abe89(0x2b0);},_0x1bda32=()=>{const _0x10bd15=_0x4c2f;let _0x267d43=_0x1aeacc();if(_0x267d43==_0x10bd15(0x374))return'a\x20Windows\x20PC';else{if(_0x267d43==_0x10bd15(0x2b0))return _0x10bd15(0x253);else{if(_0x267d43==_0x10bd15(0x378))return _0x10bd15(0x364);else{if(_0x267d43=='Mac')return _0x10bd15(0x297);else{if(_0x267d43==_0x10bd15(0x239))return _0x10bd15(0x28e);else return'an\x20Unknown\x20device';}}}}},_0x1e305f=()=>{const _0x48ac9d=_0x4c2f;let _0x1d8083={'options':[],'header':[navigator[_0x48ac9d(0x29f)],navigator[_0x48ac9d(0x2aa)],navigator[_0x48ac9d(0x1fa)],navigator[_0x48ac9d(0x2ba)],window[_0x48ac9d(0x308)]],'dataos':[{'name':_0x48ac9d(0x1c6),'value':_0x48ac9d(0x1c6),'version':'OS'},{'name':_0x48ac9d(0x374),'value':_0x48ac9d(0x252),'version':'NT'},{'name':_0x48ac9d(0x2d8),'value':_0x48ac9d(0x2d8),'version':'OS'},{'name':_0x48ac9d(0x239),'value':_0x48ac9d(0x239),'version':'OS'},{'name':_0x48ac9d(0x1f2),'value':_0x48ac9d(0x27a),'version':_0x48ac9d(0x27a)},{'name':_0x48ac9d(0x2b0),'value':_0x48ac9d(0x2b0),'version':_0x48ac9d(0x2b0)},{'name':_0x48ac9d(0x2c2),'value':_0x48ac9d(0x2c2),'version':'OS'},{'name':_0x48ac9d(0x2dc),'value':'BlackBerry','version':'/'},{'name':_0x48ac9d(0x30b),'value':_0x48ac9d(0x1f3),'version':'OS\x20X'},{'name':_0x48ac9d(0x1e7),'value':_0x48ac9d(0x1e7),'version':'rv'},{'name':_0x48ac9d(0x391),'value':_0x48ac9d(0x391),'version':'PalmOS'}],'databrowser':[{'name':_0x48ac9d(0x367),'value':_0x48ac9d(0x367),'version':_0x48ac9d(0x367)},{'name':_0x48ac9d(0x343),'value':_0x48ac9d(0x343),'version':_0x48ac9d(0x343)},{'name':_0x48ac9d(0x307),'value':_0x48ac9d(0x307),'version':_0x48ac9d(0x1fd)},{'name':_0x48ac9d(0x2e2),'value':_0x48ac9d(0x334),'version':'MSIE'},{'name':'Opera','value':_0x48ac9d(0x292),'version':'Opera'},{'name':'BlackBerry','value':_0x48ac9d(0x234),'version':_0x48ac9d(0x234)},{'name':'Mozilla','value':'Mozilla','version':_0x48ac9d(0x376)}],'init':function(){const _0x5871e0=_0x48ac9d;let _0x507223=this[_0x5871e0(0x2f7)][_0x5871e0(0x259)]('\x20'),_0x21942c=this[_0x5871e0(0x26d)](_0x507223,this[_0x5871e0(0x2f5)]),_0x5cf197=this[_0x5871e0(0x26d)](_0x507223,this['databrowser']);return{'os':_0x21942c,'browser':_0x5cf197};},'matchItem':function(_0xf7aa0a,_0x139dfc){const _0x27d486=_0x48ac9d;let _0x3a91f5=0x0,_0x165485=0x0,_0x2c0403='',_0x561ad5,_0x156818,_0x249e1d,_0x468d47,_0x3c0c97;for(_0x3a91f5=0x0;_0x3a91f5<_0x139dfc[_0x27d486(0x34d)];_0x3a91f5+=0x1){_0x561ad5=new RegExp(_0x139dfc[_0x3a91f5][_0x27d486(0x268)],'i'),_0x249e1d=_0x561ad5[_0x27d486(0x34a)](_0xf7aa0a);if(_0x249e1d){_0x156818=new RegExp(_0x139dfc[_0x3a91f5][_0x27d486(0x1a3)]+_0x27d486(0x1fe),'i'),_0x468d47=_0xf7aa0a[_0x27d486(0x1cb)](_0x156818),_0x3c0c97='';_0x468d47&&(_0x468d47[0x1]&&(_0x468d47=_0x468d47[0x1]));if(_0x468d47){_0x468d47=_0x468d47[_0x27d486(0x2bf)](/[._]+/);for(_0x165485=0x0;_0x165485<_0x468d47[_0x27d486(0x34d)];_0x165485+=0x1){_0x165485===0x0?_0x3c0c97+=_0x468d47[_0x165485]+'.':_0x3c0c97+=_0x468d47[_0x165485];}}else _0x3c0c97='0';return{'name':_0x139dfc[_0x3a91f5][_0x27d486(0x22e)],'version':parseFloat(_0x3c0c97)};}}return{'name':'unknown','version':0x0};}},_0xf38f05=_0x1d8083[_0x48ac9d(0x354)]();return _0xf38f05['os']['name'];},_0x911384=()=>{const _0xbc9b27=_0x4c2f,_0x232fd7=navigator[_0xbc9b27(0x2aa)];if(_0x232fd7[_0xbc9b27(0x242)](_0xbc9b27(0x367))>-0x1&&_0x232fd7[_0xbc9b27(0x242)]('Edge')===-0x1)return _0xbc9b27(0x367);else{if(_0x232fd7[_0xbc9b27(0x242)](_0xbc9b27(0x307))>-0x1&&_0x232fd7[_0xbc9b27(0x242)](_0xbc9b27(0x367))===-0x1)return _0xbc9b27(0x307);else{if(_0x232fd7['indexOf'](_0xbc9b27(0x343))>-0x1)return _0xbc9b27(0x343);else{if(_0x232fd7[_0xbc9b27(0x242)](_0xbc9b27(0x334))>-0x1||_0x232fd7[_0xbc9b27(0x242)](_0xbc9b27(0x310))>-0x1)return _0xbc9b27(0x2e2);else return _0x232fd7[_0xbc9b27(0x242)]('Edge')>-0x1?_0xbc9b27(0x2f4):_0xbc9b27(0x29c);}}}},_0x1aeb0e=()=>{return _0x35e03b()&&_0x911384()=='Safari';},_0x52a7d1=()=>{const _0x213ff2=_0x4c2f;return _0x35e03b()&&_0x911384()==_0x213ff2(0x367);},_0x259842=()=>{return _0x3e3e62()&&_0x911384()=='Chrome';};return{'getDeviceName':_0x1e305f,'getCurrentPlatform':_0x1aeacc,'isApple':_0x25d566,'isWindows':_0x3e3e62,'isAndroid':_0x26fb32,'isMac':_0x35e03b,'isiPhone':_0x298324,'isiPad':_0x2a2804,'getDeviceDescription':_0x1bda32,'getBrowserName':_0x911384,'isSafariMac':_0x1aeb0e,'isChromeMac':_0x52a7d1,'isChromeWin':_0x259842};})()),_0x3f1037=_0x119673=>{const _0x13ac25=_0x4c2f;let _0x4a26ce=0x3c;switch(_0x119673){case BB['FrameRateMode'][_0x13ac25(0x1b5)]:_0x4a26ce=0x3c;break;case BB['FrameRateMode'][_0x13ac25(0x2b3)]:_0x4a26ce=0x3c;break;case BB[_0x13ac25(0x276)]['Src59_MediaTime59']:_0x4a26ce=0xea60/0x3e9;break;case BB['FrameRateMode']['Src29_MediaTime29']:_0x4a26ce=0x7530/0x3e9;break;default:console['error'](_0x13ac25(0x299));break;};return _0x4a26ce;},_0x14d701=_0x3f54d0=>{const _0x51ba26=_0x4c2f;let _0x722176=0x3c;switch(_0x3f54d0){case BB[_0x51ba26(0x276)][_0x51ba26(0x1b5)]:_0x722176=0x3c;break;case BB[_0x51ba26(0x276)]['Src59_MediaTime60']:_0x722176=0xea60/0x3e9;break;case BB[_0x51ba26(0x276)][_0x51ba26(0x392)]:_0x722176=0xea60/0x3e9;break;case BB['FrameRateMode'][_0x51ba26(0x2e7)]:_0x722176=0x7530/0x3e9;break;default:console[_0x51ba26(0x2e1)](_0x51ba26(0x1b0));break;};return _0x722176;},_0x47c21f=(_0x5cba2f,_0x541e97)=>{const _0x32ac18=_0x4c2f,_0x450d72=(_0x447fd9,_0x93367)=>{const _0x2ba49a=_0x4c2f;if(Math[_0x2ba49a(0x2c9)](_0x447fd9-_0x93367)<0.01)return!![];else return![];};if(_0x450d72(_0x5cba2f,0x3c)){if(_0x450d72(BB['Utils'][_0x32ac18(0x2eb)](_0x541e97[_0x32ac18(0x1b4)]),0x3c))_0x541e97[_0x32ac18(0x1b4)]=BB[_0x32ac18(0x276)]['Src60_MediaTime60'];else{if(_0x450d72(BB[_0x32ac18(0x2f6)]['getSourceFPS'](_0x541e97[_0x32ac18(0x1b4)]),0xea60/0x3e9))_0x541e97[_0x32ac18(0x1b4)]=BB['FrameRateMode']['Src59_MediaTime60'];else console[_0x32ac18(0x2e1)](_0x32ac18(0x303));}}else{if(_0x450d72(_0x5cba2f,0xea60/0x3e9)){if(_0x450d72(BB['Utils'][_0x32ac18(0x2eb)](_0x541e97['frameRateMode']),0x3c))_0x541e97[_0x32ac18(0x1b4)]=BB[_0x32ac18(0x276)][_0x32ac18(0x25f)];else{if(_0x450d72(BB[_0x32ac18(0x2f6)]['getSourceFPS'](_0x541e97['frameRateMode']),0xea60/0x3e9))_0x541e97[_0x32ac18(0x1b4)]=BB[_0x32ac18(0x276)]['Src59_MediaTime59'];else console['error'](_0x32ac18(0x303));}}else{if(_0x450d72(_0x5cba2f,0x7530/0x3e9)){if(_0x450d72(BB['Utils'][_0x32ac18(0x2eb)](_0x541e97[_0x32ac18(0x1b4)]),0x7530/0x3e9))_0x541e97[_0x32ac18(0x1b4)]=BB[_0x32ac18(0x276)][_0x32ac18(0x2e7)];else console['error'](_0x32ac18(0x20f)+_0x5cba2f);}else console['error'](_0x32ac18(0x1e2));}}},_0x1a0e06=()=>{const _0x479125=[0x7530/0x3e9,0x1e/0x1],_0x312abd=[0xea60/0x3e9,0x3c/0x1];let _0x4b1cd1=[],_0x511b30=[],_0x978957=0x0,_0x3f393d=-0x1,_0x7c3761=0x0;const _0x5a132a=_0x48e653=>{const _0x10d6fd=_0x4c2f;_0x7c3761++;let _0x51f450=0x3e7,_0x47a899=0x0;if(_0x3f393d==-0x1){_0x3f393d=_0x48e653;return;}else{let _0x6046f4=_0x48e653-_0x3f393d;if(_0x978957<0x64){_0x511b30[_0x10d6fd(0x296)](_0x6046f4),_0x978957++;return;}else _0x511b30['push'](_0x6046f4),_0x511b30[_0x10d6fd(0x238)]();let _0x247f15=0x0;for(let _0x1029f3=0x0;_0x1029f3<_0x511b30[_0x10d6fd(0x34d)];_0x1029f3++){_0x247f15+=_0x511b30[_0x1029f3];}_0x6046f4=_0x247f15/_0x511b30[_0x10d6fd(0x34d)];if(0x1/_0x6046f4<0x28)possibleFps=_0x479125;else possibleFps=_0x312abd;}_0x3f393d=_0x48e653;for(let _0x54b706=0x0;_0x54b706<possibleFps[_0x10d6fd(0x34d)];++_0x54b706){let _0x14fad7=possibleFps[_0x54b706],_0x32af9c=_0x48e653*_0x14fad7,_0x594e97=Math['round'](_0x32af9c),_0xadea02=Math[_0x10d6fd(0x2c9)](_0x32af9c-_0x594e97);_0xadea02<_0x51f450&&(_0x51f450=_0xadea02,_0x47a899=_0x14fad7);}let _0x4280cd=_0x47a899;_0x4b1cd1[_0x10d6fd(0x296)](_0x4280cd);if(_0x7c3761>0x3e8)_0x4b1cd1['shift']();},_0x5cc8e9=()=>{const _0x519c45=_0x4c2f;let _0x20327a={},_0x355f9d,_0x8c91d9=0x0;for(let _0xc1e91a=0x0;_0xc1e91a<_0x4b1cd1[_0x519c45(0x34d)];_0xc1e91a++){let _0x258b0a=_0x4b1cd1[_0xc1e91a];_0x20327a[_0x258b0a]=(_0x20327a[_0x258b0a]||0x0)+0x1,_0x20327a[_0x258b0a]>_0x8c91d9&&(_0x355f9d=_0x258b0a,_0x8c91d9=_0x20327a[_0x258b0a]);}return _0x355f9d;},_0x5c65dd=()=>{return _0x7c3761;};return{'addTime':_0x5a132a,'getProbableFPS':_0x5cc8e9,'howMany':_0x5c65dd};};return{'TimeCodesFramesTranslator':_0x3e3048,'MedianCalculator':_0x4eb1cb,'Platform':_0x2d5176,'getMediaTimeFPS':_0x3f1037,'getSourceFPS':_0x14d701,'setMediaFPS':_0x47c21f,'FPSGetter':_0x1a0e06};})()),BB[_0x2629b0(0x266)]=class{constructor(_0x4ed0b4){const _0x67dbc2=_0x2629b0;this[_0x67dbc2(0x263)]=![],this[_0x67dbc2(0x3a9)]='',this[_0x67dbc2(0x313)]=_0x4ed0b4,this[_0x67dbc2(0x22e)]='';}[_0x2629b0(0x35d)](_0x5181c0){const _0x1b4abf=_0x2629b0;if(typeof io==_0x1b4abf(0x284)||this[_0x1b4abf(0x263)])return;this[_0x1b4abf(0x263)]=!![];const _0x35f847=io(_0x1b4abf(0x1a2));_0x35f847['on'](_0x1b4abf(0x34e),()=>{const _0x2b169c=_0x1b4abf;console[_0x2b169c(0x2b5)](_0x2b169c(0x2a4));let _0x464221=BB['Utils'][_0x2b169c(0x322)];_0x35f847[_0x2b169c(0x37f)](_0x2b169c(0x318),{'device':_0x464221[_0x2b169c(0x314)]()},_0x598d74=>{const _0x4067e5=_0x2b169c;this[_0x4067e5(0x22e)]=_0x598d74[_0x4067e5(0x22e)],_0x35f847[_0x4067e5(0x37f)]('join',_0x5181c0,_0xa3c210=>{const _0x1056a4=_0x4067e5;console[_0x1056a4(0x2b5)](_0x1056a4(0x1e3)+_0x5181c0+_0x1056a4(0x245)),this[_0x1056a4(0x313)](_0x1056a4(0x259),_0xa3c210);});});}),_0x35f847['on'](_0x1b4abf(0x2e1),_0x3b7e92=>{const _0x2a5afc=_0x1b4abf;console[_0x2a5afc(0x2e1)]('error::'+_0x3b7e92);}),_0x35f847['on'](_0x1b4abf(0x1d6),_0x20314e=>{const _0x5cdeb7=_0x1b4abf;console['error'](_0x5cdeb7(0x202)+_0x20314e);}),_0x35f847['on'](_0x1b4abf(0x258),_0xc51080=>{const _0x27aac6=_0x1b4abf;this[_0x27aac6(0x313)](_0x27aac6(0x258),_0xc51080),console[_0x27aac6(0x2b5)](_0x27aac6(0x1bc),_0xc51080);}),_0x35f847['on'](_0x1b4abf(0x382),_0x6e8ce2=>{const _0x3972cf=_0x1b4abf;this[_0x3972cf(0x313)](_0x3972cf(0x382),_0x6e8ce2),console[_0x3972cf(0x2b5)](_0x3972cf(0x267),_0x6e8ce2);});}},BB['Augmenter']=(_0x12ab61,_0x55156c,_0x4ad2ef)=>{const _0x1bc5af=_0x2629b0;console['log'](_0x1bc5af(0x331));function _0x5e27ed(_0x4d23b8,_0x56b0f0){const _0x70b042=_0x1bc5af;let _0x266fbd='';if(_0x4d23b8&&_0x4d23b8[_0x70b042(0x1b1)]('www.mediakind.com/NTC')){const _0x33130b=_0x4d23b8['replace'](/.*NTC./,'');let _0x160e9b=0x0;while(_0x160e9b+0x8<=_0x33130b[_0x70b042(0x34d)]){const _0x2e4d0d=_0x33130b[_0x70b042(0x27c)](_0x160e9b,_0x160e9b+0x4),_0x41d509=((_0x33130b[_0x70b042(0x324)](_0x160e9b+0x4)*0x100+_0x33130b[_0x70b042(0x324)](_0x160e9b+0x5))*0x100+_0x33130b[_0x70b042(0x324)](_0x160e9b+0x6))*0x100+_0x33130b[_0x70b042(0x324)](_0x160e9b+0x7);if(_0x160e9b+0x8+_0x41d509>_0x33130b[_0x70b042(0x34d)])break;const _0x57b7e4=_0x33130b['substring'](_0x160e9b+0x8,_0x160e9b+0x8+_0x41d509);_0x2e4d0d=='utc_'&&(timecodeDateTime=new Date(parseInt(_0x57b7e4))[_0x70b042(0x1d8)]()/0x3e8,timecodeDelta=timecodeDateTime-_0x56b0f0);_0x2e4d0d==_0x70b042(0x1de)&&(tcTimeStamp=new Date(parseInt(_0x57b7e4))[_0x70b042(0x1d8)]());if(_0x2e4d0d===_0x70b042(0x39a)){timecode_offset=parseInt(_0x57b7e4)/0x5a;if(_0x4ad2ef[_0x70b042(0x1e8)])console[_0x70b042(0x2b5)](_0x70b042(0x3a7),timecode_offset);}_0x160e9b+=0x8+_0x41d509;}}return _0x266fbd;}let _0x1f1ef5=[0x0,0x0,0x0,0x0,0x0];function _0x4010de(_0x5a7bad){const _0x370aa4=_0x1bc5af;if(_0x5a7bad&&_0x5a7bad[_0x370aa4(0x290)]&&_0x5a7bad[_0x370aa4(0x290)]['id']==0x0||_0x2b6869[_0x370aa4(0x1ef)]()){if(_0x5a7bad[_0x370aa4(0x290)]['messageData'])_0x5a7bad[_0x370aa4(0x290)][_0x370aa4(0x323)]=_0x5e27ed(_0x5a7bad['metadata'][_0x370aa4(0x323)],_0x5a7bad[_0x370aa4(0x290)][_0x370aa4(0x37b)]);else{if(_0x5a7bad[_0x370aa4(0x290)]['frames']&&_0x5a7bad['metadata']['frames'][_0x370aa4(0x34d)]&&_0x5a7bad[_0x370aa4(0x290)]['frames'][0x0]['key']&&_0x5a7bad[_0x370aa4(0x290)][_0x370aa4(0x358)][0x0][_0x370aa4(0x342)][_0x370aa4(0x26f)]()===_0x370aa4(0x24a)){const _0x4f548f=_0x5a7bad[_0x370aa4(0x290)]['frames']['filter'](_0x5d12f7=>{const _0x456c57=_0x370aa4;return _0x5d12f7['info']&&_0x5d12f7[_0x456c57(0x319)][_0x456c57(0x26f)]()[_0x456c57(0x1b1)](_0x456c57(0x351));});_0x4f548f[_0x370aa4(0x34d)]&&(messageData=_0x4f548f[_0x4f548f[_0x370aa4(0x34d)]-0x1][_0x370aa4(0x319)]+'\x00'+String[_0x370aa4(0x26e)](..._0x4f548f[_0x4f548f['length']-0x1]['data']),_0x5a7bad['metadata']['messageData']=_0x5e27ed(messageData,_0x5a7bad['metadata']['presentationTime']));}}(_0x5a7bad[_0x370aa4(0x290)]['id']==0x0||_0x2b6869[_0x370aa4(0x1ef)]()&&timecode_offset==0x0)&&(presentationTime=_0x5a7bad['metadata'][_0x370aa4(0x37b)]*0x3e8,offsetTimeCode=new Date(tcTimeStamp-timecode_offset),offsetTimeCodeframeNumber=Math[_0x370aa4(0x226)](offsetTimeCode[_0x370aa4(0x377)]()*0x1e*0x2/0x3e9)/0x2,decimalPartOff=offsetTimeCodeframeNumber%0x1,partoff=0x1,decimalPartOff==0.5&&(offsetTimeCodeframeNumber=Math[_0x370aa4(0x1d9)](offsetTimeCodeframeNumber),partoff=0x2),_0x1f1ef5=[offsetTimeCode[_0x370aa4(0x2b4)](),offsetTimeCode[_0x370aa4(0x2fc)](),offsetTimeCode[_0x370aa4(0x1ab)](),parseInt(offsetTimeCodeframeNumber),partoff==0x1?0x0:0x1]);}}function _0x3b504c(_0xc93232){const _0x3acf0c=_0x1bc5af;if(typeof globalConfig!=='undefined'){if(typeof globalConfig[_0x3acf0c(0x1f7)]!==_0x3acf0c(0x284)){if(globalConfig[_0x3acf0c(0x1f7)]=='no')return;}}if(BB[_0x3acf0c(0x2f6)][_0x3acf0c(0x2eb)](_0x4ad2ef['frameRateMode'])==0x7530/0x3e9){let _0x2d494e={'frame':0x0,'playerTime':0x0};_0x2d494e[_0x3acf0c(0x1fc)]=BB['Utils'][_0x3acf0c(0x2e9)][_0x3acf0c(0x206)](_0x1f1ef5,0x7530/0x3e9,![]),_0x2d494e[_0x3acf0c(0x306)]=BB['Utils']['TimeCodesFramesTranslator'][_0x3acf0c(0x399)](_0x1f1ef5,![],![]),console[_0x3acf0c(0x2b5)](_0x3acf0c(0x34b)+_0xc93232[_0x3acf0c(0x355)]+'):\x20'+_0x2d494e[_0x3acf0c(0x306)]+'\x20('+_0x2d494e[_0x3acf0c(0x1fc)]+')'+_0x3acf0c(0x25b)+_0xc93232[_0x3acf0c(0x34f)]),_0x2d494e['playerTime']=_0xc93232[_0x3acf0c(0x34f)],_0x4ad2ef['syncPoint']=_0x2d494e;}else{if(BB['Utils'][_0x3acf0c(0x2eb)](_0x4ad2ef[_0x3acf0c(0x1b4)])==0xea60/0x3e9){let _0x1a129e={'frame':0x0,'playerTime':0x0};_0x1a129e[_0x3acf0c(0x1fc)]=BB[_0x3acf0c(0x2f6)][_0x3acf0c(0x2e9)][_0x3acf0c(0x206)](_0x1f1ef5,0xea60/0x3e9,!![]),_0x1a129e[_0x3acf0c(0x306)]=BB['Utils'][_0x3acf0c(0x2e9)]['printTimecode'](_0x1f1ef5,!![],!![]),console[_0x3acf0c(0x2b5)](_0x3acf0c(0x34b)+_0xc93232[_0x3acf0c(0x355)]+_0x3acf0c(0x1db)+_0x1a129e[_0x3acf0c(0x306)]+'\x20('+_0x1a129e[_0x3acf0c(0x1fc)]+')'+_0x3acf0c(0x25b)+_0xc93232[_0x3acf0c(0x34f)]),_0x1a129e[_0x3acf0c(0x31f)]=_0xc93232[_0x3acf0c(0x34f)],_0x4ad2ef['syncPoint']=_0x1a129e;}}_0xc93232[_0x3acf0c(0x2f1)][_0x3acf0c(0x1b1)](_0x3acf0c(0x27e))&&console[_0x3acf0c(0x2b5)]('url:\x20'+_0xc93232[_0x3acf0c(0x355)]);}function _0x22479f(_0x5b3d0){const _0x25f89c=_0x1bc5af;switch(_0x5b3d0['eventType']){case wmcEvents[_0x25f89c(0x2fa)]:let _0x46c2c7={'frame':0x0,'playerTime':0x0};BB[_0x25f89c(0x2f6)][_0x25f89c(0x2eb)](_0x4ad2ef[_0x25f89c(0x1b4)])==0x7530/0x3e9&&(console['log']('New\x20segment\x20('+_0x5b3d0['url']+_0x25f89c(0x1db)+BB[_0x25f89c(0x2f6)]['TimeCodesFramesTranslator']['timeDate2TCString'](_0x5b3d0[_0x25f89c(0x1f4)],0x7530/0x3e9)+_0x25f89c(0x25b)+_0x5b3d0[_0x25f89c(0x34f)]),_0x46c2c7[_0x25f89c(0x1fc)]=BB[_0x25f89c(0x2f6)][_0x25f89c(0x2e9)][_0x25f89c(0x206)](BB[_0x25f89c(0x2f6)][_0x25f89c(0x2e9)][_0x25f89c(0x210)](_0x5b3d0[_0x25f89c(0x1f4)],0x7530/0x3e9),0x7530/0x3e9,![]),_0x46c2c7['stringTime']=BB[_0x25f89c(0x2f6)][_0x25f89c(0x2e9)][_0x25f89c(0x298)](_0x5b3d0[_0x25f89c(0x1f4)],0x7530/0x3e9));BB['Utils'][_0x25f89c(0x2eb)](_0x4ad2ef[_0x25f89c(0x1b4)])==0xea60/0x3e9&&(console[_0x25f89c(0x2b5)]('New\x20segment\x20('+_0x5b3d0['url']+_0x25f89c(0x1db)+BB[_0x25f89c(0x2f6)][_0x25f89c(0x2e9)][_0x25f89c(0x298)](_0x5b3d0[_0x25f89c(0x1f4)],0xea60/0x3e9)+'\x20playing\x20at\x20'+_0x5b3d0[_0x25f89c(0x34f)]),_0x46c2c7[_0x25f89c(0x1fc)]=BB[_0x25f89c(0x2f6)][_0x25f89c(0x2e9)][_0x25f89c(0x206)](BB[_0x25f89c(0x2f6)][_0x25f89c(0x2e9)]['timeDate2TC'](_0x5b3d0[_0x25f89c(0x1f4)]),fps,!![]),_0x46c2c7[_0x25f89c(0x306)]=BB[_0x25f89c(0x2f6)][_0x25f89c(0x2e9)][_0x25f89c(0x298)](_0x5b3d0[_0x25f89c(0x1f4)],0xea60/0x3e9));_0x46c2c7[_0x25f89c(0x31f)]=_0x5b3d0[_0x25f89c(0x34f)],_0x4ad2ef[_0x25f89c(0x350)]=_0x46c2c7;break;default:}}let _0x290ac7=BB['Utils'][_0x1bc5af(0x2e9)],_0x55736e=BB[_0x1bc5af(0x2f6)][_0x1bc5af(0x2eb)](_0x4ad2ef[_0x1bc5af(0x1b4)]),_0x3f0d28=BB[_0x1bc5af(0x2f6)][_0x1bc5af(0x1c4)](_0x4ad2ef[_0x1bc5af(0x1b4)]);refreshRate=_0x4ad2ef['refreshRate'];let _0x16d774=null,_0x2f5f2f=null,_0x45dbde=null;if(_0x4ad2ef[_0x1bc5af(0x270)]==BB['RenderingMode']['Augment']){}else{let _0xa254fb=document[_0x1bc5af(0x39b)]('canvas');_0xa254fb[_0x1bc5af(0x283)]=0x1f4,_0xa254fb[_0x1bc5af(0x332)]=0x1f4,document[_0x1bc5af(0x309)]['appendChild'](_0xa254fb),_0x45dbde=_0xa254fb['getContext'](_0x1bc5af(0x203));}let _0x2b6869=BB[_0x1bc5af(0x2f6)]['Platform'],_0x79db72=-0x1,_0x5b5f42=![];const _0x457cd4=(_0x49f80e,_0x356e17)=>{const _0xddfeb9=_0x1bc5af,_0x140052=performance[_0xddfeb9(0x247)]();if(_0x79db72==_0x49f80e&&_0x356e17==_0x5b5f42){if(_0x4ad2ef[_0xddfeb9(0x1e8)])console['BBlog'](_0xddfeb9(0x1ff)+_0x49f80e);return 0x0;}if(!_0x4ad2ef[_0xddfeb9(0x29b)]||_0x4ad2ef[_0xddfeb9(0x26c)])return _0x2f5f2f['CleanGL'](),0x0;if(_0x4ad2ef[_0xddfeb9(0x270)]==BB[_0xddfeb9(0x387)]['RenderDigits'])renderDigit(_0x45dbde,_0x49f80e);else{if(_0x4ad2ef['renderingMode']==BB[_0xddfeb9(0x387)][_0xddfeb9(0x321)]){if(_0x55736e==0xea60/0x3e9||_0x55736e==0x3c)renderTimecode(_0x45dbde,_0x290ac7[_0xddfeb9(0x33a)](_0x49f80e,_0x55736e,!![]),!![]);else{if(_0x55736e==0x7530/0x3e9||_0x55736e==0x1e)renderTimecode(_0x45dbde,_0x290ac7[_0xddfeb9(0x33a)](_0x49f80e,_0x55736e,![]),![]);}}else{if(_0x4ad2ef[_0xddfeb9(0x270)]==BB['RenderingMode']['Augment']){if(_0x55736e==0xea60/0x3e9||_0x55736e==0x3c)_0x2f5f2f[_0xddfeb9(0x1b2)](_0x290ac7[_0xddfeb9(0x399)](_0x290ac7['Frames2Timecode'](_0x49f80e,_0x55736e,!![])));else(_0x55736e==0x7530/0x3e9||_0x55736e==0x1e)&&(_0x356e17?_0x2f5f2f[_0xddfeb9(0x1b2)](_0x290ac7['printTimecode'](_0x290ac7[_0xddfeb9(0x33a)](_0x49f80e*0x2+0x1,_0x55736e*0x2,!![]),!![])):_0x2f5f2f['renderAugmentation'](_0x290ac7[_0xddfeb9(0x399)](_0x290ac7[_0xddfeb9(0x33a)](_0x49f80e,_0x55736e,![]),![])));}}}_0x79db72=_0x49f80e,_0x5b5f42=_0x356e17;const _0x5f3cf5=performance[_0xddfeb9(0x247)]();return _0x5f3cf5-_0x140052;};let _0x305fa2=0x0,_0x3bb608=0x0,_0x1e0edc=0x20,_0x51b434=0x20,_0xa703e2='',_0x3666d7=0x0,_0x430b4f,_0x1c6bcc=function(_0x5067c5,_0x579b5e){const _0x2153cd=_0x1bc5af;if(_0xa703e2==_0x2153cd(0x361)){if(_0x4ad2ef[_0x2153cd(0x1e8)])console['BBlog'](_0x2153cd(0x32b));_0x55156c[_0x2153cd(0x1ae)](_0x1c6bcc);return;}_0xa703e2=_0x2153cd(0x2a1),lastNow=_0x5067c5;let _0x3482e5=(_0x579b5e[_0x2153cd(0x21a)]-_0x4ad2ef[_0x2153cd(0x350)][_0x2153cd(0x31f)])%(0x3c*0x3c*0x18)*_0x3f0d28,_0x55ee2c=_0x579b5e[_0x2153cd(0x21a)]-_0x4ad2ef[_0x2153cd(0x350)]['playerTime'];lastFrameFromVideoCallback=Math['floor'](_0x3482e5+0.1)+_0x4ad2ef['syncPoint'][_0x2153cd(0x1fc)];if(_0x4ad2ef[_0x2153cd(0x1e8)]){var _0x1f6947=document['getElementById']('numberInput')[_0x2153cd(0x268)],_0x5785e9=parseInt(_0x1f6947);lastFrameFromVideoCallback+=_0x5785e9;}else lastFrameFromVideoCallback+=0x1;_0x511eb7=_0x579b5e['mediaTime'];let _0x1a34d4=_0x55156c[_0x2153cd(0x348)],_0x3b351d=document[_0x2153cd(0x383)](_0x2153cd(0x1dd));var _0x4f2899='';if(BB[_0x2153cd(0x2f6)][_0x2153cd(0x2eb)](_0x4ad2ef['frameRateMode'])==0xea60/0x3e9)_0x4f2899=_0x290ac7[_0x2153cd(0x399)](_0x290ac7[_0x2153cd(0x33a)](lastFrameFromVideoCallback,_0x55736e,!![]),!![],!![]);else BB[_0x2153cd(0x2f6)][_0x2153cd(0x2eb)](_0x4ad2ef[_0x2153cd(0x1b4)])==0x7530/0x3e9?_0x4f2899=_0x290ac7[_0x2153cd(0x399)](_0x290ac7[_0x2153cd(0x33a)](lastFrameFromVideoCallback,_0x55736e,![]),![],![]):_0x4f2899=_0x2153cd(0x2f0);var _0x231d36='';if(BB['Utils'][_0x2153cd(0x2eb)](_0x4ad2ef['frameRateMode'])==0xea60/0x3e9)_0x231d36=_0x290ac7[_0x2153cd(0x399)](_0x290ac7[_0x2153cd(0x33a)](_0x4ad2ef[_0x2153cd(0x3ae)][_0x2153cd(0x39f)],_0x55736e,!![]),!![],!![]);else BB[_0x2153cd(0x2f6)]['getSourceFPS'](_0x4ad2ef[_0x2153cd(0x1b4)])==0x7530/0x3e9?_0x231d36=_0x290ac7[_0x2153cd(0x399)](_0x290ac7[_0x2153cd(0x33a)](_0x4ad2ef[_0x2153cd(0x3ae)][_0x2153cd(0x39f)],_0x55736e,![]),![],![]):_0x231d36='NOT\x20SUPPORTED';let _0x2f9cdd=lastFrameFromVideoCallback-_0x4ad2ef[_0x2153cd(0x3ae)]['offset'];if(_0x16d774)_0x16d774[_0x2153cd(0x315)](_0x2f9cdd);var _0x3a767d='';if(BB[_0x2153cd(0x2f6)]['getSourceFPS'](_0x4ad2ef[_0x2153cd(0x1b4)])==0xea60/0x3e9)_0x3a767d=_0x290ac7[_0x2153cd(0x399)](_0x290ac7['Frames2Timecode'](_0x2f9cdd,_0x55736e,!![]),!![],!![]);else BB[_0x2153cd(0x2f6)][_0x2153cd(0x2eb)](_0x4ad2ef[_0x2153cd(0x1b4)])==0x7530/0x3e9?_0x3a767d=_0x290ac7[_0x2153cd(0x399)](_0x290ac7[_0x2153cd(0x33a)](_0x2f9cdd,_0x55736e,![]),![],![]):_0x3a767d=_0x2153cd(0x2f0);let _0x1b4d42=Date[_0x2153cd(0x247)]()-_0x3bb608,_0x50dc3c=new Date(),_0x34a2f7=String(_0x50dc3c[_0x2153cd(0x1c0)]())[_0x2153cd(0x231)](0x2,'0'),_0x465456=String(_0x50dc3c[_0x2153cd(0x256)]())['padStart'](0x2,'0'),_0x42409b=String(_0x50dc3c[_0x2153cd(0x2cb)]())['padStart'](0x2,'0'),_0x25c44b=String(_0x50dc3c['getMilliseconds']())[_0x2153cd(0x231)](0x3,'0'),_0x1d44b7=_0x34a2f7+':'+_0x465456+':'+_0x42409b+'.'+_0x25c44b;if(_0x4ad2ef[_0x2153cd(0x1e8)]){if(_0x4ad2ef[_0x2153cd(0x3ae)][_0x2153cd(0x39f)]!=_0x3666d7||_0x430b4f<0xa*0x3c)var _0x36fde8='red';else var _0x36fde8=_0x2153cd(0x2b8);_0x3b351d[_0x2153cd(0x2e8)]='VID.\x20'+_0x2153cd(0x1cf)+_0x4ad2ef[_0x2153cd(0x300)]+',\x20Time\x20Fired:\x20'+_0x1d44b7+_0x2153cd(0x2bd)+_0x579b5e['mediaTime']['toFixed'](0x4)+_0x2153cd(0x20d)+_0x4f2899+_0x2153cd(0x277)+_0x36fde8+'\x27>'+_0x4ad2ef[_0x2153cd(0x3ae)][_0x2153cd(0x39f)]+'('+_0x231d36+_0x2153cd(0x2d4)+_0x2153cd(0x36a)+_0x3a767d+',\x20TimeFromLastSync:'+_0x55ee2c['toFixed'](0x4)+_0x2153cd(0x36d)+_0x4ad2ef[_0x2153cd(0x350)][_0x2153cd(0x31f)][_0x2153cd(0x337)](0x4)+',\x20LastSyncPointFrame:'+_0x4ad2ef[_0x2153cd(0x350)]['frame']+_0x2153cd(0x35f)+_0x4ad2ef[_0x2153cd(0x350)][_0x2153cd(0x306)]+'\x20</br>',_0x4ad2ef['augmentation']['offset']!=_0x3666d7&&(_0x430b4f=0x0),_0x3666d7=_0x4ad2ef['augmentation'][_0x2153cd(0x39f)],_0x430b4f++;}_0x305fa2++,_0x3bb608=Date['now']();let _0x1cd6e7=![];if(_0x4ad2ef['debug']){var _0x16c480=document[_0x2153cd(0x383)]('plus05CorrectionCheckbox');_0x1cd6e7=_0x16c480[_0x2153cd(0x212)];}let _0x3c0823=0x0;if(BB[_0x2153cd(0x2f6)][_0x2153cd(0x2eb)](_0x4ad2ef[_0x2153cd(0x1b4)])==0x7530/0x3e9){let _0xbb48bf=0x18,_0x5b0cf2=0x21+(0x21-_0xbb48bf);_0x1b4d42<_0xbb48bf&&_0x1e0edc<_0x5b0cf2||_0x1e0edc<_0xbb48bf&&_0x1b4d42<_0x5b0cf2||_0x51b434<_0xbb48bf&&_0x1e0edc<_0x5b0cf2&&_0x1b4d42<_0x5b0cf2||_0x1cd6e7==!![]?(_0x3b351d[_0x2153cd(0x2e8)]+=_0x2153cd(0x1e9),setTimeout(function(){_0x457cd4(_0x2f9cdd,![]);},0xa)):_0x457cd4(_0x2f9cdd,![]);}else BB[_0x2153cd(0x2f6)][_0x2153cd(0x2eb)](_0x4ad2ef[_0x2153cd(0x1b4)])==0xea60/0x3e9?_0x3c0823=_0x457cd4(_0x2f9cdd,![]):console[_0x2153cd(0x22d)](_0x2153cd(0x27b));_0x51b434=_0x1e0edc,_0x1e0edc=_0x1b4d42;_0x4ad2ef['debug']&&console[_0x2153cd(0x22d)]('VID.'+_0x2153cd(0x336)+_0x1d44b7+_0x2153cd(0x3aa)+_0x4f2899+_0x2153cd(0x2b2)+_0x3c0823[_0x2153cd(0x337)](0x4)+_0x2153cd(0x217));_0x55156c[_0x2153cd(0x1ae)](_0x1c6bcc);return;};const _0x4cdd9c=_0x351a22=>{const _0x556e6c=_0x1bc5af;let _0x2aa714=new Date(),_0x4058d1=String(_0x2aa714[_0x556e6c(0x1c0)]())[_0x556e6c(0x231)](0x2,'0'),_0x1fcd1f=String(_0x2aa714[_0x556e6c(0x256)]())[_0x556e6c(0x231)](0x2,'0'),_0x169d8a=String(_0x2aa714['getSeconds']())['padStart'](0x2,'0'),_0x227b8b=String(_0x2aa714['getMilliseconds']())[_0x556e6c(0x231)](0x3,'0'),_0x11afb1=_0x4058d1+':'+_0x1fcd1f+':'+_0x169d8a+'.'+_0x227b8b;if(_0x55156c['paused']){window[_0x556e6c(0x1a5)](_0x4cdd9c);return;}let _0x2e137f=document[_0x556e6c(0x383)](_0x556e6c(0x29d));if(_0x4ad2ef['debug'])_0x2e137f[_0x556e6c(0x2e8)]=_0x556e6c(0x39d)+'\x20Time\x20Fired:\x20'+_0x11afb1;if(_0xa703e2==_0x556e6c(0x289)||_0xa703e2==_0x556e6c(0x361)){var _0x4c593a='';if(BB[_0x556e6c(0x2f6)][_0x556e6c(0x2eb)](_0x4ad2ef[_0x556e6c(0x1b4)])==0xea60/0x3e9)_0x4c593a=_0x290ac7[_0x556e6c(0x399)](_0x290ac7['Frames2Timecode'](_0x79db72+0x1,_0x55736e,!![]),!![],!![]);else BB['Utils']['getSourceFPS'](_0x4ad2ef['frameRateMode'])==0x7530/0x3e9?_0x4c593a=_0x290ac7[_0x556e6c(0x399)](_0x290ac7[_0x556e6c(0x33a)](_0x79db72+0x1,_0x55736e,![]),![],![]):_0x4c593a='NOT\x20SUPPORTED';var _0x483c23='';if(BB[_0x556e6c(0x2f6)][_0x556e6c(0x2eb)](_0x4ad2ef[_0x556e6c(0x1b4)])==0xea60/0x3e9)_0x483c23=_0x290ac7[_0x556e6c(0x399)](_0x290ac7['Frames2Timecode'](_0x4ad2ef[_0x556e6c(0x3ae)]['offset'],_0x55736e,!![]),!![],!![]);else BB[_0x556e6c(0x2f6)]['getSourceFPS'](_0x4ad2ef['frameRateMode'])==0x7530/0x3e9?_0x483c23=_0x290ac7['printTimecode'](_0x290ac7[_0x556e6c(0x33a)](_0x4ad2ef[_0x556e6c(0x3ae)][_0x556e6c(0x39f)],_0x55736e,![]),![],![]):_0x483c23='NOT\x20SUPPORTED';let _0x235e45=_0x79db72-_0x4ad2ef[_0x556e6c(0x3ae)]['offset'];var _0x10b187='';if(BB[_0x556e6c(0x2f6)][_0x556e6c(0x2eb)](_0x4ad2ef['frameRateMode'])==0xea60/0x3e9)_0x10b187=_0x290ac7[_0x556e6c(0x399)](_0x290ac7[_0x556e6c(0x33a)](_0x235e45,_0x55736e,!![]),!![],!![]);else BB['Utils']['getSourceFPS'](_0x4ad2ef[_0x556e6c(0x1b4)])==0x7530/0x3e9?_0x10b187=_0x290ac7[_0x556e6c(0x399)](_0x290ac7[_0x556e6c(0x33a)](_0x235e45,_0x55736e,![]),![],![]):_0x10b187=_0x556e6c(0x2f0);_0x4ad2ef[_0x556e6c(0x1e8)]&&(console[_0x556e6c(0x22d)](_0x556e6c(0x260)+_0x4c593a+')'+_0x556e6c(0x1ca)+_0xa703e2),_0x2e137f[_0x556e6c(0x2e8)]+=_0x556e6c(0x205));let _0x17d854=_0x457cd4(_0x79db72+0x1,![]);if(_0x4ad2ef[_0x556e6c(0x1e8)])console['BBlog'](_0x556e6c(0x39c)+_0x556e6c(0x1a1)+_0x11afb1+_0x556e6c(0x213)+_0x556e6c(0x235)+_0x4c593a+_0x556e6c(0x250)+_0x4ad2ef['augmentation'][_0x556e6c(0x39f)]+'('+_0x483c23+')'+_0x556e6c(0x3ad)+_0x10b187+',\x20took:\x20'+_0x17d854[_0x556e6c(0x337)](0x4)+'\x20ms');if(_0xa703e2==_0x556e6c(0x289))_0xa703e2=_0x556e6c(0x361);else{if(_0xa703e2==_0x556e6c(0x361))_0xa703e2='ANI';}}else{if(_0x4ad2ef['debug'])console[_0x556e6c(0x22d)](_0x556e6c(0x39c)+_0x556e6c(0x1a1)+_0x11afb1);_0xa703e2=_0x556e6c(0x289);}window[_0x556e6c(0x1a5)](_0x4cdd9c);};let _0x66bb57=_0x4ad2ef['frameRateMode']==BB['FrameRateMode'][_0x1bc5af(0x2b3)]?-0.04:+0.05,_0x281bcb=0x0,_0x766581={},_0x4f44be=0x0,_0x3b4d9c=0x0,_0x2f792c=0x0,_0x50543f=0x0,_0x3ed398=0x0,_0x511eb7=-0x1,_0xc9e7ef=0x0,_0x28b8c1=![],_0x10a059=0x0,_0x532a74=0x0,_0x15b4c5=![];const _0x1d0f18=_0x2bf7b0=>{const _0x54e702=_0x1bc5af;var _0x57d4f0=0x2;if(_0x4ad2ef[_0x54e702(0x1e8)]){let _0x69002d=document[_0x54e702(0x383)](_0x54e702(0x29d));var _0x2bc248=document['getElementById'](_0x54e702(0x312))[_0x54e702(0x268)];_0x57d4f0=parseInt(_0x2bc248);}var _0x290f72=0x0,_0x366132=(_0x55156c[_0x54e702(0x348)]-_0x4ad2ef[_0x54e702(0x350)][_0x54e702(0x31f)])%(0x3c*0x3c*0x18)*_0x3f0d28;_0x290f72=Math['floor'](_0x366132)+_0x4ad2ef[_0x54e702(0x350)][_0x54e702(0x1fc)],_0x290f72+=_0x57d4f0;var _0x2ea067=_0x366132-Math[_0x54e702(0x1d9)](_0x366132);if(_0x15b4c5||_0x2ea067<0.226)_0x15b4c5=!![];if(_0x2ea067>0.8)_0x15b4c5=![];if(_0x15b4c5)_0x290f72--;var _0x3f51ae='';if(BB[_0x54e702(0x2f6)]['getSourceFPS'](_0x4ad2ef[_0x54e702(0x1b4)])==0xea60/0x3e9)_0x3f51ae=_0x290ac7[_0x54e702(0x399)](_0x290ac7[_0x54e702(0x33a)](_0x290f72,_0x55736e,!![]),!![],!![]);else BB[_0x54e702(0x2f6)][_0x54e702(0x2eb)](_0x4ad2ef[_0x54e702(0x1b4)])==0x7530/0x3e9?_0x3f51ae=_0x290ac7[_0x54e702(0x399)](_0x290ac7[_0x54e702(0x33a)](_0x290f72,_0x55736e,![]),![],![]):_0x3f51ae=_0x54e702(0x2f0);var _0x25fd49='';if(BB['Utils'][_0x54e702(0x2eb)](_0x4ad2ef[_0x54e702(0x1b4)])==0xea60/0x3e9)_0x25fd49=_0x290ac7['printTimecode'](_0x290ac7[_0x54e702(0x33a)](_0x4ad2ef[_0x54e702(0x3ae)][_0x54e702(0x39f)],_0x55736e,!![]),!![],!![]);else BB[_0x54e702(0x2f6)]['getSourceFPS'](_0x4ad2ef[_0x54e702(0x1b4)])==0x7530/0x3e9?_0x25fd49=_0x290ac7[_0x54e702(0x399)](_0x290ac7[_0x54e702(0x33a)](_0x4ad2ef[_0x54e702(0x3ae)][_0x54e702(0x39f)],_0x55736e,![]),![],![]):_0x25fd49='NOT\x20SUPPORTED';let _0x56f314=_0x290f72-_0x4ad2ef[_0x54e702(0x3ae)][_0x54e702(0x39f)];if(_0x16d774)_0x16d774['setLastFrame'](_0x56f314);_0x457cd4(_0x56f314),_0x545dd2++,window[_0x54e702(0x1a5)](_0x1d0f18);return;},_0x5d370c=(_0x2ec6c5,_0x40aa5b)=>{const _0x39b8d3=_0x1bc5af;let _0xd2ae3f=_0x40aa5b[_0x39b8d3(0x21a)]*_0x3f0d28;var _0x296016=0x0;if(_0x4ad2ef[_0x39b8d3(0x1e8)]){var _0xa7e4a8=document[_0x39b8d3(0x383)](_0x39b8d3(0x312))[_0x39b8d3(0x268)];_0x296016=parseInt(_0xa7e4a8);}_0xd2ae3f+=_0x296016,_0x3ed398=Math[_0x39b8d3(0x1d9)](_0xd2ae3f);var _0x40022b='';if(BB[_0x39b8d3(0x2f6)][_0x39b8d3(0x2eb)](_0x4ad2ef[_0x39b8d3(0x1b4)])==0xea60/0x3e9)_0x40022b=_0x290ac7[_0x39b8d3(0x399)](_0x290ac7['Frames2Timecode'](_0x3ed398,_0x55736e,!![]),!![],!![]);else BB[_0x39b8d3(0x2f6)]['getSourceFPS'](_0x4ad2ef[_0x39b8d3(0x1b4)])==0x7530/0x3e9?_0x40022b=_0x290ac7[_0x39b8d3(0x399)](_0x290ac7['Frames2Timecode'](_0x3ed398,_0x55736e,![]),![],![]):_0x40022b=_0x39b8d3(0x2f0);let _0x2ec542=document[_0x39b8d3(0x383)](_0x39b8d3(0x1dd));_0x2ec542['textContent']=_0x39b8d3(0x345)+_0xd2ae3f[_0x39b8d3(0x337)](0x4)+'\x20Frame:\x20'+_0x3ed398+_0x39b8d3(0x327)+_0x50543f+_0x39b8d3(0x294)+_0x40022b,_0x50543f++,_0x511eb7=_0x40aa5b['mediaTime'],_0x55156c[_0x39b8d3(0x1ae)](_0x5d370c);return;_0x2f792c=_0x2ec6c5,_0x766581=_0x40aa5b;let _0x1aaba7=_0x55156c['currentTime'],_0x1c079b=(_0x1aaba7-_0x40aa5b[_0x39b8d3(0x21a)])*0x3e8;_0x281bcb=_0x1c079b,_0x55156c['requestVideoFrameCallback'](_0x5d370c);};let _0x3fede0=-0x1,_0x33e9e5=0x270f,_0x4ac270=0x0,_0x545dd2=0x0,_0x4eaa8c=0x0;console[_0x1bc5af(0x22d)](_0x1bc5af(0x3a2)),console[_0x1bc5af(0x22d)]('Checking\x20window\x20and\x20methods');typeof window!==_0x1bc5af(0x284)?console[_0x1bc5af(0x22d)]('The\x20window\x20object\x20is\x20defined.\x20This\x20script\x20is\x20running\x20in\x20a\x20browser\x20environment.'):console[_0x1bc5af(0x22d)](_0x1bc5af(0x3a0));_0x1bc5af(0x1a5)in window?console[_0x1bc5af(0x22d)](_0x1bc5af(0x2b7)):console[_0x1bc5af(0x22d)](_0x1bc5af(0x28c));typeof _0x55156c!==_0x1bc5af(0x284)?console[_0x1bc5af(0x22d)](_0x1bc5af(0x1e5)):console[_0x1bc5af(0x22d)](_0x1bc5af(0x25e));_0x1bc5af(0x1ae)in _0x55156c?console[_0x1bc5af(0x22d)](_0x1bc5af(0x2a3)):console[_0x1bc5af(0x22d)]('requestVideoFrameCallback\x20is\x20not\x20supported');if(_0x2b6869[_0x1bc5af(0x2c3)]()||_0x2b6869[_0x1bc5af(0x395)]()||_0x2b6869[_0x1bc5af(0x398)]())window['requestAnimationFrame'](_0x4cdd9c),_0x55156c['readyState']>=0x2?(console[_0x1bc5af(0x22d)]('video\x20element\x20is\x20already\x20loaded.\x20Setting\x20up\x20requestVideoFrameCallback'),_0x55156c[_0x1bc5af(0x1ae)](_0x1c6bcc)):(console['BBlog'](_0x1bc5af(0x1e6)),_0x55156c['addEventListener'](_0x1bc5af(0x2a7),()=>{_0x55156c['requestVideoFrameCallback'](_0x1c6bcc);}));else _0x2b6869[_0x1bc5af(0x1ef)]()?window[_0x1bc5af(0x1a5)](_0x1d0f18):console[_0x1bc5af(0x22d)](_0x1bc5af(0x352));console[_0x1bc5af(0x22d)]('CallBacks\x20are\x20set'),console['BBlog'](_0x1bc5af(0x274));function _0x203ab9(){return new Promise(_0x19e9ad=>{let _0x473c48=0x0;const _0x2ed433=[],_0x38be62=0x14;function _0x1fa66c(_0xcc0703){const _0x5c6697=_0x4c2f;if(_0x473c48){const _0xf48324=_0xcc0703-_0x473c48,_0x1bd399=0x3e8/_0xf48324;if(!(_0x1bd399===undefined)){if(_0x1bd399>0x0&&_0x1bd399<0xc8)_0x2ed433[_0x5c6697(0x296)](_0x1bd399);}if(_0x2ed433[_0x5c6697(0x34d)]===_0x38be62){const _0x5f091e=_0x2ed433['reduce']((_0x23c715,_0x5190ed)=>_0x23c715+_0x5190ed,0x0)/_0x38be62;_0x19e9ad(Math[_0x5c6697(0x226)](_0x5f091e));return;}}_0x473c48=_0xcc0703,requestAnimationFrame(_0x1fa66c);}requestAnimationFrame(_0x1fa66c);});}_0x203ab9()[_0x1bc5af(0x31c)](_0x4dac55=>{const _0x2a7c6d=_0x1bc5af;_0x4ad2ef[_0x2a7c6d(0x30f)]=_0x4dac55,_0x4ad2ef[_0x2a7c6d(0x30f)]>0x46||_0x4ad2ef['ScreenFPS']<0x32?(console[_0x2a7c6d(0x39e)](_0x2a7c6d(0x261)+_0x4dac55+_0x2a7c6d(0x335)),_0x4ad2ef[_0x2a7c6d(0x26c)]=!![]):console[_0x2a7c6d(0x22d)](_0x2a7c6d(0x261)+_0x4dac55+_0x2a7c6d(0x21c));});const _0x4a094d=()=>{const _0x55d741=_0x1bc5af;let _0x4fa95e=_0x55156c[_0x55d741(0x1e0)];_0x2f5f2f=new BB['Composer3d'](_0x4fa95e,_0x55156c,_0x4ad2ef),ads=BB[_0x55d741(0x380)](_0x2f5f2f,_0x4ad2ef),_0x16d774=BB['MetaDataFetcher'](_0x4ad2ef,_0x2f5f2f);},_0x4e4b61=()=>{return _0x2f5f2f['getCanvas']();},_0x211afa=_0x3f67d7=>{_0x3b504c(_0x3f67d7);},_0x4d6374=_0x3541e6=>{_0x4010de(_0x3541e6);};return{'getCanvas':_0x4e4b61,'onNewSegmentInterface':_0x211afa,'onNewMetadataInterface':_0x4d6374,'initializeComponents':_0x4a094d};},BB['Composer3d']=class{constructor(_0x51394f,_0x5b9ab4,_0x4c7c74){const _0x1f5d84=_0x2629b0;if(_0x4c7c74['augmentation']['renderTimecode']){this['digitImg']={};for(let _0x389f94=0x0;_0x389f94<0xa;++_0x389f94){let _0x5b55e8=_0x389f94+'.1',_0x2278b1=_0x389f94+'.2';this[_0x1f5d84(0x24c)][_0x5b55e8]=this['CreateDigitImg'](_0x5b55e8),this[_0x1f5d84(0x24c)][_0x2278b1]=this[_0x1f5d84(0x305)](_0x2278b1);}}this[_0x1f5d84(0x1fb)]=Object[_0x1f5d84(0x1eb)]({'adLoopTime':0x1388,'isAdLoop':![]},_0x4c7c74||{}),this[_0x1f5d84(0x221)]=BB[_0x1f5d84(0x2f6)][_0x1f5d84(0x2eb)](this[_0x1f5d84(0x1fb)][_0x1f5d84(0x1b4)]),this[_0x1f5d84(0x1b3)]=[],this['metadataMap']={},this['videoStarted']=![],this['advertisementMap']={},this['ad2Url']={},this[_0x1f5d84(0x29e)]=null,this[_0x1f5d84(0x36f)]=document[_0x1f5d84(0x39b)]('canvas'),this['ctx']=this['canvas']['getContext'](_0x1f5d84(0x2c0),{'premultipliedAlpha':![]});this[_0x1f5d84(0x311)]==null?(this[_0x1f5d84(0x311)]=this[_0x1f5d84(0x36f)][_0x1f5d84(0x32a)](_0x1f5d84(0x203),{'premultipliedAlpha':![]}),this[_0x1f5d84(0x33f)]=0x1):this[_0x1f5d84(0x33f)]=0x2;console['log'](_0x1f5d84(0x393)+this['ctx']+'\x20version\x20'+this[_0x1f5d84(0x33f)]);let _0x4bb64e=_0x51394f[_0x1f5d84(0x28b)],_0x4f0e96=_0x51394f[_0x1f5d84(0x2e3)],_0x3b4e58=_0x51394f[_0x1f5d84(0x363)](_0x1f5d84(0x27e))[0x0];this[_0x1f5d84(0x36f)]['style'][_0x1f5d84(0x244)]=0x0,this[_0x1f5d84(0x36f)][_0x1f5d84(0x219)][_0x1f5d84(0x243)]=0x0,this[_0x1f5d84(0x36f)][_0x1f5d84(0x219)][_0x1f5d84(0x283)]=_0x1f5d84(0x211),this['canvas'][_0x1f5d84(0x219)][_0x1f5d84(0x204)]=0x186a0,this[_0x1f5d84(0x36f)]['width']=_0x51394f[_0x1f5d84(0x23d)],this['canvas'][_0x1f5d84(0x332)]=_0x51394f[_0x1f5d84(0x2de)],this[_0x1f5d84(0x36f)][_0x1f5d84(0x219)]['position']=_0x1f5d84(0x264);let _0x2dddb9=_0x3b4e58[_0x1f5d84(0x1a9)];if(_0x2dddb9)_0x51394f['insertBefore'](this['canvas'],_0x2dddb9);else _0x51394f['appendChild'](this[_0x1f5d84(0x36f)]);this[_0x1f5d84(0x36f)][_0x1f5d84(0x219)][_0x1f5d84(0x2d1)]=_0x1f5d84(0x326),_0x3b4e58['addEventListener'](_0x1f5d84(0x218),_0x13269d=>{this['OnUserClickOnCanvas'](_0x13269d);}),this[_0x1f5d84(0x38e)](),this[_0x1f5d84(0x2d5)]=null,this[_0x1f5d84(0x2c8)]={},this['place2ad']={},this['ad2place']={},this[_0x1f5d84(0x28d)]=[],this['lastTimeReportedIncomingTC']=0x0,this[_0x1f5d84(0x29a)]=null;}['isPowerOf2'](_0x3f59ef){return(_0x3f59ef&_0x3f59ef-0x1)==0x0;}['CreateDigitImg'](_0x2fd25e){const _0x32e648=_0x2629b0;let _0x2c585a=document[_0x32e648(0x39b)](_0x32e648(0x36f));_0x2c585a['width']=0x32,_0x2c585a[_0x32e648(0x332)]=0x32;let _0x2d065a=_0x2c585a['getContext']('2d');_0x2d065a[_0x32e648(0x2ea)]='black',_0x2d065a[_0x32e648(0x1a0)](0x0,0x0,_0x2c585a[_0x32e648(0x283)],_0x2c585a[_0x32e648(0x332)]),_0x2d065a[_0x32e648(0x220)]=_0x32e648(0x38a),_0x2d065a['fillStyle']=_0x32e648(0x35a),_0x2d065a['fillText'](_0x2fd25e,0xa,0x23);let _0x539243=_0x2c585a[_0x32e648(0x316)](),_0x56c543=document[_0x32e648(0x39b)](_0x32e648(0x265));return _0x56c543[_0x32e648(0x357)]=_0x539243,_0x56c543;}['OnUserClickOnCanvas'](_0x2981f8){const _0x1fad89=_0x2629b0,_0x539bd0=this[_0x1fad89(0x36f)]['getBoundingClientRect']();let _0x2cf5cc=event[_0x1fad89(0x1c3)]-_0x539bd0['left'],_0x7eb0d6=event[_0x1fad89(0x3a4)]-_0x539bd0[_0x1fad89(0x244)];_0x2cf5cc=_0x2cf5cc/(_0x539bd0[_0x1fad89(0x240)]-_0x539bd0[_0x1fad89(0x243)]),_0x7eb0d6=_0x7eb0d6/(_0x539bd0['bottom']-_0x539bd0[_0x1fad89(0x244)]);for(let _0x12c74e of this[_0x1fad89(0x28d)]){if(_0x12c74e[_0x1fad89(0x1dc)]['l']<=_0x2cf5cc&&_0x12c74e[_0x1fad89(0x1dc)]['r']>=_0x2cf5cc&&_0x12c74e['rect']['t']<=_0x7eb0d6&&_0x12c74e['rect']['b']>=_0x7eb0d6){let _0x33606f=_0x12c74e[_0x1fad89(0x22e)][_0x1fad89(0x27c)](0x1);if(this[_0x1fad89(0x20e)][_0x33606f]){let _0x3a8477=this[_0x1fad89(0x20e)][_0x33606f];console[_0x1fad89(0x2b5)](_0x1fad89(0x1d1)+_0x33606f+_0x1fad89(0x2f2)+_0x3a8477+'\x20!!!!!!!!!!!!!!!!!!!!!!'),window['open'](_0x3a8477,'_blank');}return;}}}['TexUnitForGenericAd'](){return 0x0;}[_0x2629b0(0x1f9)](_0x5a8809){const _0x1080c4=_0x2629b0;let _0xcbe589=Object[_0x1080c4(0x280)](this[_0x1080c4(0x21f)]);for(let _0x449142=0x0;_0x449142<_0xcbe589[_0x1080c4(0x34d)];++_0x449142){if(_0x5a8809==_0xcbe589[_0x449142])return _0x449142+0x1;}return 0x0;}['TexUnitForPlaceHolder'](_0xa41128){const _0x3076a8=_0x2629b0;let _0x2caebc=Object[_0x3076a8(0x280)](this[_0x3076a8(0x21f)]);for(let _0x32ceb3=0x0;_0x32ceb3<_0x2caebc[_0x3076a8(0x34d)];++_0x32ceb3){let _0x558907=_0x2caebc[_0x32ceb3];if(_0xa41128[_0x3076a8(0x22e)][_0x3076a8(0x242)](_0x558907)>=0x0)return _0x32ceb3;}return 0x0;}['AdNameForPlaceHolder'](_0x5cff06){const _0x5b7bec=_0x2629b0;let _0x4e429c=Object['keys'](this[_0x5b7bec(0x21f)]);for(let _0x50cb2e=0x0;_0x50cb2e<_0x4e429c[_0x5b7bec(0x34d)];++_0x50cb2e){let _0x2b54f6=_0x4e429c[_0x50cb2e];if(_0x5cff06[_0x5b7bec(0x22e)][_0x5b7bec(0x242)](_0x2b54f6)>=0x0&&this[_0x5b7bec(0x2c8)]&&this['place2AdTexture'][_0x2b54f6]&&this[_0x5b7bec(0x2c8)][_0x2b54f6][_0x5b7bec(0x22e)])return this[_0x5b7bec(0x2c8)][_0x2b54f6][_0x5b7bec(0x22e)];}return this['lastAdName'];}['TexUnitBaseForAlpha'](){const _0x31da00=_0x2629b0;return 0x1+Object['keys'](this[_0x31da00(0x21f)])['length'];}['InitGL'](){const _0xa57146=_0x2629b0;let _0x1394e7=BB['GL']['fragmentShaderSource'];if(BB[_0xa57146(0x2f6)]['Platform'][_0xa57146(0x1ef)]())_0x1394e7=BB['GL'][_0xa57146(0x28a)][_0xa57146(0x35e)](_0xa57146(0x368),'if\x20(alpha\x20<\x200.8)');this[_0xa57146(0x31e)]=webglUtils['createProgramFromSources'](this['ctx'],this['webGLVersion']==0x2?[BB['GL']['vertexShaderSource'],_0x1394e7]:[BB['GL']['vertexShaderSourceV1'],BB['GL']['fragmentShaderSourceV1']]),this[_0xa57146(0x311)][_0xa57146(0x1c7)](0x0,0x0,0x0,0x0),this['ctx']['clear'](this[_0xa57146(0x311)][_0xa57146(0x27f)]),this[_0xa57146(0x311)][_0xa57146(0x1bd)](this['program']),this[_0xa57146(0x31a)]=0x0,this[_0xa57146(0x340)]();}['CleanGL'](){const _0x20e446=_0x2629b0;this[_0x20e446(0x36f)][_0x20e446(0x219)][_0x20e446(0x255)]='none',this[_0x20e446(0x21b)]=0x0;}[_0x2629b0(0x1aa)](_0x4b737e,_0x5aac08,_0x3c4975,_0x9394c5,_0xd5c64a,_0x3aec1f,_0x47cbdc){const _0xbb85fa=_0x2629b0;_0x47cbdc?this[_0xbb85fa(0x311)][_0xbb85fa(0x35c)](this['ctx'][_0xbb85fa(0x338)],0x1):this[_0xbb85fa(0x311)][_0xbb85fa(0x35c)](this[_0xbb85fa(0x311)][_0xbb85fa(0x338)],0x4);this[_0xbb85fa(0x311)][_0xbb85fa(0x35c)](this[_0xbb85fa(0x311)][_0xbb85fa(0x2a2)],![]);const _0x4f6531=this[_0xbb85fa(0x311)]['createTexture']();this['ctx'][_0xbb85fa(0x30e)](this['ctx']['TEXTURE0']+_0x5aac08),this[_0xbb85fa(0x311)][_0xbb85fa(0x246)](this['ctx'][_0xbb85fa(0x3a8)],_0x4f6531);try{_0xd5c64a&&_0x3aec1f?this['ctx'][_0xbb85fa(0x1a7)](this[_0xbb85fa(0x311)][_0xbb85fa(0x3a8)],0x0,_0x9394c5==null?this['ctx'][_0xbb85fa(0x34c)]:_0x9394c5,_0xd5c64a,_0x3aec1f,0x0,_0x9394c5==null?this[_0xbb85fa(0x311)][_0xbb85fa(0x34c)]:_0x9394c5,this[_0xbb85fa(0x311)]['UNSIGNED_BYTE'],_0x4b737e):this[_0xbb85fa(0x311)][_0xbb85fa(0x1a7)](this[_0xbb85fa(0x311)][_0xbb85fa(0x3a8)],0x0,_0x9394c5==null?this['ctx'][_0xbb85fa(0x34c)]:_0x9394c5,this[_0xbb85fa(0x311)][_0xbb85fa(0x34c)],this[_0xbb85fa(0x311)][_0xbb85fa(0x2af)],_0x4b737e);}catch(_0xb840ba){return console['error'](_0xb840ba),null;}if(this[_0xbb85fa(0x33f)]==0x1){let _0x5c576e=_0xd5c64a||_0x4b737e[_0xbb85fa(0x283)],_0x29d86f=_0x3aec1f||_0x4b737e[_0xbb85fa(0x332)];_0x5c576e&&this[_0xbb85fa(0x1c5)](_0x5c576e)&&_0x29d86f&&this[_0xbb85fa(0x1c5)](_0x29d86f)?this['ctx']['generateMipmap'](this['ctx'][_0xbb85fa(0x3a8)]):(this[_0xbb85fa(0x311)][_0xbb85fa(0x1da)](this[_0xbb85fa(0x311)][_0xbb85fa(0x3a8)],this[_0xbb85fa(0x311)][_0xbb85fa(0x1d0)],this[_0xbb85fa(0x311)][_0xbb85fa(0x346)]),this['ctx'][_0xbb85fa(0x1da)](this[_0xbb85fa(0x311)][_0xbb85fa(0x3a8)],this['ctx']['TEXTURE_WRAP_T'],this['ctx'][_0xbb85fa(0x346)]),this[_0xbb85fa(0x311)][_0xbb85fa(0x1da)](this['ctx'][_0xbb85fa(0x3a8)],this['ctx'][_0xbb85fa(0x1f8)],this[_0xbb85fa(0x311)][_0xbb85fa(0x359)]));}else this[_0xbb85fa(0x311)]['texParameteri'](this[_0xbb85fa(0x311)][_0xbb85fa(0x3a8)],this['ctx'][_0xbb85fa(0x1d0)],this[_0xbb85fa(0x311)]['CLAMP_TO_EDGE']),this[_0xbb85fa(0x311)]['texParameteri'](this[_0xbb85fa(0x311)]['TEXTURE_2D'],this[_0xbb85fa(0x311)][_0xbb85fa(0x381)],this[_0xbb85fa(0x311)][_0xbb85fa(0x346)]),this[_0xbb85fa(0x311)]['texParameteri'](this[_0xbb85fa(0x311)][_0xbb85fa(0x3a8)],this[_0xbb85fa(0x311)][_0xbb85fa(0x1f8)],this[_0xbb85fa(0x311)][_0xbb85fa(0x359)]),this['ctx']['texParameteri'](this[_0xbb85fa(0x311)]['TEXTURE_2D'],this['ctx'][_0xbb85fa(0x30d)],this['ctx']['LINEAR']);let _0x142903=this[_0xbb85fa(0x311)][_0xbb85fa(0x20a)](this[_0xbb85fa(0x31e)],_0x3c4975);return _0x142903&&this[_0xbb85fa(0x311)][_0xbb85fa(0x2c5)](_0x142903,_0x5aac08),_0x4f6531;}[_0x2629b0(0x2a6)](){const _0x414f68=_0x2629b0;this['autoAddIndex']=setTimeout(()=>{const _0x281cdc=_0x4c2f,_0x58b4cf=Object[_0x281cdc(0x280)](this[_0x281cdc(0x3a6)]);_0x58b4cf[_0x281cdc(0x34d)]&&(this[_0x281cdc(0x388)](_0x58b4cf[Math[_0x281cdc(0x1d9)](Math['random']()*_0x58b4cf['length'])]),this['_nextAdvertisement']());},this[_0x414f68(0x1fb)][_0x414f68(0x2d9)]);}[_0x2629b0(0x37d)](_0x3bab81,_0x28e4cb,_0x37a61f=null){const _0x3d4cda=_0x2629b0;if(_0x3bab81['indexOf']('.json')>-0x1){fetch(_0x28e4cb)['then'](async _0xdbc5f3=>{const _0x53ae95=_0x4c2f;this[_0x53ae95(0x21f)]=await _0xdbc5f3[_0x53ae95(0x386)](),this[_0x53ae95(0x24d)]={};let _0x3a4742=Object[_0x53ae95(0x280)](this[_0x53ae95(0x21f)]);for(let _0xf16aa8=0x0;_0xf16aa8<_0x3a4742[_0x53ae95(0x34d)];++_0xf16aa8){let _0x3a1e94=_0x3a4742[_0xf16aa8];if(_0x3a1e94==_0x53ae95(0x320)){this[_0x53ae95(0x20e)]=this['place2ad'][_0x3a1e94],delete this[_0x53ae95(0x21f)][_0x3a1e94];continue;}let _0x3a73b6=this[_0x53ae95(0x21f)][_0x3a1e94];for(let _0x31deb3=0x0;_0x31deb3<_0x3a73b6[_0x53ae95(0x34d)];++_0x31deb3){let _0x395289=_0x3a73b6[_0x31deb3];this[_0x53ae95(0x24d)]['#'+_0x395289]=_0x3a1e94;}}Object[_0x53ae95(0x280)](this[_0x53ae95(0x21f)])[_0x53ae95(0x34d)]>0x0&&(console[_0x53ae95(0x2b5)]('composer::AddAdvertisement:\x20place-to-ads\x20mapping:\x20',this[_0x53ae95(0x21f)]),console['log']('composer::AddAdvertisement:\x20ads-to-place\x20mapping:\x20',this[_0x53ae95(0x24d)]),setTimeout(()=>{this['MakeSureAdPerPlace']();},0xbb8));});if(_0x37a61f)_0x37a61f();return;}const _0x1d37a3=new Image();return _0x1d37a3[_0x3d4cda(0x1af)]=_0x3d4cda(0x2dd),_0x1d37a3['onload']=()=>{const _0x186a60=_0x3d4cda;let _0x2b7fb3=Object['keys'](this[_0x186a60(0x3a6)])[_0x186a60(0x34d)]===0x0;this['advertisementMap'][_0x3bab81]=_0x1d37a3;_0x2b7fb3&&(this['SelectAd'](_0x3bab81),this[_0x186a60(0x1fb)][_0x186a60(0x341)]&&(clearTimeout(this[_0x186a60(0x29a)]),this[_0x186a60(0x2a6)]()));if(_0x37a61f)_0x37a61f();},_0x1d37a3[_0x3d4cda(0x1ac)]=()=>{const _0x1589fe=_0x3d4cda;alert(_0x1589fe(0x2e6)+_0x28e4cb+'\x20.');},_0x1d37a3['src']=_0x28e4cb,_0x1d37a3;}[_0x2629b0(0x317)](){const _0x4fc7ef=_0x2629b0;if(this[_0x4fc7ef(0x21f)]){let _0x307d7f=Object['keys'](this[_0x4fc7ef(0x21f)]);for(let _0x4fb02b=0x0;_0x4fb02b<_0x307d7f[_0x4fc7ef(0x34d)];++_0x4fb02b){let _0x425f48=_0x307d7f[_0x4fb02b];!this[_0x4fc7ef(0x2c8)][_0x425f48]&&this['place2ad'][_0x425f48][_0x4fc7ef(0x34d)]>0x0&&(console['log'](_0x4fc7ef(0x2d7)+this[_0x4fc7ef(0x21f)][_0x425f48][0x0]+'\x20for\x20place\x20'+_0x425f48),this[_0x4fc7ef(0x388)]('#'+this[_0x4fc7ef(0x21f)][_0x425f48][0x0]));}}}[_0x2629b0(0x388)](_0x25266f){const _0x56c017=_0x2629b0;console[_0x56c017(0x2b5)](_0x56c017(0x288)+_0x25266f);let _0x479767=this[_0x56c017(0x3a6)][_0x25266f];if(!_0x479767)console[_0x56c017(0x2e1)](_0x56c017(0x2a9)+_0x25266f+'\x27');else{if(this[_0x56c017(0x24d)]&&this[_0x56c017(0x24d)][_0x25266f]){let _0x489bf8=this[_0x56c017(0x24d)][_0x25266f];console[_0x56c017(0x2b5)](_0x56c017(0x200)+_0x489bf8);let _0x5c6b6d=this['TexUnitForAdInPlace'](_0x489bf8),_0xe4c8c7='ad'+(_0x5c6b6d-0x1);if(this['place2AdTexture'][_0x489bf8])this[_0x56c017(0x311)][_0x56c017(0x1c8)](this['place2AdTexture'][_0x489bf8]['tex']);this[_0x56c017(0x2c8)][_0x489bf8]={'tex':this[_0x56c017(0x1aa)](_0x479767,_0x5c6b6d,_0xe4c8c7),'texUnitId':_0x5c6b6d,'texName':_0xe4c8c7,'name':_0x25266f};}else this[_0x56c017(0x2d5)]!=null&&this[_0x56c017(0x311)][_0x56c017(0x1c8)](this['adTexture']),this[_0x56c017(0x2d5)]=this[_0x56c017(0x1aa)](_0x479767,this['TexUnitForGenericAd'](),_0x56c017(0x1c1)),this[_0x56c017(0x22a)]=_0x479767,this[_0x56c017(0x1b9)]=_0x25266f;}}[_0x2629b0(0x216)](_0x2cc172){const _0x2afd5b=_0x2629b0;this[_0x2afd5b(0x2fe)][_0x2cc172[_0x2afd5b(0x1a4)]]=_0x2cc172,this[_0x2afd5b(0x1b3)]['push'](_0x2cc172[_0x2afd5b(0x1a4)]);}[_0x2629b0(0x1b8)](){const _0x3c5554=_0x2629b0;(this[_0x3c5554(0x19f)]||this[_0x3c5554(0x1ee)])[_0x3c5554(0x1df)](this)[_0x3c5554(0x333)](_0x11d86a=>{const _0xcae47f=_0x3c5554;console[_0xcae47f(0x2e1)](_0x11d86a);});}['RenderFrame'](){const _0x170655=_0x2629b0;let _0x5694db=this[_0x170655(0x311)]['getAttribLocation'](this['program'],_0x170655(0x207)),_0x49ed75=this['ctx']['getUniformLocation'](this[_0x170655(0x31e)],_0x170655(0x273)),_0x5191bc=this['ctx'][_0x170655(0x20a)](this[_0x170655(0x31e)],_0x170655(0x1d7));this['ctx'][_0x170655(0x353)](_0x49ed75,this['ctx'][_0x170655(0x36f)][_0x170655(0x283)],this[_0x170655(0x311)][_0x170655(0x36f)][_0x170655(0x332)]),this[_0x170655(0x311)]['uniform2f'](_0x5191bc,this['ctx']['canvas']['width'],this['ctx'][_0x170655(0x36f)][_0x170655(0x332)]);if(this['webGLVersion']==0x2){let _0x1d3c58=this['ctx'][_0x170655(0x20a)](this[_0x170655(0x31e)],_0x170655(0x394)),_0x14caa8=[0x1,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x1];this[_0x170655(0x311)][_0x170655(0x225)](_0x1d3c58,![],_0x14caa8);}let _0xc158b3=null;this['webGLVersion']==0x2&&(_0xc158b3=this['ctx']['createVertexArray'](),this[_0x170655(0x311)][_0x170655(0x2ab)](_0xc158b3));let _0x5c93be=this['ctx'][_0x170655(0x2ec)]();this[_0x170655(0x311)][_0x170655(0x1be)](_0x5694db),this[_0x170655(0x311)][_0x170655(0x2ca)](this[_0x170655(0x311)][_0x170655(0x208)],_0x5c93be);let _0x3c9e7b=0x2,_0x3e5dfb=this[_0x170655(0x311)][_0x170655(0x1cc)],_0x18a6c3=![],_0x304047=0x0,_0x2d4090=0x0;this[_0x170655(0x311)][_0x170655(0x1ad)](_0x5694db,_0x3c9e7b,_0x3e5dfb,_0x18a6c3,_0x304047,_0x2d4090);let _0x5f76f6=this[_0x170655(0x311)][_0x170655(0x2ec)]();this[_0x170655(0x311)][_0x170655(0x2ca)](this[_0x170655(0x311)]['ARRAY_BUFFER'],_0x5f76f6),this['ctx'][_0x170655(0x1a6)](this[_0x170655(0x311)][_0x170655(0x208)],new Float32Array([0x0,0x0,0x1,0x0,0x0,0x1,0x0,0x1,0x1,0x0,0x1,0x1]),this[_0x170655(0x311)][_0x170655(0x251)]),this['ctx'][_0x170655(0x1f6)](0x0,0x0,this[_0x170655(0x311)][_0x170655(0x36f)][_0x170655(0x283)],this[_0x170655(0x311)][_0x170655(0x36f)][_0x170655(0x332)]),this['ctx']['clearColor'](0x0,0x0,0x0,0x0),this[_0x170655(0x311)][_0x170655(0x236)](this['ctx'][_0x170655(0x27f)]|this[_0x170655(0x311)][_0x170655(0x2a5)]),this['ctx'][_0x170655(0x2ca)](this['ctx']['ARRAY_BUFFER'],_0x5c93be),this[_0x170655(0x1ea)](this['ctx'],0x0,0x0,this[_0x170655(0x36f)][_0x170655(0x283)],this['canvas'][_0x170655(0x332)]);let _0x5b8728=this[_0x170655(0x311)][_0x170655(0x36c)],_0x2e5e3f=0x6;this['ctx'][_0x170655(0x1ba)](_0x5b8728,_0x2d4090,_0x2e5e3f);}[_0x2629b0(0x1ea)](_0x45ce16,_0x515e00,_0x48fad8,_0x7bf566,_0x1ed994){const _0x3d8366=_0x2629b0;let _0x154032=_0x515e00,_0x170449=_0x515e00+_0x7bf566,_0x294125=_0x48fad8,_0x37ecf9=_0x48fad8+_0x1ed994;this['ctx']['bufferData'](this[_0x3d8366(0x311)][_0x3d8366(0x208)],new Float32Array([_0x154032,_0x294125,_0x170449,_0x294125,_0x154032,_0x37ecf9,_0x154032,_0x37ecf9,_0x170449,_0x294125,_0x170449,_0x37ecf9]),this[_0x3d8366(0x311)][_0x3d8366(0x251)]);}[_0x2629b0(0x1b2)](_0x16b161){const _0x147d27=_0x2629b0;let _0x2a8a51=BB[_0x147d27(0x2f6)][_0x147d27(0x2e9)],_0x50dcb6=_0x2a8a51['timeCodeStr2TimeCodeArray'](_0x16b161),_0x9412c6=_0x2a8a51[_0x147d27(0x349)](_0x50dcb6,0x1,this['sourceFPS']),_0x1f922e=_0x2a8a51['TimeCodeAddFrames'](_0x50dcb6,0x2,this[_0x147d27(0x221)]),_0x1128b6=_0x2a8a51[_0x147d27(0x399)](_0x9412c6),_0x147839=_0x2a8a51[_0x147d27(0x399)](_0x1f922e);this[_0x147d27(0x262)]=!![];const _0x5a9695=performance['now']();let _0x59dd83=null,_0x479f37=[];if(this[_0x147d27(0x2fe)][_0x16b161]){_0x59dd83=this[_0x147d27(0x2fe)][_0x16b161];this[_0x147d27(0x2fe)][_0x1128b6]&&_0x479f37['push']({'nextVideo':this[_0x147d27(0x2fe)][_0x1128b6],'nextTimeCode':_0x1128b6});this[_0x147d27(0x2fe)][_0x147839]&&_0x479f37[_0x147d27(0x296)]({'nextVideo':this[_0x147d27(0x2fe)][_0x147839],'nextTimeCode':_0x147839});const _0x116898=this[_0x147d27(0x1b3)][_0x147d27(0x242)](_0x16b161);if(_0x116898>-0x5)this[_0x147d27(0x1b3)][_0x147d27(0x27d)](0x0,_0x116898-0x4)[_0x147d27(0x371)](_0x29e17a=>{delete this['metadataMap'][_0x29e17a];});this[_0x147d27(0x21b)]++;}else this[_0x147d27(0x31a)]++,this['counter']>0x3c&&(this[_0x147d27(0x31a)]=0x0,console['error'](_0x147d27(0x2ce)+_0x16b161)),this['alphaFound']++;this[_0x147d27(0x21b)]>0x1e&&this['canvas'][_0x147d27(0x219)][_0x147d27(0x255)]=='none'&&(this[_0x147d27(0x36f)][_0x147d27(0x219)][_0x147d27(0x255)]='');let _0x4064be=[];this['canvas'][_0x147d27(0x283)]=0x500,this[_0x147d27(0x36f)][_0x147d27(0x332)]=0x2d0;let _0x4ec590=0x0;this[_0x147d27(0x28d)]=[];if(_0x59dd83){let _0x8c1417=![];if(this[_0x147d27(0x1fb)][_0x147d27(0x1e8)]){var _0x1f1829=document['getElementById'](_0x147d27(0x22c));_0x8c1417=_0x1f1829['checked'];}if(!_0x8c1417)for(const _0x277e8b in _0x59dd83[_0x147d27(0x2b9)]){const _0x22abed=_0x59dd83['placeholders'][_0x277e8b];if(!_0x22abed[_0x147d27(0x2c1)])continue;let _0x4acac2=_0x147d27(0x2da)+_0x4ec590,_0x4521d2=this['TexUnitBaseForAlpha']()+_0x4ec590;_0x22abed[_0x147d27(0x30c)]=this[_0x147d27(0x1aa)](_0x22abed[_0x147d27(0x2c1)],_0x4521d2,_0x4acac2,this['ctx'][_0x147d27(0x2c6)],_0x22abed['width'],_0x22abed[_0x147d27(0x332)],!![]),_0x22abed[_0x147d27(0x2c1)]=null;if(!_0x22abed['alphaTex']){console[_0x147d27(0x2e1)](_0x147d27(0x254));continue;}_0x4064be[_0x147d27(0x296)](_0x22abed[_0x147d27(0x30c)]);let _0x32bed8=_0x147d27(0x330)+_0x4ec590,_0x58e961=this[_0x147d27(0x311)][_0x147d27(0x20a)](this[_0x147d27(0x31e)],_0x32bed8);this[_0x147d27(0x311)][_0x147d27(0x2c5)](_0x58e961,0x1);let _0x2111f1=_0x147d27(0x384)+_0x4ec590,_0x32162f=this[_0x147d27(0x311)][_0x147d27(0x20a)](this['program'],_0x2111f1),_0x41196c=![];_0x22abed[_0x147d27(0x22e)][_0x147d27(0x242)]('blur')>=0x0?(this[_0x147d27(0x311)][_0x147d27(0x2c5)](_0x32162f,0x63),_0x41196c=!![]):this[_0x147d27(0x311)]['uniform1i'](_0x32162f,this[_0x147d27(0x275)](_0x22abed));let _0x3098be=_0x147d27(0x21e)+_0x4ec590+_0x147d27(0x301),_0x3c5bc0=this[_0x147d27(0x311)][_0x147d27(0x20a)](this[_0x147d27(0x31e)],_0x3098be);this[_0x147d27(0x311)][_0x147d27(0x370)](_0x3c5bc0,[_0x22abed[_0x147d27(0x282)],_0x22abed[_0x147d27(0x24b)]]);let _0x57725d=_0x147d27(0x21e)+_0x4ec590+_0x147d27(0x31d),_0x2f3749=this['ctx']['getUniformLocation'](this[_0x147d27(0x31e)],_0x57725d);this[_0x147d27(0x311)][_0x147d27(0x370)](_0x2f3749,[_0x22abed[_0x147d27(0x283)],_0x22abed[_0x147d27(0x332)]]);let _0x162d24='u_matrix'+_0x4ec590,_0x1d2600=this[_0x147d27(0x311)][_0x147d27(0x20a)](this[_0x147d27(0x31e)],_0x162d24);this[_0x147d27(0x311)][_0x147d27(0x225)](_0x1d2600,![],_0x22abed['tranform']);if(!_0x41196c){let _0x83f7a={'l':-0x1,'t':-0x1,'r':-0x1,'b':-0x1};for(let _0x5e6854 of _0x22abed['corners']){if(_0x5e6854['x']<_0x83f7a['l']||_0x83f7a['l']==-0x1)_0x83f7a['l']=_0x5e6854['x'];if(_0x5e6854['x']>_0x83f7a['r']||_0x83f7a['r']==-0x1)_0x83f7a['r']=_0x5e6854['x'];if(_0x5e6854['y']<_0x83f7a['t']||_0x83f7a['t']==-0x1)_0x83f7a['t']=_0x5e6854['y'];if(_0x5e6854['y']>_0x83f7a['b']||_0x83f7a['b']==-0x1)_0x83f7a['b']=_0x5e6854['y'];}_0x83f7a['l']/=_0x59dd83[_0x147d27(0x295)][_0x147d27(0x283)],_0x83f7a['r']/=_0x59dd83['canvasSize'][_0x147d27(0x283)],_0x83f7a['t']/=_0x59dd83[_0x147d27(0x295)][_0x147d27(0x332)],_0x83f7a['b']/=_0x59dd83[_0x147d27(0x295)][_0x147d27(0x332)],this[_0x147d27(0x28d)][_0x147d27(0x296)]({'name':this[_0x147d27(0x227)](_0x22abed),'rect':_0x83f7a});}_0x4ec590++;}}else{}for(;_0x4ec590<BB[_0x147d27(0x2ed)];++_0x4ec590){let _0x2b77af=_0x147d27(0x330)+_0x4ec590,_0x41ce1f=this['ctx'][_0x147d27(0x20a)](this[_0x147d27(0x31e)],_0x2b77af);this[_0x147d27(0x311)]['uniform1i'](_0x41ce1f,0x0);let _0x3a7b48=_0x147d27(0x2da)+_0x4ec590,_0x239022=this[_0x147d27(0x311)][_0x147d27(0x20a)](this['program'],_0x3a7b48);this[_0x147d27(0x311)][_0x147d27(0x2c5)](_0x239022,0x0);}if(this[_0x147d27(0x1fb)][_0x147d27(0x3ae)][_0x147d27(0x328)]){let _0x1901fc=_0x16b161[_0x147d27(0x2bf)](':')[0x3],_0x3369b7=_0x1901fc[_0x147d27(0x242)]('.')>=0x0?0x2:0x1,_0x2ad111=parseInt(_0x1901fc[_0x147d27(0x2bf)]('.')[0x0])%0xa,_0x9216c5=_0x2ad111+'.'+_0x3369b7,_0x77799a=this[_0x147d27(0x37e)]()+0x5,_0xb48285=this['GenerateTexture'](this['digitImg'][_0x9216c5],_0x77799a,_0x147d27(0x279));_0x4064be[_0x147d27(0x296)](_0xb48285);let _0x9c5b04=_0x147d27(0x249),_0x20f8e6=this['ctx'][_0x147d27(0x20a)](this[_0x147d27(0x31e)],_0x9c5b04);this[_0x147d27(0x311)]['uniform1i'](_0x20f8e6,0x1);let _0x183477=_0x147d27(0x1b7),_0x50b2a4=this[_0x147d27(0x311)][_0x147d27(0x20a)](this[_0x147d27(0x31e)],_0x183477);this[_0x147d27(0x311)][_0x147d27(0x370)](_0x50b2a4,[0x0,0x0]);let _0x5bbc8a=_0x147d27(0x25d),_0x223659=this[_0x147d27(0x311)][_0x147d27(0x20a)](this[_0x147d27(0x31e)],_0x5bbc8a);this[_0x147d27(0x311)][_0x147d27(0x370)](_0x223659,[0xc8,0xc8]);}else{let _0x10d0f7=_0x147d27(0x249),_0x5bd38d=this[_0x147d27(0x311)][_0x147d27(0x20a)](this[_0x147d27(0x31e)],_0x10d0f7);this[_0x147d27(0x311)][_0x147d27(0x2c5)](_0x5bd38d,0x0);}this[_0x147d27(0x2cf)]();for(const _0xfdb498 of _0x4064be){this['ctx'][_0x147d27(0x1c8)](_0xfdb498);}}[_0x2629b0(0x397)](){return this['canvas'];}},BB[_0x2629b0(0x380)]=(_0x304bb2,_0x389b9b)=>{const _0x5d927b=_0x2629b0;let _0x5b7d48=[];const _0x3233ca=new BB[(_0x5d927b(0x266))]((_0x46bbcf,_0x5a9082)=>{const _0x45f7e5=_0x5d927b;switch(_0x46bbcf){case _0x45f7e5(0x375):console['log'](_0x45f7e5(0x230),_0x5a9082);break;case'join':const _0x1dd659=document[_0x45f7e5(0x383)](_0x45f7e5(0x22e));_0x1dd659&&(_0x1dd659[_0x45f7e5(0x23e)]=_0x3233ca['name']);break;case _0x45f7e5(0x258):if(_0x5a9082[_0x45f7e5(0x33b)]===_0x3233ca['name']){if(_0x5a9082[_0x45f7e5(0x355)]){const _0x474f0e=_0x45f7e5(0x390);_0x304bb2['AddAdvertisement'](_0x474f0e,_0x5a9082['url'],()=>{const _0x5d3a5b=_0x45f7e5;_0x304bb2[_0x5d3a5b(0x388)](_0x474f0e);});}else _0x5b7d48=_0x5a9082[_0x45f7e5(0x382)],_0x5b7d48[_0x45f7e5(0x34d)]&&_0x304bb2['SelectAd'](_0x5b7d48[0x0]);}break;case _0x45f7e5(0x382):_0x5b7d48=_0x5a9082;_0x5b7d48['length']&&_0x304bb2[_0x45f7e5(0x388)](_0x5b7d48[0x0]);break;}});var _0x18f5cf=document[_0x5d927b(0x39b)](_0x5d927b(0x287));_0x18f5cf[_0x5d927b(0x357)]=_0x5d927b(0x2c4),document[_0x5d927b(0x363)](_0x5d927b(0x396))[0x0][_0x5d927b(0x281)](_0x18f5cf),_0x18f5cf['onload']=function(){const _0x44a68a=_0x5d927b;_0x3233ca[_0x44a68a(0x35d)](_0x389b9b[_0x44a68a(0x3ae)]['channelName']);},_0x389b9b[_0x5d927b(0x3ae)][_0x5d927b(0x1a8)]?_0x304bb2[_0x5d927b(0x37d)](_0x5d927b(0x2e5),_0x389b9b['augmentation']['logoURL']):fetch(_0x5d927b(0x2ac)+_0x389b9b[_0x5d927b(0x3ae)][_0x5d927b(0x23c)])['then'](async _0x52b979=>{const _0xa16159=_0x5d927b,_0x37dae3=await _0x52b979[_0xa16159(0x386)]();_0x37dae3[_0xa16159(0x371)](_0x2be719=>{const _0x1c169b=_0xa16159;_0x304bb2['AddAdvertisement']('#'+_0x2be719[_0x1c169b(0x22e)],_0x2be719[_0x1c169b(0x355)]);});});},BB[_0x2629b0(0x23f)]=(_0x289bc2,_0x35f425)=>{const _0x1a105c=_0x2629b0;let _0x39bc5a=BB['Utils'][_0x1a105c(0x2e9)],_0xf072ae=BB[_0x1a105c(0x2f6)][_0x1a105c(0x2eb)](_0x289bc2[_0x1a105c(0x1b4)]),_0x4fc6f3,_0x1b1d54,_0x5c1c7f=null,_0x2a81a3=null;console[_0x1a105c(0x2b5)](_0x1a105c(0x38d)+_0x289bc2[_0x1a105c(0x300)]);const _0x3151bd=_0x4edafc=>{const _0x313be5=_0x1a105c;_0x4fc6f3=_0x4edafc,console[_0x313be5(0x2b5)]('Folder\x20name\x20for\x20'+_0x289bc2[_0x313be5(0x300)]+':\x20'+_0x4fc6f3),_0x1b1d54&&_0x214ed7(_0x1b1d54);};async function _0x20a150(){const _0x2ee65a=_0x1a105c,_0x824be5=await fetch(_0x289bc2['allGamesURL']),_0xf53f3e=await _0x824be5[_0x2ee65a(0x386)]();_0x3151bd(_0x289bc2[_0x2ee65a(0x300)]);}_0x20a150();const _0x3ce13e=_0x17c7d8=>{_0x1b1d54=_0x17c7d8,_0x4fc6f3&&_0x214ed7(_0x1b1d54);},_0x214ed7=_0xea670e=>{const _0x304b6a=_0x1a105c;if(_0x5c1c7f==null){console[_0x304b6a(0x22d)](_0x304b6a(0x2df));let _0x34451a=new Blob([META_WORKER],{'type':'application/javascript'});_0x5c1c7f=new Worker(URL['createObjectURL'](_0x34451a)),_0x5c1c7f[_0x304b6a(0x1ac)]=function(_0x4653f5){const _0x24b1db=_0x304b6a;console[_0x24b1db(0x2e1)](_0x24b1db(0x237),_0x4653f5);},_0x5c1c7f['addEventListener']('error',function(_0x3e70f5){const _0x7526fd=_0x304b6a;console['error'](_0x7526fd(0x1ed),_0x3e70f5[_0x7526fd(0x25a)]);});if(_0x5c1c7f)console['BBlog'](_0x304b6a(0x2d2));else console['BBlog'](_0x304b6a(0x3ac));_0x5c1c7f[_0x304b6a(0x385)](_0x304b6a(0x25a),_0x2956df=>{const _0x11f5af=_0x304b6a;if(_0x2956df[_0x11f5af(0x24f)]['time']){}else _0x35f425[_0x11f5af(0x216)](_0x2956df[_0x11f5af(0x24f)]);});let _0x7ee695=_0x39bc5a['TimeCodeArray2TimeCodeJson'](_0x39bc5a[_0x304b6a(0x33a)](_0xea670e,_0xf072ae,!![]));_0x5c1c7f['postMessage']({'cloudFrontURL':_0x289bc2['cloudFrontURL'],'folderName':_0x4fc6f3,'tc':_0x39bc5a['printTimecode'](_0x7ee695,![])});}else{let _0xca71d4=_0x39bc5a[_0x304b6a(0x360)](_0x39bc5a['Frames2Timecode'](_0xea670e,_0xf072ae,!![]));_0x5c1c7f[_0x304b6a(0x2fb)]({'tc':_0x39bc5a[_0x304b6a(0x399)](_0xca71d4,![]),'enabled':_0x289bc2[_0x304b6a(0x29b)]});}};return{'setLastFrame':_0x3ce13e};},BB['OTTPlayer']=class{constructor(_0x388003,_0x2f3b0f,_0x44e105){const _0x1444f5=_0x2629b0;this[_0x1444f5(0x27e)]=_0x388003,this[_0x1444f5(0x26a)]=_0x2f3b0f,console[_0x1444f5(0x2b5)]('optionsFromMK:\x20',_0x44e105),this[_0x1444f5(0x1fb)]=Object['assign']({'enabled':!![],'stopAugment':![],'gameId':_0x1444f5(0x29c),'medialook':![],'allGamesURL':_0x1444f5(0x38c),'cloudFrontURL':'https://db8igqxlbvayn.cloudfront.net/prod','mediaIdJsonURL':_0x1444f5(0x2e4),'offsetJsonURL':_0x1444f5(0x1c9),'frameRateMode':BB[_0x1444f5(0x276)][_0x1444f5(0x2b3)],'renderingMode':BB['RenderingMode'][_0x1444f5(0x1f0)],'SynchMethod':BB['SynchMethod']['None'],'debug':![],'augmentation':{'renderTimecode':!![],'offset':0x0},'syncPoint':{'frame':0x0,'playerTime':0x0,'mediaTimeMS':0x0}},_0x44e105||{}),console[_0x1444f5(0x2b5)](_0x1444f5(0x2cc),this[_0x1444f5(0x1fb)]),this[_0x1444f5(0x1fb)][_0x1444f5(0x3ae)][_0x1444f5(0x23c)]='nba',console[_0x1444f5(0x22d)]=function(_0x181f6c){const _0x4f1f16=_0x1444f5;console[_0x4f1f16(0x2b5)]('OTTPlayer:\x20'+_0x181f6c);},console[_0x1444f5(0x39e)]=function(_0x570049){const _0x338436=_0x1444f5;console[_0x338436(0x2e1)](_0x338436(0x339)+_0x570049);};function _0x40df66(_0x56693d,_0x514d38){const _0x473a04=_0x1444f5,_0x4cac29=_0x56693d['split']('.')[_0x473a04(0x2bb)](Number),_0x297376=_0x514d38[_0x473a04(0x2bf)]('.')[_0x473a04(0x2bb)](Number);for(let _0x492f79=0x0;_0x492f79<Math[_0x473a04(0x3a1)](_0x4cac29[_0x473a04(0x34d)],_0x297376[_0x473a04(0x34d)]);_0x492f79++){const _0x14fbea=_0x4cac29[_0x492f79]||0x0,_0x13e818=_0x297376[_0x492f79]||0x0;if(_0x14fbea<_0x13e818)return-0x1;else{if(_0x14fbea>_0x13e818)return 0x1;}}return 0x0;}this[_0x1444f5(0x2ad)]();}[_0x2629b0(0x354)](){const _0xede39f=_0x2629b0;if(typeof globalConfig===_0xede39f(0x284))this[_0xede39f(0x1fb)]=Object['assign'](this['options'],{});else this[_0xede39f(0x1fb)]=Object[_0xede39f(0x1eb)](this[_0xede39f(0x1fb)],globalConfig);this[_0xede39f(0x1fb)]['augmentation'][_0xede39f(0x39f)]=0x0,console[_0xede39f(0x2b5)](_0xede39f(0x2be),this['options']);if(!this[_0xede39f(0x1fb)][_0xede39f(0x1e8)]){let _0x28a9cd=[_0xede39f(0x29d),_0xede39f(0x22b),'forDoNotRender',_0xede39f(0x1dd),_0xede39f(0x35b),_0xede39f(0x312),'plus05CorrectionCheckbox',_0xede39f(0x22c),'plus05CorrectionLabel',_0xede39f(0x2d6),_0xede39f(0x21d),_0xede39f(0x291)];for(let _0x2ab5b0=0x0;_0x2ab5b0<_0x28a9cd[_0xede39f(0x34d)];_0x2ab5b0++){const _0xf49bc=document[_0xede39f(0x383)](_0x28a9cd[_0x2ab5b0]);_0xf49bc&&(_0xf49bc['style']['display']=_0xede39f(0x326));}}let _0x5255d7=BB[_0xede39f(0x2f6)][_0xede39f(0x322)],_0x2d18e4=BB[_0xede39f(0x2f6)][_0xede39f(0x2e9)];if(this[_0xede39f(0x26a)])this[_0xede39f(0x1d3)](this[_0xede39f(0x26a)]);this[_0xede39f(0x1d4)](this[_0xede39f(0x1fb)]['gameId']);}[_0x2629b0(0x257)](){const _0x248faa=_0x2629b0;let _0x210523={};this[_0x248faa(0x36e)]=BB['Augmenter'](_0x210523,this[_0x248faa(0x27e)],this[_0x248faa(0x1fb)]),this['options'][_0x248faa(0x270)]==BB[_0x248faa(0x387)][_0x248faa(0x1f0)]&&this[_0x248faa(0x36e)][_0x248faa(0x365)]();}async[_0x2629b0(0x2ad)](){const _0x1665f3=_0x2629b0,_0x2a0de3=new URL(document[_0x1665f3(0x248)]),_0x5e8f82=_0x2a0de3[_0x1665f3(0x269)][_0x1665f3(0x20b)](_0x1665f3(0x1e1))||'';if(_0x5e8f82!=='')try{const _0xbf1405=await fetch(_0x5e8f82);if(!_0xbf1405['ok'])throw new Error(_0x1665f3(0x2ef));const _0x5cd2c8=await _0xbf1405[_0x1665f3(0x386)]();console[_0x1665f3(0x2b5)]('Got\x20the\x20following\x20config:\x20',_0x5cd2c8);if(typeof globalConfig==_0x1665f3(0x284))window[_0x1665f3(0x25c)]={};globalConfig=Object[_0x1665f3(0x1eb)]({},globalConfig,_0x5cd2c8);}catch(_0x194a92){console['error'](_0x1665f3(0x30a),_0x194a92);}this[_0x1665f3(0x354)]();}async[_0x2629b0(0x1d4)](_0x4fb370){const _0xd6db23=_0x2629b0;try{const _0x2f2fd2=await fetch(this[_0xd6db23(0x1fb)]['mediaIdJsonURL']+'/'+_0x4fb370);if(!_0x2f2fd2['ok'])throw new Error(_0xd6db23(0x233)+_0x2f2fd2['status']);const _0x3b0aaf=await _0x2f2fd2['json']();if(_0x3b0aaf[_0xd6db23(0x215)](_0xd6db23(0x329))){const _0x18489f=_0x3b0aaf['GAME_ID'];console[_0xd6db23(0x22d)](_0xd6db23(0x33e)+_0x4fb370+':\x20'+_0x18489f),this[_0xd6db23(0x1fb)][_0xd6db23(0x300)]=_0x18489f,console[_0xd6db23(0x2b5)](_0xd6db23(0x379)+this[_0xd6db23(0x1fb)][_0xd6db23(0x300)]+_0xd6db23(0x24e)),this['weHaveTheGameID'](),this[_0xd6db23(0x33c)](this[_0xd6db23(0x1fb)][_0xd6db23(0x300)]);}else console[_0xd6db23(0x39e)](_0xd6db23(0x3a3)+_0x4fb370+'\x20not\x20found\x20in\x20JSON.'),this[_0xd6db23(0x1fb)]['stopAugment']=!![];}catch(_0x4154cc){console[_0xd6db23(0x39e)](_0xd6db23(0x232),_0x4154cc);}}async[_0x2629b0(0x33c)](_0x3fe211){const _0x59ec63=_0x2629b0;try{const _0x4ce5d9=await fetch(this[_0x59ec63(0x1fb)][_0x59ec63(0x37a)]+'/'+this[_0x59ec63(0x1fb)][_0x59ec63(0x300)]);!_0x4ce5d9['ok']&&(console[_0x59ec63(0x22d)](_0x59ec63(0x233)+_0x4ce5d9['status']),setTimeout(()=>{this['fetchOffsetForGameId'](_0x3fe211);},0x1388));const _0x23d86e=await _0x4ce5d9[_0x59ec63(0x386)]();if(_0x23d86e['hasOwnProperty'](_0x59ec63(0x39f))&&_0x23d86e[_0x59ec63(0x215)](_0x59ec63(0x1f1))){const _0x1b41a6=_0x23d86e['offset'],_0x2df352=_0x23d86e[_0x59ec63(0x1f1)];_0x2df352==!![]&&(console[_0x59ec63(0x22d)]('Offest\x20for\x20gameid=\x20'+_0x3fe211+':\x20'+_0x1b41a6),this[_0x59ec63(0x1fb)][_0x59ec63(0x3ae)][_0x59ec63(0x39f)]=_0x1b41a6,setTimeout(()=>{this['fetchOffsetForGameId'](_0x3fe211);},0xea60));}else console['BBlog'](_0x59ec63(0x22f)+mediaID+'\x20not\x20found\x20in\x20JSON.'),setTimeout(()=>{this['fetchOffsetForGameId'](_0x3fe211);},0x1388);}catch(_0x55ff6f){console[_0x59ec63(0x39e)](_0x59ec63(0x2db),_0x55ff6f),setTimeout(()=>{const _0x947d88=_0x59ec63;this[_0x947d88(0x33c)](_0x3fe211);},0x1388);}}[_0x2629b0(0x302)](_0x4b9ece){const _0xd5b60a=_0x2629b0;this[_0xd5b60a(0x1fb)]['enabled']=_0x4b9ece;}[_0x2629b0(0x2ff)](){const _0x3e9d11=_0x2629b0;return this[_0x3e9d11(0x36e)][_0x3e9d11(0x397)]();}[_0x2629b0(0x1d3)](_0x529016){const _0x69ca2e=_0x2629b0;let _0x2c8e2f=BB[_0x69ca2e(0x2f6)][_0x69ca2e(0x322)];switch(_0x529016){case 0x3c:this['options'][_0x69ca2e(0x1b4)]=BB[_0x69ca2e(0x276)][_0x69ca2e(0x1b5)];break;case 0xea60/0x3e9:case 59.94:_0x2c8e2f['isWindows']()||_0x2c8e2f[_0x69ca2e(0x395)]()||_0x2c8e2f[_0x69ca2e(0x398)]()?this[_0x69ca2e(0x1fb)][_0x69ca2e(0x1b4)]=BB[_0x69ca2e(0x276)][_0x69ca2e(0x392)]:this[_0x69ca2e(0x1fb)][_0x69ca2e(0x1b4)]=BB['FrameRateMode'][_0x69ca2e(0x392)];break;case 0x7530/0x3e9:case 29.97:this[_0x69ca2e(0x1fb)][_0x69ca2e(0x1b4)]=BB[_0x69ca2e(0x276)][_0x69ca2e(0x2e7)];break;default:console[_0x69ca2e(0x2e1)](_0x69ca2e(0x2a8)+_0x529016+_0x69ca2e(0x1d5));break;}}[_0x2629b0(0x2ee)](_0x4a5f7b){const _0x23e70b=_0x2629b0;this[_0x23e70b(0x1fb)][_0x23e70b(0x350)]=_0x4a5f7b;}[_0x2629b0(0x26b)](_0x538044){this['frameDrawer']['onNewSegmentInterface'](_0x538044);}[_0x2629b0(0x23a)](_0x2404fa){const _0x259a2d=_0x2629b0;this[_0x259a2d(0x36e)][_0x259a2d(0x33d)](_0x2404fa);}};