Upload 19 files
Browse files- .gitattributes +1 -0
- Build/Build.data +2 -2
- Build/Build.framework.js +0 -0
- Build/Build.loader.js +1 -1
- Build/Build.wasm +2 -2
- TemplateData/favicon.ico +3 -0
- TemplateData/fullscreen-button.png +0 -0
- TemplateData/progress-bar-empty-dark.png +0 -0
- TemplateData/progress-bar-empty-light.png +0 -0
- TemplateData/progress-bar-full-dark.png +0 -0
- TemplateData/progress-bar-full-light.png +0 -0
- TemplateData/style.css +56 -0
- TemplateData/unity-logo-dark.png +0 -0
- TemplateData/unity-logo-light.png +0 -0
- TemplateData/webgl-logo.png +0 -0
- arcamera.js +1 -0
- index.html +317 -211
- itracker.js +1 -0
- opencv.js +0 -0
- targets/ClothAd.png +0 -0
.gitattributes
CHANGED
@@ -36,3 +36,4 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
|
36 |
Build/Build.data filter=lfs diff=lfs merge=lfs -text
|
37 |
StreamingAssets/generated_1.zpt filter=lfs diff=lfs merge=lfs -text
|
38 |
StreamingAssets/rocks.zpt filter=lfs diff=lfs merge=lfs -text
|
|
|
|
36 |
Build/Build.data filter=lfs diff=lfs merge=lfs -text
|
37 |
StreamingAssets/generated_1.zpt filter=lfs diff=lfs merge=lfs -text
|
38 |
StreamingAssets/rocks.zpt filter=lfs diff=lfs merge=lfs -text
|
39 |
+
TemplateData/favicon.ico filter=lfs diff=lfs merge=lfs -text
|
Build/Build.data
CHANGED
@@ -1,3 +1,3 @@
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
-
oid sha256:
|
3 |
-
size
|
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:173fa7ef382cf68e5f06e89248679f9ecfbb775c720ab541a49e12becb823764
|
3 |
+
size 39270616
|
Build/Build.framework.js
CHANGED
The diff for this file is too large to render.
See raw diff
|
|
Build/Build.loader.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
function createUnityInstance(t,n,d){function c(e,t){if(!c.aborted&&n.showBanner)return"error"==t&&(c.aborted=!0),n.showBanner(e,t);switch(t){case"error":console.error(e);break;case"warning":console.warn(e);break;default:console.log(e)}}function r(e){var t=e.reason||e.error,n=t?t.toString():e.message||e.reason||"",r=t&&t.stack?t.stack.toString():"";(n+="\n"+(r=r.startsWith(n)?r.substring(n.length):r).trim())&&m.stackTraceRegExp&&m.stackTraceRegExp.test(n)&&P(n,e.filename||t&&(t.fileName||t.sourceURL)||"",e.lineno||t&&(t.lineNumber||t.line)||0)}function e(e,t,n){var r=e[t];void 0!==r&&r||(console.warn('Config option "'+t+'" is missing or empty. Falling back to default value: "'+n+'". Consider updating your WebGL template to include the missing config option.'),e[t]=n)}d=d||function(){};var o,m={canvas:t,webglContextAttributes:{preserveDrawingBuffer:!1,powerPreference:2},wasmFileSize:28448129,cacheControl:function(e){return e==m.dataUrl||e.match(/\.bundle/)?"must-revalidate":"no-store"},streamingAssetsUrl:"StreamingAssets",downloadProgress:{},deinitializers:[],intervals:{},setInterval:function(e,t){e=window.setInterval(e,t);return this.intervals[e]=!0,e},clearInterval:function(e){delete this.intervals[e],window.clearInterval(e)},preRun:[],postRun:[],print:function(e){console.log(e)},printErr:function(e){console.error(e),"string"==typeof e&&-1!=e.indexOf("wasm streaming compile failed")&&(-1!=e.toLowerCase().indexOf("mime")?c('HTTP Response Header "Content-Type" configured incorrectly on the server for file '+m.codeUrl+' , should be "application/wasm". Startup time performance will suffer.',"warning"):c('WebAssembly streaming compilation failed! This can happen for example if "Content-Encoding" HTTP header is incorrectly enabled on the server for file '+m.codeUrl+", but the file is not pre-compressed on disk (or vice versa). Check the Network tab in browser Devtools to debug server header configuration.","warning"))},locateFile:function(e){return"build.wasm"==e?this.codeUrl:e},disabledCanvasEvents:["contextmenu","dragstart"]};for(o in e(n,"companyName","Unity"),e(n,"productName","WebGL Player"),e(n,"productVersion","1.0"),n)m[o]=n[o];m.streamingAssetsUrl=new URL(m.streamingAssetsUrl,document.URL).href;var a=m.disabledCanvasEvents.slice();function i(e){e.preventDefault()}a.forEach(function(e){t.addEventListener(e,i)}),window.addEventListener("error",r),window.addEventListener("unhandledrejection",r);var s="",l="";function u(e){document.webkitCurrentFullScreenElement===t?t.style.width&&(s=t.style.width,l=t.style.height,t.style.width="100%",t.style.height="100%"):s&&(t.style.width=s,t.style.height=l,l=s="")}document.addEventListener("webkitfullscreenchange",u),m.deinitializers.push(function(){for(var e in m.disableAccessToMediaDevices(),a.forEach(function(e){t.removeEventListener(e,i)}),window.removeEventListener("error",r),window.removeEventListener("unhandledrejection",r),document.removeEventListener("webkitfullscreenchange",u),m.intervals)window.clearInterval(e);m.intervals={}}),m.QuitCleanup=function(){for(var e=0;e<m.deinitializers.length;e++)m.deinitializers[e]();m.deinitializers=[],"function"==typeof m.onQuit&&m.onQuit()};var h,f,p,g,b,w,v,y,C,S={Module:m,SetFullscreen:function(){if(m.SetFullscreen)return m.SetFullscreen.apply(m,arguments);m.print("Failed to set Fullscreen mode: Player not loaded yet.")},SendMessage:function(){if(m.SendMessage)return m.SendMessage.apply(m,arguments);m.print("Failed to execute SendMessage: Player not loaded yet.")},Quit:function(){return new Promise(function(e,t){m.shouldQuit=!0,m.onQuit=e})},GetMetricsInfo:function(){var e=Number(m._getMetricsInfo())>>>0,t=4+e,n=4+t,r=8+n,o=8+r,a=4+o,i=4+a,s=8+i,d=8+s,c=4+d,l=4+c,u=4+l;return{totalWASMHeapSize:m.HEAPU32[e>>2],usedWASMHeapSize:m.HEAPU32[t>>2],totalJSHeapSize:m.HEAPF64[n>>3],usedJSHeapSize:m.HEAPF64[r>>3],pageLoadTime:m.HEAPU32[o>>2],pageLoadTimeToFrame1:m.HEAPU32[a>>2],fps:m.HEAPF64[i>>3],movingAverageFps:m.HEAPF64[s>>3],assetLoadTime:m.HEAPU32[d>>2],webAssemblyStartupTime:m.HEAPU32[c>>2]-(m.webAssemblyTimeStart||0),codeDownloadTime:m.HEAPU32[l>>2],gameStartupTime:m.HEAPU32[u>>2],numJankedFrames:m.HEAPU32[4+u>>2]}}};function P(e,t,n){-1==e.indexOf("fullscreen error")&&(m.startupErrorHandler?m.startupErrorHandler(e,t,n):m.errorHandler&&m.errorHandler(e,t,n)||(console.log("Invoking error handler due to\n"+e),"function"==typeof dump&&dump("Invoking error handler due to\n"+e),P.didShowErrorMessage||(-1!=(e="An error occurred running the Unity content on this page. See your browser JavaScript console for more info. The error was:\n"+e).indexOf("DISABLE_EXCEPTION_CATCHING")?e="An exception has occurred, but exception handling has been disabled in this build. If you are the developer of this content, enable exceptions in your project WebGL player settings to be able to catch the exception or see the stack trace.":-1!=e.indexOf("Cannot enlarge memory arrays")?e="Out of memory. If you are the developer of this content, try allocating more memory to your WebGL build in the WebGL player settings.":-1==e.indexOf("Invalid array buffer length")&&-1==e.indexOf("Invalid typed array length")&&-1==e.indexOf("out of memory")&&-1==e.indexOf("could not allocate memory")||(e="The browser could not allocate enough memory for the WebGL content. If you are the developer of this content, try allocating less memory to your WebGL build in the WebGL player settings."),alert(e),P.didShowErrorMessage=!0)))}function T(e,t){if("symbolsUrl"!=e){var n=m.downloadProgress[e],r=(n=n||(m.downloadProgress[e]={started:!1,finished:!1,lengthComputable:!1,total:0,loaded:0}),"object"!=typeof t||"progress"!=t.type&&"load"!=t.type||(n.started||(n.started=!0,n.lengthComputable=t.lengthComputable),n.total=t.total,n.loaded=t.loaded,"load"==t.type&&(n.finished=!0)),0),o=0,a=0,i=0,s=0;for(e in m.downloadProgress){if(!(n=m.downloadProgress[e]).started)return;a++,n.lengthComputable?(r+=n.loaded,o+=n.total,i++):n.finished||s++}d(.9*(a?(a-s-(o?i*(o-r)/o:0))/a:0))}}function E(){var e=this;this.isConnected=this.connect().then(function(){return e.cleanUpCache()}),this.isConnected.catch(function(e){e="Error when initializing cache: "+e,console.log("[UnityCache] "+e)})}function U(e){console.log("[UnityCache] "+e)}function k(e){return k.link=k.link||document.createElement("a"),k.link.href=e,k.link.href}m.SystemInfo=function(){var e,t,n,r,o,a=navigator.userAgent+" ",i=[["Firefox","Firefox"],["OPR","Opera"],["Edg","Edge"],["SamsungBrowser","Samsung Browser"],["Trident","Internet Explorer"],["MSIE","Internet Explorer"],["Chrome","Chrome"],["CriOS","Chrome on iOS Safari"],["FxiOS","Firefox on iOS Safari"],["Safari","Safari"]];function s(e,t,n){return(e=RegExp(e,"i").exec(t))&&e[n]}for(var d=0;d<i.length;++d)if(t=s(i[d][0]+"[/ ](.*?)[ \\)]",a,1)){e=i[d][1];break}"Safari"==e&&(t=s("Version/(.*?) ",a,1)),"Internet Explorer"==e&&(t=s("rv:(.*?)\\)? ",a,1)||t);for(var c=[["Windows (.*?)[;)]","Windows"],["Android ([0-9_.]+)","Android"],["iPhone OS ([0-9_.]+)","iPhoneOS"],["iPad.*? OS ([0-9_.]+)","iPadOS"],["FreeBSD( )","FreeBSD"],["OpenBSD( )","OpenBSD"],["Linux|X11()","Linux"],["Mac OS X ([0-9_\\.]+)","MacOS"],["bot|google|baidu|bing|msn|teoma|slurp|yandex","Search Bot"]],l=0;l<c.length;++l)if(r=s(c[l][0],a,1)){n=c[l][1],r=r.replace(/_/g,".");break}var u;function h(){try{return window.WebAssembly?WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,5,3,1,0,1,10,13,1,11,0,65,0,65,0,65,1,252,11,0,11]))?WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,11,1,9,1,1,125,32,0,252,0,26,11]))?WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,10,1,8,1,1,126,32,0,194,26,11]))?WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,9,1,7,0,65,0,253,15,26,11]))?!!WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,10,1,8,0,6,64,1,25,1,11,11]))||"wasm-exceptions":"wasm-simd128":"sign-extend":"non-trapping fp-to-int":"bulk-memory":"WebAssembly"}catch(e){return"Exception: "+e}}r={"NT 5.0":"2000","NT 5.1":"XP","NT 5.2":"Server 2003","NT 6.0":"Vista","NT 6.1":"7","NT 6.2":"8","NT 6.3":"8.1","NT 10.0":"10"}[r]||r,webgpuVersion=0,(f=document.createElement("canvas"))&&(u=(p=f.getContext("webgl2"))?2:0,p||(p=f&&f.getContext("webgl"))&&(u=1),p&&(o=p.getExtension("WEBGL_debug_renderer_info")&&p.getParameter(37446)||p.getParameter(7937)));var f="undefined"!=typeof SharedArrayBuffer,p="object"==typeof WebAssembly&&"function"==typeof WebAssembly.compile,m=p&&!0===h();return{width:screen.width,height:screen.height,userAgent:a.trim(),browser:e||"Unknown browser",browserVersion:t||"Unknown version",mobile:/Mobile|Android|iP(ad|hone)/.test(navigator.appVersion),os:n||"Unknown OS",osVersion:r||"Unknown OS Version",gpu:o||"Unknown GPU",language:navigator.userLanguage||navigator.language,hasWebGL:u,hasWebGPU:webgpuVersion,hasCursorLock:!!document.body.requestPointerLock,hasFullscreen:!!document.body.requestFullscreen||!!document.body.webkitRequestFullscreen,hasThreads:f,hasWasm:p,hasWasm2023:m,missingWasm2023Feature:m?null:h(),hasWasmThreads:!1}}(),m.abortHandler=function(e){return P(e,"",0),!0},Error.stackTraceLimit=Math.max(Error.stackTraceLimit||0,50),m.readBodyWithProgress=function(a,i,s){var e=a.body?a.body.getReader():void 0,d=void 0!==a.headers.get("Content-Length"),c=function(e,t){if(!t)return 0;var t=e.headers.get("Content-Encoding"),n=parseInt(e.headers.get("Content-Length"));switch(t){case"br":return Math.round(5*n);case"gzip":return Math.round(4*n);default:return n}}(a,d),l=new Uint8Array(c),u=[],h=0,f=0;return d||console.warn("[UnityCache] Response is served without Content-Length header. Please reconfigure server to include valid Content-Length for better download performance."),function o(){return void 0===e?a.arrayBuffer().then(function(e){var t=new Uint8Array(e);return i({type:"progress",response:a,total:e.length,loaded:0,lengthComputable:d,chunk:s?t:null}),t}):e.read().then(function(e){if(e.done){if(h===c)return l;if(h<c)return l.slice(0,h);for(var t=new Uint8Array(h),n=(t.set(l,0),f),r=0;r<u.length;++r)t.set(u[r],n),n+=u[r].length;return t}return h+e.value.length<=l.length?(l.set(e.value,h),f=h+e.value.length):u.push(e.value),h+=e.value.length,i({type:"progress",response:a,total:Math.max(c,h),loaded:h,lengthComputable:d,chunk:s?e.value:null}),o()})}().then(function(e){return i({type:"load",response:a,total:e.length,loaded:e.length,lengthComputable:d,chunk:null}),a.parsedBody=e,a})},m.fetchWithProgress=function(e,t){var n=function(){};return t&&t.onProgress&&(n=t.onProgress),fetch(e,t).then(function(e){return m.readBodyWithProgress(e,n,t.enableStreamingDownload)})},m.UnityCache=(h={name:"UnityCache",version:4},f={name:"RequestMetaDataStore",version:1},p="RequestStore",g="WebAssembly",b=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB,w=null,E.getInstance=function(){return w=w||new E},E.destroyInstance=function(){return w?w.close().then(function(){w=null}):Promise.resolve()},E.prototype.clearCache=function(){var r=this;return this.isConnected.then(function(){return r.execute(f.name,"clear",[])}).then(function(){return r.cache.keys()}).then(function e(t){var n;return 0===t.length?Promise.resolve():(n=t.pop(),r.cache.delete(n).then(function(){return e(t)}))})},E.UnityCacheDatabase=h,E.RequestMetaDataStore=f,E.MaximumCacheSize=1073741824,E.prototype.loadRequest=function(e){var t=this;return t.isConnected.then(function(){return Promise.all([t.cache.match(e),t.loadRequestMetaData(e)])}).then(function(e){if(void 0!==e[0]&&void 0!==e[1])return{response:e[0],metaData:e[1]}})},E.prototype.loadRequestMetaData=function(e){e="string"==typeof e?e:e.url;return this.execute(f.name,"get",[e])},E.prototype.updateRequestMetaData=function(e){return this.execute(f.name,"put",[e])},E.prototype.storeRequest=function(e,t){var n=this;return n.isConnected.then(function(){return n.cache.put(e,t)})},E.prototype.close=function(){return this.isConnected.then(function(){this.database&&(this.database.close(),this.database=null),this.cache&&(this.cache=null)}.bind(this))},E.prototype.connect=function(){var o=this;return void 0===b?Promise.reject(new Error("Could not connect to cache: IndexedDB is not supported.")):void 0===window.caches?Promise.reject(new Error("Could not connect to cache: Cache API is not supported.")):new Promise(function(t,n){try{function r(){o.openDBTimeout&&(clearTimeout(o.openDBTimeout),o.openDBTimeout=null)}o.openDBTimeout=setTimeout(function(){void 0===o.database&&n(new Error("Could not connect to cache: Database timeout."))},2e4);var e=b.open(h.name,h.version);e.onupgradeneeded=o.upgradeDatabase.bind(o),e.onsuccess=function(e){r(),o.database=e.target.result,t()},e.onerror=function(e){r(),o.database=null,n(new Error("Could not connect to database."))}}catch(e){r(),o.database=null,o.cache=null,n(new Error("Could not connect to cache: Could not connect to database."))}}).then(function(){var e=h.name+"_"+m.companyName+"_"+m.productName;return caches.open(e)}).then(function(e){o.cache=e})},E.prototype.upgradeDatabase=function(e){var t,e=e.target.result;e.objectStoreNames.contains(f.name)||(t=e.createObjectStore(f.name,{keyPath:"url"}),["accessedAt","updatedAt"].forEach(function(e){t.createIndex(e,e)})),e.objectStoreNames.contains(p)&&e.deleteObjectStore(p),e.objectStoreNames.contains(g)&&e.deleteObjectStore(g)},E.prototype.execute=function(a,i,s){return this.isConnected.then(function(){return new Promise(function(t,n){try{var e,r,o;null===this.database?n(new Error("indexedDB access denied")):(e=-1!=["put","delete","clear"].indexOf(i)?"readwrite":"readonly",r=this.database.transaction([a],e).objectStore(a),"openKeyCursor"==i&&(r=r.index(s[0]),s=s.slice(1)),(o=r[i].apply(r,s)).onsuccess=function(e){t(e.target.result)},o.onerror=function(e){n(e)})}catch(e){n(e)}}.bind(this))}.bind(this))},E.prototype.getMetaDataEntries=function(){var r=this,o=0,a=[];return new Promise(function(t,n){var e=r.database.transaction([f.name],"readonly").objectStore(f.name).openCursor();e.onsuccess=function(e){e=e.target.result;e?(o+=e.value.size,a.push(e.value),e.continue()):t({metaDataEntries:a,cacheSize:o})},e.onerror=function(e){n(e)}})},E.prototype.cleanUpCache=function(){var i=this;return this.getMetaDataEntries().then(function(e){for(var t=e.metaDataEntries,n=e.cacheSize,r=[],o=[],a=0;a<t.length;++a)t[a].version==m.productVersion?o.push(t[a]):(r.push(t[a]),n-=t[a].size);o.sort(function(e,t){return e.accessedAt-t.accessedAt});for(a=0;a<o.length&&!(n<E.MaximumCacheSize);++a)r.push(o[a]),n-=o[a].size;return function e(){var t;return 0===r.length?Promise.resolve():(t=r.pop(),i.cache.delete(t.url).then(function(e){if(e)return r=t.url,new Promise(function(e,t){var n=i.database.transaction([f.name],"readwrite");n.objectStore(f.name).delete(r),n.oncomplete=e,n.onerror=t});var r}).then(e))}()})},E),m.cachedFetch=(v=m.UnityCache,y=m.fetchWithProgress,C=m.readBodyWithProgress,function(o,a){var e,t,i=v.getInstance(),s=k("string"==typeof o?o:o.url),d={enabled:(e=s,(!(t=a)||!t.method||"GET"===t.method)&&((!t||-1!=["must-revalidate","immutable"].indexOf(t.control))&&!!e.match("^https?://")))};function c(n,r){return fetch(n,r).then(function(e){var t;return!d.enabled||d.revalidated?e:304===e.status?(d.revalidated=!0,i.updateRequestMetaData(d.metaData).then(function(){U("'"+d.metaData.url+"' successfully revalidated and served from the browser cache")}).catch(function(e){U("'"+d.metaData.url+"' successfully revalidated but not stored in the browser cache due to the error: "+e)}),C(d.response,r.onProgress,r.enableStreamingDownload)):200==e.status?(d.response=e,d.metaData.updatedAt=d.metaData.accessedAt,d.revalidated=!0,t=e.clone(),C(e,r.onProgress,r.enableStreamingDownload).then(function(e){return d.metaData.size=e.parsedBody.length,Promise.all([i.storeRequest(n,t),i.updateRequestMetaData(d.metaData)]).then(function(){U("'"+s+"' successfully downloaded and stored in the browser cache")}).catch(function(e){U("'"+s+"' successfully downloaded but not stored in the browser cache due to the error: "+e)}),e})):(U("'"+s+"' request failed with status: "+e.status+" "+e.statusText),C(e,r.onProgress,r.enableStreamingDownload))})}return a&&(d.control=a.control,d.companyName=a.companyName,d.productName=a.productName,d.productVersion=a.productVersion),d.revalidated=!1,d.metaData={url:s,accessedAt:Date.now(),version:d.productVersion},d.response=null,d.enabled?i.loadRequest(s).then(function(e){var n,r,t;return e?(n=e.response,r=e.metaData,d.response=n,d.metaData.size=r.size,d.metaData.updatedAt=r.updatedAt,"immutable"==d.control?(d.revalidated=!0,i.updateRequestMetaData(r).then(function(){U("'"+d.metaData.url+"' served from the browser cache without revalidation")}),C(n,a.onProgress,a.enableStreamingDownload)):(e=s,(t=window.location.href.match(/^[a-z]+:\/\/[^\/]+/))&&!e.lastIndexOf(t[0],0)||!n.headers.get("Last-Modified")&&!n.headers.get("ETag")?(e=(a=a||{}).headers||{},a.headers=e,n.headers.get("Last-Modified")?(e["If-Modified-Since"]=n.headers.get("Last-Modified"),e["Cache-Control"]="no-cache"):n.headers.get("ETag")&&(e["If-None-Match"]=n.headers.get("ETag"),e["Cache-Control"]="no-cache"),c(o,a)):fetch(s,{method:"HEAD"}).then(function(t){return d.revalidated=["Last-Modified","ETag"].every(function(e){return!n.headers.get(e)||n.headers.get(e)==t.headers.get(e)}),d.revalidated?(i.updateRequestMetaData(r).then(function(){U("'"+d.metaData.url+"' successfully revalidated and served from the browser cache")}),C(d.response,a.onProgress,a.enableStreamingDownload)):c(o,a)}))):c(o,a)}).catch(function(e){return U("Failed to load '"+d.metaData.url+"' from browser cache due to the error: "+e),y(o,a)}):y(o,a)});var A={gzip:{hasUnityMarker:function(e){var t=10,n="UnityWeb Compressed Content (gzip)";if(t>e.length||31!=e[0]||139!=e[1])return!1;var r=e[3];if(4&r){if(t+2>e.length)return!1;if((t+=2+e[t]+(e[t+1]<<8))>e.length)return!1}if(8&r){for(;t<e.length&&e[t];)t++;if(t+1>e.length)return!1;t++}return 16&r&&String.fromCharCode.apply(null,e.subarray(t,t+n.length+1))==n+"\0"}},br:{hasUnityMarker:function(e){var t="UnityWeb Compressed Content (brotli)";if(!e.length)return!1;var n=1&e[0]?14&e[0]?4:7:1,r=e[0]&(1<<n)-1,o=1+(Math.log(t.length-1)/Math.log(2)>>3);if(commentOffset=1+n+2+1+2+(o<<3)+7>>3,17==r||commentOffset>e.length)return!1;for(var a=r+(6+(o<<4)+(t.length-1<<6)<<n),i=0;i<commentOffset;i++,a>>>=8)if(e[i]!=(255&a))return!1;return String.fromCharCode.apply(null,e.subarray(commentOffset,commentOffset+t.length))==t}}};function D(){var t,e,n,s,r,o=performance.now(),p=(new Promise(function(a,e){var i=document.createElement("script");i.src=m.frameworkUrl,i.onload=function(){if("undefined"==typeof unityFramework||!unityFramework){var e,t=[["br","br"],["gz","gzip"]];for(e in t){var n,r=t[e];if(m.frameworkUrl.endsWith("."+r[0]))return n="Unable to parse "+m.frameworkUrl+"!","file:"==location.protocol?void c(n+" Loading pre-compressed (brotli or gzip) content via a file:// URL without a web server is not supported by this browser. Please use a local development web server to host compressed Unity content, or use the Unity Build and Run option.","error"):(n+=' This can happen if build compression was enabled but web server hosting the content was misconfigured to not serve the file with HTTP Response Header "Content-Encoding: '+r[1]+'" present. Check browser Console and Devtools Network tab to debug.',"br"==r[0]&&"http:"==location.protocol&&(r=-1!=["localhost","127.0.0.1"].indexOf(location.hostname)?"":"Migrate your server to use HTTPS.",n=/Firefox/.test(navigator.userAgent)?"Unable to parse "+m.frameworkUrl+'!<br>If using custom web server, verify that web server is sending .br files with HTTP Response Header "Content-Encoding: br". Brotli compression may not be supported in Firefox over HTTP connections. '+r+' See <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1670675">https://bugzilla.mozilla.org/show_bug.cgi?id=1670675</a> for more information.':"Unable to parse "+m.frameworkUrl+'!<br>If using custom web server, verify that web server is sending .br files with HTTP Response Header "Content-Encoding: br". Brotli compression may not be supported over HTTP connections. Migrate your server to use HTTPS.'),void c(n,"error"))}c("Unable to parse "+m.frameworkUrl+"! The file is corrupt, or compression was misconfigured? (check Content-Encoding HTTP Response Header on web server)","error")}var o=unityFramework;unityFramework=null,i.onload=null,a(o)},i.onerror=function(e){c("Unable to load file "+m.frameworkUrl+"! Check that the file exists on the remote server. (also check browser Console and Devtools Network tab to debug)","error")},document.body.appendChild(i),m.deinitializers.push(function(){document.body.removeChild(i)})}).then(function(e){m.webAssemblyTimeStart=performance.now(),e(m),m.codeDownloadTimeEnd=performance.now()-o}),performance.now()),a=(T(t="dataUrl"),e=m.cacheControl(m[t]),n=m.companyName&&m.productName?m.cachedFetch:m.fetchWithProgress,s=m[t],r=/file:\/\//.exec(s)?"same-origin":void 0,n(m[t],{method:"GET",companyName:m.companyName,productName:m.productName,productVersion:m.productVersion,control:e,mode:r,onProgress:function(e){T(t,e)}}).then(function(e){var t,n,r,o,a,i;return A.gzip.hasUnityMarker(e.parsedBody)&&(t=["gzip","gzip"]),(t=A.br.hasUnityMarker(e.parsedBody)?["brotli","br"]:t)&&(n=e.headers.get("Content-Type"),r=e.headers.get("Content-Encoding"),a=0<(o=e.headers.get("Content-Length"))&&e.parsedBody.length!=o,i=0<o&&e.parsedBody.length==o,r!=t[1]?c("Failed to parse binary data file "+s+' (with "Content-Type: '+n+'"), because it is still '+t[0]+'-compressed. It should have been uncompressed by the browser, but it was unable to do so since the web server provided the compressed content without specifying the HTTP Response Header "Content-Encoding: '+t[1]+'" that would have informed the browser that decompression is needed. Please verify your web server hosting configuration to add the missing "Content-Encoding: '+t[1]+'" HTTP Response Header.',"error"):c(a?"Web server configuration error: it looks like the web server has been misconfigured to double-compress the data file "+s+"! That is, it looks like the web browser has decompressed the file, but it is still in compressed form, suggesting that an already compressed file was compressed a second time. (Content-Length: "+o+", obtained length: "+e.parsedBody.length+")":i?/^((?!chrome|android).)*safari/i.test(navigator.userAgent)&&"gzip"==r&&"application/octet-stream"==n?"Unable to load content due to Apple Safari bug https://bugs.webkit.org/show_bug.cgi?id=247421 . To work around this issue, please reconfigure your web server to serve "+s+" with Content-Type: application/gzip instead of Content-Type: application/octet-stream":"Malformed binary data? Received compressed data file "+s+', with "Content-Type: '+n+'", "Content-Encoding: '+t[1]+'", "Content-Length: '+o+'", which the web browser should have decompressed, but it seemingly did not (received file size is the same as compressed file size was). Double check that the integrity of the file is intact.':"Malformed binary data URL "+s+'. No "Content-Length" HTTP Response header present. Check browser console for more information.',"error"),console.error("Malformed data? Downloaded binary data file "+s+" (ArrayBuffer size: "+e.parsedBody.length+") and browser should have decompressed it, but it might have not. Dumping raw HTTP Response Headers if it might help debug:"),e.headers.forEach(function(e,t){console.error(t+": "+e)})),e.parsedBody}).catch(function(e){var t="Failed to download file "+s;"file:"==location.protocol?c(t+". Loading web pages via a file:// URL without a web server is not supported by this browser. Please use a local development web server to host Unity content, or use the Unity Build and Run option.","error"):console.error(t)}));m.preRun.push(function(){m.addRunDependency("dataUrl"),a.then(function(t){var e=new TextDecoder("utf-8"),n=0;function r(){var e=(t[n]|t[n+1]<<8|t[n+2]<<16|t[n+3]<<24)>>>0;return n+=4,e}function o(e){if(A.gzip.hasUnityMarker(t))throw e+'. Failed to parse binary data file, because it is still gzip-compressed and should have been uncompressed by the browser. Web server has likely provided gzip-compressed data without specifying the HTTP Response Header "Content-Encoding: gzip" with it to instruct the browser to decompress it. Please verify your web server hosting configuration.';if(A.br.hasUnityMarker(t))throw e+'. Failed to parse binary data file, because it is still brotli-compressed and should have been uncompressed by the browser. Web server has likely provided brotli-compressed data without specifying the HTTP Response Header "Content-Encoding: br" with it to instruct the browser to decompress it. Please verify your web server hosting configuration.';throw e}var a="UnityWebData1.0\0",i=e.decode(t.subarray(0,a.length)),s=(i!=a&&o('Unknown data format (id="'+i+'")'),n+=a.length,r());for(n+s>t.length&&o("Invalid binary data file header! (pos="+n+", headerSize="+s+", file length="+t.length+")");n<s;){var d=r(),c=r(),l=(d+c>t.length&&o("Invalid binary data file size! (offset="+d+", size="+c+", file length="+t.length+")"),r()),u=(n+l>t.length&&o("Invalid binary data file path name! (pos="+n+", length="+l+", file length="+t.length+")"),e.decode(t.subarray(n,n+l)));n+=l;for(var h=0,f=u.indexOf("/",h)+1;0<f;h=f,f=u.indexOf("/",h)+1)m.FS_createPath(u.substring(0,h),u.substring(h,f-1),!0,!0);m.FS_createDataFile(u,null,t.subarray(d,d+c),!0,!0,!0)}m.removeRunDependency("dataUrl"),m.dataUrlLoadEndTime=performance.now()-p})})}return new Promise(function(e,t){var n;m.SystemInfo.hasWebGL?1==m.SystemInfo.hasWebGL?(n='Your browser does not support graphics API "WebGL 2" which is required for this content.',"Safari"==m.SystemInfo.browser&&parseInt(m.SystemInfo.browserVersion)<15&&(m.SystemInfo.mobile||1<navigator.maxTouchPoints?n+="\nUpgrade to iOS 15 or later.":n+="\nUpgrade to Safari 15 or later."),t(n)):m.SystemInfo.hasWasm?(m.startupErrorHandler=t,d(0),m.postRun.push(function(){d(1),m.WebPlayer.WaitForInitialization().then(function(){delete m.startupErrorHandler,e(S),m.pageStartupTime=performance.now()})}),m.SystemInfo.hasWebGPU=!1,Promise.resolve(!1).then(function(){D()})):t("Your browser does not support WebAssembly."):t("Your browser does not support WebGL.")})}
|
|
|
1 |
+
function createUnityInstance(t,n,d){function c(e,t){if(!c.aborted&&n.showBanner)return"error"==t&&(c.aborted=!0),n.showBanner(e,t);switch(t){case"error":console.error(e);break;case"warning":console.warn(e);break;default:console.log(e)}}function r(e){var t=e.reason||e.error,n=t?t.toString():e.message||e.reason||"",r=t&&t.stack?t.stack.toString():"";(n+="\n"+(r=r.startsWith(n)?r.substring(n.length):r).trim())&&m.stackTraceRegExp&&m.stackTraceRegExp.test(n)&&P(n,e.filename||t&&(t.fileName||t.sourceURL)||"",e.lineno||t&&(t.lineNumber||t.line)||0)}function e(e,t,n){var r=e[t];void 0!==r&&r||(console.warn('Config option "'+t+'" is missing or empty. Falling back to default value: "'+n+'". Consider updating your WebGL template to include the missing config option.'),e[t]=n)}d=d||function(){};var o,m={canvas:t,webglContextAttributes:{preserveDrawingBuffer:!1,powerPreference:2},wasmFileSize:26805989,cacheControl:function(e){return e==m.dataUrl||e.match(/\.bundle/)?"must-revalidate":"no-store"},streamingAssetsUrl:"StreamingAssets",downloadProgress:{},deinitializers:[],intervals:{},setInterval:function(e,t){e=window.setInterval(e,t);return this.intervals[e]=!0,e},clearInterval:function(e){delete this.intervals[e],window.clearInterval(e)},preRun:[],postRun:[],print:function(e){console.log(e)},printErr:function(e){console.error(e),"string"==typeof e&&-1!=e.indexOf("wasm streaming compile failed")&&(-1!=e.toLowerCase().indexOf("mime")?c('HTTP Response Header "Content-Type" configured incorrectly on the server for file '+m.codeUrl+' , should be "application/wasm". Startup time performance will suffer.',"warning"):c('WebAssembly streaming compilation failed! This can happen for example if "Content-Encoding" HTTP header is incorrectly enabled on the server for file '+m.codeUrl+", but the file is not pre-compressed on disk (or vice versa). Check the Network tab in browser Devtools to debug server header configuration.","warning"))},locateFile:function(e){return"build.wasm"==e?this.codeUrl:e},disabledCanvasEvents:["contextmenu","dragstart"]};for(o in e(n,"companyName","Unity"),e(n,"productName","WebGL Player"),e(n,"productVersion","1.0"),n)m[o]=n[o];m.streamingAssetsUrl=new URL(m.streamingAssetsUrl,document.URL).href;var a=m.disabledCanvasEvents.slice();function i(e){e.preventDefault()}a.forEach(function(e){t.addEventListener(e,i)}),window.addEventListener("error",r),window.addEventListener("unhandledrejection",r);var s="",l="";function u(e){document.webkitCurrentFullScreenElement===t?t.style.width&&(s=t.style.width,l=t.style.height,t.style.width="100%",t.style.height="100%"):s&&(t.style.width=s,t.style.height=l,l=s="")}document.addEventListener("webkitfullscreenchange",u),m.deinitializers.push(function(){for(var e in m.disableAccessToMediaDevices(),a.forEach(function(e){t.removeEventListener(e,i)}),window.removeEventListener("error",r),window.removeEventListener("unhandledrejection",r),document.removeEventListener("webkitfullscreenchange",u),m.intervals)window.clearInterval(e);m.intervals={}}),m.QuitCleanup=function(){for(var e=0;e<m.deinitializers.length;e++)m.deinitializers[e]();m.deinitializers=[],"function"==typeof m.onQuit&&m.onQuit()};var h,f,p,g,b,w,v,y,C,S={Module:m,SetFullscreen:function(){if(m.SetFullscreen)return m.SetFullscreen.apply(m,arguments);m.print("Failed to set Fullscreen mode: Player not loaded yet.")},SendMessage:function(){if(m.SendMessage)return m.SendMessage.apply(m,arguments);m.print("Failed to execute SendMessage: Player not loaded yet.")},Quit:function(){return new Promise(function(e,t){m.shouldQuit=!0,m.onQuit=e})},GetMetricsInfo:function(){var e=Number(m._getMetricsInfo())>>>0,t=4+e,n=4+t,r=8+n,o=8+r,a=4+o,i=4+a,s=8+i,d=8+s,c=4+d,l=4+c,u=4+l;return{totalWASMHeapSize:m.HEAPU32[e>>2],usedWASMHeapSize:m.HEAPU32[t>>2],totalJSHeapSize:m.HEAPF64[n>>3],usedJSHeapSize:m.HEAPF64[r>>3],pageLoadTime:m.HEAPU32[o>>2],pageLoadTimeToFrame1:m.HEAPU32[a>>2],fps:m.HEAPF64[i>>3],movingAverageFps:m.HEAPF64[s>>3],assetLoadTime:m.HEAPU32[d>>2],webAssemblyStartupTime:m.HEAPU32[c>>2]-(m.webAssemblyTimeStart||0),codeDownloadTime:m.HEAPU32[l>>2],gameStartupTime:m.HEAPU32[u>>2],numJankedFrames:m.HEAPU32[4+u>>2]}}};function P(e,t,n){-1==e.indexOf("fullscreen error")&&(m.startupErrorHandler?m.startupErrorHandler(e,t,n):m.errorHandler&&m.errorHandler(e,t,n)||(console.log("Invoking error handler due to\n"+e),"function"==typeof dump&&dump("Invoking error handler due to\n"+e),P.didShowErrorMessage||(-1!=(e="An error occurred running the Unity content on this page. See your browser JavaScript console for more info. The error was:\n"+e).indexOf("DISABLE_EXCEPTION_CATCHING")?e="An exception has occurred, but exception handling has been disabled in this build. If you are the developer of this content, enable exceptions in your project WebGL player settings to be able to catch the exception or see the stack trace.":-1!=e.indexOf("Cannot enlarge memory arrays")?e="Out of memory. If you are the developer of this content, try allocating more memory to your WebGL build in the WebGL player settings.":-1==e.indexOf("Invalid array buffer length")&&-1==e.indexOf("Invalid typed array length")&&-1==e.indexOf("out of memory")&&-1==e.indexOf("could not allocate memory")||(e="The browser could not allocate enough memory for the WebGL content. If you are the developer of this content, try allocating less memory to your WebGL build in the WebGL player settings."),alert(e),P.didShowErrorMessage=!0)))}function T(e,t){if("symbolsUrl"!=e){var n=m.downloadProgress[e],r=(n=n||(m.downloadProgress[e]={started:!1,finished:!1,lengthComputable:!1,total:0,loaded:0}),"object"!=typeof t||"progress"!=t.type&&"load"!=t.type||(n.started||(n.started=!0,n.lengthComputable=t.lengthComputable),n.total=t.total,n.loaded=t.loaded,"load"==t.type&&(n.finished=!0)),0),o=0,a=0,i=0,s=0;for(e in m.downloadProgress){if(!(n=m.downloadProgress[e]).started)return;a++,n.lengthComputable?(r+=n.loaded,o+=n.total,i++):n.finished||s++}d(.9*(a?(a-s-(o?i*(o-r)/o:0))/a:0))}}function E(){var e=this;this.isConnected=this.connect().then(function(){return e.cleanUpCache()}),this.isConnected.catch(function(e){e="Error when initializing cache: "+e,console.log("[UnityCache] "+e)})}function U(e){console.log("[UnityCache] "+e)}function k(e){return k.link=k.link||document.createElement("a"),k.link.href=e,k.link.href}m.SystemInfo=function(){var e,t,n,r,o,a=navigator.userAgent+" ",i=[["Firefox","Firefox"],["OPR","Opera"],["Edg","Edge"],["SamsungBrowser","Samsung Browser"],["Trident","Internet Explorer"],["MSIE","Internet Explorer"],["Chrome","Chrome"],["CriOS","Chrome on iOS Safari"],["FxiOS","Firefox on iOS Safari"],["Safari","Safari"]];function s(e,t,n){return(e=RegExp(e,"i").exec(t))&&e[n]}for(var d=0;d<i.length;++d)if(t=s(i[d][0]+"[/ ](.*?)[ \\)]",a,1)){e=i[d][1];break}"Safari"==e&&(t=s("Version/(.*?) ",a,1)),"Internet Explorer"==e&&(t=s("rv:(.*?)\\)? ",a,1)||t);for(var c=[["Windows (.*?)[;)]","Windows"],["Android ([0-9_.]+)","Android"],["iPhone OS ([0-9_.]+)","iPhoneOS"],["iPad.*? OS ([0-9_.]+)","iPadOS"],["FreeBSD( )","FreeBSD"],["OpenBSD( )","OpenBSD"],["Linux|X11()","Linux"],["Mac OS X ([0-9_\\.]+)","MacOS"],["bot|google|baidu|bing|msn|teoma|slurp|yandex","Search Bot"]],l=0;l<c.length;++l)if(r=s(c[l][0],a,1)){n=c[l][1],r=r.replace(/_/g,".");break}var u;function h(){try{return window.WebAssembly?WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,5,3,1,0,1,10,13,1,11,0,65,0,65,0,65,1,252,11,0,11]))?WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,11,1,9,1,1,125,32,0,252,0,26,11]))?WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,10,1,8,1,1,126,32,0,194,26,11]))?WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,9,1,7,0,65,0,253,15,26,11]))?!!WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,10,1,8,0,6,64,1,25,1,11,11]))||"wasm-exceptions":"wasm-simd128":"sign-extend":"non-trapping fp-to-int":"bulk-memory":"WebAssembly"}catch(e){return"Exception: "+e}}r={"NT 5.0":"2000","NT 5.1":"XP","NT 5.2":"Server 2003","NT 6.0":"Vista","NT 6.1":"7","NT 6.2":"8","NT 6.3":"8.1","NT 10.0":"10"}[r]||r,webgpuVersion=0,(f=document.createElement("canvas"))&&(u=(p=f.getContext("webgl2"))?2:0,p||(p=f&&f.getContext("webgl"))&&(u=1),p&&(o=p.getExtension("WEBGL_debug_renderer_info")&&p.getParameter(37446)||p.getParameter(7937)));var f="undefined"!=typeof SharedArrayBuffer,p="object"==typeof WebAssembly&&"function"==typeof WebAssembly.compile,m=p&&!0===h();return{width:screen.width,height:screen.height,userAgent:a.trim(),browser:e||"Unknown browser",browserVersion:t||"Unknown version",mobile:/Mobile|Android|iP(ad|hone)/.test(navigator.appVersion),os:n||"Unknown OS",osVersion:r||"Unknown OS Version",gpu:o||"Unknown GPU",language:navigator.userLanguage||navigator.language,hasWebGL:u,hasWebGPU:webgpuVersion,hasCursorLock:!!document.body.requestPointerLock,hasFullscreen:!!document.body.requestFullscreen||!!document.body.webkitRequestFullscreen,hasThreads:f,hasWasm:p,hasWasm2023:m,missingWasm2023Feature:m?null:h(),hasWasmThreads:!1}}(),m.abortHandler=function(e){return P(e,"",0),!0},Error.stackTraceLimit=Math.max(Error.stackTraceLimit||0,50),m.readBodyWithProgress=function(a,i,s){var e=a.body?a.body.getReader():void 0,d=void 0!==a.headers.get("Content-Length"),c=function(e,t){if(!t)return 0;var t=e.headers.get("Content-Encoding"),n=parseInt(e.headers.get("Content-Length"));switch(t){case"br":return Math.round(5*n);case"gzip":return Math.round(4*n);default:return n}}(a,d),l=new Uint8Array(c),u=[],h=0,f=0;return d||console.warn("[UnityCache] Response is served without Content-Length header. Please reconfigure server to include valid Content-Length for better download performance."),function o(){return void 0===e?a.arrayBuffer().then(function(e){var t=new Uint8Array(e);return i({type:"progress",response:a,total:e.length,loaded:0,lengthComputable:d,chunk:s?t:null}),t}):e.read().then(function(e){if(e.done){if(h===c)return l;if(h<c)return l.slice(0,h);for(var t=new Uint8Array(h),n=(t.set(l,0),f),r=0;r<u.length;++r)t.set(u[r],n),n+=u[r].length;return t}return h+e.value.length<=l.length?(l.set(e.value,h),f=h+e.value.length):u.push(e.value),h+=e.value.length,i({type:"progress",response:a,total:Math.max(c,h),loaded:h,lengthComputable:d,chunk:s?e.value:null}),o()})}().then(function(e){return i({type:"load",response:a,total:e.length,loaded:e.length,lengthComputable:d,chunk:null}),a.parsedBody=e,a})},m.fetchWithProgress=function(e,t){var n=function(){};return t&&t.onProgress&&(n=t.onProgress),fetch(e,t).then(function(e){return m.readBodyWithProgress(e,n,t.enableStreamingDownload)})},m.UnityCache=(h={name:"UnityCache",version:4},f={name:"RequestMetaDataStore",version:1},p="RequestStore",g="WebAssembly",b=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB,w=null,E.getInstance=function(){return w=w||new E},E.destroyInstance=function(){return w?w.close().then(function(){w=null}):Promise.resolve()},E.prototype.clearCache=function(){var r=this;return this.isConnected.then(function(){return r.execute(f.name,"clear",[])}).then(function(){return r.cache.keys()}).then(function e(t){var n;return 0===t.length?Promise.resolve():(n=t.pop(),r.cache.delete(n).then(function(){return e(t)}))})},E.UnityCacheDatabase=h,E.RequestMetaDataStore=f,E.MaximumCacheSize=1073741824,E.prototype.loadRequest=function(e){var t=this;return t.isConnected.then(function(){return Promise.all([t.cache.match(e),t.loadRequestMetaData(e)])}).then(function(e){if(void 0!==e[0]&&void 0!==e[1])return{response:e[0],metaData:e[1]}})},E.prototype.loadRequestMetaData=function(e){e="string"==typeof e?e:e.url;return this.execute(f.name,"get",[e])},E.prototype.updateRequestMetaData=function(e){return this.execute(f.name,"put",[e])},E.prototype.storeRequest=function(e,t){var n=this;return n.isConnected.then(function(){return n.cache.put(e,t)})},E.prototype.close=function(){return this.isConnected.then(function(){this.database&&(this.database.close(),this.database=null),this.cache&&(this.cache=null)}.bind(this))},E.prototype.connect=function(){var o=this;return void 0===b?Promise.reject(new Error("Could not connect to cache: IndexedDB is not supported.")):void 0===window.caches?Promise.reject(new Error("Could not connect to cache: Cache API is not supported.")):new Promise(function(t,n){try{function r(){o.openDBTimeout&&(clearTimeout(o.openDBTimeout),o.openDBTimeout=null)}o.openDBTimeout=setTimeout(function(){void 0===o.database&&n(new Error("Could not connect to cache: Database timeout."))},2e4);var e=b.open(h.name,h.version);e.onupgradeneeded=o.upgradeDatabase.bind(o),e.onsuccess=function(e){r(),o.database=e.target.result,t()},e.onerror=function(e){r(),o.database=null,n(new Error("Could not connect to database."))}}catch(e){r(),o.database=null,o.cache=null,n(new Error("Could not connect to cache: Could not connect to database."))}}).then(function(){var e=h.name+"_"+m.companyName+"_"+m.productName;return caches.open(e)}).then(function(e){o.cache=e})},E.prototype.upgradeDatabase=function(e){var t,e=e.target.result;e.objectStoreNames.contains(f.name)||(t=e.createObjectStore(f.name,{keyPath:"url"}),["accessedAt","updatedAt"].forEach(function(e){t.createIndex(e,e)})),e.objectStoreNames.contains(p)&&e.deleteObjectStore(p),e.objectStoreNames.contains(g)&&e.deleteObjectStore(g)},E.prototype.execute=function(a,i,s){return this.isConnected.then(function(){return new Promise(function(t,n){try{var e,r,o;null===this.database?n(new Error("indexedDB access denied")):(e=-1!=["put","delete","clear"].indexOf(i)?"readwrite":"readonly",r=this.database.transaction([a],e).objectStore(a),"openKeyCursor"==i&&(r=r.index(s[0]),s=s.slice(1)),(o=r[i].apply(r,s)).onsuccess=function(e){t(e.target.result)},o.onerror=function(e){n(e)})}catch(e){n(e)}}.bind(this))}.bind(this))},E.prototype.getMetaDataEntries=function(){var r=this,o=0,a=[];return new Promise(function(t,n){var e=r.database.transaction([f.name],"readonly").objectStore(f.name).openCursor();e.onsuccess=function(e){e=e.target.result;e?(o+=e.value.size,a.push(e.value),e.continue()):t({metaDataEntries:a,cacheSize:o})},e.onerror=function(e){n(e)}})},E.prototype.cleanUpCache=function(){var i=this;return this.getMetaDataEntries().then(function(e){for(var t=e.metaDataEntries,n=e.cacheSize,r=[],o=[],a=0;a<t.length;++a)t[a].version==m.productVersion?o.push(t[a]):(r.push(t[a]),n-=t[a].size);o.sort(function(e,t){return e.accessedAt-t.accessedAt});for(a=0;a<o.length&&!(n<E.MaximumCacheSize);++a)r.push(o[a]),n-=o[a].size;return function e(){var t;return 0===r.length?Promise.resolve():(t=r.pop(),i.cache.delete(t.url).then(function(e){if(e)return r=t.url,new Promise(function(e,t){var n=i.database.transaction([f.name],"readwrite");n.objectStore(f.name).delete(r),n.oncomplete=e,n.onerror=t});var r}).then(e))}()})},E),m.cachedFetch=(v=m.UnityCache,y=m.fetchWithProgress,C=m.readBodyWithProgress,function(o,a){var e,t,i=v.getInstance(),s=k("string"==typeof o?o:o.url),d={enabled:(e=s,(!(t=a)||!t.method||"GET"===t.method)&&((!t||-1!=["must-revalidate","immutable"].indexOf(t.control))&&!!e.match("^https?://")))};function c(n,r){return fetch(n,r).then(function(e){var t;return!d.enabled||d.revalidated?e:304===e.status?(d.revalidated=!0,i.updateRequestMetaData(d.metaData).then(function(){U("'"+d.metaData.url+"' successfully revalidated and served from the browser cache")}).catch(function(e){U("'"+d.metaData.url+"' successfully revalidated but not stored in the browser cache due to the error: "+e)}),C(d.response,r.onProgress,r.enableStreamingDownload)):200==e.status?(d.response=e,d.metaData.updatedAt=d.metaData.accessedAt,d.revalidated=!0,t=e.clone(),C(e,r.onProgress,r.enableStreamingDownload).then(function(e){return d.metaData.size=e.parsedBody.length,Promise.all([i.storeRequest(n,t),i.updateRequestMetaData(d.metaData)]).then(function(){U("'"+s+"' successfully downloaded and stored in the browser cache")}).catch(function(e){U("'"+s+"' successfully downloaded but not stored in the browser cache due to the error: "+e)}),e})):(U("'"+s+"' request failed with status: "+e.status+" "+e.statusText),C(e,r.onProgress,r.enableStreamingDownload))})}return a&&(d.control=a.control,d.companyName=a.companyName,d.productName=a.productName,d.productVersion=a.productVersion),d.revalidated=!1,d.metaData={url:s,accessedAt:Date.now(),version:d.productVersion},d.response=null,d.enabled?i.loadRequest(s).then(function(e){var n,r,t;return e?(n=e.response,r=e.metaData,d.response=n,d.metaData.size=r.size,d.metaData.updatedAt=r.updatedAt,"immutable"==d.control?(d.revalidated=!0,i.updateRequestMetaData(r).then(function(){U("'"+d.metaData.url+"' served from the browser cache without revalidation")}),C(n,a.onProgress,a.enableStreamingDownload)):(e=s,(t=window.location.href.match(/^[a-z]+:\/\/[^\/]+/))&&!e.lastIndexOf(t[0],0)||!n.headers.get("Last-Modified")&&!n.headers.get("ETag")?(e=(a=a||{}).headers||{},a.headers=e,n.headers.get("Last-Modified")?(e["If-Modified-Since"]=n.headers.get("Last-Modified"),e["Cache-Control"]="no-cache"):n.headers.get("ETag")&&(e["If-None-Match"]=n.headers.get("ETag"),e["Cache-Control"]="no-cache"),c(o,a)):fetch(s,{method:"HEAD"}).then(function(t){return d.revalidated=["Last-Modified","ETag"].every(function(e){return!n.headers.get(e)||n.headers.get(e)==t.headers.get(e)}),d.revalidated?(i.updateRequestMetaData(r).then(function(){U("'"+d.metaData.url+"' successfully revalidated and served from the browser cache")}),C(d.response,a.onProgress,a.enableStreamingDownload)):c(o,a)}))):c(o,a)}).catch(function(e){return U("Failed to load '"+d.metaData.url+"' from browser cache due to the error: "+e),y(o,a)}):y(o,a)});var A={gzip:{hasUnityMarker:function(e){var t=10,n="UnityWeb Compressed Content (gzip)";if(t>e.length||31!=e[0]||139!=e[1])return!1;var r=e[3];if(4&r){if(t+2>e.length)return!1;if((t+=2+e[t]+(e[t+1]<<8))>e.length)return!1}if(8&r){for(;t<e.length&&e[t];)t++;if(t+1>e.length)return!1;t++}return 16&r&&String.fromCharCode.apply(null,e.subarray(t,t+n.length+1))==n+"\0"}},br:{hasUnityMarker:function(e){var t="UnityWeb Compressed Content (brotli)";if(!e.length)return!1;var n=1&e[0]?14&e[0]?4:7:1,r=e[0]&(1<<n)-1,o=1+(Math.log(t.length-1)/Math.log(2)>>3);if(commentOffset=1+n+2+1+2+(o<<3)+7>>3,17==r||commentOffset>e.length)return!1;for(var a=r+(6+(o<<4)+(t.length-1<<6)<<n),i=0;i<commentOffset;i++,a>>>=8)if(e[i]!=(255&a))return!1;return String.fromCharCode.apply(null,e.subarray(commentOffset,commentOffset+t.length))==t}}};function D(){var t,e,n,s,r,o=performance.now(),p=(new Promise(function(a,e){var i=document.createElement("script");i.src=m.frameworkUrl,i.onload=function(){if("undefined"==typeof unityFramework||!unityFramework){var e,t=[["br","br"],["gz","gzip"]];for(e in t){var n,r=t[e];if(m.frameworkUrl.endsWith("."+r[0]))return n="Unable to parse "+m.frameworkUrl+"!","file:"==location.protocol?void c(n+" Loading pre-compressed (brotli or gzip) content via a file:// URL without a web server is not supported by this browser. Please use a local development web server to host compressed Unity content, or use the Unity Build and Run option.","error"):(n+=' This can happen if build compression was enabled but web server hosting the content was misconfigured to not serve the file with HTTP Response Header "Content-Encoding: '+r[1]+'" present. Check browser Console and Devtools Network tab to debug.',"br"==r[0]&&"http:"==location.protocol&&(r=-1!=["localhost","127.0.0.1"].indexOf(location.hostname)?"":"Migrate your server to use HTTPS.",n=/Firefox/.test(navigator.userAgent)?"Unable to parse "+m.frameworkUrl+'!<br>If using custom web server, verify that web server is sending .br files with HTTP Response Header "Content-Encoding: br". Brotli compression may not be supported in Firefox over HTTP connections. '+r+' See <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1670675">https://bugzilla.mozilla.org/show_bug.cgi?id=1670675</a> for more information.':"Unable to parse "+m.frameworkUrl+'!<br>If using custom web server, verify that web server is sending .br files with HTTP Response Header "Content-Encoding: br". Brotli compression may not be supported over HTTP connections. Migrate your server to use HTTPS.'),void c(n,"error"))}c("Unable to parse "+m.frameworkUrl+"! The file is corrupt, or compression was misconfigured? (check Content-Encoding HTTP Response Header on web server)","error")}var o=unityFramework;unityFramework=null,i.onload=null,a(o)},i.onerror=function(e){c("Unable to load file "+m.frameworkUrl+"! Check that the file exists on the remote server. (also check browser Console and Devtools Network tab to debug)","error")},document.body.appendChild(i),m.deinitializers.push(function(){document.body.removeChild(i)})}).then(function(e){m.webAssemblyTimeStart=performance.now(),e(m),m.codeDownloadTimeEnd=performance.now()-o}),performance.now()),a=(T(t="dataUrl"),e=m.cacheControl(m[t]),n=m.companyName&&m.productName?m.cachedFetch:m.fetchWithProgress,s=m[t],r=/file:\/\//.exec(s)?"same-origin":void 0,n(m[t],{method:"GET",companyName:m.companyName,productName:m.productName,productVersion:m.productVersion,control:e,mode:r,onProgress:function(e){T(t,e)}}).then(function(e){var t,n,r,o,a,i;return A.gzip.hasUnityMarker(e.parsedBody)&&(t=["gzip","gzip"]),(t=A.br.hasUnityMarker(e.parsedBody)?["brotli","br"]:t)&&(n=e.headers.get("Content-Type"),r=e.headers.get("Content-Encoding"),a=0<(o=e.headers.get("Content-Length"))&&e.parsedBody.length!=o,i=0<o&&e.parsedBody.length==o,r!=t[1]?c("Failed to parse binary data file "+s+' (with "Content-Type: '+n+'"), because it is still '+t[0]+'-compressed. It should have been uncompressed by the browser, but it was unable to do so since the web server provided the compressed content without specifying the HTTP Response Header "Content-Encoding: '+t[1]+'" that would have informed the browser that decompression is needed. Please verify your web server hosting configuration to add the missing "Content-Encoding: '+t[1]+'" HTTP Response Header.',"error"):c(a?"Web server configuration error: it looks like the web server has been misconfigured to double-compress the data file "+s+"! That is, it looks like the web browser has decompressed the file, but it is still in compressed form, suggesting that an already compressed file was compressed a second time. (Content-Length: "+o+", obtained length: "+e.parsedBody.length+")":i?/^((?!chrome|android).)*safari/i.test(navigator.userAgent)&&"gzip"==r&&"application/octet-stream"==n?"Unable to load content due to Apple Safari bug https://bugs.webkit.org/show_bug.cgi?id=247421 . To work around this issue, please reconfigure your web server to serve "+s+" with Content-Type: application/gzip instead of Content-Type: application/octet-stream":"Malformed binary data? Received compressed data file "+s+', with "Content-Type: '+n+'", "Content-Encoding: '+t[1]+'", "Content-Length: '+o+'", which the web browser should have decompressed, but it seemingly did not (received file size is the same as compressed file size was). Double check that the integrity of the file is intact.':"Malformed binary data URL "+s+'. No "Content-Length" HTTP Response header present. Check browser console for more information.',"error"),console.error("Malformed data? Downloaded binary data file "+s+" (ArrayBuffer size: "+e.parsedBody.length+") and browser should have decompressed it, but it might have not. Dumping raw HTTP Response Headers if it might help debug:"),e.headers.forEach(function(e,t){console.error(t+": "+e)})),e.parsedBody}).catch(function(e){var t="Failed to download file "+s;"file:"==location.protocol?c(t+". Loading web pages via a file:// URL without a web server is not supported by this browser. Please use a local development web server to host Unity content, or use the Unity Build and Run option.","error"):console.error(t)}));m.preRun.push(function(){m.addRunDependency("dataUrl"),a.then(function(t){var e=new TextDecoder("utf-8"),n=0;function r(){var e=(t[n]|t[n+1]<<8|t[n+2]<<16|t[n+3]<<24)>>>0;return n+=4,e}function o(e){if(A.gzip.hasUnityMarker(t))throw e+'. Failed to parse binary data file, because it is still gzip-compressed and should have been uncompressed by the browser. Web server has likely provided gzip-compressed data without specifying the HTTP Response Header "Content-Encoding: gzip" with it to instruct the browser to decompress it. Please verify your web server hosting configuration.';if(A.br.hasUnityMarker(t))throw e+'. Failed to parse binary data file, because it is still brotli-compressed and should have been uncompressed by the browser. Web server has likely provided brotli-compressed data without specifying the HTTP Response Header "Content-Encoding: br" with it to instruct the browser to decompress it. Please verify your web server hosting configuration.';throw e}var a="UnityWebData1.0\0",i=e.decode(t.subarray(0,a.length)),s=(i!=a&&o('Unknown data format (id="'+i+'")'),n+=a.length,r());for(n+s>t.length&&o("Invalid binary data file header! (pos="+n+", headerSize="+s+", file length="+t.length+")");n<s;){var d=r(),c=r(),l=(d+c>t.length&&o("Invalid binary data file size! (offset="+d+", size="+c+", file length="+t.length+")"),r()),u=(n+l>t.length&&o("Invalid binary data file path name! (pos="+n+", length="+l+", file length="+t.length+")"),e.decode(t.subarray(n,n+l)));n+=l;for(var h=0,f=u.indexOf("/",h)+1;0<f;h=f,f=u.indexOf("/",h)+1)m.FS_createPath(u.substring(0,h),u.substring(h,f-1),!0,!0);m.FS_createDataFile(u,null,t.subarray(d,d+c),!0,!0,!0)}m.removeRunDependency("dataUrl"),m.dataUrlLoadEndTime=performance.now()-p})})}return new Promise(function(e,t){var n;m.SystemInfo.hasWebGL?1==m.SystemInfo.hasWebGL?(n='Your browser does not support graphics API "WebGL 2" which is required for this content.',"Safari"==m.SystemInfo.browser&&parseInt(m.SystemInfo.browserVersion)<15&&(m.SystemInfo.mobile||1<navigator.maxTouchPoints?n+="\nUpgrade to iOS 15 or later.":n+="\nUpgrade to Safari 15 or later."),t(n)):m.SystemInfo.hasWasm?(m.startupErrorHandler=t,d(0),m.postRun.push(function(){d(1),m.WebPlayer.WaitForInitialization().then(function(){delete m.startupErrorHandler,e(S),m.pageStartupTime=performance.now()})}),m.SystemInfo.hasWebGPU=!1,Promise.resolve(!1).then(function(){D()})):t("Your browser does not support WebAssembly."):t("Your browser does not support WebGL.")})}
|
Build/Build.wasm
CHANGED
@@ -1,3 +1,3 @@
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
-
oid sha256:
|
3 |
-
size
|
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:e5a8ceae6ff7b75fd5ad788672e6aa3245d42632a3285ed394acb534131fd6c3
|
3 |
+
size 26805989
|
TemplateData/favicon.ico
ADDED
|
Git LFS Details
|
TemplateData/fullscreen-button.png
ADDED
![]() |
TemplateData/progress-bar-empty-dark.png
ADDED
![]() |
TemplateData/progress-bar-empty-light.png
ADDED
![]() |
TemplateData/progress-bar-full-dark.png
ADDED
![]() |
TemplateData/progress-bar-full-light.png
ADDED
![]() |
TemplateData/style.css
ADDED
@@ -0,0 +1,56 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
body { padding: 0; margin: 0 }
|
2 |
+
#unity-container { position: absolute }
|
3 |
+
#unity-container.unity-desktop { left: 50%; top: 50%; transform: translate(-50%, -50%) }
|
4 |
+
#unity-container.unity-mobile { width: 100%; height: 100% }
|
5 |
+
#unity-canvas { background: #1a1a1a } /* Match the dark background */
|
6 |
+
.unity-mobile #unity-canvas { width: 100%; height: 100% }
|
7 |
+
#unity-loading-bar {
|
8 |
+
position: absolute;
|
9 |
+
left: 50%;
|
10 |
+
top: 50%;
|
11 |
+
transform: translate(-50%, -50%);
|
12 |
+
display: none;
|
13 |
+
align-items: center;
|
14 |
+
flex-direction: column;
|
15 |
+
gap: 20px;
|
16 |
+
}
|
17 |
+
|
18 |
+
#unity-logo {
|
19 |
+
width: 64px;
|
20 |
+
height: 64px;
|
21 |
+
position: relative;
|
22 |
+
background-image:
|
23 |
+
linear-gradient(#ffffff 16px, transparent 0),
|
24 |
+
linear-gradient(#ffffff 16px, transparent 0),
|
25 |
+
linear-gradient(#ffffff 16px, transparent 0),
|
26 |
+
linear-gradient(#ffffff 16px, transparent 0);
|
27 |
+
background-repeat: no-repeat;
|
28 |
+
background-size: 16px 16px;
|
29 |
+
background-position: left top, left bottom, right top, right bottom;
|
30 |
+
animation: rotate 1s linear infinite;
|
31 |
+
}
|
32 |
+
|
33 |
+
@keyframes rotate {
|
34 |
+
0% {
|
35 |
+
width: 64px;
|
36 |
+
height: 64px;
|
37 |
+
transform: rotate(0deg);
|
38 |
+
}
|
39 |
+
50% {
|
40 |
+
width: 30px;
|
41 |
+
height: 30px;
|
42 |
+
transform: rotate(180deg);
|
43 |
+
}
|
44 |
+
100% {
|
45 |
+
width: 64px;
|
46 |
+
height: 64px;
|
47 |
+
transform: rotate(360deg);
|
48 |
+
}
|
49 |
+
}
|
50 |
+
|
51 |
+
#unity-footer { position: relative }
|
52 |
+
.unity-mobile #unity-footer { display: none }
|
53 |
+
#unity-webgl-logo { float:left; width: 204px; height: 38px; background: url('webgl-logo.png') no-repeat center }
|
54 |
+
#unity-build-title { float: right; margin-right: 10px; line-height: 38px; font-family: arial; font-size: 18px; color: #ffffff; }
|
55 |
+
#unity-fullscreen-button { float: right; width: 38px; height: 38px; background: url('fullscreen-button.png') no-repeat center }
|
56 |
+
#unity-warning { position: absolute; left: 50%; top: 5%; transform: translate(-50%); background: #1a1a1a; padding: 10px; display: none; color: #ffffff; }
|
TemplateData/unity-logo-dark.png
ADDED
![]() |
TemplateData/unity-logo-light.png
ADDED
![]() |
TemplateData/webgl-logo.png
ADDED
![]() |
arcamera.js
ADDED
@@ -0,0 +1 @@
|
|
|
|
|
1 |
+
var a0_0x12aa0e=a0_0x1e84;(function(_0x4f33a8,_0x2e73c9){var _0x1a2048=a0_0x1e84,_0x1bdb1e=_0x4f33a8();while(!![]){try{var _0x1b6c8d=parseInt(_0x1a2048(0x16c))/0x1*(-parseInt(_0x1a2048(0x13d))/0x2)+parseInt(_0x1a2048(0x112))/0x3+-parseInt(_0x1a2048(0x15b))/0x4*(-parseInt(_0x1a2048(0x184))/0x5)+parseInt(_0x1a2048(0x113))/0x6+-parseInt(_0x1a2048(0x11d))/0x7*(-parseInt(_0x1a2048(0x174))/0x8)+parseInt(_0x1a2048(0x151))/0x9*(-parseInt(_0x1a2048(0x176))/0xa)+parseInt(_0x1a2048(0x148))/0xb*(-parseInt(_0x1a2048(0x143))/0xc);if(_0x1b6c8d===_0x2e73c9)break;else _0x1bdb1e['push'](_0x1bdb1e['shift']());}catch(_0x427f98){_0x1bdb1e['push'](_0x1bdb1e['shift']());}}}(a0_0x3d22,0x64fbd));var a0_0x2a8d5f=(function(){var _0x84daae=!![];return function(_0x174b26,_0x54e042){var _0x51b15a=a0_0x1e84;if(_0x51b15a(0x189)==='hqgrU'){var _0x3481b8=_0x84daae?function(){var _0x285f63=_0x51b15a;if(_0x54e042){var _0x293890=_0x54e042[_0x285f63(0x142)](_0x174b26,arguments);return _0x54e042=null,_0x293890;}}:function(){};return _0x84daae=![],_0x3481b8;}else{;this['maxFrameSize']=_0x103d2c;var _0x2b9c67=this[_0x51b15a(0x11c)],_0x55f939=this[_0x51b15a(0x180)];if(!_0x55f939||_0x55f939[_0x51b15a(0x115)]<=0x0||_0x55f939[_0x51b15a(0x132)]<=0x0)return;const _0x2535da=_0x459a88[_0x51b15a(0x120)](this[_0x51b15a(0x12f)]/_0x55f939[_0x51b15a(0x115)],this['maxFrameSize']/_0x55f939[_0x51b15a(0x132)]);;_0x2b9c67[_0x51b15a(0x17c)]=_0x2535da*_0x55f939[_0x51b15a(0x115)],_0x2b9c67[_0x51b15a(0x173)]=_0x2535da*_0x55f939[_0x51b15a(0x132)];;}};}()),a0_0x3b0468=a0_0x2a8d5f(this,function(){var _0x14359d=a0_0x1e84;return a0_0x3b0468['toString']()[_0x14359d(0x14b)](_0x14359d(0x140))[_0x14359d(0x159)]()[_0x14359d(0x15c)](a0_0x3b0468)[_0x14359d(0x14b)](_0x14359d(0x140));});a0_0x3b0468();function a0_0x3d22(){var _0x296692=['1073391ZOVXws','1555014QnJnBE','setFrameSize','videoWidth','absolute','setCamDims','lastUpdateTime','pause','addEventListener','transform','videoCapture','392ZMisCg','unityCanvas\x20is\x20null.\x20Please\x20call\x20new\x20ARCamera(unityCanvas,\x20videoCapture)\x20properly\x20before\x20starting\x20the\x20Webcam','updateUnityVideoTextureCallback','min','max','videoCapture\x20canvas\x20is\x20null.\x20Please\x20call\x20new\x20ARCamera(unityCanvas,\x20videoCapture)\x20properly\x20before\x20starting\x20the\x20Webcam','HvKkQ','none','stopWebcam','startWebcam','200%','innerHeight','opacity','unityCanvas','swpVV','parentElement','video_ctx','setARCameraSettings','maxFrameSize','now','getBoundingClientRect','videoHeight','onStartResize','false','getContext','parse','invoking\x20finished_resize\x20Callbacks\x20-\x20','UNITY_VIDEOPLANE','onFinishedResize','setFlipped','ARCamera','lastOrientation','34hqKmOE','play','100%','(((.+)+)+)+$','matchMedia','apply','7476MToOpv','SetFlippedMessage','matches','(orientation:\x20portrait)','createElement','12562GRodVi','clearRect','position','search','log','SUBSCRIBED_TRACKERS','cameraPaused','true','resizeCanvas','41589FwBCoM','srcObject','forEach','PORTRAIT','innerWidth','lastDetectTime','atan','LANDSCAPE','toString','oFPxI','4JOxAhY','constructor','usingUnityVideoPlane','target','RESIZE_DELAY','QoqdP','onFinishedResizeCallbacks','pauseCamera','resizeWithDelay','FRAMERATE','MCKtL','appendChild','resize','style','display','SendMessage','push','16463HZoLvb','update','capture_ctx','SetOrientationMessage','fadeId','length','-100','height','30856Cymlqo','unityInstance','430AXtxkC','resolve','body','kqCke','setTransform','drawImage','width','FOV','FEzds','Jovdf','VIDEO','arCamera','includes','OEVaj','3853555YXpXkL','setFramerate','scaleX(-1)','getTracks','onStartResizeCallbacks','hqgrU','isCameraStarted','zIndex','videoCanvas'];a0_0x3d22=function(){return _0x296692;};return a0_0x3d22();}class ARCamera{#p000;[a0_0x12aa0e(0x14d)];constructor(_0x422c5f,_0x50ffe3){var _0x58fbbc=a0_0x12aa0e;this[_0x58fbbc(0x12a)]=_0x422c5f,this[_0x58fbbc(0x18c)]=_0x50ffe3,this['video_ctx']=this[_0x58fbbc(0x18c)][_0x58fbbc(0x135)]('2d'),this[_0x58fbbc(0x138)]=![],this['RESIZE_DELAY']=0x32,this[_0x58fbbc(0x164)]=0x1e,this['SUBSCRIBED_TRACKERS']=[],this[_0x58fbbc(0x12f)]=0x12c,this[_0x58fbbc(0x11c)]=document[_0x58fbbc(0x147)]('canvas'),this[_0x58fbbc(0x11c)]['id']='videoCapture',document[_0x58fbbc(0x178)][_0x58fbbc(0x166)](this['videoCapture']),this[_0x58fbbc(0x16e)]=this[_0x58fbbc(0x11c)][_0x58fbbc(0x135)]('2d'),this[_0x58fbbc(0x11c)][_0x58fbbc(0x168)][_0x58fbbc(0x14a)]=_0x58fbbc(0x116),this[_0x58fbbc(0x11c)][_0x58fbbc(0x168)]['top']=_0x58fbbc(0x127),this[_0x58fbbc(0x11c)][_0x58fbbc(0x168)][_0x58fbbc(0x18b)]=_0x58fbbc(0x172),this[_0x58fbbc(0x114)](this[_0x58fbbc(0x12f)]),this[_0x58fbbc(0x15d)]=![],this[_0x58fbbc(0x188)]=[],this[_0x58fbbc(0x161)]=[],this['lastOrientation']=window['matchMedia'](_0x58fbbc(0x146))[_0x58fbbc(0x145)]?_0x58fbbc(0x154):_0x58fbbc(0x158),window['addEventListener']('resize',this[_0x58fbbc(0x163)],!![]);;}[a0_0x12aa0e(0x13a)](_0x4d7bea){var _0x24b042=a0_0x12aa0e;this[_0x24b042(0x18c)][_0x24b042(0x168)][_0x24b042(0x11b)]=_0x4d7bea?_0x24b042(0x186):'',window['unityInstance'][_0x24b042(0x16a)](_0x24b042(0x13b),_0x24b042(0x144),_0x4d7bea?_0x24b042(0x14f):_0x24b042(0x134));}[a0_0x12aa0e(0x162)](){var _0x25dba0=a0_0x12aa0e;this[_0x25dba0(0x14e)]=!![],this[_0x25dba0(0x180)][_0x25dba0(0x119)]();}['unpauseCamera'](){var _0x342486=a0_0x12aa0e;this[_0x342486(0x14e)]=![],this[_0x342486(0x180)][_0x342486(0x13e)]();}[a0_0x12aa0e(0x12e)](_0x5e945d){var _0x4a8f58=a0_0x12aa0e;;var _0xbef9ee=JSON[_0x4a8f58(0x136)](_0x5e945d);Object['keys'](_0xbef9ee)['forEach'](_0x36430a=>{var _0x3269b4=_0x4a8f58;if(_0x36430a in this&&this[_0x36430a]!=_0xbef9ee[_0x36430a]){if(_0x3269b4(0x17f)!=='MspJp'){this[_0x36430a]=_0xbef9ee[_0x36430a];;}else this[_0x3269b4(0x18c)]['style'][_0x3269b4(0x11b)]=_0x3e7c28?_0x3269b4(0x186):'',_0x564b4e['unityInstance']['SendMessage'](_0x3269b4(0x13b),_0x3269b4(0x144),_0x3a883c?_0x3269b4(0x14f):'false');}});}async[a0_0x12aa0e(0x126)](_0x40fc24){var _0xb9c871=a0_0x12aa0e;;this['VIDEO']=_0x40fc24;try{if(_0xb9c871(0x123)!==_0xb9c871(0x123))_0x4213d9[_0xb9c871(0x11f)]();else{await _0x40fc24[_0xb9c871(0x13e)]();;if(!this[_0xb9c871(0x11c)]){var _0x4ba133=_0xb9c871(0x122);return Promise['reject'](_0x4ba133);}else{if(!this['unityCanvas']){var _0x4ba133=_0xb9c871(0x11e);return Promise['reject'](_0x4ba133);}}return this['resizeCanvas'](),this[_0xb9c871(0x118)]=Date['now'](),this[_0xb9c871(0x156)]=Date[_0xb9c871(0x130)](),this['lastMatchTrackTime']=Date[_0xb9c871(0x130)](),this.#p000=setInterval(this.#f000,0x1/this['FRAMERATE']*0x3e8),this[_0xb9c871(0x18a)]=!![],Promise[_0xb9c871(0x177)]();}}catch(_0x49714d){return Promise['reject'](_0x49714d);}}[a0_0x12aa0e(0x125)](){var _0x3d234a=a0_0x12aa0e;const _0x5d78cb=this[_0x3d234a(0x180)][_0x3d234a(0x152)][_0x3d234a(0x187)]();_0x5d78cb[_0x3d234a(0x153)](_0x3744a2=>_0x3744a2['stop']()),this[_0x3d234a(0x180)][_0x3d234a(0x152)]=null,clearInterval(this.#p000);}#f000(){var _0x4bdcf7=a0_0x12aa0e;if(arCamera['cameraPaused']){;return;}if(!arCamera[_0x4bdcf7(0x180)]){;return;}var _0x318935=arCamera[_0x4bdcf7(0x180)],_0x39f254=arCamera[_0x4bdcf7(0x11c)],_0x430e4c=arCamera[_0x4bdcf7(0x18c)],_0x5abda0=_0x39f254[_0x4bdcf7(0x17c)]/_0x318935[_0x4bdcf7(0x115)],_0x3178d0=_0x39f254[_0x4bdcf7(0x173)]/_0x318935[_0x4bdcf7(0x132)],_0x3dd5d5=Math[_0x4bdcf7(0x121)](_0x5abda0,_0x3178d0),_0x594fc4=(_0x39f254['width']-_0x318935[_0x4bdcf7(0x115)]*_0x3dd5d5)/0x2,_0x3c8d73=(_0x39f254[_0x4bdcf7(0x173)]-_0x318935['videoHeight']*_0x3dd5d5)/0x2;arCamera['capture_ctx'][_0x4bdcf7(0x149)](0x0,0x0,_0x39f254[_0x4bdcf7(0x17c)],_0x39f254[_0x4bdcf7(0x173)]),arCamera[_0x4bdcf7(0x16e)][_0x4bdcf7(0x17a)](_0x3dd5d5,0x0,0x0,_0x3dd5d5,_0x594fc4,_0x3c8d73),arCamera['capture_ctx'][_0x4bdcf7(0x17b)](arCamera[_0x4bdcf7(0x180)],0x0,0x0);if(!arCamera[_0x4bdcf7(0x138)]){_0x430e4c['width']=window[_0x4bdcf7(0x155)],_0x430e4c[_0x4bdcf7(0x173)]=window['innerHeight'];var _0x5ae1f1=_0x430e4c[_0x4bdcf7(0x17c)]/_0x318935[_0x4bdcf7(0x115)],_0x4811e5=_0x430e4c[_0x4bdcf7(0x173)]/_0x318935[_0x4bdcf7(0x132)],_0x45573=Math[_0x4bdcf7(0x121)](_0x5ae1f1,_0x4811e5),_0x1099d8=(_0x430e4c['width']-_0x318935['videoWidth']*_0x45573)/0x2,_0x1314a9=(_0x430e4c[_0x4bdcf7(0x173)]-_0x318935[_0x4bdcf7(0x132)]*_0x45573)/0x2;arCamera[_0x4bdcf7(0x12d)][_0x4bdcf7(0x149)](0x0,0x0,_0x430e4c[_0x4bdcf7(0x17c)],_0x430e4c[_0x4bdcf7(0x173)]),arCamera[_0x4bdcf7(0x12d)][_0x4bdcf7(0x17a)](_0x45573,0x0,0x0,_0x45573,_0x1099d8,_0x1314a9),arCamera[_0x4bdcf7(0x12d)][_0x4bdcf7(0x17b)](arCamera['VIDEO'],0x0,0x0);}arCamera[_0x4bdcf7(0x14d)][_0x4bdcf7(0x153)](_0x483ba0=>{var _0x173e31=_0x4bdcf7;if(_0x173e31(0x17e)===_0x173e31(0x17e))_0x483ba0[_0x173e31(0x16d)]();else{if(this[_0x173e31(0x14d)][_0x173e31(0x182)](_0xcf73b7)){;return;}this['SUBSCRIBED_TRACKERS'][_0x173e31(0x16b)](_0x511305);}}),arCamera['updateUnityVideoTextureCallback']&&(_0x4bdcf7(0x183)!==_0x4bdcf7(0x12b)?arCamera[_0x4bdcf7(0x11f)]():_0x552adc[_0x4bdcf7(0x117)](_0x290b9d[_0x4bdcf7(0x17c)],_0x357433['height']));}['subscribeToWebcamUpdates'](_0x17322f,_0x85577b){var _0x2c93b2=a0_0x12aa0e;if(this[_0x2c93b2(0x14d)][_0x2c93b2(0x182)](_0x17322f)){;return;}this['SUBSCRIBED_TRACKERS']['push'](_0x17322f);}['setFrameSize'](_0xa4a6ba){var _0x44ac66=a0_0x12aa0e;;this[_0x44ac66(0x12f)]=_0xa4a6ba;var _0x5d332f=this[_0x44ac66(0x11c)],_0x578bcb=this[_0x44ac66(0x180)];if(!_0x578bcb||_0x578bcb['videoWidth']<=0x0||_0x578bcb[_0x44ac66(0x132)]<=0x0)return;const _0x2b75af=Math['min'](this[_0x44ac66(0x12f)]/_0x578bcb[_0x44ac66(0x115)],this[_0x44ac66(0x12f)]/_0x578bcb[_0x44ac66(0x132)]);;_0x5d332f[_0x44ac66(0x17c)]=_0x2b75af*_0x578bcb[_0x44ac66(0x115)],_0x5d332f[_0x44ac66(0x173)]=_0x2b75af*_0x578bcb['videoHeight'];;}[a0_0x12aa0e(0x185)](_0x53f995){var _0x46df5d=a0_0x12aa0e;this[_0x46df5d(0x164)]=_0x53f995,clearInterval(this.#p000),this.#p000=setInterval(this.#f000,0x1/this[_0x46df5d(0x164)]*0x3e8);}['resizeWithDelay'](_0x2893a5){var _0x5f2d1c=a0_0x12aa0e;if(_0x2893a5!=null&&_0x2893a5[_0x5f2d1c(0x15e)]!=window)return;if(!arCamera['unityCanvas'][_0x5f2d1c(0x12c)]||!arCamera[_0x5f2d1c(0x12a)][_0x5f2d1c(0x12c)][_0x5f2d1c(0x168)])return;var _0x2c081a=arCamera[_0x5f2d1c(0x15f)];;arCamera[_0x5f2d1c(0x14d)]['forEach'](_0x2c4a37=>{var _0x19f743=_0x5f2d1c;_0x2c4a37[_0x19f743(0x133)]();}),arCamera[_0x5f2d1c(0x12a)][_0x5f2d1c(0x168)]['opacity']=0x0,arCamera[_0x5f2d1c(0x18c)][_0x5f2d1c(0x168)][_0x5f2d1c(0x129)]=0x0,setTimeout(()=>{var _0x2bc213=_0x5f2d1c;_0x2bc213(0x15a)!==_0x2bc213(0x179)?arCamera[_0x2bc213(0x150)]():_0x17f0ba(_0x520672[_0x2bc213(0x170)]);},_0x2c081a);var _0x44786f=arCamera[_0x5f2d1c(0x12a)][_0x5f2d1c(0x12c)];setTimeout(()=>{var _0x389b9e=_0x5f2d1c;_0x44786f[_0x389b9e(0x168)][_0x389b9e(0x169)]=_0x389b9e(0x124);},_0x2c081a+0x5),setTimeout(()=>{var _0x4e989a=_0x5f2d1c;_0x44786f['style'][_0x4e989a(0x169)]='';},_0x2c081a+0x32),console[_0x5f2d1c(0x14c)](_0x5f2d1c(0x137)+arCamera[_0x5f2d1c(0x161)][_0x5f2d1c(0x171)]),setTimeout(()=>{var _0x1d73eb=_0x5f2d1c;arCamera[_0x1d73eb(0x14d)][_0x1d73eb(0x153)](_0x4bbe9d=>{var _0x54c81c=_0x1d73eb;_0x4bbe9d[_0x54c81c(0x139)]();});var _0x498715=0x1f4,_0x1b687a=0xa;if(arCamera['fadeId']){if('QoqdP'!==_0x1d73eb(0x160)){this['unityCanvas']=_0x2dad29,this[_0x1d73eb(0x18c)]=_0x40b5e3,this[_0x1d73eb(0x12d)]=this['videoCanvas']['getContext']('2d'),this[_0x1d73eb(0x138)]=![],this[_0x1d73eb(0x15f)]=0x32,this[_0x1d73eb(0x164)]=0x1e,this[_0x1d73eb(0x14d)]=[],this[_0x1d73eb(0x12f)]=0x12c,this[_0x1d73eb(0x11c)]=_0x556229['createElement']('canvas'),this[_0x1d73eb(0x11c)]['id']=_0x1d73eb(0x11c),_0x20a1af[_0x1d73eb(0x178)][_0x1d73eb(0x166)](this[_0x1d73eb(0x11c)]),this[_0x1d73eb(0x16e)]=this[_0x1d73eb(0x11c)][_0x1d73eb(0x135)]('2d'),this['videoCapture']['style'][_0x1d73eb(0x14a)]='absolute',this['videoCapture'][_0x1d73eb(0x168)]['top']=_0x1d73eb(0x127),this[_0x1d73eb(0x11c)][_0x1d73eb(0x168)][_0x1d73eb(0x18b)]=_0x1d73eb(0x172),this[_0x1d73eb(0x114)](this['maxFrameSize']),this['usingUnityVideoPlane']=![],this[_0x1d73eb(0x188)]=[],this[_0x1d73eb(0x161)]=[],this['lastOrientation']=_0x50588a[_0x1d73eb(0x141)]('(orientation:\x20portrait)')[_0x1d73eb(0x145)]?_0x1d73eb(0x154):_0x1d73eb(0x158),_0x502e7d[_0x1d73eb(0x11a)](_0x1d73eb(0x167),this[_0x1d73eb(0x163)],!![]);;}else clearInterval(arCamera['fadeId']);}arCamera[_0x1d73eb(0x170)]=setInterval(()=>{var _0x3c7068=_0x1d73eb,_0x28cb71=parseFloat(arCamera['unityCanvas'][_0x3c7068(0x168)][_0x3c7068(0x129)]);_0x28cb71+=0x1/(_0x498715/_0x1b687a),_0x28cb71=Math[_0x3c7068(0x120)](_0x28cb71,0x1),arCamera[_0x3c7068(0x12a)]['style'][_0x3c7068(0x129)]=_0x28cb71,arCamera[_0x3c7068(0x18c)][_0x3c7068(0x168)][_0x3c7068(0x129)]=_0x28cb71,_0x28cb71>=0x1&&clearInterval(arCamera[_0x3c7068(0x170)]);},_0x1b687a);},_0x2c081a+0x64);}[a0_0x12aa0e(0x150)](){var _0x4cd5c0=a0_0x12aa0e;;if(!window['arCamera'])window[_0x4cd5c0(0x181)]=this;var _0x355395=this[_0x4cd5c0(0x11c)],_0x3e50a4=this[_0x4cd5c0(0x180)];if(!_0x355395||!_0x3e50a4||_0x3e50a4['videoWidth']<=0x0||_0x3e50a4[_0x4cd5c0(0x132)]<=0x0)return;;var _0x4e76e2=window['innerWidth']/window[_0x4cd5c0(0x128)];;this['setFrameSize'](this[_0x4cd5c0(0x12f)]),this[_0x4cd5c0(0x14d)]['forEach'](_0x49c01f=>{var _0x304b2a=_0x4cd5c0;_0x49c01f[_0x304b2a(0x117)](_0x355395['width'],_0x355395[_0x304b2a(0x173)]);}),this.#f001(),window['unityInstance'][_0x4cd5c0(0x16a)](_0x4cd5c0(0x13b),'Resize',_0x3e50a4['videoWidth']+','+_0x3e50a4[_0x4cd5c0(0x132)]);var _0x31d93d=window[_0x4cd5c0(0x141)](_0x4cd5c0(0x146))[_0x4cd5c0(0x145)]?_0x4cd5c0(0x154):_0x4cd5c0(0x158);this[_0x4cd5c0(0x13c)]!=_0x31d93d&&(_0x4cd5c0(0x165)==='yFbfB'?(this[_0x4cd5c0(0x14e)]=![],this['VIDEO']['play']()):(window[_0x4cd5c0(0x175)][_0x4cd5c0(0x16a)](_0x4cd5c0(0x13b),_0x4cd5c0(0x16f),_0x31d93d),this[_0x4cd5c0(0x13c)]=_0x31d93d));}#f001(){var _0x1d4d23=a0_0x12aa0e,_0x277bb4=this[_0x1d4d23(0x12a)],_0x409a18=this[_0x1d4d23(0x11c)],_0x30a776=this[_0x1d4d23(0x180)];if(!_0x30a776||_0x30a776[_0x1d4d23(0x115)]<=0x0||_0x30a776[_0x1d4d23(0x132)]<=0x0)return;var _0x3c9965=window[_0x1d4d23(0x155)]/window[_0x1d4d23(0x128)],_0x521a02=_0x30a776[_0x1d4d23(0x115)]/_0x30a776['videoHeight'];_0x277bb4[_0x1d4d23(0x168)]['width']=_0x1d4d23(0x13f),_0x277bb4[_0x1d4d23(0x168)]['height']=_0x1d4d23(0x13f);var _0xa159a5=this[_0x1d4d23(0x11c)][_0x1d4d23(0x131)]();;var _0x8289fd=window['innerWidth'],_0x516178=window['innerHeight'],_0x4fe5ee=0.5/Math[_0x1d4d23(0x121)](_0x521a02,_0x3c9965),_0x4eca66=0x1,_0x336adc=0x2*Math[_0x1d4d23(0x157)](_0x4fe5ee/_0x4eca66)*0xb4/Math['PI'];this[_0x1d4d23(0x17d)]=_0x336adc;;window[_0x1d4d23(0x175)]&&window[_0x1d4d23(0x175)][_0x1d4d23(0x16a)](_0x1d4d23(0x13b),'SetCameraFov',_0x336adc);}['getCameraTexture'](_0x5da23c){var _0x6a718a=this['videoCapture'],_0xb443cf=_0x6a718a['toDataURL'](_0x5da23c);return _0xb443cf;}['getVideoDims'](){var _0x2c07fd=a0_0x12aa0e;return this[_0x2c07fd(0x180)]['videoWidth']+','+this[_0x2c07fd(0x180)][_0x2c07fd(0x132)];}}function a0_0x1e84(_0x52acc5,_0x27669d){var _0x4552bb=a0_0x3d22();return a0_0x1e84=function(_0x3b0468,_0x2a8d5f){_0x3b0468=_0x3b0468-0x112;var _0x3d2272=_0x4552bb[_0x3b0468];return _0x3d2272;},a0_0x1e84(_0x52acc5,_0x27669d);};
|
index.html
CHANGED
@@ -1,213 +1,319 @@
|
|
1 |
-
|
2 |
-
|
3 |
-
|
4 |
-
<
|
5 |
-
|
6 |
-
<
|
7 |
-
<
|
8 |
-
|
9 |
-
<
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
}
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
}
|
36 |
-
|
37 |
-
|
38 |
-
width:
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
}
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
.
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
productName: "VTON",
|
148 |
-
productVersion: "0.1",
|
149 |
-
//Useful when used along with Filename as Hashes option
|
150 |
-
cacheControl: function (url) {
|
151 |
-
// typically includes: .data, .bundle, .zpt
|
152 |
-
if (url.match(/\.data/) || url.match(/\.bundle/) || url.match(/\.zpt/)) {
|
153 |
-
return "must-revalidate";
|
154 |
}
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
213 |
</html>
|
|
|
1 |
+
<!DOCTYPE html>
|
2 |
+
<html>
|
3 |
+
<head>
|
4 |
+
<meta charset="utf-8">
|
5 |
+
<meta name="viewport" content='width=device-width, height=device-height, initial-scale=1.0, minimum-scale=1.0, user-scalable=no, shrink-to-fit=yes'>
|
6 |
+
<title>ClothAd</title>
|
7 |
+
<link rel="stylesheet" href="TemplateData/style.css">
|
8 |
+
<link rel="icon" href="TemplateData/favicon.ico">
|
9 |
+
<style>
|
10 |
+
html{
|
11 |
+
height: -webkit-fill-available;
|
12 |
+
}
|
13 |
+
body {
|
14 |
+
margin: 0;
|
15 |
+
padding: 0;
|
16 |
+
min-height: 100vh;
|
17 |
+
min-height: -webkit-fill-available;
|
18 |
+
width: 100vw;
|
19 |
+
overflow: hidden;
|
20 |
+
background: #1a1a1a;
|
21 |
+
}
|
22 |
+
.ctaDiv {
|
23 |
+
display: flex;
|
24 |
+
flex-direction: column;
|
25 |
+
align-items: center;
|
26 |
+
justify-content: center;
|
27 |
+
position: absolute;
|
28 |
+
left: 0;
|
29 |
+
right: 0;
|
30 |
+
top: 0;
|
31 |
+
bottom: 0;
|
32 |
+
background: #fffa;
|
33 |
+
background: rgba(0, 0, 0, 0.8);
|
34 |
+
z-index: 99;
|
35 |
+
}
|
36 |
+
.ctaDiv p {
|
37 |
+
text-align: center;
|
38 |
+
width: 60vw;
|
39 |
+
color: #ffffff; /* White text */
|
40 |
+
font-family: 'Arial', sans-serif;
|
41 |
+
font-size: 1.2em;
|
42 |
+
margin-bottom: 20px;
|
43 |
+
}
|
44 |
+
.ctaDiv select {
|
45 |
+
background: #000000; /* Black background */
|
46 |
+
color: #ffffff; /* White text */
|
47 |
+
border: 2px solid #ffffff; /* White border */
|
48 |
+
padding: 10px;
|
49 |
+
font-size: 1em;
|
50 |
+
border-radius: 5px;
|
51 |
+
transition: background 0.3s ease;
|
52 |
+
margin-bottom: 20px;
|
53 |
+
}
|
54 |
+
.ctaDiv select:hover {
|
55 |
+
background: #333333; /* Slightly lighter black on hover */
|
56 |
+
}
|
57 |
+
.ctaDiv button {
|
58 |
+
background: #000000; /* Black background */
|
59 |
+
color: #ffffff; /* White text */
|
60 |
+
border: 2px solid #ffffff; /* White border */
|
61 |
+
padding: 10px 20px;
|
62 |
+
font-size: 1em;
|
63 |
+
border-radius: 5px;
|
64 |
+
cursor: pointer;
|
65 |
+
transition: background 0.3s ease;
|
66 |
+
}
|
67 |
+
.ctaDiv button:hover {
|
68 |
+
background: #333333; /* Slightly lighter black on hover */
|
69 |
+
}
|
70 |
+
</style>
|
71 |
+
</head>
|
72 |
+
<body>
|
73 |
+
<!--IMAGETARGETS-->
|
74 |
+
<imagetarget id='ClothAd' src='targets/ClothAd.png'></imagetarget>
|
75 |
+
|
76 |
+
<video id="webcam-video" muted autoplay playsinline style="width:1px;position:absolute"></video>
|
77 |
+
<!-- <video id="webcam-video" muted autoplay playsinline style="width:100%; height:100%; object-fit:cover; position:absolute"></video> -->
|
78 |
+
<canvas id="video-canvas" style="width:100%; height:100%; object-fit:cover; position:absolute"></canvas>
|
79 |
+
<div id="startARDiv" class="ctaDiv">
|
80 |
+
<select id="chooseCamSel" style="display: none;" onchange="SelectCam()"></select>
|
81 |
+
<p>Welcome to ClothAd! To dive into this immersive AR experience, we need access to your device's camera.</p>
|
82 |
+
<button id="startARButton" onclick="StartAR()" style="display:none">ALLOW ACCESS</button>
|
83 |
+
</div>
|
84 |
+
<div id="screenshotDiv" style="display: none;" class="ctaDiv">
|
85 |
+
<div style="position:relative; background-color:white; padding:10px; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.3), 0 6px 20px 0 rgba(0, 0, 0, 0.25);">
|
86 |
+
<img id="screenshotImg" src="" alt="screenshot" style="width:80vw; height:80vh">
|
87 |
+
<button onclick="document.getElementById('screenshotDiv').style.display = 'none';" style="position:absolute; transform:translateY(-100%); right:0; top:0">Close</button>
|
88 |
+
</div>
|
89 |
+
</div>
|
90 |
+
<div id="confirmUrlDiv" style="display: none;" class="ctaDiv">
|
91 |
+
<div style="position:relative; background-color:white; padding:10px; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.3), 0 6px 20px 0 rgba(0, 0, 0, 0.25); width: 80vw; display:flex; flex-direction: column; align-items: center;">
|
92 |
+
<p id="confirmUrlText" style="text-align: center; width:80%; overflow: hidden; text-overflow: ellipsis;">Are you sure you want to visit url.com?</p>
|
93 |
+
<div>
|
94 |
+
<button onclick="window.open(newUrlString, '_blank').focus(); document.getElementById('confirmUrlDiv').style.display = 'none'">VISIT SITE</button>
|
95 |
+
<button onclick="document.getElementById('confirmUrlDiv').style.display = 'none'">GO BACK</button>
|
96 |
+
</div>
|
97 |
+
</div>
|
98 |
+
</div>
|
99 |
+
<div id="errorDiv" class="ctaDiv" style="display: none; background:#aaa">
|
100 |
+
<p id="errorText" style="text-align: center; width:60vw; color:white"></p>
|
101 |
+
</div>
|
102 |
+
<div id="unity-container" class="unity-mobile">
|
103 |
+
<canvas id="unity-canvas" style="width: 100%; height: 100%; background: #0000; z-index: -99"></canvas>
|
104 |
+
<div id="unity-loading-bar">
|
105 |
+
<div id="unity-logo"></div>
|
106 |
+
<div id="unity-progress-bar-empty">
|
107 |
+
<div id="unity-progress-bar-full"></div>
|
108 |
+
</div>
|
109 |
+
</div>
|
110 |
+
<canvas id="video-canvas"></canvas>
|
111 |
+
</div>
|
112 |
+
<script src="arcamera.js" type="text/javascript"></script>
|
113 |
+
<script src="itracker.js" type="text/javascript"></script>
|
114 |
+
<script src="Build/Build.loader.js"></script>
|
115 |
+
<script>
|
116 |
+
var initialize = async() =>{
|
117 |
+
var unityCanvas = document.querySelector("#unity-canvas");
|
118 |
+
var videoCanvas = document.querySelector("#video-canvas");
|
119 |
+
window.arCamera = new ARCamera(unityCanvas, videoCanvas);
|
120 |
+
window.iTracker = new ImageTracker(arCamera);
|
121 |
+
try{
|
122 |
+
await window.iTracker.initialize();
|
123 |
+
console.log("ImageTracker initialized!");
|
124 |
+
}
|
125 |
+
catch{
|
126 |
+
console.error("Failed to initialize ImageTracker. Are you missing opencv.js? " + error);
|
127 |
+
ShowError("Failed to initialize the experience.");
|
128 |
+
return;
|
129 |
+
}
|
130 |
+
|
131 |
+
try {
|
132 |
+
const permissionStatus = await navigator.permissions.query({ name: 'camera' });
|
133 |
+
if (permissionStatus.state === 'granted') {
|
134 |
+
// Permission already granted, start the game directly
|
135 |
+
await LoadWebcams();
|
136 |
+
StartAR();
|
137 |
+
} else {
|
138 |
+
// Show the permission request screen
|
139 |
+
await LoadWebcams();
|
140 |
+
document.getElementById("startARButton").style.display = "block";
|
141 |
+
}
|
142 |
+
} catch (err) {
|
143 |
+
console.error("Error checking camera permission: ", err);
|
144 |
+
// Fallback to showing the permission screen
|
145 |
+
await LoadWebcams();
|
146 |
+
document.getElementById("startARButton").style.display = "block";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
147 |
}
|
148 |
+
}
|
149 |
+
initialize();
|
150 |
+
var container = document.querySelector("#unity-container");
|
151 |
+
var canvas = document.querySelector("#unity-canvas");
|
152 |
+
var loadingBar = document.querySelector("#unity-loading-bar");
|
153 |
+
var progressBarFull = document.querySelector("#unity-progress-bar-full");
|
154 |
+
function StartAR() {
|
155 |
+
canvas.style.width = window.innerWidth + "px";
|
156 |
+
canvas.style.height = window.innerHeight + "px";
|
157 |
+
|
158 |
+
document.getElementById("startARDiv").style.display = "none";
|
159 |
+
createUnityInstance(document.querySelector("#unity-canvas"), {
|
160 |
+
dataUrl: "Build/Build.data",
|
161 |
+
frameworkUrl: "Build/Build.framework.js",
|
162 |
+
codeUrl: "Build/Build.wasm",
|
163 |
+
streamingAssetsUrl: "StreamingAssets",
|
164 |
+
companyName: "BlackFlash",
|
165 |
+
productName: "ClothAd",
|
166 |
+
productVersion: "0.1",
|
167 |
+
//webglContextAttributes: { "preserveDrawingBuffer": true },
|
168 |
+
// matchWebGLToCanvasSize: false, // Uncomment this to separately control WebGL canvas render size and DOM element size.
|
169 |
+
// devicePixelRatio: 1, // Uncomment this to override low DPI rendering on high DPI displays.
|
170 |
+
},
|
171 |
+
(progress) => {
|
172 |
+
progressBarFull.style.width = 100 * progress + "%";
|
173 |
+
}
|
174 |
+
).then((unityInstance) => {
|
175 |
+
window.unityInstance = unityInstance;
|
176 |
+
RequestWebcam();
|
177 |
+
loadingBar.style.display = "none";
|
178 |
+
});
|
179 |
+
loadingBar.style.display = "block";
|
180 |
+
}
|
181 |
+
//Set Facing Mode here ('environment', 'user', '')
|
182 |
+
window.unityFacingMode = "environment"
|
183 |
+
window.WEBCAM_SETTINGS = {
|
184 |
+
video: {
|
185 |
+
facingMode: unityFacingMode,
|
186 |
+
},
|
187 |
+
audio: false
|
188 |
+
};
|
189 |
+
window.requestingForPermissions = false;
|
190 |
+
async function RequestWebcam(){
|
191 |
+
window.requestingForPermissions = true;
|
192 |
+
try{
|
193 |
+
window.webcamStream = await navigator.mediaDevices.getUserMedia(window.WEBCAM_SETTINGS);
|
194 |
+
console.log("Webcam access granted");
|
195 |
+
requestingForPermissions = false;
|
196 |
+
}
|
197 |
+
catch (err) {
|
198 |
+
//user denied camera permission - show error panel
|
199 |
+
console.error("getUserMedia error - " , err);
|
200 |
+
ShowError("Failed to start the experience. Camera permission was denied");
|
201 |
+
window.requestingForPermissions = false;
|
202 |
+
}
|
203 |
+
}
|
204 |
+
async function StartWebcam(){
|
205 |
+
console.log("StartWebcam")
|
206 |
+
while (window.requestingForPermissions) {
|
207 |
+
// Wait until requestingForPermissions becomes true.
|
208 |
+
console.log("Waiting for permissions...");
|
209 |
+
await new Promise(resolve => setTimeout(resolve, 100)); // Adjust the delay time as needed.
|
210 |
+
}
|
211 |
+
console.log("Got Permissions");
|
212 |
+
if(window.webcamStream)
|
213 |
+
{
|
214 |
+
const video = document.querySelector("#webcam-video");
|
215 |
+
video.srcObject = webcamStream;
|
216 |
+
try {
|
217 |
+
await arCamera.startWebcam(video);
|
218 |
+
console.log("Webcam started successfully");
|
219 |
+
window.unityInstance.SendMessage('ARCamera', 'OnStartWebcamSuccess');
|
220 |
+
}
|
221 |
+
catch(err){
|
222 |
+
console.error("Webcam failed to start - ", err);
|
223 |
+
window.unityInstance.SendMessage('ARCamera', 'OnStartWebcamFail');
|
224 |
+
}
|
225 |
+
}
|
226 |
+
else{
|
227 |
+
console.error("Webcam failed to start - permission not yet granted");
|
228 |
+
window.unityInstance.SendMessage('ARCamera', 'OnStartWebcamFail');
|
229 |
+
}
|
230 |
+
}
|
231 |
+
async function LoadWebcams(){
|
232 |
+
let camDevices = [];
|
233 |
+
// let backCams = [];
|
234 |
+
let devices = await navigator.mediaDevices.enumerateDevices();
|
235 |
+
var ctr = 0;
|
236 |
+
devices.forEach(mediaDevice => {
|
237 |
+
if (mediaDevice.kind === 'videoinput') {
|
238 |
+
if(window.unityFacingMode == 'environment' && !mediaDevice.label.includes('facing front')){
|
239 |
+
//back cam only
|
240 |
+
camDevices.push(mediaDevice);
|
241 |
+
}
|
242 |
+
else if(window.unityFacingMode == 'user' && mediaDevice.label.includes('facing front')){
|
243 |
+
//front cam only
|
244 |
+
camDevices.push(mediaDevice);
|
245 |
+
}
|
246 |
+
else{
|
247 |
+
//back and front
|
248 |
+
camDevices.push(mediaDevice);
|
249 |
+
}
|
250 |
+
|
251 |
+
ctr++;
|
252 |
+
}
|
253 |
+
});
|
254 |
+
var select = document.getElementById("chooseCamSel");
|
255 |
+
select.style.display = "block";
|
256 |
+
var count = 0;
|
257 |
+
//reverse array because some Android phones can't distinguish front and back cams at first load
|
258 |
+
//and when this happens, most of the time, front cam goes first and back cam goes last
|
259 |
+
camDevices = camDevices.reverse();
|
260 |
+
camDevices.forEach(mediaDevice => {
|
261 |
+
const option = document.createElement('option');
|
262 |
+
option.value = mediaDevice.deviceId;
|
263 |
+
let label = `Camera ${count}`;
|
264 |
+
if (mediaDevice.label) {
|
265 |
+
label = mediaDevice.label
|
266 |
+
}
|
267 |
+
const textNode = document.createTextNode(label);
|
268 |
+
option.appendChild(textNode);
|
269 |
+
select.appendChild(option);
|
270 |
+
count++;
|
271 |
+
});
|
272 |
+
iTracker.WEBCAM_NAME = select.options[select.selectedIndex].innerHTML;
|
273 |
+
}
|
274 |
+
function SelectCam(){
|
275 |
+
var select = document.getElementById("chooseCamSel");
|
276 |
+
window.deviceId = select.value;
|
277 |
+
window.WEBCAM_SETTINGS.video['deviceId'] = deviceId;
|
278 |
+
//console.log(window.WEBCAM_SETTINGS);
|
279 |
+
iTracker.WEBCAM_NAME = select.options[select.selectedIndex].innerHTML;
|
280 |
+
}
|
281 |
+
async function FlipCam(){
|
282 |
+
arCamera.stopWebcam();
|
283 |
+
window.WEBCAM_SETTINGS.video.deviceId = '';
|
284 |
+
if(window.WEBCAM_SETTINGS.video.facingMode == 'user'){
|
285 |
+
window.WEBCAM_SETTINGS.video.facingMode = 'environment';
|
286 |
+
arCamera.setFlipped(false);
|
287 |
+
}
|
288 |
+
else{
|
289 |
+
window.WEBCAM_SETTINGS.video.facingMode = 'user';
|
290 |
+
arCamera.setFlipped(true);
|
291 |
+
}
|
292 |
+
window.webcamStream = await navigator.mediaDevices.getUserMedia(window.WEBCAM_SETTINGS);
|
293 |
+
const video = document.querySelector("#webcam-video");
|
294 |
+
video.srcObject = webcamStream;
|
295 |
+
await arCamera.startWebcam(video);
|
296 |
+
}
|
297 |
+
function ShowError(error){
|
298 |
+
document.getElementById("errorDiv").style.display = "flex";
|
299 |
+
document.getElementById("errorText").innerHTML = error;
|
300 |
+
}
|
301 |
+
function ShowScreenshot(dataUrl){
|
302 |
+
document.getElementById("screenshotDiv").style.display = "flex";
|
303 |
+
document.getElementById("screenshotImg").src = dataUrl;
|
304 |
+
document.getElementById("screenshotImg").style.width = "80vw";
|
305 |
+
document.getElementById("screenshotImg").style.height = 80 / window.innerWidth * window.innerHeight + "vw";
|
306 |
+
}
|
307 |
+
function ShowConfirmUrl(url){
|
308 |
+
document.getElementById("confirmUrlDiv").style.display = "flex";
|
309 |
+
window.newUrlString = url;
|
310 |
+
document.getElementById("confirmUrlText").innerText = "Are you sure you want to visit " + url;
|
311 |
+
}
|
312 |
+
window.ITRACKER_GLOBALS = {
|
313 |
+
//place global settings here
|
314 |
+
INTERNAL_SMOOTHFACTOR_POS: .075,
|
315 |
+
}
|
316 |
+
|
317 |
+
</script>
|
318 |
+
</body>
|
319 |
</html>
|
itracker.js
ADDED
@@ -0,0 +1 @@
|
|
|
|
|
1 |
+
function a0_0xe552(_0x4268e3,_0x4ba94c){var _0x5542cb=a0_0x45bb();return a0_0xe552=function(_0xd2a182,_0x14e356){_0xd2a182=_0xd2a182-0x160;var _0x45bbb1=_0x5542cb[_0xd2a182];return _0x45bbb1;},a0_0xe552(_0x4268e3,_0x4ba94c);}var a0_0x261574=a0_0xe552;(function(_0x18967f,_0x501000){var _0x5b1849=a0_0xe552,_0x327132=_0x18967f();while(!![]){try{var _0x49d875=-parseInt(_0x5b1849(0x24a))/0x1*(parseInt(_0x5b1849(0x1b9))/0x2)+parseInt(_0x5b1849(0x1e2))/0x3*(parseInt(_0x5b1849(0x195))/0x4)+parseInt(_0x5b1849(0x29e))/0x5*(-parseInt(_0x5b1849(0x215))/0x6)+-parseInt(_0x5b1849(0x270))/0x7*(-parseInt(_0x5b1849(0x190))/0x8)+-parseInt(_0x5b1849(0x1d4))/0x9+parseInt(_0x5b1849(0x18c))/0xa+parseInt(_0x5b1849(0x214))/0xb;if(_0x49d875===_0x501000)break;else _0x327132['push'](_0x327132['shift']());}catch(_0x262868){_0x327132['push'](_0x327132['shift']());}}}(a0_0x45bb,0xdb3c0));function a0_0x45bb(){var _0x406a0d=['loadOpenCV','DETECT_INTERVAL','BFMatcher','indexOf','mpKrD','CV_8UC4','SendMessage','MAX_TARGET_PIXELS','height','now','GHgJi','script','CrCVQ','getAttribute','trackedCount','getImageData','setEdgeThreshold','Point','2PXinmX','qEvEE','PXEoU','MAX_SIMULTANEOUS_TRACK','KmzSm','LDNcG','PaBAU','delete','roi','#detectCompute','aaNMM','inv','update','COLOR_GRAY2RGB','UEKwN','transform','TermCriteria','createElement','RMmLU','NORM_HAMMING','iySkY','rotMat','data','unityInstance','drawKeypoints','Unity\x20build\x20is\x20using\x20a\x20different\x20plugin\x20version\x20and\x20may\x20not\x20function\x20properly\x20-\x20Please\x20rebuild\x20your\x20unity\x20project','patch','995031EnGrxg','DMatchVector','kalman','left','POSE_CORRECTION_INTERVAL','pogXL','CV_8UC1','true','MAX_TARGET_AREA','hfxiS','qmlqy','VvDZB','gWeCR','errorCovPre','285738BSbekG','INTERNAL_SMOOTHFACTOR_POS','ONsnm','hasPrediction','Anonymous','setFrameSize','body','OnTrack','#getCorners','min','ByyUF','QwZtn','WhgoF','detect','length','CANVAS_HEIGHT','log','MAX_PIXELS','CAM_DIST_MAT','WWVpx','TermCriteria_COUNT','queryIdx','wewxM','warn','parse','crossOrigin','des','push','onerror','imshow','bGNAH','keys','DMatchVectorVector','desSharp','hiQWh','MAX_AREA','tfggk','projectPoints','correct','ITRACKER_GLOBALS','onFinishedResize','bestMatchQuality','ZGWQw','lasti','qMuhs','qtRxe','Mat','COLOR_RGBA2GRAY','measurementNoiseCov','lastDetectTime','3535983bQyPrM','3330cJfdkw','drawImage','onStartResize','coverage','gemm','#matchPatches','size','imread','kpSharp','putImageData','statePre','XJkpQ','round','zFkAr','onload','set','xEpwM','rectangle','XqQgb','canvas','ckrhn','abs','matchTemplate','opencv.js','CAM_MAT','lastPose','IuHCq','PCAry','onKcM','TermCriteria_EPS','CnjeU','meas','tithj','TRACK_TARGET_MATCH_COUNT','getElementById','SIFT','MtHTd','minMaxLoc','apply','matches','RANSAC','DETECTABILITY','\x20feature\x20detector\x20enabled','splice','DETECTOR','random','get','QvUyO','iSHjn','XwLWx','resize','GXlwo','uQBzy','575027ybAanK','translate(0%,0%)\x20scale(','keypoint','asClC','resizeCanvas','forEach','isStarted','videoCapture','lraFo','addWeighted','style','dyLmw','calcOpticalFlowPyrLK','refinedMatches','sqrt','MiLlP','assign','constructor','haCeE','Scalar','(((.+)+)+)+$','WARPED_IMAGE_CANVAS','WutJz','tsdtM','aSCWM','map','QmUvt','#debugKps','lastPoseIsStable','hmrOW','#debugMatches','remove','lastMatchTrackTime','untracked','setCamDims','appendChild','line','getContext','21JpPkaK','reject','GCVkE','Rodrigues','NORM_L2','PzkxH','drawMatches','\x20feature\x20detector\x20unsupported:\x20fallback\x20to\x20default','wKzkT','Uehnb','processNoiseCov','cv\x20initialized','empty','matFromArray','unityTargetLost\x20','toString','cvtColor','src','debugImages','pow','compute','homography','VSeSN','KdYZW','copyTo','warpPerspective','DETECT_ZONE','absolute','RGxVu','CV_32SC2','data32F','ZUhWc','targetsInScene','findHomography','idealMatches','CV_32FC2','graySharp','gray','circle','includes','shouldReset','lkRkk','dot','Rect','subscribeToWebcamUpdates','tuEQX','8425OCagum','querySelectorAll','oIQlP','failed\x20to\x20load\x20opencv...','imagetarget','top','nHmlT','unityTargetFound\x20','statePost','cols','tOSiD','CV_64F','sTmMk','fEAGB','KeyPointVector','state','randomIntFromInterval','ORB','usnMl','trainIdx','nhkyD','kSeYa','CLIENT_VERSION_ERROR','FRAMERATE','HyCag','perspectiveTransform','position','CV_32F','reduce','iwoJM','MVeFr','fillConvexPoly','phQEK','RrWde','search','GaussianBlur','rows','floor','isImageTracked','WARP_INVERSE_MAP','lastk','startTracker','INTER_LINEAR','QQvol','HcrPN','EggYW','lastUpdateTime','push_back','lastMatchTrackDist','TRACKER_NAME','CANVAS_WIDTH','maxLoc','5490060pFSoXR','0.0.0','split','transitionMatrix','2617504wAMlYt','setTrackerSettings','width','clearRect','setFramerate','28RfsQwN','tvec','TM_CCORR_NORMED','then','vOOwN','max','debugIds','initialize','ceil','djEWk','INTERNAL_SMOOTHFACTOR_ROT','Size','tracked','stopTracker','lastj','Tracker','Soaqf','lastw'];a0_0x45bb=function(){return _0x406a0d;};return a0_0x45bb();}var a0_0x14e356=(function(){var _0x169cba=!![];return function(_0x58892a,_0xa59d85){var _0x2f079a=_0x169cba?function(){var _0x2d6b05=a0_0xe552;if(_0xa59d85){var _0x210f3d=_0xa59d85[_0x2d6b05(0x23b)](_0x58892a,arguments);return _0xa59d85=null,_0x210f3d;}}:function(){};return _0x169cba=![],_0x2f079a;};}()),a0_0xd2a182=a0_0x14e356(this,function(){var _0x323279=a0_0xe552;return a0_0xd2a182[_0x323279(0x27f)]()[_0x323279(0x17a)]('(((.+)+)+)+$')[_0x323279(0x27f)]()[_0x323279(0x25b)](a0_0xd2a182)[_0x323279(0x17a)](_0x323279(0x25e));});a0_0xd2a182();class ImageTracker{#p000;#p001;#p002;#p003;#p004;#p005;#p006;#p007;#p008;#p009;#p010;#p011;#p012;#p013;#p014;#p015;#p016;#p017;#p018;#p019;#p020;#p021;#p022;#p023;#p024;#p025;#p026;#p027;#p028;#p029;#p030;#p031;#p032;#p033;#p034;#p035;#p036;#p037;#p038;#p039;#p040;#p041;#p042;#p043;#p044;#p045;#p046;#p047;#p048;constructor(_0x29609f){var _0x58e514=a0_0xe552;_0x29609f[_0x58e514(0x29c)](this);;}async[a0_0x261574(0x1a7)](){return new Promise((_0x3a93b2,_0x308f29)=>{var _0x21d3e7=a0_0xe552,_0x294e63=document[_0x21d3e7(0x1ca)](_0x21d3e7(0x1b2));_0x294e63[_0x21d3e7(0x281)]=_0x21d3e7(0x22c),_0x294e63[_0x21d3e7(0x223)]=()=>{var _0x17b4b6=_0x21d3e7;if(_0x17b4b6(0x279)!=='mectA')document[_0x17b4b6(0x1e8)]['appendChild'](_0x294e63),cv[_0x17b4b6(0x198)](_0x52f607=>{var _0x268398=_0x17b4b6;console[_0x268398(0x1f2)](_0x268398(0x27b)),window['cv']=_0x52f607;;;_0x3a93b2();});else{if(!this[_0x17b4b6(0x282)])this[_0x17b4b6(0x282)]={};this[_0x17b4b6(0x282)][_0x25520c]=_0x23e275;}},_0x294e63[_0x21d3e7(0x1fe)]=()=>{var _0x5e6e73=_0x21d3e7;console[_0x5e6e73(0x1f2)](_0x5e6e73(0x2a1)),_0x308f29();},document['body'][_0x21d3e7(0x26d)](_0x294e63);});}async[a0_0x261574(0x19c)](){var _0x46aee2=a0_0x261574;;try{if(_0x46aee2(0x1f5)===_0x46aee2(0x1f5)){if(!window['cv']){if('UEKwN'!==_0x46aee2(0x1c7))_0x2e9628[_0x46aee2(0x1fd)](_0x285b79);else{;await this[_0x46aee2(0x1a7)]();;}};this['QOS']=0x1,this['TRACKER_NAME']=_0x46aee2(0x1a4),this[_0x46aee2(0x16f)]=0x1e,this['MAX_AREA']=0x9c40,this[_0x46aee2(0x1f3)]=window[_0x46aee2(0x209)]&&window[_0x46aee2(0x209)][_0x46aee2(0x1ae)]?window[_0x46aee2(0x209)]['MAX_TARGET_PIXELS']:0x1c2,this[_0x46aee2(0x1dc)]=window[_0x46aee2(0x209)]&&window[_0x46aee2(0x209)][_0x46aee2(0x1dc)]?window[_0x46aee2(0x209)]['MAX_TARGET_AREA']:0x5dc0,this[_0x46aee2(0x1d8)]=0x5dc,this[_0x46aee2(0x1a8)]=0xc8,this[_0x46aee2(0x23e)]=0.5,this[_0x46aee2(0x28a)]='WIDE',this.#p001=0x96,this.#p003=0.8,this.#p004=0x5,this.#p005=0.6,this.#p006=0xa,this.#p007=0.8,this.#p008=0xa,this['MAX_SIMULTANEOUS_TRACK']=0x1,this.#p009=0xa,this.#p021=0xf,this.#p022=0x30,this.#p025=0xf,this.#p026=0x18,this.#p010=!![],this[_0x46aee2(0x236)]=0x19,this.#p029=0.0002,this.#p030=0.99,this.#p031=0.002,this.#p032=0.85,this.#p023=0.05,this.#p024=0.65;;var _0x23a9dc=window['ITRACKER_GLOBALS']&&window['ITRACKER_GLOBALS'][_0x46aee2(0x241)]?window[_0x46aee2(0x209)][_0x46aee2(0x241)]:_0x46aee2(0x238);if(_0x23a9dc==_0x46aee2(0x169))console[_0x46aee2(0x1f2)](_0x23a9dc+_0x46aee2(0x23f)),this.#p011=0x1f4,this.#p040=new cv[(_0x46aee2(0x169))](this.#p011),this.#p042=new cv['ORB'](this.#p011),this.#p044=new cv[(_0x46aee2(0x1a9))](cv[_0x46aee2(0x1cc)]),this.#p040['setEdgeThreshold'](0x3),this.#p042[_0x46aee2(0x1b7)](0x3);else{if(_0x23a9dc!=_0x46aee2(0x238)){if('ByyUF'===_0x46aee2(0x1ec))console[_0x46aee2(0x1f9)](_0x23a9dc+_0x46aee2(0x277));else return _0x164080[arguments[0x0]];}this.#p040=new cv[(_0x46aee2(0x238))](),this.#p042=new cv[(_0x46aee2(0x238))](),this.#p044=new cv[(_0x46aee2(0x1a9))](cv[_0x46aee2(0x274)]);};return this.#f006(()=>{var _0x2c56f2=_0x46aee2,_0xa4953=this.#p047['constructor'](_0x2c56f2(0x1db));;}),this.#p012=![],this.#p013=window['ITRACKER_GLOBALS']&&window[_0x46aee2(0x209)][_0x46aee2(0x1e3)]?window[_0x46aee2(0x209)][_0x46aee2(0x1e3)]:0.0015,this.#p014=window[_0x46aee2(0x209)]&&window[_0x46aee2(0x209)][_0x46aee2(0x19f)]?window[_0x46aee2(0x209)][_0x46aee2(0x19f)]:0.0015,this.#p027=0.005,this.#p028=0.995,this.#p015=0.00001,this.#p016=0x1,this.#p017=0x1,this.#p018=0.00001,this.#p019=0x1,this.#p020=0x1,this.#p046=0x0,iTracker['lastDetectTime']=Date[_0x46aee2(0x1b0)](),console[_0x46aee2(0x1f2)]('start\x20resize\x20now'),arCamera[_0x46aee2(0x24e)](),this[_0x46aee2(0x1b5)]=0x0,console['log']('init\x20complete!'),Promise['resolve']();}else{if(_0x8ab5d[_0x46aee2(0x21b)]()>this[_0x46aee2(0x236)]){if(this[_0x46aee2(0x168)](0x0,0x1)>0x0){var _0x51ca91=this['randomIntFromInterval'](0x0,this['TRACK_TARGET_MATCH_COUNT']-0x1);_0x108c79[_0x46aee2(0x224)](_0x51ca91,_0x430e83[_0x46aee2(0x243)](_0x67d2aa));}}else _0xfe09ee[_0x46aee2(0x187)](_0x319c8f[_0x46aee2(0x243)](_0x2e9094));}}catch(_0x3866f2){return Promise[_0x46aee2(0x271)](_0x3866f2);}}[a0_0x261574(0x181)](_0x2b0596,_0x1f8e76){var _0x176b1a=a0_0x261574;;this[_0x176b1a(0x290)]=_0x2b0596[_0x176b1a(0x18e)](','),this[_0x176b1a(0x250)]=!![],this[_0x176b1a(0x189)]=_0x1f8e76;}['stopTracker'](){var _0xfcefb1=a0_0x261574;this[_0xfcefb1(0x250)]=![];var _0x2e8e0b=this.#p047[_0xfcefb1(0x25b)](_0xfcefb1(0x1db));Object[_0xfcefb1(0x201)](_0x2e8e0b['tracked'])['forEach'](_0x3b1480=>{this.#f005(_0x3b1480);});}[a0_0x261574(0x26c)](_0x3595dc,_0x460173){var _0x44b81e=a0_0x261574;;this[_0x44b81e(0x18a)]=_0x3595dc,this[_0x44b81e(0x1f1)]=_0x460173,this[_0x44b81e(0x22d)]=cv['matFromArray'](0x3,0x3,cv[_0x44b81e(0x173)],[_0x3595dc,0x0,_0x3595dc*0.5,0x0,_0x3595dc,_0x460173*0.5,0x0,0x0,0x1]),this[_0x44b81e(0x1f4)]=cv[_0x44b81e(0x27d)](0x5,0x1,cv['CV_32F'],[0x0,0x0,0x0,0x0,0x0]);;}[a0_0x261574(0x17e)](_0x39a995){var _0x5bdbf6=a0_0x261574,_0x3ba1fe=this.#p047[_0x5bdbf6(0x25b)](_0x5bdbf6(0x1db)),_0x191a52=Object[_0x5bdbf6(0x201)](_0x3ba1fe['tracked']);return _0x191a52['includes'](_0x39a995);}[a0_0x261574(0x191)](_0x3c9537,_0x3d9d51=a0_0x261574(0x18d)){var _0x3fa9fc=a0_0x261574;this.#f000(_0x3d9d51);;var _0x59a574=JSON[_0x3fa9fc(0x1fa)](_0x3c9537);Object[_0x3fa9fc(0x201)](_0x59a574)[_0x3fa9fc(0x24f)](_0x6d90e1=>{var _0x594eda=_0x3fa9fc;if('xEpwM'!==_0x594eda(0x225)){var _0x1e9c24=new _0x472fc4['Mat'](),_0x1c1162=new _0x56884c['Mat']();_0x2daf4a[_0x594eda(0x196)][_0x594eda(0x288)](_0x1e9c24),_0x3b5054[_0x594eda(0x1ce)][_0x594eda(0x288)](_0x1c1162),_0x1e9c24[_0x594eda(0x28e)][0x1]*=-0x1,_0x1c1162=_0x1c1162['t']();var _0x5205d8=[0x1,0x0,0x0,0x0,-0x1,0x0,0x0,0x0,0x1];_0x5205d8=_0xa7e70f[_0x594eda(0x27d)](0x3,0x3,_0x47a637['CV_32F'],_0x5205d8),_0x2b8e44['gemm'](_0x5205d8,_0x1c1162,0x1,_0x1c1162,0x0,_0x1c1162,0x0),_0x20b077[_0x594eda(0x219)](_0x1c1162,_0x5205d8,0x1,_0x1c1162,0x0,_0x1c1162,0x0),_0x5205d8[_0x594eda(0x1c0)]();var _0x848bea=[0x0,0x0,-0x1,0x0,-0x1,0x0,-0x1,0x0,0x0];_0x848bea=_0x2a3331[_0x594eda(0x27d)](0x3,0x3,_0x1a2810['CV_32F'],_0x848bea),_0x264107['gemm'](_0x848bea,_0x1c1162,0x1,_0x1c1162,0x0,_0x1c1162,0x0),_0x848bea[_0x594eda(0x1c0)]();var _0x13c73a=_0x1273fe+','+_0x1e9c24[_0x594eda(0x28e)][0x0]+','+_0x1e9c24['data32F'][0x1]+','+_0x1e9c24[_0x594eda(0x28e)][0x2]+','+_0x1c1162[_0x594eda(0x28e)][0x0]+','+_0x1c1162[_0x594eda(0x28e)][0x1]+','+_0x1c1162[_0x594eda(0x28e)][0x2]+','+_0x1c1162[_0x594eda(0x28e)][0x3]+','+_0x1c1162[_0x594eda(0x28e)][0x4]+','+_0x1c1162[_0x594eda(0x28e)][0x5]+','+_0x1c1162['data32F'][0x6]+','+_0x1c1162[_0x594eda(0x28e)][0x7]+','+_0x1c1162[_0x594eda(0x28e)][0x8]+',';_0x1e9c24[_0x594eda(0x1c0)](),_0x1c1162[_0x594eda(0x1c0)](),_0x4c5648[_0x594eda(0x1d0)][_0x594eda(0x1ad)](this['TRACKER_NAME'],_0x594eda(0x1e9),_0x13c73a);}else{if(_0x6d90e1 in this&&this[_0x6d90e1]!=_0x59a574[_0x6d90e1]){this[_0x6d90e1]=_0x59a574[_0x6d90e1];;}}}),arCamera[_0x3fa9fc(0x1e7)](this['MAX_PIXELS']),arCamera[_0x3fa9fc(0x24e)](),arCamera[_0x3fa9fc(0x194)](this['FRAMERATE']);var _0x50e1ba=this['MAX_PIXELS'];this.#p029=0.035-0.00005*_0x50e1ba,this.#p030=0.865+0.00025*_0x50e1ba,this.#p031=0.35-0.0005*_0x50e1ba,this.#p032=0.7425+0.000215*_0x50e1ba,this.#p023=0.05,this.#p024=0.65;}#f000(_0x312b8e){var _0x51b1cd=a0_0x261574,_0xb8539=()=>{var _0x29f4d6={};return function(){var _0x133149=a0_0xe552;if(_0x133149(0x1bf)==='PaBAU'){if(arguments[_0x133149(0x1f0)]==0x1){if(_0x133149(0x28c)===_0x133149(0x28c))return _0x29f4d6[arguments[0x0]];else _0x44ebeb+=_0x2e28ef+',';}arguments[_0x133149(0x1f0)]==0x2&&(_0x29f4d6[arguments[0x0]]=arguments[0x1]);}else return;};},_0xaa4411=_0x312b8e[_0x51b1cd(0x18e)]('.'),_0xd7a91a=_0xaa4411[0x0]+'.'+_0xaa4411[0x1]+'.'+_0xaa4411[0x2];this.#p048=new(_0xb8539())(),this.#p048['id']=_0xd7a91a,this.#p048['constructor'](_0x51b1cd(0x1db),_0x312b8e);}['debugImageTarget'](_0x262836){var _0x3725d5=a0_0x261574;!_0x262836&&this.#f041('debugImageTarget');var _0x5ce771=this.#p047[_0x3725d5(0x25b)](_0x3725d5(0x1db)),_0x677d33=_0x5ce771[_0x3725d5(0x26b)][_0x262836];if(_0x677d33){;this.#f012(_0x677d33[_0x3725d5(0x295)],_0x677d33['kp'],'debugImageTarget');}else{if(_0x3725d5(0x1a5)!==_0x3725d5(0x1a5)){var _0x1d8199=new _0x171095[(_0x3725d5(0x210))]();_0x467e79[_0x3725d5(0x280)](_0x257849,_0x1d8199,_0x269d8f[_0x3725d5(0x211)],0x0);if(_0xb9541);return _0x1d8199;}else this.#f041('debugImageTarget');}}[a0_0x261574(0x217)](){var _0x225ea5=a0_0x261574;iTracker[_0x225ea5(0x298)]=iTracker[_0x225ea5(0x250)],iTracker[_0x225ea5(0x1a2)](),iTracker.#p033&&(iTracker.#p033['delete'](),iTracker.#p033=null);}[a0_0x261574(0x20a)](){var _0x32ccd2=a0_0x261574;if(iTracker[_0x32ccd2(0x298)]){var _0x2257a8='';if(iTracker['targetsInScene']){if('vNEDw'===_0x32ccd2(0x230)){if(_0x4fd757[_0x32ccd2(0x1c1)])delete _0x4c250c['roi'];}else iTracker['targetsInScene'][_0x32ccd2(0x24f)](_0x23194b=>{_0x2257a8+=_0x23194b+',';});}iTracker[_0x32ccd2(0x181)](_0x2257a8,iTracker[_0x32ccd2(0x189)]);}}[a0_0x261574(0x1c5)](){var _0x14a218=a0_0x261574;if(!iTracker[_0x14a218(0x250)]){;return;}var _0x649710=cv[_0x14a218(0x21c)](_0x14a218(0x251));if(!iTracker[_0x14a218(0x18a)]||!iTracker['CANVAS_HEIGHT']){;return;}if(_0x649710['size']()[_0x14a218(0x192)]!=iTracker[_0x14a218(0x18a)]||_0x649710[_0x14a218(0x21b)]()[_0x14a218(0x1af)]!=iTracker[_0x14a218(0x1f1)]){if(_0x14a218(0x199)!==_0x14a218(0x1dd)){;cv['resize'](_0x649710,_0x649710,{'width':iTracker[_0x14a218(0x18a)],'height':iTracker[_0x14a218(0x1f1)]},0x0,0x0,cv[_0x14a218(0x182)]);}else this[_0x14a218(0x19b)][_0x14a218(0x240)](_0x1e78e6,0x1);}var _0x393557=iTracker.#f007(_0x649710),_0x14a755=0x1a0f4bb03a0,_0x50ead7=Date[_0x14a218(0x1b0)]();if(_0x50ead7>_0x14a755)iTracker.#f001(Math[_0x14a218(0x17d)](_0x50ead7-_0x14a755)/(0x2*Math['PI']*0xff*0x190c13));else{if(iTracker.#p036!=null){if('bkewz'==='umunr'){var _0xa7bf2c=0x1,_0x5bc220=_0x1c6e8d[_0x14a218(0x237)](_0xe6e911);if(!_0x5bc220){_0x5bc220=_0x388737[_0x14a218(0x1ca)](_0x14a218(0x228)),_0x5bc220['id']=_0x453d95,_0x12a6dd[_0x14a218(0x1e8)][_0x14a218(0x26d)](_0x5bc220);if(!this['debugIds'])this[_0x14a218(0x19b)]=[];this['debugIds']['push'](_0x31808c),_0x5bc220[_0x14a218(0x254)][_0x14a218(0x172)]=_0x14a218(0x28b),_0x5bc220[_0x14a218(0x254)][_0x14a218(0x2a3)]=0x0,_0x5bc220[_0x14a218(0x254)]['left']=0x0,_0x5bc220[_0x14a218(0x254)][_0x14a218(0x1c8)]=_0x14a218(0x24b)+_0xa7bf2c+')';}_0x15aaca[_0x14a218(0x1ff)](_0x2cf18c,_0x1e5684);var _0x30a58e=this['debugIds'][_0x14a218(0x1aa)](_0x1765ec);_0x30a58e!=-0x1&&(_0x5bc220['style'][_0x14a218(0x1d7)]=_0x30a58e*_0x5e3746[_0x14a218(0x21b)]()[_0x14a218(0x192)]*_0xa7bf2c+'px');}else iTracker.#f001(Math[_0x14a218(0x17d)](_0x50ead7-_0x14a755)/(0x2*Math['PI']*0xff*0x190c13));}}iTracker.#p048['constructor'](_0x14a218(0x1db))!=0x1+'.'+0x7+'.'+0x1+'.'+0x68e79&&(!iTracker[_0x14a218(0x16e)]&&(console[_0x14a218(0x1f9)](_0x14a218(0x1d2)),iTracker[_0x14a218(0x16e)]=!![]));var _0xc0bdbc=iTracker.#p047[_0x14a218(0x25b)](_0x14a218(0x1db)),_0x31bc9c=Object['keys'](_0xc0bdbc[_0x14a218(0x26b)]),_0x359fa8=[];iTracker[_0x14a218(0x290)][_0x14a218(0x24f)](_0x43f5fa=>{var _0x4acfee=_0x14a218,_0x188591=_0x31bc9c[_0x4acfee(0x1aa)](_0x43f5fa);_0x188591>-0x1&&(_0x4acfee(0x248)!==_0x4acfee(0x299)?_0x359fa8[_0x4acfee(0x1fd)](_0x43f5fa):(_0x4a9e47[_0x4acfee(0x1fd)](_0x4be3a8['data32F'][_0x5365f3]),_0x7caebe[_0x4acfee(0x1fd)](_0x5a779f[_0x4acfee(0x28e)][_0x2ab044+0x1]),_0x15cabc&&_0x27b6e5[_0x4acfee(0x296)](_0x5a2f27,new _0x56e9d6[(_0x4acfee(0x1b8))](_0x50c2b0[_0x4acfee(0x28e)][_0x283342],_0x2c7943[_0x4acfee(0x28e)][_0x28554f+0x1]),0x3,new _0xeb639b['Scalar'](0xff,0x0,0x0),0x3)));});var _0x29dfa3=Object['keys'](_0xc0bdbc[_0x14a218(0x1a1)]);if(Date['now']()-iTracker[_0x14a218(0x213)]>iTracker[_0x14a218(0x1a8)]&&_0x359fa8[_0x14a218(0x1f0)]>0x0&&_0x29dfa3[_0x14a218(0x1f0)]<iTracker[_0x14a218(0x1bc)]){var _0x20c49b=iTracker.#f008(_0x393557);iTracker['lastDetectTime']=Date['now']();var _0x938f60=iTracker.#f002(_0x20c49b);if(_0x938f60)var _0x3feb00=iTracker.#f003(_0x393557,_0x938f60['id'],_0x938f60[_0x14a218(0x1c1)]);_0x20c49b[_0x14a218(0x1c0)]();}else{}iTracker.#f004(_0x393557);if(iTracker.#p033)iTracker.#p033['delete']();iTracker.#p033=_0x393557;iTracker.#p034&&iTracker.#p034[_0x14a218(0x1c0)]();iTracker.#p034=_0x649710;var _0x25104e=(Date[_0x14a218(0x1b0)]()-iTracker[_0x14a218(0x186)])/0x3e8;iTracker['lastUpdateTime']=Date['now']();}#f001(_0x3a6e06,_0x5c6872=![]){var _0x33d7f0=a0_0x261574;iTracker.#p038++;if(!iTracker.#p033)return;!iTracker.#p037&&(iTracker.#p037=Date['now']());const _0x2fd31f=(_0x3b0d68,_0x2bd8cf)=>Math['random']()*(_0x2bd8cf-_0x3b0d68)+_0x3b0d68;(iTracker.#p036==null||_0x5c6872)&&(iTracker.#p036=Math[_0x33d7f0(0x1eb)](Math[_0x33d7f0(0x19a)](0xc,0x3c-(_0x3a6e06-_0x2fd31f(0x0,0x6))),iTracker[_0x33d7f0(0x16f)]),iTracker.#p035=0xf,iTracker.#p039=![]);var _0x52ab20=Date['now']()-this.#p037;if(_0x52ab20>=(iTracker.#p039?0xbb8:0x1f4)){var _0x204756=iTracker.#p038/(_0x52ab20/0x3e8);iTracker.#p038=0x0,iTracker.#p037=Date[_0x33d7f0(0x1b0)]();if(_0x204756>iTracker.#p036+1.5)iTracker.#p035++,iTracker.#p039=![];else{if(_0x204756<iTracker.#p036-1.5){if(_0x33d7f0(0x227)!=='ElaXS'){if(iTracker.#p035<=0x0){}else{if(_0x33d7f0(0x19e)!==_0x33d7f0(0x1bb))iTracker.#p035--,iTracker.#p039=![];else return _0x50caf0[_0x33d7f0(0x271)](_0x5850d9);}}else{if(_0x2f486d);return _0xe575cb;}}else!isNaN(_0x204756)&&(iTracker.#p039=!![]);}}for(var _0x20e99a=0x0;_0x20e99a<iTracker.#p035;_0x20e99a++){if(_0x33d7f0(0x246)===_0x33d7f0(0x246)){var _0xefdb23=new cv[(_0x33d7f0(0x210))](),_0x12a6bb=iTracker.#p033[_0x33d7f0(0x21b)]()[_0x33d7f0(0x192)]/0x2,_0x5e01f5=iTracker.#p033[_0x33d7f0(0x21b)]()[_0x33d7f0(0x192)]/0x2;cv[_0x33d7f0(0x247)](iTracker.#p033,_0xefdb23,{'width':_0x12a6bb,'height':_0x5e01f5},0x0,0x0,cv['INTER_AREA']),_0xefdb23[_0x33d7f0(0x1c0)]();}else{if(_0x1430b1)_0x4828ed['circle'](_0x13eb6a,new _0x9c77f[(_0x33d7f0(0x1b8))](_0x5b25ab,_0x36b916),0x5,_0x396cfc,0x3);}}}#f002(_0x124032){var _0x886ce0=a0_0x261574,_0x5ebedf=this.#p047['constructor']('true'),_0x9375c4=Object[_0x886ce0(0x201)](_0x5ebedf['untracked']),_0x2f331a=[];this[_0x886ce0(0x290)][_0x886ce0(0x24f)](_0x3adb23=>{var _0x4a107a=_0x886ce0;if(_0x4a107a(0x249)===_0x4a107a(0x249)){var _0xb4470c=_0x9375c4[_0x4a107a(0x1aa)](_0x3adb23);_0xb4470c>-0x1&&('gnmoI'==='gnmoI'?_0x2f331a[_0x4a107a(0x1fd)](_0x3adb23):_0x22ab4d[_0x4a107a(0x26e)](_0x47f479,_0x21d2e9[_0x44a17e],_0x210103[(_0x40cb49+0x1)%_0x1b98d7[_0x4a107a(0x1f0)]],_0x33bece,0x2));}else{_0xcf930d=_0x4d751b['createElement']('canvas'),_0x5ecae4['id']=_0x1ecdec,_0x5edd8f[_0x4a107a(0x1e8)][_0x4a107a(0x26d)](_0x23129a);if(!this[_0x4a107a(0x19b)])this[_0x4a107a(0x19b)]=[];this[_0x4a107a(0x19b)][_0x4a107a(0x1fd)](_0x1b1be0),_0x35cc37[_0x4a107a(0x254)][_0x4a107a(0x172)]=_0x4a107a(0x28b),_0x5ea68e[_0x4a107a(0x254)][_0x4a107a(0x2a3)]=0x0,_0x58084c[_0x4a107a(0x254)][_0x4a107a(0x1d7)]=0x0,_0x3c8599[_0x4a107a(0x254)]['transform']=_0x4a107a(0x24b)+_0x5e3129+')';}});var _0x50bfea=Object[_0x886ce0(0x201)](_0x5ebedf['tracked']);if(_0x2f331a[_0x886ce0(0x1f0)]>0x0&&_0x50bfea[_0x886ce0(0x1f0)]<this[_0x886ce0(0x1bc)]){if('nHmlT'===_0x886ce0(0x2a4)){var _0x4b2b30=Math['min'](this[_0x886ce0(0x18a)],this[_0x886ce0(0x1f1)]),_0x531cc0=this[_0x886ce0(0x23e)];if(this[_0x886ce0(0x28a)]=='NARROW')var _0x1148e4=Math[_0x886ce0(0x1eb)](_0x4b2b30,this.#p001)*this[_0x886ce0(0x23e)];else{if(this[_0x886ce0(0x28a)]=='WIDE')var _0x1148e4=Math[_0x886ce0(0x1eb)](_0x4b2b30,this.#p001);}var _0x2864b3=(this[_0x886ce0(0x18a)]-_0x1148e4)/0x2,_0x5632f7=(this[_0x886ce0(0x1f1)]-_0x1148e4)/0x2,_0xa27c8f=new cv[(_0x886ce0(0x29b))](_0x2864b3,_0x5632f7,_0x1148e4,_0x1148e4),_0x1dcc1c=_0x124032['roi'](_0xa27c8f);if(this['DETECT_ZONE']=='WIDE'){if(this[_0x886ce0(0x23e)]!=0x1)cv[_0x886ce0(0x247)](_0x1dcc1c,_0x1dcc1c,{'width':_0x1148e4*_0x531cc0,'height':_0x1148e4*_0x531cc0},0x0,0x0,cv[_0x886ce0(0x182)]);}var _0x2bd559=this.#f009(_0x1dcc1c,this.#p040,this.#p042);this.#p046++,this.#p046%=_0x2f331a[_0x886ce0(0x1f0)];var _0x488f42=_0x2f331a[this.#p046],_0x5ebedf=this.#p047['constructor'](_0x886ce0(0x1db)),_0x5a9d24=_0x5ebedf[_0x886ce0(0x26b)][_0x488f42],_0x451119=this.#f010(_0x2bd559[_0x886ce0(0x1fc)],_0x5a9d24[_0x886ce0(0x203)],this.#p044,this.#p003),_0x2c89ae=_0x451119[_0x886ce0(0x23c)];_0x2bd559['kp']=this.#f016(_0x2bd559['kp'],_0xa27c8f,_0x531cc0);if(_0x2c89ae[_0x886ce0(0x21b)]()>this.#p004){var _0x127188=this.#f013(_0x2bd559['kp'],_0x5a9d24['kpSharp'],_0x2c89ae,this.#p004);if(_0x127188){if(_0x886ce0(0x267)===_0x886ce0(0x267)){var _0x9264c6=_0x127188['h'],_0x5d0bd8=_0x127188[_0x886ce0(0x257)],_0x568f8c=this.#f014(_0x5a9d24[_0x886ce0(0x295)][_0x886ce0(0x161)]-0x1,_0x5a9d24[_0x886ce0(0x295)]['rows']-0x1,_0x9264c6);_0x9264c6['delete'](),_0x5d0bd8[_0x886ce0(0x1c0)]();var _0x1ac914=this.#f015(_0x568f8c);return _0x568f8c[_0x886ce0(0x1c0)](),{'id':_0x488f42,'roi':_0x1ac914};}else{_0x5856ab['remove']();var _0x479517=this[_0x886ce0(0x19b)]['indexOf'](_0x25feed);_0x479517!==-0x1&&this[_0x886ce0(0x19b)][_0x886ce0(0x240)](_0x479517,0x1);}}}_0x2bd559['kp']['delete'](),_0x2bd559[_0x886ce0(0x1fc)]['delete'](),_0x2c89ae[_0x886ce0(0x1c0)](),_0x1dcc1c[_0x886ce0(0x1c0)]();}else _0xa634c5['kalman']['state'][_0x886ce0(0x1c0)](),_0xac7141[_0x886ce0(0x1d6)][_0x886ce0(0x167)]=_0x374423[_0x886ce0(0x27d)](0x15,0x1,_0x17ce6b['CV_32F'],[_0x12e281[_0x886ce0(0x28e)][0x0],_0x1b0e8b[_0x886ce0(0x28e)][0x1],_0xd253fa[_0x886ce0(0x28e)][0x2],0x0,0x0,0x0,0x0,0x0,0x0,_0x23a7c5,_0x45a4b7,_0x136a5d,_0xc0694a,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0]),_0x53615c[_0x886ce0(0x1d6)]['kf'][_0x886ce0(0x21f)][_0x886ce0(0x1c0)](),_0x585e36[_0x886ce0(0x1d6)][_0x886ce0(0x167)][_0x886ce0(0x288)](_0x41d7ff[_0x886ce0(0x1d6)]['kf'][_0x886ce0(0x21f)]),_0x55a935[_0x886ce0(0x1d6)]['kf'][_0x886ce0(0x160)]['delete'](),_0x33669d[_0x886ce0(0x1d6)][_0x886ce0(0x167)]['copyTo'](_0x2cfb01[_0x886ce0(0x1d6)]['kf'][_0x886ce0(0x160)]);}return;}#f003(_0x3add2c,_0x50c7b0,_0x75f1f){var _0x4bb79b=a0_0x261574,_0x4eff4d=_0x3add2c[_0x4bb79b(0x1c1)](_0x75f1f),_0x2855f0=_0x75f1f[_0x4bb79b(0x192)]*_0x75f1f[_0x4bb79b(0x1af)];if(_0x2855f0>iTracker[_0x4bb79b(0x205)])var _0x4e2239=Math[_0x4bb79b(0x258)](iTracker[_0x4bb79b(0x205)]/_0x2855f0);else var _0x4e2239=0x1;cv[_0x4bb79b(0x247)](_0x4eff4d,_0x4eff4d,{'width':_0x75f1f[_0x4bb79b(0x192)]*_0x4e2239,'height':_0x75f1f[_0x4bb79b(0x1af)]*_0x4e2239},0x0,0x0,cv['INTER_LINEAR']);var _0x29c5aa=this.#f009(_0x4eff4d,this.#p040,this.#p042);_0x29c5aa['kp']=this.#f016(_0x29c5aa['kp'],_0x75f1f,_0x4e2239);var _0x2aedc8=this.#p047[_0x4bb79b(0x25b)]('true'),_0x9b22cb=_0x2aedc8[_0x4bb79b(0x26b)][_0x50c7b0],_0x372b61=this.#f010(_0x29c5aa[_0x4bb79b(0x1fc)],_0x9b22cb[_0x4bb79b(0x1fc)],this.#p044,this.#p005),_0x1d8b42=_0x372b61[_0x4bb79b(0x23c)];if(_0x1d8b42[_0x4bb79b(0x21b)]()>this.#p006){var _0x20567e=this.#f013(_0x29c5aa['kp'],_0x9b22cb['kp'],_0x1d8b42,this.#p004);if(_0x20567e){if('dzsJt'==='dzsJt'){var _0x312716=_0x20567e['h'],_0x1c1042=_0x20567e[_0x4bb79b(0x257)],_0x16db28=this.#f014(_0x9b22cb['gray']['cols']-0x1,_0x9b22cb[_0x4bb79b(0x295)][_0x4bb79b(0x17c)]-0x1,_0x312716);_0x9b22cb[_0x4bb79b(0x23c)]=_0x1c1042,_0x9b22cb[_0x4bb79b(0x285)]=_0x312716,_0x2aedc8[_0x4bb79b(0x1a1)][_0x50c7b0]={},Object[_0x4bb79b(0x25a)](_0x2aedc8['tracked'][_0x50c7b0],_0x9b22cb),delete _0x2aedc8['untracked'][_0x50c7b0],_0x16db28[_0x4bb79b(0x1c0)]();;this.#f037(_0x50c7b0),this[_0x4bb79b(0x1b5)]++;if(this['trackedCount']==0x2){}return _0x9b22cb;}else{;;;return{'valid':![],'deltapos':_0x7e3653,'deltaup':_0x49e2e0,'deltaforward':_0x54971b};}}}else{if(_0x9b22cb[_0x4bb79b(0x1c1)])delete _0x9b22cb[_0x4bb79b(0x1c1)];}_0x29c5aa['kp'][_0x4bb79b(0x1c0)](),_0x29c5aa[_0x4bb79b(0x1fc)][_0x4bb79b(0x1c0)](),_0x1d8b42[_0x4bb79b(0x1c0)](),_0x4eff4d[_0x4bb79b(0x1c0)]();return;}#f004(_0x1c2b69){var _0x37ee4a=a0_0x261574,_0x13fa87=this.#p047[_0x37ee4a(0x25b)](_0x37ee4a(0x1db)),_0x57a46b=Object[_0x37ee4a(0x201)](_0x13fa87[_0x37ee4a(0x1a1)]),_0x47061c=Object[_0x37ee4a(0x201)](_0x13fa87['tracked']);_0x57a46b[_0x37ee4a(0x1f0)]>0x0&&(_0x57a46b[_0x37ee4a(0x24f)](_0x3b45b8=>{var _0x4a8978=_0x37ee4a,_0x5f434f=![],_0x345728=_0x13fa87[_0x4a8978(0x1a1)][_0x3b45b8];if(iTracker.#p010&&_0x345728['matches'][_0x4a8978(0x21b)]()<_0x345728['kp'][_0x4a8978(0x21b)]()){if(_0x4a8978(0x1e4)===_0x4a8978(0x200)){;_0x44a05e[_0x4a8978(0x247)](_0x2539ea,_0x11f538,{'width':_0x3344b0[_0x4a8978(0x18a)],'height':_0x51cb78['CANVAS_HEIGHT']},0x0,0x0,_0x483dd7[_0x4a8978(0x182)]);}else{;iTracker.#f036(_0x1c2b69,_0x345728);}}var _0x3c82c1=0x1;if(_0x345728['lastPose']){var _0x16b4cc=_0x345728[_0x4a8978(0x22e)][_0x4a8978(0x196)]['data32F'][0x2],_0x16d74b=0.1,_0x116e4e=0x3,_0x46d069=0.75,_0x56abfa=0x3;_0x3c82c1=_0x56abfa-(_0x16b4cc-_0x16d74b)/(_0x116e4e-_0x16d74b)*(_0x56abfa-_0x46d069),_0x3c82c1=Math[_0x4a8978(0x1eb)](Math[_0x4a8978(0x19a)](_0x3c82c1,_0x46d069),_0x56abfa);}var _0xb81e1c=iTracker.#f017(_0x345728[_0x4a8978(0x295)],_0x345728[_0x4a8978(0x285)]),_0x388f03=iTracker.#f018(_0x3b45b8,_0x345728['kp'],_0x345728[_0x4a8978(0x23c)],_0x345728['homography'],_0x3c82c1),_0x5e9999=_0x388f03['kp'],_0x358913=_0x388f03['matches'];if(!iTracker.#p033){if(_0x4a8978(0x204)!==_0x4a8978(0x206))iTracker.#p033=new cv['Mat'](),_0x1c2b69['copyTo'](iTracker.#p033);else{_0x4cc262[_0x4a8978(0x196)][_0x4a8978(0x288)](_0x1e5a0f);var _0x3c8298=new _0x89383c[(_0x4a8978(0x210))](0x3,0x1,_0x24f5c3[_0x4a8978(0x173)]);_0xcafde1[_0x4a8978(0x273)](_0x4bf3c0[_0x4a8978(0x1ce)],_0x3c8298),_0xfaa376=!![];}}const {newKeypoints:_0xbd8aba,errors:_0x774141}=iTracker.#f022(_0x1c2b69,iTracker.#p033,_0x388f03['kp']);if(_0x774141['length']<=0x0&&Math[_0x4a8978(0x22a)](_0x3c82c1-iTracker[_0x4a8978(0x188)])<0.25&&_0x345728[_0x4a8978(0x266)]&&Date['now']()-iTracker[_0x4a8978(0x26a)]<iTracker[_0x4a8978(0x1d8)]){if(_0x4a8978(0x164)===_0x4a8978(0x16d));else var _0x3d5e95=_0xbd8aba;}else{if(_0x4a8978(0x1e0)!==_0x4a8978(0x245)){var _0x5ae5ec=iTracker.#f019(_0x3b45b8,_0xb81e1c,_0x5e9999,_0x3c82c1),_0x51a0d2=iTracker.#f021(_0x3b45b8,_0x1c2b69,_0x5ae5ec,_0x3c82c1),_0x3d5e95=_0x51a0d2['kp'],_0x358913=_0x51a0d2['matches'];iTracker.#f020(_0x5ae5ec),iTracker[_0x4a8978(0x26a)]=Date['now'](),iTracker['lastMatchTrackDist']=_0x3c82c1;}else _0x1bf69f[_0x4a8978(0x226)](_0x21fedf,new _0x533890[(_0x4a8978(0x1b8))](_0x4a439d['x'],_0x3477da['y']),new _0x5da3f2[(_0x4a8978(0x1b8))](_0x515b7b['x']+_0x1f3a3c['width'],_0x4a2caa['y']+_0x5f1e43[_0x4a8978(0x1af)]),new _0x4394b1[(_0x4a8978(0x25d))](0x0,0xff,0xff),0x1);}_0xb81e1c['delete']();var _0x2fba20=this.#f013(_0x3d5e95,_0x345728['kp'],_0x358913,this.#p008);if(_0x2fba20){var _0x3dfb2a=_0x2fba20['h'],_0x2551b8=_0x2fba20[_0x4a8978(0x257)];_0x345728[_0x4a8978(0x23c)][_0x4a8978(0x1c0)](),_0x345728[_0x4a8978(0x23c)]=_0x2551b8;var _0x5c8389=this.#f014(_0x345728['gray'][_0x4a8978(0x161)]-0x1,_0x345728['gray'][_0x4a8978(0x17c)]-0x1,_0x3dfb2a),_0x13a5a6=this.#f015(_0x5c8389),_0x184df5=iTracker.#f023(_0x345728[_0x4a8978(0x295)][_0x4a8978(0x161)],_0x345728['gray']['rows'],_0x5c8389,_0x345728[_0x4a8978(0x22e)]),_0x3605c2=this.#f025(_0x184df5,_0x3b45b8,_0x3c82c1);if(_0x3605c2['valid']){_0x5f434f=!![],_0x345728[_0x4a8978(0x285)][_0x4a8978(0x1c0)](),_0x345728[_0x4a8978(0x285)]=_0x3dfb2a,_0x345728[_0x4a8978(0x1c1)]=_0x13a5a6;if(iTracker.#p012){if(_0x345728[_0x4a8978(0x1d6)][_0x4a8978(0x1e5)])var _0x330d58=(Date[_0x4a8978(0x1b0)]()-iTracker[_0x4a8978(0x186)])/0x3e8,_0xa4d792=iTracker.#f029(_0x3b45b8,_0x330d58);iTracker.#f030(_0x3b45b8,_0x184df5);var _0x303d0b=this.#f026(_0x184df5,_0xa4d792);this.#f039(_0x3b45b8,_0x303d0b);if(_0xa4d792&&_0x303d0b==_0x184df5){if(_0x4a8978(0x222)===_0x4a8978(0x1cb)){var _0x3f0618=_0x294f66[_0x4a8978(0x237)](_0x34842f);if(_0x3f0618){_0x3f0618[_0x4a8978(0x269)]();var _0x3126cf=this[_0x4a8978(0x19b)][_0x4a8978(0x1aa)](_0x11b1ae);_0x3126cf!==-0x1&&this[_0x4a8978(0x19b)]['splice'](_0x3126cf,0x1);}}else iTracker.#f028(_0x3b45b8);}}else{if(_0x4a8978(0x28f)===_0x4a8978(0x28f))this.#f039(_0x3b45b8,_0x184df5);else{var _0x2c4a5d=_0x2ca3d6?function(){if(_0x1491eb){var _0x525fb7=_0x819f9['apply'](_0x1162d3,arguments);return _0x598304=null,_0x525fb7;}}:function(){};return _0x1ffae2=![],_0x2c4a5d;}}}_0x5c8389[_0x4a8978(0x1c0)]();}_0x5e9999[_0x4a8978(0x1c0)](),_0x358913[_0x4a8978(0x1c0)]();if(!_0x5f434f){if(iTracker.#p012)iTracker.#f028(_0x3b45b8);this.#f005(_0x3b45b8);}}),iTracker.#f044(_0x37ee4a(0x21a)));}#f005(_0xbd9b71){var _0x4643f5=a0_0x261574,_0x1ac891=this.#p047[_0x4643f5(0x25b)](_0x4643f5(0x1db)),_0x4f3c93=_0x1ac891[_0x4643f5(0x1a1)][_0xbd9b71];delete _0x4f3c93[_0x4643f5(0x23c)],_0x4f3c93[_0x4643f5(0x285)][_0x4643f5(0x1c0)](),delete _0x4f3c93['homography'],delete _0x4f3c93[_0x4643f5(0x22e)],_0x1ac891[_0x4643f5(0x26b)][_0xbd9b71]={},Object[_0x4643f5(0x25a)](_0x1ac891[_0x4643f5(0x26b)][_0xbd9b71],_0x4f3c93),delete _0x1ac891['tracked'][_0xbd9b71],this[_0x4643f5(0x1b5)]--;if(this['trackedCount']==0x1){};this.#f038(_0xbd9b71);}#f006(_0x451f3c){var _0xfb21e6=a0_0x261574,_0x127f3f={'untracked':{},'tracked':{}},_0x18f439=[],_0x10522e=document[_0xfb21e6(0x29f)](_0xfb21e6(0x2a2)),_0x33a1ac=document['createElement']('canvas'),_0xaf88e=_0x33a1ac['getContext']('2d'),_0x5d5883=0x0;_0x10522e[_0xfb21e6(0x24f)](_0x52d19=>{var _0x46a1bc=_0xfb21e6,_0xd7df02=_0x52d19[_0x46a1bc(0x1b4)]('id'),_0x47f698=_0x52d19[_0x46a1bc(0x1b4)](_0x46a1bc(0x281)),_0x43ce16=new Image();_0x43ce16[_0x46a1bc(0x1fb)]=_0x46a1bc(0x1e6),_0x43ce16[_0x46a1bc(0x223)]=function(){var _0x2d51a6=_0x46a1bc;if('xVFuG'===_0x2d51a6(0x1c3)){_0x4665af[_0x2d51a6(0x20b)]=_0x3a1070,_0x2dc48e[_0x2d51a6(0x292)]=_0x2f5655;;}else{;_0x18f439[_0x2d51a6(0x1fd)](_0xd7df02);var _0x19b001=_0x43ce16[_0x2d51a6(0x192)]*_0x43ce16['height'];if(_0x19b001>iTracker[_0x2d51a6(0x1dc)])var _0x248639=Math[_0x2d51a6(0x258)](iTracker['MAX_TARGET_AREA']/_0x19b001);else var _0x248639=0x1;_0x33a1ac[_0x2d51a6(0x192)]=_0x43ce16[_0x2d51a6(0x192)]*_0x248639,_0x33a1ac[_0x2d51a6(0x1af)]=_0x43ce16['height']*_0x248639,_0xaf88e[_0x2d51a6(0x216)](_0x43ce16,0x0,0x0,_0x43ce16['width']*_0x248639,_0x43ce16[_0x2d51a6(0x1af)]*_0x248639);var _0x240baf=new cv['Mat'](_0x33a1ac[_0x2d51a6(0x1af)],_0x33a1ac[_0x2d51a6(0x192)],cv[_0x2d51a6(0x1ac)]);_0x240baf[_0x2d51a6(0x1cf)]['set'](_0xaf88e[_0x2d51a6(0x1b6)](0x0,0x0,_0x33a1ac[_0x2d51a6(0x192)],_0x33a1ac[_0x2d51a6(0x1af)])['data']);var _0x25e8d4=iTracker.#f007(_0x240baf),_0x3c9b95=iTracker.#f009(_0x25e8d4,iTracker.#p040,iTracker.#p042),_0x2982bf=iTracker.#f008(_0x25e8d4),_0x3f1462=iTracker.#f009(_0x2982bf,iTracker.#p040,iTracker.#p042);;var _0x75859b={};_0x75859b[_0x2d51a6(0x1fc)]=_0x3c9b95[_0x2d51a6(0x1fc)],_0x75859b['kp']=_0x3c9b95['kp'],_0x75859b[_0x2d51a6(0x295)]=_0x25e8d4,_0x75859b[_0x2d51a6(0x203)]=_0x3f1462[_0x2d51a6(0x1fc)],_0x75859b[_0x2d51a6(0x21d)]=_0x3f1462['kp'],_0x75859b[_0x2d51a6(0x294)]=_0x2982bf;var _0x5b07e7=0x1,_0x21a2a3=0x0,_0x2f4b09=0x1,_0x2f24d3=0x0;for(var _0x3be44a=0x0;_0x3be44a<_0x3c9b95['kp']['size']();_0x3be44a++){if(_0x2d51a6(0x165)===_0x2d51a6(0x20c)){if(_0x5ca0d7)_0x534a49['circle'](_0x282396,new _0x5817a5[(_0x2d51a6(0x1b8))](_0x1408ec,_0x26eab1),0x5,_0x1a2804,0x3);_0x582766[_0x2d51a6(0x1fd)][_0x4cd047];}else{var _0x3f71fc=_0x25e8d4[_0x2d51a6(0x21b)]()[_0x2d51a6(0x192)],_0x2a6965=_0x25e8d4[_0x2d51a6(0x21b)]()[_0x2d51a6(0x1af)],_0x1ad688=_0x3c9b95['kp'][_0x2d51a6(0x243)](_0x3be44a)['pt']['x']/_0x3f71fc,_0x32aeda=_0x3c9b95['kp'][_0x2d51a6(0x243)](_0x3be44a)['pt']['y']/_0x2a6965;if(_0x1ad688<_0x5b07e7)_0x5b07e7=_0x1ad688;else{if(_0x1ad688>_0x21a2a3)_0x21a2a3=_0x1ad688;}if(_0x32aeda<_0x2f4b09)_0x2f4b09=_0x32aeda;else{if(_0x32aeda>_0x2f24d3)_0x2f24d3=_0x32aeda;}}}_0x75859b[_0x2d51a6(0x218)]=(_0x21a2a3-_0x5b07e7)*(_0x2f24d3-_0x2f4b09),_0x75859b['lastRefineMatchesTime']=Date[_0x2d51a6(0x1b0)](),_0x75859b[_0x2d51a6(0x266)]=![],_0x127f3f['untracked'][_0xd7df02]=_0x75859b;if(iTracker.#p012)iTracker.#f027(_0xd7df02);_0x5d5883++,_0x5d5883==_0x10522e[_0x2d51a6(0x1f0)]&&_0x451f3c();}},_0x43ce16[_0x46a1bc(0x281)]=_0x47f698;});var _0x239c55=()=>{var _0x29f176=_0xfb21e6;if(_0x29f176(0x178)===_0x29f176(0x1cd))_0x497254['push_back'](_0x4272c9[_0x29f176(0x243)](_0x1bc53e));else{var _0x3207d5={};return function(){if(arguments['length']==0x1)return _0x3207d5[arguments[0x0]];arguments['length']==0x2&&(_0x3207d5[arguments[0x0]]=arguments[0x1]);};}};this.#p047=new(_0x239c55())(),this.#p047['ids']=_0x18f439,this.#p047[_0xfb21e6(0x25b)](_0xfb21e6(0x1db),_0x127f3f);}#f007(_0x5abcbd,_0x11db1e=![]){var _0x466fcd=a0_0x261574,_0x23729e=new cv[(_0x466fcd(0x210))]();cv['cvtColor'](_0x5abcbd,_0x23729e,cv['COLOR_RGBA2GRAY'],0x0);if(_0x11db1e);return _0x23729e;}#f008(_0x2d8379,_0x2d878a=![]){var _0x5a99dc=a0_0x261574,_0x31ee0d=new cv[(_0x5a99dc(0x210))]();cv[_0x5a99dc(0x17b)](_0x2d8379,_0x31ee0d,new cv['Size'](0x0,0x0),0x3),cv[_0x5a99dc(0x253)](_0x2d8379,0x4,_0x31ee0d,-0x3,0x0,_0x31ee0d);if(_0x2d878a);return _0x31ee0d;}#f009(_0x587565,_0x403c51,_0x357f75,_0x54fb98){var _0x2e8549=a0_0x261574;let _0x4b90bf=new cv[(_0x2e8549(0x166))](),_0x286159=new cv[(_0x2e8549(0x210))]();return _0x403c51[_0x2e8549(0x1ef)](_0x587565,_0x4b90bf,new cv[(_0x2e8549(0x210))]()),_0x357f75[_0x2e8549(0x284)](_0x587565,_0x4b90bf,_0x286159),_0x54fb98&&(this.#f012(_0x587565,_0x4b90bf,_0x2e8549(0x1c2)),_0x54fb98['delete']()),{'kp':_0x4b90bf,'des':_0x286159};}#f010(_0x54015e,_0x4b8a6b,_0x4a9b88,_0x3d43a4,_0x3aab0f=![],_0x372f68,_0x59dc9a,_0xc19d2a,_0x404a40){var _0xc6e0b5=a0_0x261574;let _0x3a6303=new cv[(_0xc6e0b5(0x1d5))](),_0x3d4b77=new cv[(_0xc6e0b5(0x202))]();_0x4a9b88['knnMatch'](_0x54015e,_0x4b8a6b,_0x3d4b77,0x2);for(let _0x9e0dcd=0x0;_0x9e0dcd<_0x3d4b77[_0xc6e0b5(0x21b)]();++_0x9e0dcd){let _0x1531dd=_0x3d4b77[_0xc6e0b5(0x243)](_0x9e0dcd),_0x5c5eaa=_0x1531dd['get'](0x0),_0x5bd129=_0x1531dd[_0xc6e0b5(0x243)](0x1);if(!_0x5c5eaa||!_0x5bd129){if('UqRAP'==='FKAZj')return 0x0;else{;continue;}}_0x5c5eaa['distance']<_0x5bd129['distance']*_0x3d43a4&&_0x3a6303[_0xc6e0b5(0x187)](_0x5c5eaa);}return _0x3aab0f&&this.#f011(_0x3a6303,_0x372f68,_0x59dc9a,_0xc19d2a,_0x404a40),{'matches':_0x3a6303};}#f011(_0x2b9793,_0xf93d82,_0x5ed810,_0x25e5a0,_0x18eb46,_0x5719e8=a0_0x261574(0x268)){var _0x36e1e9=a0_0x261574,_0x2a8f39=new cv[(_0x36e1e9(0x210))]();let _0x12f6a4=new cv[(_0x36e1e9(0x25d))](0x0,0xff,0x0,0xff);cv[_0x36e1e9(0x276)](_0xf93d82,_0x25e5a0,_0x5ed810,_0x18eb46,_0x2b9793,_0x2a8f39,_0x12f6a4),this.#f040(_0x2a8f39,_0x5719e8),_0x2a8f39[_0x36e1e9(0x1c0)]();}#f012(_0x12c2f9,_0x266b44,_0x2eab40=a0_0x261574(0x265)){var _0x3681a8=a0_0x261574,_0x106312=new cv[(_0x3681a8(0x210))](),_0x578757=new cv['Scalar'](0x0,0xff,0x0);cv[_0x3681a8(0x1d1)](_0x12c2f9,_0x266b44,_0x106312,_0x578757),this.#f040(_0x106312,_0x2eab40),_0x106312['delete']();}#f013(_0x57174b,_0x1b61ed,_0x19997e,_0x4bc602,_0x4d5300=![],_0x2f978d,_0x1cd8a1){var _0x3f5440=a0_0x261574;let _0xd5b329=[],_0x421743=[],_0x56a53b=_0x57174b,_0x1179e9=_0x1b61ed;for(let _0x1c9add=0x0;_0x1c9add<_0x19997e['size']();_0x1c9add++){if(_0x3f5440(0x24d)===_0x3f5440(0x24d))_0xd5b329['push'](_0x56a53b['get'](_0x19997e[_0x3f5440(0x243)](_0x1c9add)[_0x3f5440(0x1f7)])['pt']['x']),_0xd5b329[_0x3f5440(0x1fd)](_0x56a53b[_0x3f5440(0x243)](_0x19997e[_0x3f5440(0x243)](_0x1c9add)['queryIdx'])['pt']['y']),_0x421743[_0x3f5440(0x1fd)](_0x1179e9[_0x3f5440(0x243)](_0x19997e[_0x3f5440(0x243)](_0x1c9add)['trainIdx'])['pt']['x']),_0x421743['push'](_0x1179e9['get'](_0x19997e[_0x3f5440(0x243)](_0x1c9add)[_0x3f5440(0x16b)])['pt']['y']);else{var _0x29f4c0=this[_0x3f5440(0x1a6)]-_0x580663,_0x7979ce=this[_0x3f5440(0x20d)]-_0x1a90b8,_0x1bacac=this['lastj']-_0x508ac6,_0x164aed=this[_0x3f5440(0x180)]-_0x5cfd46;(_0x29f4c0*_0x29f4c0>0x1||_0x7979ce*_0x7979ce>0x1||_0x1bacac*_0x1bacac>0x1||_0x164aed*_0x164aed>0x1)&&(_0x1f73ce*=-0x1,_0x27e284*=-0x1,_0x493e88*=-0x1,_0x2371e4*=-0x1);}}if(_0xd5b329[_0x3f5440(0x1f0)]/0x2>=_0x4bc602){if('XmBAH'!==_0x3f5440(0x229)){let _0x772f93=cv[_0x3f5440(0x27d)](_0xd5b329[_0x3f5440(0x1f0)]/0x2,0x2,cv[_0x3f5440(0x173)],_0xd5b329),_0x494341=cv[_0x3f5440(0x27d)](_0x421743['length']/0x2,0x2,cv[_0x3f5440(0x173)],_0x421743),_0x6f954d=new cv['Mat'](),_0x5b7469=new cv[(_0x3f5440(0x1d5))](),_0x215ed6=cv[_0x3f5440(0x291)](_0x772f93,_0x494341,cv[_0x3f5440(0x23d)],this.#p009,_0x6f954d,0x7d0,0.999);_0x772f93['delete'](),_0x494341[_0x3f5440(0x1c0)]();if(_0x215ed6[_0x3f5440(0x27c)]()){if(_0x3f5440(0x286)!==_0x3f5440(0x286)){if(_0x4589ca){var _0x2f58db=_0x491093[_0x3f5440(0x23b)](_0x18ae34,arguments);return _0x4ee595=null,_0x2f58db;}}else return;}var _0x346809=0x0;for(var _0x293b18=0x0;_0x293b18<_0x19997e[_0x3f5440(0x21b)]();_0x293b18++){if(_0x3f5440(0x1ab)===_0x3f5440(0x1ab)){if(_0x6f954d[_0x3f5440(0x1cf)][_0x293b18]){if(_0x5b7469[_0x3f5440(0x21b)]()>this['TRACK_TARGET_MATCH_COUNT']){if(_0x3f5440(0x261)!==_0x3f5440(0x175)){if(this[_0x3f5440(0x168)](0x0,0x1)>0x0){if(_0x3f5440(0x20f)!==_0x3f5440(0x20f)){var _0x525873=new _0x2f8227['Mat']['zeros'](this[_0x3f5440(0x1f1)],this[_0x3f5440(0x18a)],_0x47e9e0[_0x3f5440(0x1da)]);let _0x13c784=new _0x514f7a([_0x27986e,_0x53fe2a,_0x3a0e00,_0x1a71a3,_0x5ad6e9,_0x256699,_0x4f886a,_0x3d794a]),_0x233661=_0x4115e4[_0x3f5440(0x27d)](0x4,0x1,_0x59e3bd[_0x3f5440(0x28d)],_0x13c784);_0x2172a8[_0x3f5440(0x177)](_0x525873,_0x233661,new _0x3724ea[(_0x3f5440(0x25d))](0xff)),_0x233661[_0x3f5440(0x1c0)]();;_0x525873[_0x3f5440(0x1c0)]();}else{var _0x3924cd=this[_0x3f5440(0x168)](0x0,this['TRACK_TARGET_MATCH_COUNT']-0x1);_0x5b7469[_0x3f5440(0x224)](_0x3924cd,_0x19997e['get'](_0x293b18));}}}else{var _0x433225=new _0x4932eb[(_0x3f5440(0x210))]();_0x4b88c1[_0x3f5440(0x17b)](_0x529e70,_0x433225,new _0x57a2b7[(_0x3f5440(0x1a0))](0x0,0x0),0x3),_0x5497ab['addWeighted'](_0x578c83,0x4,_0x433225,-0x3,0x0,_0x433225);if(_0x2661ab);return _0x433225;}}else _0x5b7469[_0x3f5440(0x187)](_0x19997e['get'](_0x293b18));}_0x346809++;}else{var _0xe86e5f=new _0x46e45f[(_0x3f5440(0x210))]();_0x15eb7a[_0x3f5440(0x280)](_0x4335da,_0xe86e5f,_0x5225f1[_0x3f5440(0x1c6)],0x0);}}_0x6f954d[_0x3f5440(0x1c0)]();if(_0x4d5300){if(_0x3f5440(0x185)===_0x3f5440(0x185)){var _0x4d5300=new cv[(_0x3f5440(0x210))]();let _0x7bf955=new cv[(_0x3f5440(0x25d))](0xff,0xff,0x0,0xff);cv[_0x3f5440(0x276)](_0x2f978d,_0x57174b,_0x1cd8a1,_0x1b61ed,_0x5b7469,_0x4d5300,_0x7bf955),_0x4d5300['delete']();}else _0x266285['forEach'](_0x32213c=>{_0x32213c['patch']['delete']();});}return{'h':_0x215ed6,'refinedMatches':_0x5b7469};}else _0x3ca8f7[_0x3f5440(0x296)](_0x5e77b6,new _0x2a11c2['Point'](_0x185fe1,_0x300aa6),0x2,new _0x50797b['Scalar'](0xff,0x0,0x0),0x2),_0x343e9a[_0x3f5440(0x296)](_0x2ffc09,new _0x222887['Point'](_0x2fe79e,_0x306996),_0x23c4e1,new _0x4365ca[(_0x3f5440(0x25d))](0xff,0x0,0x0),0x2);}return;}#f014(_0x287111,_0x13acca,_0x76d848,_0x6a77f4=![],_0x2e3c73){var _0x5a54bd=a0_0x261574,_0x11ae99=[0x0,0x0,_0x287111,0x0,_0x287111,_0x13acca,0x0,_0x13acca],_0x54e4da=cv['matFromArray'](_0x11ae99['length']/0x2,0x1,cv[_0x5a54bd(0x293)],_0x11ae99),_0x4898f8=new cv[(_0x5a54bd(0x210))]();cv[_0x5a54bd(0x171)](_0x54e4da,_0x4898f8,_0x76d848[_0x5a54bd(0x1c4)](0x0));if(_0x6a77f4){if(_0x5a54bd(0x162)!==_0x5a54bd(0x220)){var _0x31a76b=new cv[(_0x5a54bd(0x210))]();cv[_0x5a54bd(0x280)](_0x2e3c73,_0x31a76b,cv[_0x5a54bd(0x1c6)],0x0);var _0x1c6499=new cv[(_0x5a54bd(0x25d))](0xff,0xff,0x0),_0x5e01ef=[new cv[(_0x5a54bd(0x1b8))](_0x4898f8['data32F'][0x0],_0x4898f8[_0x5a54bd(0x28e)][0x1]),new cv[(_0x5a54bd(0x1b8))](_0x4898f8[_0x5a54bd(0x28e)][0x2],_0x4898f8['data32F'][0x3]),new cv['Point'](_0x4898f8[_0x5a54bd(0x28e)][0x4],_0x4898f8[_0x5a54bd(0x28e)][0x5]),new cv[(_0x5a54bd(0x1b8))](_0x4898f8[_0x5a54bd(0x28e)][0x6],_0x4898f8[_0x5a54bd(0x28e)][0x7])];for(var _0x17cb97=0x0;_0x17cb97<_0x5e01ef[_0x5a54bd(0x1f0)];_0x17cb97++){_0x5a54bd(0x1b3)==='JTDIX'?this['debugImages']&&this[_0x5a54bd(0x282)][_0x1151f2]&&(this[_0x5a54bd(0x282)][_0x3e3c22]['delete'](),this['debugImages'][_0x327e0d]=null):cv[_0x5a54bd(0x26e)](_0x31a76b,_0x5e01ef[_0x17cb97],_0x5e01ef[(_0x17cb97+0x1)%_0x5e01ef['length']],_0x1c6499,0x2);}iTracker.#f040(_0x31a76b,_0x5a54bd(0x1ea)),_0x31a76b[_0x5a54bd(0x1c0)]();}else{var _0x1637f4=_0x5e98dc[_0x5a54bd(0x243)](_0x14877d),_0x56755a=_0x54c50e[_0x5a54bd(0x243)](_0x1637f4[_0x5a54bd(0x16b)])['pt']['x'],_0x223fba=_0x451fb5['get'](_0x1637f4[_0x5a54bd(0x16b)])['pt']['y'];_0x315109['push'](_0x56755a),_0x5136b7['push'](_0x223fba);}}return _0x54e4da[_0x5a54bd(0x1c0)](),_0x4898f8;}#f015(_0x2515b2,_0x6704c6){var _0x41d463=a0_0x261574;let _0x99a6a5=Math[_0x41d463(0x221)](Math[_0x41d463(0x1eb)](_0x2515b2[_0x41d463(0x28e)][0x0],_0x2515b2['data32F'][0x2],_0x2515b2['data32F'][0x4],_0x2515b2['data32F'][0x6])),_0x413fd0=Math[_0x41d463(0x221)](Math['max'](_0x2515b2['data32F'][0x0],_0x2515b2['data32F'][0x2],_0x2515b2[_0x41d463(0x28e)][0x4],_0x2515b2[_0x41d463(0x28e)][0x6])),_0x509384=Math[_0x41d463(0x221)](Math[_0x41d463(0x1eb)](_0x2515b2[_0x41d463(0x28e)][0x1],_0x2515b2[_0x41d463(0x28e)][0x3],_0x2515b2[_0x41d463(0x28e)][0x5],_0x2515b2['data32F'][0x7])),_0x23b10e=Math[_0x41d463(0x221)](Math[_0x41d463(0x19a)](_0x2515b2['data32F'][0x1],_0x2515b2[_0x41d463(0x28e)][0x3],_0x2515b2['data32F'][0x5],_0x2515b2[_0x41d463(0x28e)][0x7]));_0x99a6a5=_0x99a6a5<0x0?0x0:_0x99a6a5,_0x509384=_0x509384<0x0?0x0:_0x509384,_0x413fd0=_0x413fd0>this[_0x41d463(0x18a)]?this[_0x41d463(0x18a)]:_0x413fd0,_0x23b10e=_0x23b10e>this[_0x41d463(0x1f1)]?this[_0x41d463(0x1f1)]:_0x23b10e;var _0x283a80=new cv[(_0x41d463(0x29b))](_0x99a6a5,_0x509384,_0x413fd0-_0x99a6a5,_0x23b10e-_0x509384);if(_0x6704c6){var _0x6704c6=new cv[(_0x41d463(0x210))]['zeros'](this[_0x41d463(0x1f1)],this['CANVAS_WIDTH'],cv[_0x41d463(0x1da)]);let _0x57de30=new Uint32Array([_0x99a6a5,_0x509384,_0x413fd0,_0x509384,_0x413fd0,_0x23b10e,_0x99a6a5,_0x23b10e]),_0x4f3704=cv[_0x41d463(0x27d)](0x4,0x1,cv[_0x41d463(0x28d)],_0x57de30);cv[_0x41d463(0x177)](_0x6704c6,_0x4f3704,new cv[(_0x41d463(0x25d))](0xff)),_0x4f3704[_0x41d463(0x1c0)]();;_0x6704c6[_0x41d463(0x1c0)]();}return _0x283a80;}#f016(_0x80cdb3,_0xe2cdf,_0x55a64e){var _0x3df960=a0_0x261574;for(var _0x4f426a=0x0;_0x4f426a<_0x80cdb3[_0x3df960(0x21b)]();_0x4f426a++){var _0x56cc86=_0x80cdb3[_0x3df960(0x243)](_0x4f426a);_0x56cc86['pt']['x']=_0x56cc86['pt']['x']/_0x55a64e+_0xe2cdf['x'],_0x56cc86['pt']['y']=_0x56cc86['pt']['y']/_0x55a64e+_0xe2cdf['y'],_0x80cdb3[_0x3df960(0x224)](_0x4f426a,_0x56cc86);}return _0x80cdb3;}#f017(_0x19edca,_0x57e31e,_0x1f908c){var _0x18117e=a0_0x261574;let _0x23f7c4=new cv[(_0x18117e(0x210))](),_0x557399={'width':this['CANVAS_WIDTH'],'height':this[_0x18117e(0x1f1)]};cv[_0x18117e(0x289)](_0x19edca,_0x23f7c4,_0x57e31e,_0x557399,cv[_0x18117e(0x17f)]);if(_0x1f908c);return _0x23f7c4;}#f018(_0x41ab8e,_0x199d65,_0x45e658,_0x578568,_0x2e61cf,_0x21dd88,_0x3d4fde,_0xd55e57){var _0x199b44=a0_0x261574,_0x4ec31f=this.#p047[_0x199b44(0x25b)](_0x199b44(0x1db)),_0x153d34=_0x4ec31f[_0x199b44(0x1a1)][_0x41ab8e],_0x1de574=0x1,_0x337e32=(_0x153d34[_0x199b44(0x266)]?this.#p026:this.#p022)*_0x2e61cf*_0x1de574,_0x1da4a9=new cv[(_0x199b44(0x166))](),_0x2dfabf=new cv['DMatchVector'](),_0x2c811c=0x0,_0x2cf955=[];for(var _0x47c2cf=0x0;_0x47c2cf<_0x45e658[_0x199b44(0x21b)]();_0x47c2cf++){var _0x13106d=_0x45e658[_0x199b44(0x243)](_0x47c2cf),_0x3d77ff=_0x199d65[_0x199b44(0x243)](_0x13106d[_0x199b44(0x16b)])['pt']['x'],_0x22b0b4=_0x199d65[_0x199b44(0x243)](_0x13106d[_0x199b44(0x16b)])['pt']['y'];_0x2cf955[_0x199b44(0x1fd)](_0x3d77ff),_0x2cf955['push'](_0x22b0b4);}var _0x41b059=cv[_0x199b44(0x27d)](_0x2cf955[_0x199b44(0x1f0)]/0x2,0x1,cv[_0x199b44(0x293)],_0x2cf955),_0x5ddf83=new cv[(_0x199b44(0x210))]();cv[_0x199b44(0x171)](_0x41b059,_0x5ddf83,_0x578568['inv'](0x0));for(var _0x47c2cf=0x0;_0x47c2cf<_0x5ddf83[_0x199b44(0x28e)][_0x199b44(0x1f0)];_0x47c2cf+=0x2){var _0x13106d=_0x45e658[_0x199b44(0x243)](_0x47c2cf/0x2),_0x4a7ead=_0x199d65['get'](_0x13106d[_0x199b44(0x16b)]),_0x3d77ff=_0x5ddf83[_0x199b44(0x28e)][_0x47c2cf],_0x22b0b4=_0x5ddf83[_0x199b44(0x28e)][_0x47c2cf+0x1];if(_0x3d77ff<_0x337e32/0x2||_0x3d77ff>this[_0x199b44(0x18a)]-_0x337e32/0x2||_0x22b0b4<_0x337e32/0x2||_0x22b0b4>this['CANVAS_HEIGHT']-_0x337e32/0x2){if(_0x199b44(0x260)==='WutJz'){_0x2c811c++;continue;}else _0x267daf[_0x199b44(0x1f9)]('Unity\x20build\x20is\x20using\x20a\x20different\x20plugin\x20version\x20and\x20may\x20not\x20function\x20properly\x20-\x20Please\x20rebuild\x20your\x20unity\x20project'),_0x5304da['CLIENT_VERSION_ERROR']=!![];}_0x4a7ead['pt']['x']=_0x3d77ff,_0x4a7ead['pt']['y']=_0x22b0b4,_0x1da4a9[_0x199b44(0x187)](_0x4a7ead),_0x13106d[_0x199b44(0x1f7)]=_0x47c2cf/0x2-_0x2c811c,_0x2dfabf[_0x199b44(0x187)](_0x13106d);}_0x41b059['delete'](),_0x5ddf83[_0x199b44(0x1c0)]();if(_0x21dd88){var _0x21dd88=new cv['Mat'](),_0x2d66e3=new cv[(_0x199b44(0x25d))](0xff,0x0,0xff);cv['drawMatches'](_0x3d4fde,_0x1da4a9,_0xd55e57,_0x199d65,_0x2dfabf,_0x21dd88,_0x2d66e3),_0x21dd88[_0x199b44(0x1c0)]();}return{'kp':_0x1da4a9,'matches':_0x2dfabf};}#f019(_0x4852fd,_0x5e6642,_0x57f8b9,_0x4f7bfd,_0x4155fc){var _0x535b4f=a0_0x261574;if(_0x4155fc){if(_0x535b4f(0x16c)==='nhkyD'){var _0x37feb8=new cv[(_0x535b4f(0x210))]();_0x5e6642[_0x535b4f(0x288)](_0x37feb8),cv[_0x535b4f(0x280)](_0x37feb8,_0x37feb8,cv[_0x535b4f(0x1c6)],0x0);}else{var _0x59f9f1='';_0x28c205[_0x535b4f(0x290)]&&_0x47f0f4['targetsInScene']['forEach'](_0x41134a=>{_0x59f9f1+=_0x41134a+',';}),_0x57422e[_0x535b4f(0x181)](_0x59f9f1,_0x305111[_0x535b4f(0x189)]);}}var _0xd68d67=this.#p047[_0x535b4f(0x25b)]('true'),_0x2a3d39=_0xd68d67[_0x535b4f(0x1a1)][_0x4852fd],_0x554dec=0x1,_0x1f8369=(_0x2a3d39['lastPoseIsStable']?this.#p025:this.#p021)*_0x4f7bfd*_0x554dec,_0x837de9=(_0x2a3d39[_0x535b4f(0x266)]?this.#p026:this.#p022)*_0x4f7bfd*_0x554dec,_0x2b61fc=[],_0x271f18=0x0;for(var _0x4d2f13=0x0;_0x4d2f13<_0x57f8b9[_0x535b4f(0x21b)]();_0x4d2f13++){if(_0x535b4f(0x259)!==_0x535b4f(0x259)){let _0x528692=new _0x7705e1[(_0x535b4f(0x210))](),_0x447a36={'width':this['CANVAS_WIDTH'],'height':this[_0x535b4f(0x1f1)]};_0x46ff92[_0x535b4f(0x289)](_0x9f173b,_0x528692,_0x5c81ee,_0x447a36,_0xd23ea[_0x535b4f(0x17f)]);if(_0x56f597);return _0x528692;}else{var _0x4bb488=_0x57f8b9[_0x535b4f(0x243)](_0x4d2f13),_0x5d4a27=_0x4bb488['pt']['x'],_0x381785=_0x4bb488['pt']['y'];if(_0x5d4a27<_0x837de9/0x2||_0x5d4a27>_0x5e6642[_0x535b4f(0x21b)]()[_0x535b4f(0x192)]-_0x837de9/0x2||_0x381785<_0x837de9/0x2||_0x381785>_0x5e6642[_0x535b4f(0x21b)]()[_0x535b4f(0x1af)]-_0x837de9/0x2){_0x271f18++;continue;}var _0x439331=Math[_0x535b4f(0x17d)](_0x1f8369/0x2),_0x5bb4b6=new cv[(_0x535b4f(0x210))](),_0x5e9139=new cv['Rect'](_0x5d4a27-_0x439331,_0x381785-_0x439331,_0x1f8369,_0x1f8369);_0x5bb4b6=_0x5e6642['roi'](_0x5e9139),_0x2b61fc[_0x535b4f(0x1fd)]({'keypoint':_0x4bb488,'patch':_0x5bb4b6}),_0x4155fc&&cv['rectangle'](_0x37feb8,new cv['Point'](_0x5e9139['x'],_0x5e9139['y']),new cv['Point'](_0x5e9139['x']+_0x5e9139[_0x535b4f(0x192)],_0x5e9139['y']+_0x5e9139[_0x535b4f(0x1af)]),new cv[(_0x535b4f(0x25d))](0x0,0xff,0xff),0x1);}}if(_0x4155fc){if(_0x535b4f(0x29d)!=='YPwLu'){;_0x37feb8[_0x535b4f(0x1c0)]();}else!_0x5c66c5[_0x535b4f(0x16e)]&&(_0x232811[_0x535b4f(0x1f9)]('Unity\x20build\x20is\x20using\x20a\x20different\x20plugin\x20version\x20and\x20may\x20not\x20function\x20properly\x20-\x20Please\x20rebuild\x20your\x20unity\x20project'),_0x25bbf0['CLIENT_VERSION_ERROR']=!![]);}return _0x2b61fc;}#f020(_0x474ae4){var _0x2f8265=a0_0x261574;_0x474ae4[_0x2f8265(0x24f)](_0x2b8881=>{var _0x14a419=_0x2f8265;_0x2b8881[_0x14a419(0x1d3)]['delete']();});}#f021(_0xe2666c,_0x43a66d,_0x37b0df,_0x34869,_0x539cd0){var _0x59cd9e=a0_0x261574,_0x479a62=this.#p047[_0x59cd9e(0x25b)](_0x59cd9e(0x1db)),_0x3307a3=_0x479a62[_0x59cd9e(0x1a1)][_0xe2666c],_0x1836c5=(_0x3307a3[_0x59cd9e(0x266)]?this.#p025:this.#p021)*_0x34869,_0x22b9c6=(_0x3307a3[_0x59cd9e(0x266)]?this.#p026:this.#p022)*_0x34869,_0x44160d=this.#p022*_0x34869,_0x44b040=new cv[(_0x59cd9e(0x166))](),_0x34092b=new cv[(_0x59cd9e(0x1d5))]();if(_0x539cd0){var _0x3927de=_0x59cd9e(0x21a),_0x225ddf=this.#f043(_0x3927de);if(!_0x225ddf){if(_0x59cd9e(0x1ba)!==_0x59cd9e(0x1ba)){var _0x21f9ef=new _0x2184bd[(_0x59cd9e(0x210))]();_0x376429[_0x59cd9e(0x280)](_0x1995ca,_0x21f9ef,_0x47d9c6['COLOR_GRAY2RGB'],0x0);}else{var _0x225ddf=new cv[(_0x59cd9e(0x210))]();cv[_0x59cd9e(0x280)](_0x43a66d,_0x225ddf,cv[_0x59cd9e(0x1c6)],0x0);}}}var _0x18183d=0x0,_0x8be34d=0x0;return _0x37b0df[_0x59cd9e(0x24f)](_0x28e6cf=>{var _0x61989d=_0x59cd9e;if(_0x61989d(0x272)===_0x61989d(0x272)){var _0x2ceb29=_0x28e6cf[_0x61989d(0x24c)],_0x3b99aa=_0x2ceb29['pt']['x'],_0x40cb9b=_0x2ceb29['pt']['y'],_0x1c1e76=_0x28e6cf[_0x61989d(0x1d3)],_0x239d04=Math[_0x61989d(0x17d)](_0x1836c5/0x2),_0x451970=new cv[(_0x61989d(0x29b))](_0x3b99aa-_0x239d04,_0x40cb9b-_0x239d04,_0x1836c5,_0x1836c5),_0x3d0207=new cv[(_0x61989d(0x29b))](_0x3b99aa-_0x22b9c6/0x2,_0x40cb9b-_0x22b9c6/0x2,_0x22b9c6,_0x22b9c6),_0x5cacec=_0x43a66d[_0x61989d(0x1c1)](_0x3d0207),_0x3be4be=new cv[(_0x61989d(0x210))]();cv[_0x61989d(0x22b)](_0x5cacec,_0x1c1e76,_0x3be4be,cv[_0x61989d(0x197)]);var _0x350c09=cv[_0x61989d(0x23a)](_0x3be4be);_0x5cacec[_0x61989d(0x1c0)](),_0x3be4be['delete']();var _0x4e4867=new cv[(_0x61989d(0x1b8))](_0x3b99aa-_0x22b9c6/0x2+_0x350c09[_0x61989d(0x18b)]['x'],_0x40cb9b-_0x22b9c6/0x2+_0x350c09[_0x61989d(0x18b)]['y']),_0x48df57=new cv[(_0x61989d(0x1b8))](_0x4e4867['x']+_0x1836c5,_0x4e4867['y']+_0x1836c5),_0x52579c=_0x4e4867['x']+Math[_0x61989d(0x19d)](_0x1836c5/0x2),_0x4fb31d=_0x4e4867['y']+Math['ceil'](_0x1836c5/0x2);_0x2ceb29['pt']['x']=_0x52579c,_0x2ceb29['pt']['y']=_0x4fb31d;if(_0x52579c-_0x239d04<=_0x3b99aa-_0x44160d/0x2||_0x52579c+_0x239d04>=_0x3b99aa+_0x44160d/0x2||_0x4fb31d-_0x239d04<=_0x40cb9b-_0x44160d/0x2||_0x4fb31d+_0x239d04>=_0x40cb9b+_0x44160d/0x2){if(_0x61989d(0x231)===_0x61989d(0x231)){if(_0x539cd0){if(_0x61989d(0x2a0)===_0x61989d(0x16a)){var _0x1b5f21=_0x3787ca['indexOf'](_0x4cec65);_0x1b5f21>-0x1&&_0x372109[_0x61989d(0x1fd)](_0x33b105);}else cv[_0x61989d(0x296)](_0x225ddf,new cv[(_0x61989d(0x1b8))](_0x3b99aa,_0x40cb9b),0x2,new cv[(_0x61989d(0x25d))](0xff,0x0,0x0),0x2),cv[_0x61989d(0x296)](_0x225ddf,new cv[(_0x61989d(0x1b8))](_0x3b99aa,_0x40cb9b),_0x1836c5,new cv[(_0x61989d(0x25d))](0xff,0x0,0x0),0x2);};}else return;}else{_0x44b040[_0x61989d(0x187)](_0x2ceb29);var _0x1b5da2=_0x3307a3['matches']['get'](_0x18183d);_0x1b5da2[_0x61989d(0x1f7)]=_0x8be34d,_0x34092b[_0x61989d(0x187)](_0x1b5da2),_0x8be34d++,_0x539cd0&&(cv[_0x61989d(0x226)](_0x225ddf,new cv['Point'](_0x451970['x'],_0x451970['y']),new cv[(_0x61989d(0x1b8))](_0x451970['x']+_0x451970[_0x61989d(0x192)],_0x451970['y']+_0x451970[_0x61989d(0x1af)]),new cv['Scalar'](0xff,0x0,0x0),0x1),cv['rectangle'](_0x225ddf,new cv[(_0x61989d(0x1b8))](_0x3d0207['x'],_0x3d0207['y']),new cv[(_0x61989d(0x1b8))](_0x3d0207['x']+_0x3d0207['width'],_0x3d0207['y']+_0x3d0207[_0x61989d(0x1af)]),new cv[(_0x61989d(0x25d))](0x0,0x0,0xff),0x1),cv[_0x61989d(0x226)](_0x225ddf,_0x4e4867,_0x48df57,new cv[(_0x61989d(0x25d))](0xff,0xff,0x0),0x1));}_0x18183d++;}else;}),_0x539cd0&&(this.#f040(_0x225ddf,_0x3927de),this.#f042(_0x225ddf,_0x3927de)),{'kp':_0x44b040,'matches':_0x34092b};}#f022(_0x562f93,_0x367c23,_0x794f91,_0xd72db3=![]){var _0x565606=a0_0x261574;if(_0xd72db3){if(_0x565606(0x244)!==_0x565606(0x235)){var _0x7cf967=new cv['Mat']();_0x562f93['copyTo'](_0x7cf967),cv['cvtColor'](_0x7cf967,_0x7cf967,cv['COLOR_GRAY2RGB'],0x0);var _0x21ff49=new cv[(_0x565606(0x25d))](0xff,0x0,0x0),_0x2d0dc1=new cv[(_0x565606(0x25d))](0xff,0xff,0x0);}else _0x16d64f['body']['appendChild'](_0x5985e3),_0x1f5453[_0x565606(0x198)](_0x35d535=>{var _0x1af903=_0x565606;_0x3a739d[_0x1af903(0x1f2)](_0x1af903(0x27b)),_0x2ec1bf['cv']=_0x35d535;;;_0x2a0dea();});}var _0x47c5f4=[];for(var _0x554fde=0x0;_0x554fde<_0x794f91[_0x565606(0x21b)]();_0x554fde++){var _0x23392c=_0x794f91[_0x565606(0x243)](_0x554fde)['pt']['x'],_0x5e23e1=_0x794f91[_0x565606(0x243)](_0x554fde)['pt']['y'];_0x47c5f4[_0x565606(0x1fd)](_0x23392c),_0x47c5f4[_0x565606(0x1fd)](_0x5e23e1);}var _0x1eec90=new cv[(_0x565606(0x27d))](_0x47c5f4['length']/0x2,0x2,cv[_0x565606(0x173)],_0x47c5f4),_0x41504d=new cv[(_0x565606(0x210))](),_0x55812e=new cv[(_0x565606(0x1c9))](cv[_0x565606(0x1f6)]+cv[_0x565606(0x232)],0xa,0.03),_0x2b2eed=new cv[(_0x565606(0x210))](),_0x2056c3=[];cv[_0x565606(0x256)](_0x367c23,_0x562f93,_0x1eec90,_0x41504d,_0x2b2eed,new cv[(_0x565606(0x210))](),new cv['Size'](0xf,0xf),0x2,_0x55812e);var _0x11d772=new cv[(_0x565606(0x166))]();for(var _0x554fde=0x0;_0x554fde<_0x41504d[_0x565606(0x21b)]()[_0x565606(0x1af)];_0x554fde++){if(_0x565606(0x1df)!==_0x565606(0x1df))return _0x130ae7['toString']()[_0x565606(0x17a)](_0x565606(0x25e))[_0x565606(0x27f)]()[_0x565606(0x25b)](_0x5760b7)[_0x565606(0x17a)]('(((.+)+)+)+$');else{var _0x23392c=_0x41504d['data32F'][_0x554fde*0x2],_0x5e23e1=_0x41504d[_0x565606(0x28e)][_0x554fde*0x2+0x1];_0x11d772[_0x565606(0x187)]({'pt':{'x':_0x23392c,'y':_0x5e23e1},'angle':0x0,'class_id':0x0,'octave':0x0,'response':0x0,'size':0x0});if(_0x2b2eed[_0x565606(0x1cf)][_0x554fde]==0x1){if(_0xd72db3)cv[_0x565606(0x296)](_0x7cf967,new cv[(_0x565606(0x1b8))](_0x23392c,_0x5e23e1),0x5,_0x2d0dc1,0x3);}else{if(_0xd72db3)cv[_0x565606(0x296)](_0x7cf967,new cv['Point'](_0x23392c,_0x5e23e1),0x5,_0x21ff49,0x3);_0x2056c3[_0x565606(0x1fd)][_0x554fde];}}}if(_0xd72db3){if('yRZRt'===_0x565606(0x176)){var _0x4026ea=new _0x336874[(_0x565606(0x210))]();_0x47ce17[_0x565606(0x288)](_0x4026ea),_0x2831ef[_0x565606(0x280)](_0x4026ea,_0x4026ea,_0x47c9d1[_0x565606(0x1c6)],0x0);}else{;_0x7cf967[_0x565606(0x1c0)]();}}return _0x1eec90['delete'](),_0x41504d[_0x565606(0x1c0)](),{'newKeypoints':_0x11d772,'errors':_0x2056c3};}#f023(_0x3fbffd,_0x3bc9e0,_0x20bee7,_0x56ba1d=null,_0x561a54=![],_0x527a5f){var _0x2dcc9e=a0_0x261574;if(_0x561a54){if(_0x2dcc9e(0x275)!==_0x2dcc9e(0x275)){;this[_0x2dcc9e(0x18a)]=_0x14eb7a,this[_0x2dcc9e(0x1f1)]=_0x16a39a,this[_0x2dcc9e(0x22d)]=_0x119adf[_0x2dcc9e(0x27d)](0x3,0x3,_0x32d193[_0x2dcc9e(0x173)],[_0x7925a2,0x0,_0x5cb801*0.5,0x0,_0x2efca5,_0x348f05*0.5,0x0,0x0,0x1]),this['CAM_DIST_MAT']=_0x2dc95c[_0x2dcc9e(0x27d)](0x5,0x1,_0x2711f3['CV_32F'],[0x0,0x0,0x0,0x0,0x0]);;}else{var _0x313a2f=new cv[(_0x2dcc9e(0x210))]();cv[_0x2dcc9e(0x280)](_0x527a5f,_0x313a2f,cv[_0x2dcc9e(0x1c6)],0x0);}}var _0x3884b7=Math[_0x2dcc9e(0x19a)](_0x3fbffd,_0x3bc9e0);_0x3fbffd=_0x3fbffd/_0x3884b7*0.5,_0x3bc9e0=_0x3bc9e0/_0x3884b7*0.5;var _0x3029d1=[-_0x3fbffd,_0x3bc9e0,0x0,_0x3fbffd,_0x3bc9e0,0x0,_0x3fbffd,-_0x3bc9e0,0x0,-_0x3fbffd,-_0x3bc9e0,0x0],_0xbcd2ed=[];for(var _0x1bbecd=0x0;_0x1bbecd<_0x20bee7[_0x2dcc9e(0x28e)][_0x2dcc9e(0x1f0)];_0x1bbecd+=0x2){_0xbcd2ed[_0x2dcc9e(0x1fd)](_0x20bee7[_0x2dcc9e(0x28e)][_0x1bbecd]),_0xbcd2ed[_0x2dcc9e(0x1fd)](_0x20bee7['data32F'][_0x1bbecd+0x1]);if(_0x561a54){if('KdYZW'===_0x2dcc9e(0x287))cv[_0x2dcc9e(0x296)](_0x313a2f,new cv[(_0x2dcc9e(0x1b8))](_0x20bee7['data32F'][_0x1bbecd],_0x20bee7[_0x2dcc9e(0x28e)][_0x1bbecd+0x1]),0x3,new cv[(_0x2dcc9e(0x25d))](0xff,0x0,0x0),0x3);else{var _0x8b503d=_0x2f1a4a[_0x2dcc9e(0x23b)](_0x29d0b0,arguments);return _0x15eb66=null,_0x8b503d;}}}_0xbcd2ed=cv[_0x2dcc9e(0x27d)](_0xbcd2ed[_0x2dcc9e(0x1f0)]/0x2,0x2,cv[_0x2dcc9e(0x173)],_0xbcd2ed),_0x3029d1=cv[_0x2dcc9e(0x27d)](_0x3029d1[_0x2dcc9e(0x1f0)]/0x3,0x3,cv[_0x2dcc9e(0x173)],_0x3029d1);var _0x19c98d=new cv[(_0x2dcc9e(0x210))](0x3,0x1,cv[_0x2dcc9e(0x173)]),_0xfc255f=new cv[(_0x2dcc9e(0x210))](0x3,0x1,cv[_0x2dcc9e(0x173)]),_0x57e4ed=![];if(_0x56ba1d){_0x56ba1d[_0x2dcc9e(0x196)][_0x2dcc9e(0x288)](_0x19c98d);var _0xfc255f=new cv[(_0x2dcc9e(0x210))](0x3,0x1,cv[_0x2dcc9e(0x173)]);cv[_0x2dcc9e(0x273)](_0x56ba1d[_0x2dcc9e(0x1ce)],_0xfc255f),_0x57e4ed=!![];}var _0x101d6e=cv['solvePnP'](_0x3029d1,_0xbcd2ed,this['CAM_MAT'],this[_0x2dcc9e(0x1f4)],_0xfc255f,_0x19c98d,_0x57e4ed,cv['SOLVEPNP_ITERATIVE']),_0xe85ee9=new cv[(_0x2dcc9e(0x210))]();cv[_0x2dcc9e(0x273)](_0xfc255f,_0xe85ee9);if(_0x561a54){var _0x2d099d=[0x0,0x0,0x0,0.25,0x0,0x0,0x0,0.25,0x0,0x0,0x0,0.25,-_0x3fbffd,_0x3bc9e0,0x0,_0x3fbffd,_0x3bc9e0,0x0,_0x3fbffd,-_0x3bc9e0,0x0,-_0x3fbffd,-_0x3bc9e0,0x0],_0x2d099d=cv[_0x2dcc9e(0x27d)](0x8,0x3,cv[_0x2dcc9e(0x173)],_0x2d099d);cv[_0x2dcc9e(0x207)](_0x2d099d,_0xfc255f,_0x19c98d,this[_0x2dcc9e(0x22d)],this[_0x2dcc9e(0x1f4)],_0x2d099d),cv[_0x2dcc9e(0x26e)](_0x313a2f,new cv[(_0x2dcc9e(0x1b8))](_0x2d099d[_0x2dcc9e(0x28e)][0x0],_0x2d099d[_0x2dcc9e(0x28e)][0x1]),new cv['Point'](_0x2d099d[_0x2dcc9e(0x28e)][0x2],_0x2d099d['data32F'][0x3]),new cv[(_0x2dcc9e(0x25d))](0xff,0x0,0x0),0x2),cv[_0x2dcc9e(0x26e)](_0x313a2f,new cv[(_0x2dcc9e(0x1b8))](_0x2d099d[_0x2dcc9e(0x28e)][0x0],_0x2d099d[_0x2dcc9e(0x28e)][0x1]),new cv['Point'](_0x2d099d['data32F'][0x4],_0x2d099d[_0x2dcc9e(0x28e)][0x5]),new cv['Scalar'](0x0,0xff,0x0),0x2),cv[_0x2dcc9e(0x26e)](_0x313a2f,new cv[(_0x2dcc9e(0x1b8))](_0x2d099d['data32F'][0x0],_0x2d099d['data32F'][0x1]),new cv['Point'](_0x2d099d[_0x2dcc9e(0x28e)][0x6],_0x2d099d[_0x2dcc9e(0x28e)][0x7]),new cv['Scalar'](0x0,0x0,0xff),0x2),cv['line'](_0x313a2f,new cv[(_0x2dcc9e(0x1b8))](_0x2d099d[_0x2dcc9e(0x28e)][0x8],_0x2d099d['data32F'][0x9]),new cv['Point'](_0x2d099d[_0x2dcc9e(0x28e)][0xa],_0x2d099d['data32F'][0xb]),new cv['Scalar'](0xff,0x0,0xff),0x2),cv[_0x2dcc9e(0x26e)](_0x313a2f,new cv[(_0x2dcc9e(0x1b8))](_0x2d099d[_0x2dcc9e(0x28e)][0xa],_0x2d099d[_0x2dcc9e(0x28e)][0xb]),new cv['Point'](_0x2d099d[_0x2dcc9e(0x28e)][0xc],_0x2d099d['data32F'][0xd]),new cv[(_0x2dcc9e(0x25d))](0xff,0x0,0xff),0x2),cv[_0x2dcc9e(0x26e)](_0x313a2f,new cv[(_0x2dcc9e(0x1b8))](_0x2d099d[_0x2dcc9e(0x28e)][0xc],_0x2d099d[_0x2dcc9e(0x28e)][0xd]),new cv[(_0x2dcc9e(0x1b8))](_0x2d099d[_0x2dcc9e(0x28e)][0xe],_0x2d099d[_0x2dcc9e(0x28e)][0xf]),new cv['Scalar'](0xff,0x0,0xff),0x2),cv['line'](_0x313a2f,new cv['Point'](_0x2d099d[_0x2dcc9e(0x28e)][0xe],_0x2d099d[_0x2dcc9e(0x28e)][0xf]),new cv['Point'](_0x2d099d['data32F'][0x8],_0x2d099d[_0x2dcc9e(0x28e)][0x9]),new cv[(_0x2dcc9e(0x25d))](0xff,0x0,0xff),0x2),_0x2d099d[_0x2dcc9e(0x1c0)]();;_0x313a2f[_0x2dcc9e(0x1c0)]();}return _0xbcd2ed['delete'](),_0x3029d1[_0x2dcc9e(0x1c0)](),{'rotMat':_0xe85ee9,'tvec':_0x19c98d};}#f024(_0x98b9d8,_0x4151a7,_0xaee1ff,_0xa1daf3,_0x2c05bf){var _0x406d46=a0_0x261574;if(_0x98b9d8===_0x4151a7)return 0x0;let _0x97913a=(_0xaee1ff-_0x98b9d8)/(_0x4151a7-_0x98b9d8);return _0x97913a=Math[_0x406d46(0x1eb)](0x1,Math[_0x406d46(0x19a)](0x0,_0x97913a)),_0xa1daf3+_0x97913a*(_0x2c05bf-_0xa1daf3);}#f025(_0x219339,_0x45700b,_0x5ebcdc,_0x231eb0){var _0x3bbca5=a0_0x261574,_0x5c654a=this.#p047[_0x3bbca5(0x25b)](_0x3bbca5(0x1db)),_0x17d4f8=_0x5c654a['tracked'][_0x45700b];if(!_0x17d4f8[_0x3bbca5(0x22e)])return _0x17d4f8['lastPose']=_0x219339,{'valid':!![],'deltapos':0x0,'deltaup':0x1,'deltaforward':0x1};var _0x4e6c38=_0x17d4f8[_0x3bbca5(0x22e)][_0x3bbca5(0x196)],_0x52e187=_0x219339[_0x3bbca5(0x196)],_0x1aad91=Math[_0x3bbca5(0x283)](_0x52e187[_0x3bbca5(0x28e)][0x0]-_0x4e6c38['data32F'][0x0],0x2)+Math[_0x3bbca5(0x283)](_0x52e187[_0x3bbca5(0x28e)][0x1]-_0x4e6c38[_0x3bbca5(0x28e)][0x1],0x2)+Math[_0x3bbca5(0x283)](_0x52e187[_0x3bbca5(0x28e)][0x2]-_0x4e6c38['data32F'][0x2],0x2),_0x1eaf20=_0x17d4f8['lastPose'][_0x3bbca5(0x1ce)],_0xb19bc2=new cv[(_0x3bbca5(0x210))](0x3,0x1,cv[_0x3bbca5(0x173)]);_0xb19bc2['data32F'][0x0]=_0x1eaf20[_0x3bbca5(0x28e)][0x3],_0xb19bc2[_0x3bbca5(0x28e)][0x1]=_0x1eaf20[_0x3bbca5(0x28e)][0x4],_0xb19bc2[_0x3bbca5(0x28e)][0x2]=_0x1eaf20['data32F'][0x5];var _0x10d94e=new cv[(_0x3bbca5(0x210))](0x3,0x1,cv[_0x3bbca5(0x173)]);_0x10d94e[_0x3bbca5(0x28e)][0x0]=_0x219339[_0x3bbca5(0x1ce)]['data32F'][0x3],_0x10d94e[_0x3bbca5(0x28e)][0x1]=_0x219339['rotMat']['data32F'][0x4],_0x10d94e[_0x3bbca5(0x28e)][0x2]=_0x219339[_0x3bbca5(0x1ce)][_0x3bbca5(0x28e)][0x5];var _0x3730d8=new cv[(_0x3bbca5(0x210))](0x3,0x1,cv[_0x3bbca5(0x173)]);_0x3730d8['data32F'][0x0]=_0x1eaf20['data32F'][0x6],_0x3730d8[_0x3bbca5(0x28e)][0x1]=_0x1eaf20['data32F'][0x7],_0x3730d8[_0x3bbca5(0x28e)][0x2]=_0x1eaf20[_0x3bbca5(0x28e)][0x8];var _0x382c55=new cv[(_0x3bbca5(0x210))](0x3,0x1,cv[_0x3bbca5(0x173)]);_0x382c55['data32F'][0x0]=_0x219339[_0x3bbca5(0x1ce)][_0x3bbca5(0x28e)][0x6],_0x382c55[_0x3bbca5(0x28e)][0x1]=_0x219339[_0x3bbca5(0x1ce)][_0x3bbca5(0x28e)][0x7],_0x382c55[_0x3bbca5(0x28e)][0x2]=_0x219339['rotMat'][_0x3bbca5(0x28e)][0x8];var _0xe5a79c=_0x10d94e[_0x3bbca5(0x29a)](_0xb19bc2),_0x5b9612=_0x382c55['dot'](_0x3730d8);_0xb19bc2[_0x3bbca5(0x1c0)](),_0x10d94e['delete'](),_0x3730d8[_0x3bbca5(0x1c0)](),_0x382c55[_0x3bbca5(0x1c0)]();if(_0x231eb0);if(_0x1aad91<this.#p023&&_0xe5a79c>this.#p024&&_0x5b9612>this.#p024){if(_0x3bbca5(0x183)===_0x3bbca5(0x252)){if(arguments[_0x3bbca5(0x1f0)]==0x1)return _0x4f85c6[arguments[0x0]];arguments[_0x3bbca5(0x1f0)]==0x2&&(_0x3e7bac[arguments[0x0]]=arguments[0x1]);}else{_0x17d4f8[_0x3bbca5(0x22e)][_0x3bbca5(0x196)][_0x3bbca5(0x1c0)](),_0x17d4f8['lastPose'][_0x3bbca5(0x1ce)]['delete'](),_0x17d4f8['lastPose']=_0x219339;var _0x9d56b6=this.#f024(0.75,0x2,_0x5ebcdc,this.#p031,this.#p029),_0x2a5e0b=this.#f024(0.75,0x2,_0x5ebcdc,this.#p032,this.#p030);return _0x17d4f8[_0x3bbca5(0x266)]=_0x1aad91<_0x9d56b6&&_0xe5a79c>_0x2a5e0b&&_0x5b9612>_0x2a5e0b,{'valid':!![],'deltapos':_0x1aad91,'deltaup':_0xe5a79c,'deltaforward':_0x5b9612};}}else{if(_0x3bbca5(0x25c)==='GQXjc')this[_0x3bbca5(0x282)][_0x3aad74][_0x3bbca5(0x1c0)](),this[_0x3bbca5(0x282)][_0x126070]=null;else{;;;return{'valid':![],'deltapos':_0x1aad91,'deltaup':_0xe5a79c,'deltaforward':_0x5b9612};}}}#f026(_0x1d6a59,_0x50d9b3,_0x1afa1b){var _0x59b0a9=a0_0x261574;if(!_0x50d9b3)return _0x1d6a59;var _0x5c3fa8=_0x1d6a59['tvec'],_0x42fa5a=_0x50d9b3[_0x59b0a9(0x196)],_0x44124c=Math['pow'](_0x5c3fa8[_0x59b0a9(0x28e)][0x0]-_0x42fa5a[_0x59b0a9(0x28e)][0x0],0x2)+Math[_0x59b0a9(0x283)](_0x5c3fa8[_0x59b0a9(0x28e)][0x1]-_0x42fa5a[_0x59b0a9(0x28e)][0x1],0x2)+Math[_0x59b0a9(0x283)](_0x5c3fa8[_0x59b0a9(0x28e)][0x2]-_0x42fa5a[_0x59b0a9(0x28e)][0x2],0x2),_0x23f875=_0x50d9b3[_0x59b0a9(0x1ce)],_0x2fecf0=new cv[(_0x59b0a9(0x210))](0x3,0x1,cv[_0x59b0a9(0x173)]);_0x2fecf0[_0x59b0a9(0x28e)][0x0]=_0x23f875['data32F'][0x3],_0x2fecf0[_0x59b0a9(0x28e)][0x1]=_0x23f875[_0x59b0a9(0x28e)][0x4],_0x2fecf0['data32F'][0x2]=_0x23f875[_0x59b0a9(0x28e)][0x5];var _0xca2c10=new cv[(_0x59b0a9(0x210))](0x3,0x1,cv['CV_32F']);_0xca2c10[_0x59b0a9(0x28e)][0x0]=_0x1d6a59[_0x59b0a9(0x1ce)]['data32F'][0x3],_0xca2c10[_0x59b0a9(0x28e)][0x1]=_0x1d6a59[_0x59b0a9(0x1ce)][_0x59b0a9(0x28e)][0x4],_0xca2c10[_0x59b0a9(0x28e)][0x2]=_0x1d6a59[_0x59b0a9(0x1ce)][_0x59b0a9(0x28e)][0x5];var _0x29ce08=new cv[(_0x59b0a9(0x210))](0x3,0x1,cv['CV_32F']);_0x29ce08['data32F'][0x0]=_0x23f875[_0x59b0a9(0x28e)][0x6],_0x29ce08[_0x59b0a9(0x28e)][0x1]=_0x23f875[_0x59b0a9(0x28e)][0x7],_0x29ce08['data32F'][0x2]=_0x23f875[_0x59b0a9(0x28e)][0x8];var _0x3bd239=new cv[(_0x59b0a9(0x210))](0x3,0x1,cv[_0x59b0a9(0x173)]);_0x3bd239[_0x59b0a9(0x28e)][0x0]=_0x1d6a59['rotMat']['data32F'][0x6],_0x3bd239[_0x59b0a9(0x28e)][0x1]=_0x1d6a59['rotMat']['data32F'][0x7],_0x3bd239[_0x59b0a9(0x28e)][0x2]=_0x1d6a59[_0x59b0a9(0x1ce)][_0x59b0a9(0x28e)][0x8];var _0x328264=_0xca2c10[_0x59b0a9(0x29a)](_0x2fecf0),_0x33ab1b=_0x3bd239[_0x59b0a9(0x29a)](_0x29ce08);_0x2fecf0[_0x59b0a9(0x1c0)](),_0xca2c10[_0x59b0a9(0x1c0)](),_0x29ce08[_0x59b0a9(0x1c0)](),_0x3bd239[_0x59b0a9(0x1c0)]();if(_0x44124c<this.#p027&&_0x328264>this.#p028&&_0x33ab1b>this.#p028){if(_0x59b0a9(0x264)==='QmUvt'){if(_0x1afa1b);return _0x50d9b3;}else{var _0x3d915b=_0x567467['sqrt'](0x1+_0x5a3d7d[_0x59b0a9(0x28e)][0x0]-_0x5fd840[_0x59b0a9(0x28e)][0x4]-_0xb952e1[_0x59b0a9(0x28e)][0x8])*0x2;_0x5393f0=(_0x49fbd4[_0x59b0a9(0x28e)][0x5]-_0x281447[_0x59b0a9(0x28e)][0x7])/_0x3d915b,_0x550451=0.25*_0x3d915b,_0x9a5c52=(_0x41fe24[_0x59b0a9(0x28e)][0x3]+_0x4724f5[_0x59b0a9(0x28e)][0x1])/_0x3d915b,_0x510d3a=(_0x36da57[_0x59b0a9(0x28e)][0x6]+_0x297318[_0x59b0a9(0x28e)][0x2])/_0x3d915b;}}else{if(_0x59b0a9(0x239)!==_0x59b0a9(0x239))return _0x4c568b[_0x59b0a9(0x221)](_0x439a63*0x3e8)/0x3e8;else{if(_0x1afa1b);return _0x1d6a59;}}}#f027(_0x24544d){var _0x487c71=a0_0x261574,_0x4eff8f=this.#p047[_0x487c71(0x25b)](_0x487c71(0x1db)),_0x981d3f=_0x4eff8f[_0x487c71(0x26b)][_0x24544d];_0x981d3f[_0x487c71(0x1d6)]={},_0x981d3f['kalman']['kf']=new cv['KalmanFilter'](0x15,0x7,0x0,cv['CV_32F']),_0x981d3f[_0x487c71(0x1d6)][_0x487c71(0x167)]=new cv[(_0x487c71(0x210))](0x15,0x1,cv['CV_32F']),_0x981d3f[_0x487c71(0x1d6)]['meas']=new cv[(_0x487c71(0x210))](0x7,0x1,cv['CV_32F']),this.#f035(_0x981d3f[_0x487c71(0x1d6)]['kf'],0x1/this[_0x487c71(0x16f)]),_0x981d3f[_0x487c71(0x1d6)]['kf']['measurementMatrix']=cv[_0x487c71(0x27d)](0x7,0x15,cv[_0x487c71(0x173)],[0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0]),this.#f031(_0x981d3f[_0x487c71(0x1d6)]['kf'][_0x487c71(0x27a)]),this.#f032(_0x981d3f[_0x487c71(0x1d6)]['kf'][_0x487c71(0x212)]),_0x981d3f['kalman']['kf'][_0x487c71(0x21f)][_0x487c71(0x1c0)](),_0x981d3f['kalman'][_0x487c71(0x167)][_0x487c71(0x288)](_0x981d3f[_0x487c71(0x1d6)]['kf'][_0x487c71(0x21f)]),_0x981d3f[_0x487c71(0x1d6)]['kf'][_0x487c71(0x160)][_0x487c71(0x1c0)](),_0x981d3f[_0x487c71(0x1d6)][_0x487c71(0x167)]['copyTo'](_0x981d3f[_0x487c71(0x1d6)]['kf'][_0x487c71(0x160)]),_0x981d3f[_0x487c71(0x1d6)][_0x487c71(0x1e5)]=![];}#f028(_0x1bc1b3){var _0x28693f=a0_0x261574,_0x3cbce3=this.#p047['constructor'](_0x28693f(0x1db)),_0x1bb1bb=_0x3cbce3[_0x28693f(0x1a1)][_0x1bc1b3];this.#f031(_0x1bb1bb[_0x28693f(0x1d6)]['kf'][_0x28693f(0x1e1)]),_0x1bb1bb[_0x28693f(0x1d6)][_0x28693f(0x167)][_0x28693f(0x1c0)](),_0x1bb1bb['kalman'][_0x28693f(0x167)]=cv[_0x28693f(0x27d)](0x15,0x1,cv[_0x28693f(0x173)],[_0x1bb1bb[_0x28693f(0x1d6)][_0x28693f(0x234)][_0x28693f(0x28e)][0x0],_0x1bb1bb[_0x28693f(0x1d6)][_0x28693f(0x234)][_0x28693f(0x28e)][0x1],_0x1bb1bb[_0x28693f(0x1d6)][_0x28693f(0x234)][_0x28693f(0x28e)][0x2],0x0,0x0,0x0,0x0,0x0,0x0,_0x1bb1bb['kalman'][_0x28693f(0x234)][_0x28693f(0x28e)][0x3],_0x1bb1bb['kalman'][_0x28693f(0x234)][_0x28693f(0x28e)][0x4],_0x1bb1bb[_0x28693f(0x1d6)][_0x28693f(0x234)][_0x28693f(0x28e)][0x5],_0x1bb1bb[_0x28693f(0x1d6)][_0x28693f(0x234)][_0x28693f(0x28e)][0x6],0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0]),_0x1bb1bb[_0x28693f(0x1d6)]['kf'][_0x28693f(0x160)]['delete'](),_0x1bb1bb[_0x28693f(0x1d6)][_0x28693f(0x167)][_0x28693f(0x288)](_0x1bb1bb['kalman']['kf']['statePost']),_0x1bb1bb[_0x28693f(0x1d6)][_0x28693f(0x1e5)]=![];}#f029(_0x417e18,_0x2e2af0){var _0x559616=a0_0x261574,_0x50bf82=this.#p047[_0x559616(0x25b)]('true'),_0x5744b4=_0x50bf82[_0x559616(0x1a1)][_0x417e18];this.#f035(_0x5744b4[_0x559616(0x1d6)]['kf'],_0x2e2af0),_0x5744b4[_0x559616(0x1d6)][_0x559616(0x167)]['delete'](),_0x5744b4['kalman'][_0x559616(0x167)]=_0x5744b4[_0x559616(0x1d6)]['kf']['predict']();var _0x24ee15=cv[_0x559616(0x27d)](0x3,0x4,cv[_0x559616(0x173)],[_0x5744b4['kalman'][_0x559616(0x167)][_0x559616(0x28e)][0x0],_0x5744b4[_0x559616(0x1d6)][_0x559616(0x167)][_0x559616(0x28e)][0x1],_0x5744b4[_0x559616(0x1d6)][_0x559616(0x167)][_0x559616(0x28e)][0x2]]),_0x82e4dd=_0x5744b4[_0x559616(0x1d6)][_0x559616(0x167)][_0x559616(0x28e)][0x9],_0x9b98bb=_0x5744b4['kalman'][_0x559616(0x167)][_0x559616(0x28e)][0xa],_0x5ca8e5=_0x5744b4[_0x559616(0x1d6)][_0x559616(0x167)][_0x559616(0x28e)][0xb],_0x4c271a=_0x5744b4[_0x559616(0x1d6)][_0x559616(0x167)][_0x559616(0x28e)][0xc],_0x2a52d8=Math[_0x559616(0x258)](_0x82e4dd*_0x82e4dd+_0x9b98bb*_0x9b98bb+_0x5ca8e5*_0x5ca8e5+_0x4c271a*_0x4c271a);_0x82e4dd/=_0x2a52d8,_0x9b98bb/=_0x2a52d8,_0x5ca8e5/=_0x2a52d8,_0x4c271a/=_0x2a52d8;var _0x32aeae=cv[_0x559616(0x27d)](0x3,0x3,cv[_0x559616(0x173)],[_0x82e4dd*_0x82e4dd+_0x9b98bb*_0x9b98bb+_0x5ca8e5*_0x5ca8e5+_0x4c271a*_0x4c271a,0x2*(_0x9b98bb*_0x5ca8e5-_0x82e4dd*_0x4c271a),0x2*(_0x9b98bb*_0x4c271a+_0x82e4dd*_0x5ca8e5),0x2*(_0x9b98bb*_0x5ca8e5+_0x82e4dd*_0x4c271a),_0x82e4dd*_0x82e4dd-_0x9b98bb*_0x9b98bb+_0x5ca8e5*_0x5ca8e5-_0x4c271a*_0x4c271a,0x2*(_0x5ca8e5*_0x4c271a-_0x82e4dd*_0x9b98bb),0x2*(_0x9b98bb*_0x4c271a-_0x82e4dd*_0x5ca8e5),0x2*(_0x5ca8e5*_0x4c271a+_0x82e4dd*_0x9b98bb),_0x82e4dd*_0x82e4dd-_0x9b98bb*_0x9b98bb-_0x5ca8e5*_0x5ca8e5+_0x4c271a*_0x4c271a]);return{'rotMat':_0x32aeae,'tvec':_0x24ee15};}#f030(_0x5ae643,_0x29f714){var _0x4446e5=a0_0x261574,_0x41e37e=this.#p047[_0x4446e5(0x25b)](_0x4446e5(0x1db)),_0x3046c4=_0x41e37e['tracked'][_0x5ae643],_0x35784f=_0x29f714['tvec'],_0x35f411=_0x29f714[_0x4446e5(0x1ce)]['t'](),_0x7b102e=_0x35f411['data32F'][0x0]+_0x35f411[_0x4446e5(0x28e)][0x4]+_0x35f411[_0x4446e5(0x28e)][0x8],_0x3ea7b2,_0xac0fab,_0x43ffd1,_0x192080;if(_0x7b102e>0x0){if('vZRGA'!==_0x4446e5(0x1bd)){var _0x1c9614=Math['sqrt'](_0x7b102e+0x1)*0x2;_0x3ea7b2=0.25*_0x1c9614,_0xac0fab=(_0x35f411['data32F'][0x5]-_0x35f411[_0x4446e5(0x28e)][0x7])/_0x1c9614,_0x43ffd1=(_0x35f411[_0x4446e5(0x28e)][0x6]-_0x35f411[_0x4446e5(0x28e)][0x2])/_0x1c9614,_0x192080=(_0x35f411['data32F'][0x1]-_0x35f411[_0x4446e5(0x28e)][0x3])/_0x1c9614;}else{var _0x147ae5=_0x2d1978[_0x4446e5(0x243)](_0x313440);_0x147ae5['pt']['x']=_0x147ae5['pt']['x']/_0x644e9c+_0xf2193e['x'],_0x147ae5['pt']['y']=_0x147ae5['pt']['y']/_0x1e96e4+_0x19dd0d['y'],_0x579b0b['set'](_0x69fc8c,_0x147ae5);}}else{if(_0x35f411[_0x4446e5(0x28e)][0x0]>_0x35f411[_0x4446e5(0x28e)][0x4]&_0x35f411[_0x4446e5(0x28e)][0x0]>_0x35f411['data32F'][0x8]){var _0x1c9614=Math[_0x4446e5(0x258)](0x1+_0x35f411[_0x4446e5(0x28e)][0x0]-_0x35f411[_0x4446e5(0x28e)][0x4]-_0x35f411[_0x4446e5(0x28e)][0x8])*0x2;_0x3ea7b2=(_0x35f411[_0x4446e5(0x28e)][0x5]-_0x35f411[_0x4446e5(0x28e)][0x7])/_0x1c9614,_0xac0fab=0.25*_0x1c9614,_0x43ffd1=(_0x35f411[_0x4446e5(0x28e)][0x3]+_0x35f411[_0x4446e5(0x28e)][0x1])/_0x1c9614,_0x192080=(_0x35f411[_0x4446e5(0x28e)][0x6]+_0x35f411[_0x4446e5(0x28e)][0x2])/_0x1c9614;}else{if(_0x35f411[_0x4446e5(0x28e)][0x4]>_0x35f411[_0x4446e5(0x28e)][0x8]){if(_0x4446e5(0x1de)!==_0x4446e5(0x1ee)){var _0x1c9614=Math[_0x4446e5(0x258)](0x1+_0x35f411[_0x4446e5(0x28e)][0x4]-_0x35f411[_0x4446e5(0x28e)][0x0]-_0x35f411[_0x4446e5(0x28e)][0x8])*0x2;_0x3ea7b2=(_0x35f411['data32F'][0x6]-_0x35f411[_0x4446e5(0x28e)][0x2])/_0x1c9614,_0xac0fab=(_0x35f411['data32F'][0x3]+_0x35f411[_0x4446e5(0x28e)][0x1])/_0x1c9614,_0x43ffd1=0.25*_0x1c9614,_0x192080=(_0x35f411[_0x4446e5(0x28e)][0x7]+_0x35f411[_0x4446e5(0x28e)][0x5])/_0x1c9614;}else{_0xa010a0=_0x47e01d[_0x4446e5(0x1ca)](_0x4446e5(0x228)),this['WARPED_IMAGE_CANVAS']=_0x45c1e5,_0x398b96['id']=_0xbbac28;;}}else{if('wKzkT'!==_0x4446e5(0x278)){for(var _0x4cf263=0x0;_0x4cf263<_0x307878[_0x4446e5(0x21b)]();_0x4cf263++){var _0x2ddb1e=_0x5a331f[_0x4446e5(0x243)](_0x4cf263);_0x2ddb1e['pt']['x']=_0x2ddb1e['pt']['x']/_0x23b70+_0x44c046['x'],_0x2ddb1e['pt']['y']=_0x2ddb1e['pt']['y']/_0x137b81+_0x32aabf['y'],_0x3e65b5[_0x4446e5(0x224)](_0x4cf263,_0x2ddb1e);}return _0x3f03b4;}else{var _0x1c9614=Math[_0x4446e5(0x258)](0x1+_0x35f411[_0x4446e5(0x28e)][0x8]-_0x35f411[_0x4446e5(0x28e)][0x0]-_0x35f411[_0x4446e5(0x28e)][0x4])*0x2;_0x3ea7b2=(_0x35f411['data32F'][0x1]-_0x35f411[_0x4446e5(0x28e)][0x3])/_0x1c9614,_0xac0fab=(_0x35f411[_0x4446e5(0x28e)][0x6]+_0x35f411[_0x4446e5(0x28e)][0x2])/_0x1c9614,_0x43ffd1=(_0x35f411[_0x4446e5(0x28e)][0x7]+_0x35f411[_0x4446e5(0x28e)][0x5])/_0x1c9614,_0x192080=0.25*_0x1c9614;}}}}if(this[_0x4446e5(0x1a6)]){var _0x10a01d=this[_0x4446e5(0x1a6)]-_0x3ea7b2,_0x5a2d0b=this[_0x4446e5(0x20d)]-_0xac0fab,_0x268bff=this['lastj']-_0x43ffd1,_0x17dc4e=this[_0x4446e5(0x180)]-_0x192080;(_0x10a01d*_0x10a01d>0x1||_0x5a2d0b*_0x5a2d0b>0x1||_0x268bff*_0x268bff>0x1||_0x17dc4e*_0x17dc4e>0x1)&&(_0x4446e5(0x22f)!==_0x4446e5(0x1f8)?(_0x3ea7b2*=-0x1,_0xac0fab*=-0x1,_0x43ffd1*=-0x1,_0x192080*=-0x1):_0x51100c[_0x4446e5(0x1d3)]['delete']());}this[_0x4446e5(0x1a6)]=_0x3ea7b2,this['lasti']=_0xac0fab,this[_0x4446e5(0x1a3)]=_0x43ffd1,this['lastk']=_0x192080,!_0x3046c4[_0x4446e5(0x1d6)]['hasPrediction']&&(_0x3046c4[_0x4446e5(0x1d6)][_0x4446e5(0x167)][_0x4446e5(0x1c0)](),_0x3046c4[_0x4446e5(0x1d6)][_0x4446e5(0x167)]=cv[_0x4446e5(0x27d)](0x15,0x1,cv[_0x4446e5(0x173)],[_0x35784f['data32F'][0x0],_0x35784f[_0x4446e5(0x28e)][0x1],_0x35784f[_0x4446e5(0x28e)][0x2],0x0,0x0,0x0,0x0,0x0,0x0,_0x3ea7b2,_0xac0fab,_0x43ffd1,_0x192080,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0]),_0x3046c4[_0x4446e5(0x1d6)]['kf'][_0x4446e5(0x21f)][_0x4446e5(0x1c0)](),_0x3046c4[_0x4446e5(0x1d6)]['state'][_0x4446e5(0x288)](_0x3046c4[_0x4446e5(0x1d6)]['kf'][_0x4446e5(0x21f)]),_0x3046c4[_0x4446e5(0x1d6)]['kf'][_0x4446e5(0x160)][_0x4446e5(0x1c0)](),_0x3046c4['kalman']['state'][_0x4446e5(0x288)](_0x3046c4['kalman']['kf'][_0x4446e5(0x160)])),_0x3046c4[_0x4446e5(0x1d6)][_0x4446e5(0x234)]['data32F'][0x0]=_0x35784f[_0x4446e5(0x28e)][0x0],_0x3046c4['kalman']['meas'][_0x4446e5(0x28e)][0x1]=_0x35784f[_0x4446e5(0x28e)][0x1],_0x3046c4[_0x4446e5(0x1d6)][_0x4446e5(0x234)][_0x4446e5(0x28e)][0x2]=_0x35784f['data32F'][0x2],_0x3046c4['kalman'][_0x4446e5(0x234)][_0x4446e5(0x28e)][0x3]=_0x3ea7b2,_0x3046c4[_0x4446e5(0x1d6)][_0x4446e5(0x234)]['data32F'][0x4]=_0xac0fab,_0x3046c4[_0x4446e5(0x1d6)]['meas'][_0x4446e5(0x28e)][0x5]=_0x43ffd1,_0x3046c4[_0x4446e5(0x1d6)][_0x4446e5(0x234)][_0x4446e5(0x28e)][0x6]=_0x192080,_0x3046c4['kalman']['kf'][_0x4446e5(0x208)](_0x3046c4['kalman']['meas']),_0x3046c4[_0x4446e5(0x1d6)][_0x4446e5(0x1e5)]=!![];}#f031(_0x4c038f){var _0x1bef96=a0_0x261574,_0x319874=this.#p015,_0x4da088=this.#p016,_0x21933a=this.#p017,_0x16e04b=this.#p018,_0x1c7d35=this.#p019,_0x3c4bbe=this.#p020,_0x2d04c7=cv[_0x1bef96(0x27d)](0x15,0x15,cv[_0x1bef96(0x173)],[_0x319874,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x319874,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x319874,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x4da088,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x4da088,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x4da088,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x21933a,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x21933a,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x21933a,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x16e04b,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x16e04b,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x16e04b,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x16e04b,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x1c7d35,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x1c7d35,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x1c7d35,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x1c7d35,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x3c4bbe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x3c4bbe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x3c4bbe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x3c4bbe]);_0x2d04c7['copyTo'](_0x4c038f),_0x2d04c7[_0x1bef96(0x1c0)]();}#f032(_0x293153){var _0x43d057=a0_0x261574,_0x36bc68=this.#p013,_0x38248d=this.#p014,_0x6c1edf=cv['matFromArray'](0x7,0x7,cv['CV_32F'],[_0x36bc68,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x36bc68,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x36bc68,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x38248d,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x38248d,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x38248d,0x0,0x0,0x0,0x0,0x0,0x0,0x0,_0x38248d]);_0x6c1edf[_0x43d057(0x288)](_0x293153),_0x6c1edf[_0x43d057(0x1c0)]();}#f033(){;}#f034(_0x3569ae,_0x17bd2a){var _0x3f2cc7=a0_0x261574;this.#p013=_0x3569ae,this.#p014=_0x17bd2a;var _0x38eb7e=this.#p047['constructor'](_0x3f2cc7(0x1db)),_0x217ed8=Object['keys'](_0x38eb7e[_0x3f2cc7(0x26b)]);_0x217ed8[_0x3f2cc7(0x24f)](_0x3548a3=>{var _0x422078=_0x3f2cc7;if('ydgaa'!==_0x422078(0x1d9)){var _0x2c4a8a=_0x38eb7e[_0x422078(0x26b)][_0x3548a3];this.#f032(_0x2c4a8a[_0x422078(0x1d6)]['kf'][_0x422078(0x212)]);}else return _0xe50843[_0x422078(0x22e)]=_0x4fc6df,{'valid':!![],'deltapos':0x0,'deltaup':0x1,'deltaforward':0x1};});}#f035(_0x594e11,_0x41f614){var _0x510ac7=a0_0x261574,_0x1a568d=0.5*_0x41f614*_0x41f614;_0x594e11[_0x510ac7(0x18f)][_0x510ac7(0x28e)][0x3]=_0x41f614,_0x594e11[_0x510ac7(0x18f)]['data32F'][0x19]=_0x41f614,_0x594e11[_0x510ac7(0x18f)][_0x510ac7(0x28e)][0x2f]=_0x41f614,_0x594e11['transitionMatrix'][_0x510ac7(0x28e)][0x45]=_0x41f614,_0x594e11[_0x510ac7(0x18f)]['data32F'][0x5b]=_0x41f614,_0x594e11[_0x510ac7(0x18f)]['data32F'][0x71]=_0x41f614,_0x594e11[_0x510ac7(0x18f)][_0x510ac7(0x28e)][0xca]=_0x41f614,_0x594e11[_0x510ac7(0x18f)]['data32F'][0xe0]=_0x41f614,_0x594e11['transitionMatrix']['data32F'][0xf6]=_0x41f614,_0x594e11['transitionMatrix'][_0x510ac7(0x28e)][0x10c]=_0x41f614,_0x594e11['transitionMatrix'][_0x510ac7(0x28e)][0x122]=_0x41f614,_0x594e11['transitionMatrix'][_0x510ac7(0x28e)][0x138]=_0x41f614,_0x594e11[_0x510ac7(0x18f)][_0x510ac7(0x28e)][0x14e]=_0x41f614,_0x594e11[_0x510ac7(0x18f)][_0x510ac7(0x28e)][0x164]=_0x41f614,_0x594e11[_0x510ac7(0x18f)][_0x510ac7(0x28e)][0x6]=_0x1a568d,_0x594e11[_0x510ac7(0x18f)][_0x510ac7(0x28e)][0x1c]=_0x1a568d,_0x594e11[_0x510ac7(0x18f)][_0x510ac7(0x28e)][0x32]=_0x1a568d,_0x594e11[_0x510ac7(0x18f)][_0x510ac7(0x28e)][0xce]=_0x1a568d,_0x594e11['transitionMatrix']['data32F'][0xe4]=_0x1a568d,_0x594e11[_0x510ac7(0x18f)]['data32F'][0xfa]=_0x1a568d,_0x594e11['transitionMatrix'][_0x510ac7(0x28e)][0x110]=_0x1a568d;}#f036(_0x3c0f06,_0x347fdb){var _0x9a9b69=a0_0x261574,_0x521c85=[],_0x40140e=0x1,_0x53d780=0x0,_0x2ce0ca=0x1,_0x484c42=0x0,_0x3413c1=[],_0x350176=[];for(var _0x31d952=0x0;_0x31d952<_0x347fdb[_0x9a9b69(0x23c)][_0x9a9b69(0x21b)]();_0x31d952++){if('HcrPN'===_0x9a9b69(0x184)){var _0x586dfe=_0x347fdb[_0x9a9b69(0x23c)][_0x9a9b69(0x243)](_0x31d952);_0x521c85[_0x9a9b69(0x1fd)](_0x586dfe['trainIdx']);var _0x2a5446=_0x347fdb[_0x9a9b69(0x23c)][_0x9a9b69(0x21b)](),_0x3d00bb=_0x347fdb['gray']['size']()['width'],_0x4d70dc=_0x347fdb[_0x9a9b69(0x295)][_0x9a9b69(0x21b)]()[_0x9a9b69(0x1af)],_0x350fc0=_0x347fdb['kp'][_0x9a9b69(0x243)](_0x586dfe[_0x9a9b69(0x16b)])['pt']['x']/_0x3d00bb,_0x3a2655=_0x347fdb['kp'][_0x9a9b69(0x243)](_0x586dfe[_0x9a9b69(0x16b)])['pt']['y']/_0x4d70dc;if(_0x350fc0<_0x40140e)_0x40140e=_0x350fc0;else{if(_0x350fc0>_0x53d780)_0x53d780=_0x350fc0;}if(_0x3a2655<_0x2ce0ca)_0x2ce0ca=_0x3a2655;else{if(_0x3a2655>_0x484c42)_0x484c42=_0x3a2655;}_0x3413c1['push'](_0x350fc0),_0x350176[_0x9a9b69(0x1fd)](_0x3a2655);}else{_0x33d7e9[_0x9a9b69(0x1f2)](_0x9a9b69(0x27b)),_0x32791c['cv']=_0x305d18;;;_0x589fb1();}}var _0x245c9f=this.#f046(_0x3413c1),_0x331e49=this.#f046(_0x350176),_0x2e673f=(_0x53d780-_0x40140e)*(_0x484c42-_0x2ce0ca),_0x3bac0f=(_0x2e673f+0xa*_0x245c9f+0xa*_0x331e49)/0x3;;;;;if(!_0x347fdb[_0x9a9b69(0x20b)]||_0x3bac0f>_0x347fdb[_0x9a9b69(0x20b)]){if(_0x9a9b69(0x170)!=='IosbY'){_0x347fdb[_0x9a9b69(0x20b)]=_0x3bac0f,_0x347fdb[_0x9a9b69(0x292)]=_0x521c85;;}else return _0x252c74[arguments[0x0]];}if(_0x347fdb[_0x9a9b69(0x1c1)]){var _0x4f9dd3=_0x347fdb[_0x9a9b69(0x1c1)]['x']>0x0,_0x35d2e3=_0x347fdb[_0x9a9b69(0x1c1)]['x']+_0x347fdb[_0x9a9b69(0x1c1)][_0x9a9b69(0x192)]<_0x3c0f06[_0x9a9b69(0x21b)]()['width'],_0x48f840=_0x347fdb[_0x9a9b69(0x1c1)]['y']>0x0,_0x49ca88=_0x347fdb[_0x9a9b69(0x1c1)]['y']+_0x347fdb[_0x9a9b69(0x1c1)]['height']<_0x3c0f06[_0x9a9b69(0x21b)]()[_0x9a9b69(0x1af)];if(_0x2e673f<0.5*_0x347fdb[_0x9a9b69(0x218)]&&(_0x4f9dd3&&_0x35d2e3&&_0x48f840&&_0x49ca88)){if(_0x9a9b69(0x20e)!==_0x9a9b69(0x1be)){;if(_0x347fdb[_0x9a9b69(0x20b)]&&_0x347fdb[_0x9a9b69(0x20b)]>_0x3bac0f){var _0x691447=0x0;_0x347fdb['matches'][_0x9a9b69(0x1c0)](),_0x347fdb['matches']=new cv[(_0x9a9b69(0x1d5))]();for(var _0x31d952=0x0;_0x31d952<_0x347fdb['idealMatches'][_0x9a9b69(0x1f0)];_0x31d952++){var _0x586dfe={'distance':0x64,'imgIdx':0x0,'queryIdx':0x0,'trainIdx':_0x347fdb[_0x9a9b69(0x292)][_0x31d952]};_0x347fdb[_0x9a9b69(0x23c)][_0x9a9b69(0x187)](_0x586dfe),_0x691447++;};return;}}else{var _0x20e360={};return function(){var _0x5cf7d1=_0x9a9b69;if(arguments[_0x5cf7d1(0x1f0)]==0x1)return _0x20e360[arguments[0x0]];arguments['length']==0x2&&(_0x20e360[arguments[0x0]]=arguments[0x1]);};}}}var _0x691447=0x0;while(_0x347fdb[_0x9a9b69(0x23c)]['size']()<this[_0x9a9b69(0x236)]&&_0x347fdb[_0x9a9b69(0x23c)][_0x9a9b69(0x21b)]()<_0x347fdb['kp'][_0x9a9b69(0x21b)]()){var _0x592868=this[_0x9a9b69(0x168)](0x0,_0x347fdb['kp'][_0x9a9b69(0x21b)]()-0x1);if(_0x521c85[_0x9a9b69(0x297)](_0x592868))continue;var _0x586dfe={'distance':0x64,'imgIdx':0x0,'queryIdx':0x0,'trainIdx':_0x592868};_0x347fdb[_0x9a9b69(0x23c)][_0x9a9b69(0x187)](_0x586dfe),_0x691447++;};return;}#f037(_0x3515b4){var _0x2e0175=a0_0x261574;console[_0x2e0175(0x1f2)](_0x2e0175(0x2a5)+_0x3515b4),window[_0x2e0175(0x1d0)][_0x2e0175(0x1ad)](this[_0x2e0175(0x189)],'OnTrackingFound',_0x3515b4);}#f038(_0x3c9d64){var _0x38e007=a0_0x261574;console[_0x38e007(0x1f2)](_0x38e007(0x27e)+_0x3c9d64),window[_0x38e007(0x1d0)][_0x38e007(0x1ad)](this[_0x38e007(0x189)],'OnTrackingLost',_0x3c9d64);}#f039(_0x5aa3d2,_0x2ceead){var _0x49470d=a0_0x261574,_0x54cf05=new cv[(_0x49470d(0x210))](),_0x26b83d=new cv[(_0x49470d(0x210))]();_0x2ceead['tvec'][_0x49470d(0x288)](_0x54cf05),_0x2ceead[_0x49470d(0x1ce)][_0x49470d(0x288)](_0x26b83d),_0x54cf05[_0x49470d(0x28e)][0x1]*=-0x1,_0x26b83d=_0x26b83d['t']();var _0x2825d5=[0x1,0x0,0x0,0x0,-0x1,0x0,0x0,0x0,0x1];_0x2825d5=cv['matFromArray'](0x3,0x3,cv[_0x49470d(0x173)],_0x2825d5),cv[_0x49470d(0x219)](_0x2825d5,_0x26b83d,0x1,_0x26b83d,0x0,_0x26b83d,0x0),cv['gemm'](_0x26b83d,_0x2825d5,0x1,_0x26b83d,0x0,_0x26b83d,0x0),_0x2825d5[_0x49470d(0x1c0)]();var _0x113472=[0x0,0x0,-0x1,0x0,-0x1,0x0,-0x1,0x0,0x0];_0x113472=cv[_0x49470d(0x27d)](0x3,0x3,cv[_0x49470d(0x173)],_0x113472),cv[_0x49470d(0x219)](_0x113472,_0x26b83d,0x1,_0x26b83d,0x0,_0x26b83d,0x0),_0x113472['delete']();var _0x373d6e=_0x5aa3d2+','+_0x54cf05[_0x49470d(0x28e)][0x0]+','+_0x54cf05['data32F'][0x1]+','+_0x54cf05['data32F'][0x2]+','+_0x26b83d[_0x49470d(0x28e)][0x0]+','+_0x26b83d[_0x49470d(0x28e)][0x1]+','+_0x26b83d[_0x49470d(0x28e)][0x2]+','+_0x26b83d['data32F'][0x3]+','+_0x26b83d[_0x49470d(0x28e)][0x4]+','+_0x26b83d[_0x49470d(0x28e)][0x5]+','+_0x26b83d[_0x49470d(0x28e)][0x6]+','+_0x26b83d[_0x49470d(0x28e)][0x7]+','+_0x26b83d[_0x49470d(0x28e)][0x8]+',';_0x54cf05['delete'](),_0x26b83d[_0x49470d(0x1c0)](),window[_0x49470d(0x1d0)]['SendMessage'](this['TRACKER_NAME'],_0x49470d(0x1e9),_0x373d6e);}#f040(_0x5666e1,_0x49c8ff){var _0xee9d7b=a0_0x261574,_0x38faf8=0x1,_0x4a40ce=document[_0xee9d7b(0x237)](_0x49c8ff);if(!_0x4a40ce){_0x4a40ce=document[_0xee9d7b(0x1ca)](_0xee9d7b(0x228)),_0x4a40ce['id']=_0x49c8ff,document[_0xee9d7b(0x1e8)][_0xee9d7b(0x26d)](_0x4a40ce);if(!this[_0xee9d7b(0x19b)])this[_0xee9d7b(0x19b)]=[];this[_0xee9d7b(0x19b)][_0xee9d7b(0x1fd)](_0x49c8ff),_0x4a40ce[_0xee9d7b(0x254)][_0xee9d7b(0x172)]=_0xee9d7b(0x28b),_0x4a40ce[_0xee9d7b(0x254)][_0xee9d7b(0x2a3)]=0x0,_0x4a40ce[_0xee9d7b(0x254)][_0xee9d7b(0x1d7)]=0x0,_0x4a40ce[_0xee9d7b(0x254)]['transform']='translate(0%,0%)\x20scale('+_0x38faf8+')';}cv[_0xee9d7b(0x1ff)](_0x49c8ff,_0x5666e1);var _0x563215=this[_0xee9d7b(0x19b)][_0xee9d7b(0x1aa)](_0x49c8ff);_0x563215!=-0x1&&(_0x4a40ce['style'][_0xee9d7b(0x1d7)]=_0x563215*_0x5666e1[_0xee9d7b(0x21b)]()[_0xee9d7b(0x192)]*_0x38faf8+'px');}#f041(_0x1e0801){var _0x1ed665=a0_0x261574,_0x564be7=document[_0x1ed665(0x237)](_0x1e0801);if(_0x564be7){_0x564be7[_0x1ed665(0x269)]();var _0x32aaf6=this['debugIds'][_0x1ed665(0x1aa)](_0x1e0801);_0x32aaf6!==-0x1&&this[_0x1ed665(0x19b)][_0x1ed665(0x240)](_0x32aaf6,0x1);}}#f042(_0x289a1,_0x21b59f){var _0x1cc1bf=a0_0x261574;if(!this[_0x1cc1bf(0x282)])this['debugImages']={};this[_0x1cc1bf(0x282)][_0x21b59f]=_0x289a1;}#f043(_0x37ceb8){var _0x19c40e=a0_0x261574;if(this[_0x19c40e(0x282)]&&this[_0x19c40e(0x282)][_0x37ceb8])return this[_0x19c40e(0x282)][_0x37ceb8];else return;}#f044(_0xb9cb0){var _0x5e6342=a0_0x261574;this[_0x5e6342(0x282)]&&this['debugImages'][_0xb9cb0]&&(_0x5e6342(0x1b1)!==_0x5e6342(0x262)?(this[_0x5e6342(0x282)][_0xb9cb0][_0x5e6342(0x1c0)](),this[_0x5e6342(0x282)][_0xb9cb0]=null):(_0x1df637[_0x5e6342(0x1fd)](_0x15b23d[_0x5e6342(0x243)](_0x183d8d[_0x5e6342(0x243)](_0x5a9aaf)['queryIdx'])['pt']['x']),_0x36f9ff[_0x5e6342(0x1fd)](_0xe660ae[_0x5e6342(0x243)](_0x5582d2[_0x5e6342(0x243)](_0x509b4a)[_0x5e6342(0x1f7)])['pt']['y']),_0x26adf7[_0x5e6342(0x1fd)](_0x416655[_0x5e6342(0x243)](_0x342c9f[_0x5e6342(0x243)](_0x3d0948)[_0x5e6342(0x16b)])['pt']['x']),_0x457948['push'](_0x2ecd5d[_0x5e6342(0x243)](_0x4d3eb8[_0x5e6342(0x243)](_0x2e9bc8)[_0x5e6342(0x16b)])['pt']['y'])));}[a0_0x261574(0x168)](_0x48cff4,_0x34edf7){var _0x57df20=a0_0x261574;return Math[_0x57df20(0x17d)](Math[_0x57df20(0x242)]()*(_0x34edf7-_0x48cff4+0x1)+_0x48cff4);}[a0_0x261574(0x221)](_0x31f571){var _0x189ff1=a0_0x261574;return Math[_0x189ff1(0x221)](_0x31f571*0x3e8)/0x3e8;}['GetWebGLWarpedTexture'](_0x1083ac,_0x2cba0c,_0x32f0e5){return iTracker.#f045(_0x1083ac,_0x2cba0c,_0x32f0e5);}#f045(_0x10da99,_0x177f57,_0x1dbfdb){var _0x19f1e0=a0_0x261574,_0x6d86b6=this.#p047[_0x19f1e0(0x25b)](_0x19f1e0(0x1db)),_0x34fd5e=_0x6d86b6[_0x19f1e0(0x1a1)][_0x10da99];;if(_0x34fd5e){if(_0x19f1e0(0x1ed)===_0x19f1e0(0x179)){var _0x2cf45d=_0x424fb8[_0x19f1e0(0x1c1)]['x']>0x0,_0x5bc062=_0x679369[_0x19f1e0(0x1c1)]['x']+_0x4d3ebb[_0x19f1e0(0x1c1)][_0x19f1e0(0x192)]<_0x9a243f[_0x19f1e0(0x21b)]()[_0x19f1e0(0x192)],_0xa4ce6a=_0x28cd9f[_0x19f1e0(0x1c1)]['y']>0x0,_0x4899e8=_0x339911['roi']['y']+_0x2fe011[_0x19f1e0(0x1c1)][_0x19f1e0(0x1af)]<_0xa5d95[_0x19f1e0(0x21b)]()['height'];if(_0x1ce1ee<0.5*_0x27ff0d[_0x19f1e0(0x218)]&&(_0x2cf45d&&_0x5bc062&&_0xa4ce6a&&_0x4899e8)){;if(_0x584566[_0x19f1e0(0x20b)]&&_0x400176['bestMatchQuality']>_0x5f06b9){var _0x34d8a0=0x0;_0x576a8b[_0x19f1e0(0x23c)][_0x19f1e0(0x1c0)](),_0x3cdc1e[_0x19f1e0(0x23c)]=new _0x2fee80['DMatchVector']();for(var _0x52178a=0x0;_0x52178a<_0x14fe82['idealMatches']['length'];_0x52178a++){var _0x1aae20={'distance':0x64,'imgIdx':0x0,'queryIdx':0x0,'trainIdx':_0x5d2056['idealMatches'][_0x52178a]};_0x3cc16c[_0x19f1e0(0x23c)][_0x19f1e0(0x187)](_0x1aae20),_0x34d8a0++;};return;}}}else{let _0x4d6d2c=new cv[(_0x19f1e0(0x210))](),_0x292bc1=_0x34fd5e[_0x19f1e0(0x295)][_0x19f1e0(0x21b)]()[_0x19f1e0(0x192)]/_0x34fd5e[_0x19f1e0(0x295)]['size']()[_0x19f1e0(0x1af)],_0x5843d8=this.#p034[_0x19f1e0(0x21b)]()['width']/_0x34fd5e[_0x19f1e0(0x295)][_0x19f1e0(0x21b)]()[_0x19f1e0(0x192)],_0x1d75f8={'width':_0x34fd5e[_0x19f1e0(0x295)][_0x19f1e0(0x21b)]()[_0x19f1e0(0x192)]*_0x5843d8,'height':_0x34fd5e[_0x19f1e0(0x295)][_0x19f1e0(0x21b)]()[_0x19f1e0(0x1af)]*_0x5843d8};var _0x217f8f=_0x34fd5e[_0x19f1e0(0x285)],_0x2f5d78=this.#p034[_0x19f1e0(0x21b)]()[_0x19f1e0(0x192)],_0x1cb305=this.#p034['size']()[_0x19f1e0(0x192)]/_0x292bc1;let _0x5dc2a5=cv[_0x19f1e0(0x27d)](0x3,0x3,cv[_0x19f1e0(0x163)],[0x1/_0x5843d8,0x0,-0x1/_0x5843d8/_0x5843d8,0x0,0x1/_0x5843d8,-0x1/_0x5843d8/_0x5843d8,0x0,0x0,0x1]),_0x39a3ef=cv['matFromArray'](0x3,0x3,cv[_0x19f1e0(0x163)],[_0x5843d8,0x0,0x1/_0x5843d8,0x0,_0x5843d8,0x1/_0x5843d8,0x0,0x0,0x1]);var _0x42fdad=new cv[(_0x19f1e0(0x210))]();cv[_0x19f1e0(0x219)](_0x39a3ef,_0x217f8f,0x1,_0x5dc2a5,0x0,_0x42fdad,0x0),cv[_0x19f1e0(0x289)](this.#p034,_0x4d6d2c,_0x42fdad,_0x1d75f8,0x9),cv[_0x19f1e0(0x247)](_0x4d6d2c,_0x4d6d2c,{'width':_0x1dbfdb,'height':_0x1dbfdb},0x0,0x0,cv[_0x19f1e0(0x182)]);const _0x19aa5c=new ImageData(new Uint8ClampedArray(_0x4d6d2c[_0x19f1e0(0x1cf)]),_0x4d6d2c['cols'],_0x4d6d2c[_0x19f1e0(0x17c)]);let _0x50c998=this[_0x19f1e0(0x25f)];if(!_0x50c998){if(_0x19f1e0(0x255)===_0x19f1e0(0x233))var _0x33754a=_0x4498f4;else{_0x50c998=document[_0x19f1e0(0x1ca)](_0x19f1e0(0x228)),this['WARPED_IMAGE_CANVAS']=_0x50c998,_0x50c998['id']=_0x177f57;;}}_0x50c998['width']=_0x4d6d2c[_0x19f1e0(0x161)],_0x50c998[_0x19f1e0(0x1af)]=_0x4d6d2c[_0x19f1e0(0x17c)];const _0x38dbab=_0x50c998[_0x19f1e0(0x26f)]('2d');return _0x38dbab[_0x19f1e0(0x193)](0x0,0x0,_0x50c998['width'],_0x50c998['height']),_0x38dbab[_0x19f1e0(0x21e)](_0x19aa5c,0x0,0x0),_0x4d6d2c[_0x19f1e0(0x1c0)](),_0x50c998;}}}#f046(_0x4bd06c){var _0x4f3364=a0_0x261574;const _0x32e9c9=_0x4bd06c[_0x4f3364(0x1f0)],_0x387141=_0x4bd06c[_0x4f3364(0x174)]((_0x2d5da0,_0x2647f0)=>_0x2d5da0+_0x2647f0)/_0x32e9c9;return _0x4bd06c[_0x4f3364(0x263)](_0x4eb916=>Math[_0x4f3364(0x283)](_0x4eb916-_0x387141,0x2))[_0x4f3364(0x174)]((_0x1a7861,_0x22dbd3)=>_0x1a7861+_0x22dbd3)/_0x32e9c9;}};
|
opencv.js
ADDED
The diff for this file is too large to render.
See raw diff
|
|
targets/ClothAd.png
ADDED
![]() |