EmulatorJS/data/emu-min.js

1 line
No EOL
640 KiB
JavaScript
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

var EJS=function(n){e=!0;var e,o={};function r(e){if(o[e])return o[e].exports;var t=o[e]={i:e,l:!1,exports:{}};return n[e].call(t.exports,t,t.exports,r),t.l=!0,t.exports}return r.m=n,r.c=o,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(t,e){if(1&e&&(t=r(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)r.d(n,o,function(e){return t[e]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=396)}([function(e,t,n){var h=n(2),m=n(20),g=n(13),v=n(14),b=n(21),y=function(e,t,n){var o,r,i,a=e&y.F,s=e&y.G,c=e&y.S,l=e&y.P,u=e&y.B,d=s?h:c?h[t]||(h[t]={}):(h[t]||{}).prototype,f=s?m:m[t]||(m[t]={}),p=f.prototype||(f.prototype={});for(o in s&&(n=t),n)r=((i=!a&&d&&void 0!==d[o])?d:n)[o],i=u&&i?b(r,h):l&&"function"==typeof r?b(Function.call,r):r,d&&v(d,o,r,e&y.U),f[o]!=r&&g(f,o,i),l&&p[o]!=r&&(p[o]=r)};h.core=m,y.F=1,y.G=2,y.S=4,y.P=8,y.B=16,y.W=32,y.U=64,y.R=128,e.exports=y},function(e,t,n){var o=n(4);e.exports=function(e){if(!o(e))throw TypeError(e+" is not an object!");return e}},function(e,t){e=e.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)},function(e,t){e.exports=function(e){try{return!!e()}catch(e){return!0}}},function(e,t){e.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},function(e,t,n){var o=n(58)("wks"),r=n(36),i=n(2).Symbol,a="function"==typeof i;(e.exports=function(e){return o[e]||(o[e]=a&&i[e]||(a?i:r)("Symbol."+e))}).store=o},function(e,t,n){!function(e){"use strict";function o(){}function t(e){var t=this,n=window;this.update=o,this.requestAnimationFrame=e||n.requestAnimationFrame||n.webkitRequestAnimationFrame||n.mozRequestAnimationFrame,this.tickFunction=function(){t.update(),t.startTicker()},this.startTicker=function(){t.requestAnimationFrame.apply(n,[t.tickFunction])}}var l,r={getType:function(){return"null"},isSupported:function(){return!1},update:o};function n(){}function i(e,t){this.listener=e,this.gamepadGetter=t,this.knownGamepads=[]}function a(t){this.listener=t,window.addEventListener("gamepadconnected",function(e){t._connect(e.gamepad)}),window.addEventListener("gamepaddisconnected",function(e){t._disconnect(e.gamepad)})}function u(e){this.updateStrategy=e||new t,this.gamepads=[],this.listeners={},this.platform=r,this.deadzone=.03,this.maximizeThreshold=.97}function d(e,t,n){return t<e.length?e[t]:n+(t-e.length+1)}function s(){return 0}t.prototype.start=function(e){this.update=e||o,this.startTicker()},n.prototype.update=o,n.prototype.start=function(e){this.update=e||o},i.factory=function(e){var t=r,n=window&&window.navigator;return n&&(void 0!==n.getGamepads?t=new i(e,function(){return n.getGamepads()}):void 0!==n.webkitGamepads?t=new i(e,function(){return n.webkitGamepads()}):void 0!==n.webkitGetGamepads&&(t=new i(e,function(){return n.webkitGetGamepads()}))),t},i.getType=function(){return"WebKit"},i.prototype.getType=function(){return i.getType()},i.prototype.isSupported=function(){return!0},i.prototype.update=function(){for(var e,t=Array.prototype.slice.call(this.gamepadGetter(),0),n=this.knownGamepads.length-1;0<=n;n--)e=this.knownGamepads[n],t.indexOf(e)<0&&(this.knownGamepads.splice(n,1),this.listener._disconnect(e));for(n=0;n<t.length;n++)(e=t[n])&&this.knownGamepads.indexOf(e)<0&&(this.knownGamepads.push(e),this.listener._connect(e))},a.factory=function(e){var t=r;return window&&void 0!==window.addEventListener&&(t=new a(e)),t},a.getType=function(){return"Firefox"},a.prototype.getType=function(){return a.getType()},a.prototype.isSupported=function(){return-1!==(window&&window.navigator).userAgent.indexOf("Firefox")},a.prototype.update=o,u.UpdateStrategies={AnimFrameUpdateStrategy:t,ManualUpdateStrategy:n},u.PlatformFactories=[a.factory,i.factory],u.Type={N64:"n64",PLAYSTATION:"playstation",LOGITECH:"logitech",XBOX:"xbox",ECKA:"ecka",UNKNOWN:"unknown"},u.Event={CONNECTED:"connected",UNSUPPORTED:"unsupported",DISCONNECTED:"disconnected",TICK:"tick",BUTTON_DOWN:"button-down",BUTTON_UP:"button-up",AXIS_CHANGED:"axis-changed"},u.StandardButtons=["BUTTON_1","BUTTON_2","BUTTON_3","BUTTON_4","LEFT_TOP_SHOULDER","RIGHT_TOP_SHOULDER","LEFT_BOTTOM_SHOULDER","RIGHT_BOTTOM_SHOULDER","SELECT_BACK","START_FORWARD","LEFT_STICK","RIGHT_STICK","DPAD_UP","DPAD_DOWN","DPAD_LEFT","DPAD_RIGHT","HOME"],u.StandardAxes=["LEFT_STICK_X","LEFT_STICK_Y","RIGHT_STICK_X","RIGHT_STICK_Y"],u.StandardMapping={env:{},buttons:{byButton:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]},axes:{byAxis:[0,1,2,3]}},u.Mappings=[{env:{platform:a.getType(),type:u.Type.N64},buttons:{byButton:[2,1,3,0,4,5,-1,-1,8,9,-1,-1,12,13,14,15,-1]},axes:{byAxis:[1,2,-1,-1]}},{env:{platform:i.getType(),type:u.Type.N64},buttons:{byButton:[2,1,3,0,4,5,-1,-1,8,9,-1,-1,12,13,14,15,-1]},axes:{byAxis:[0,1,-1,-1]}},{env:{platform:a.getType(),type:u.Type.XBOX},buttons:{byButton:[0,1,2,3,4,5,15,16,9,8,6,7,11,12,13,14,10]},axes:{byAxis:[0,1,2,3]}},{env:{platform:a.getType(),type:u.Type.PLAYSTATION},buttons:{byButton:[14,13,15,12,10,11,8,9,0,3,1,2,4,6,7,5,16]},axes:{byAxis:[0,1,2,3]}},{env:{platform:i.getType(),type:u.Type.LOGITECH},buttons:{byButton:[1,2,0,3,4,5,6,7,8,9,10,11,11,12,13,14,10]},axes:{byAxis:[0,1,2,3]}},{env:{platform:a.getType(),type:u.Type.LOGITECH},buttons:{byButton:[0,1,2,3,4,5,-1,-1,6,7,8,9,11,12,13,14,10],byAxis:[-1,-1,-1,-1,-1,-1,[2,0,1],[2,0,-1]]},axes:{byAxis:[0,1,3,4]}},{env:{platform:i.getType(),type:u.Type.ECKA},buttons:{byButton:[2,1,3,0,4,5,6,7,8,9,10,11,11,12,13,14,10],byAxis:[-1,-1,-1,-1,-1,-1,[2,0,1],[2,0,-1]]},axes:{byAxis:[0,1,3,4]}},{env:{platform:i.getType(),type:u.Type.UNKNOWN},buttons:{byButton:[0,1,2,3,4,5,-1,-1,6,7,8,9,11,12,13,14,15,16,17,10]},axes:{byAxis:[0,1,2,5]}}],u.prototype.init=function(){var e=u.resolvePlatform(this),t=this;return this.platform=e,this.updateStrategy.start(function(){t._update()}),this.buttonState=[],this.extraButtonState=[],e.isSupported()},u.prototype.bind=function(e,t){return void 0===this.listeners[e]&&(this.listeners[e]=[]),this.listeners[e].push(t),this},u.prototype.unbind=function(e,t){if(void 0!==e){if(void 0!==t){if(void 0===this.listeners[e])return!1;for(var n=0;n<this.listeners[e].length;n++)if(this.listeners[e][n]===t)return this.listeners[e].splice(n,1),!0;return!1}this.listeners[e]=[]}else this.listeners={}},u.prototype.count=function(){return this.gamepads.length},u.prototype._fire=function(e,n){if(void 0!==this.listeners[e]){for(var t=0;t<this.listeners[e].length;t++)this.listeners[e][t].apply(this.listeners[e][t],[n]);var o=this;n.gamepad&&n.gamepad.extra_buttons&&n.gamepad.extra_buttons.forEach(function(e,t){o.extraButtonState[n.gamepad.index]||(o.extraButtonState[n.gamepad.index]=[]),o.extraButtonState[n.gamepad.index][t]=e})}},u.getNullPlatform=function(){return Object.create(r)},u.resolvePlatform=function(e){for(var t=r,n=0;!t.isSupported()&&n<u.PlatformFactories.length;n++)t=u.PlatformFactories[n](e);return t},u.prototype._connect=function(e){var t,n,o=this._resolveMapping(e);for(e.state={},e.lastState={},e.updater=[],this.buttonState[e.index]||(this.buttonState[e.index]=[]),this.extraButtonState[e.index]||(this.extraButtonState[e.index]=[]),t=o.buttons.byButton.length,n=0;n<t;n++)this._addButtonUpdater(e,o,n);for(t=o.axes.byAxis.length,n=0;n<t;n++)this._addAxisUpdater(e,o,n);if(this.gamepads[e.index]=e,!this.gamepads[e.index].extra_buttons)for(this.gamepads[e.index].extra_buttons=[],n=e.buttons.length;n<16;n++)this.extraButtonState[e.index][n]?this.gamepads[e.index].extra_buttons[n]=this.extraButtonState[e.index][n]:this.gamepads[e.index].extra_buttons[n]={pressed:!1,value:0};this._fire(u.Event.CONNECTED,e)},u.prototype._addButtonUpdater=function(r,e,t){var i=d(u.StandardButtons,t,"EXTRA_BUTTON_"),a=this._createButtonGetter(r,e.buttons,t),s=this,c={gamepad:r,control:i,index:t,gamepadIndex:r.index};r.state[i]=0,r.lastState[i]=0,null==this.buttonState[r.index][i]&&(this.buttonState[r.index][i]=0),t=function(){var e=a(),t=r.lastState[i],n=.5<e,o=.5<t;r.state[i]=e,n&&!o?s._fire(u.Event.BUTTON_DOWN,Object.create(c)):(!n&&o||s.buttonState[r.index][i]!=e)&&s._fire(u.Event.BUTTON_UP,Object.create(c)),0!==e&&1!==e&&e!==t&&s._fireAxisChangedEvent(r,i,e),r.lastState[i]=e,s.buttonState[r.index][i]=e},r.updater.push(t)},u.prototype._addAxisUpdater=function(n,e,t){var o=d(u.StandardAxes,t,"EXTRA_AXIS_"),r=this._createAxisGetter(n,e.axes,t),i=this;n.state[o]=0,n.lastState[o]=0,null==this.buttonState[n.index][o]&&(this.buttonState[n.index][o]=0),t=function(){var e=r(),t=i.buttonState[n.index][o];(n.state[o]=e)!==t&&i._fireAxisChangedEvent(n,o,e),n.lastState[o]=e,i.buttonState[n.index][o]=e},n.updater.push(t)},u.prototype._fireAxisChangedEvent=function(e,t,n){n={gamepad:e,axis:t,value:n};this._fire(u.Event.AXIS_CHANGED,n)},u.prototype._createButtonGetter=(l=function(){return 0},function(t,e,n){var o,r,i,a,s=l,c=this;return-1!==(o=e.byButton[n])?"number"==typeof o&&o<t.buttons.length&&(s=function(){var e=t.buttons[o];return"number"==typeof e?e:"number"==typeof e.value?e.value:0}):e.byAxis&&n<e.byAxis.length&&(o=e.byAxis[n],"[object Array]"===Object.prototype.toString.call(o)&&3==o.length&&o[0]<t.axes.length&&(r=s=function(){var e=t.axes[o[0]];return c._applyDeadzoneMaximize(e)},i=o[1],a=o[2],n=l,i<a?n=function(){var e=a-i,t=r();return(t=(t-i)/e)<0?0:t}:a<i&&(n=function(){var e=i-a,t=r();return 1<(t=(t-a)/e)?0:1-t}),s=n)),s}),u.prototype._createAxisGetter=function(t,e,n){var o,r=s,i=this;return-1!==(o=e.byAxis[n])&&"number"==typeof o&&o<t.axes.length&&(r=function(){var e=t.axes[o];return i._applyDeadzoneMaximize(e)}),r},u.prototype._disconnect=function(e){var t,n=[];for(void 0!==this.gamepads[e.index]&&delete this.gamepads[e.index],t=0;t<this.gamepads.length;t++)void 0!==this.gamepads[t]&&(n[t]=this.gamepads[t]);this.gamepads=n,this._fire(u.Event.DISCONNECTED,e)},u.prototype._resolveControllerType=function(e){return-1!==(e=e.toLowerCase().replace(/\s+/g," ").replace(/^\s+|\s+$/g,"")).indexOf("playstation")?u.Type.PLAYSTATION:-1!==e.indexOf("logitech")||-1!==e.indexOf("wireless gamepad")?u.Type.LOGITECH:-1!==e.indexOf("xbox")||-1!==e.indexOf("360")?u.Type.XBOX:-1!==e.indexOf("79-6-generic")&&-1!==e.indexOf("joystick")||-1!==e.indexOf("vendor: 0079 product: 0006")&&-1!==e.indexOf("generic usb joystick")?u.Type.N64:"usb joystick (vendor: 0e8f product: 0002)"===e?u.Type.ECKA:u.Type.UNKNOWN},u.prototype._resolveMapping=function(e){for(var t,n=u.Mappings,o=null,r={platform:this.platform.getType(),type:this._resolveControllerType(e.id)},i=0;!o&&i<n.length;i++)t=n[i],u.envMatchesFilter(t.env,r)&&(o=t);return o||u.StandardMapping},u.envMatchesFilter=function(e,t){var n,o=!0;for(n in e)e[n]!==t[n]&&(o=!1);return o},u.prototype._update=function(){this.platform.update(),this.gamepads.forEach(function(e){e&&e.updater.forEach(function(e){e()})}),0<this.gamepads.length&&this._fire(u.Event.TICK,this.gamepads)},u.prototype._applyDeadzoneMaximize=function(e,t,n){return t=void 0!==t?t:this.deadzone,n=void 0!==n?n:this.maximizeThreshold,0<=e?e<t?e=0:n<e&&(e=1):-t<e?e=0:e<-n&&(e=-1),e},e.Gamepad=u}(e.exports||window)},function(e,t,n){e.exports=!n(3)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(e,t,n){var o=n(1),r=n(109),i=n(24),a=Object.defineProperty;t.f=n(7)?Object.defineProperty:function(e,t,n){if(o(e),t=i(t,!0),o(n),r)try{return a(e,t,n)}catch(e){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(e[t]=n.value),e}},function(e,t,n){var o=n(26),r=Math.min;e.exports=function(e){return 0<e?r(o(e),9007199254740991):0}},function(e,t,n){var o=n(25);e.exports=function(e){return Object(o(e))}},function(e,o,t){(function(l,e){var t,n;function u(e){return(u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}n=function(){return r={},n.m=o=[function(e,t,n){e.exports=n(1)},function(e,t,n){"use strict";function o(e){var t=new a(e),e=i(a.prototype.request,t);return r.extend(e,a.prototype,t),r.extend(e,t),e}var r=n(2),i=n(3),a=n(5),s=n(22),c=o(n(11));c.Axios=a,c.create=function(e){return o(s(c.defaults,e))},c.Cancel=n(23),c.CancelToken=n(24),c.isCancel=n(10),c.all=function(e){return Promise.all(e)},c.spread=n(25),e.exports=c,e.exports.default=c},function(e,t,n){"use strict";function i(e){return"[object Array]"===c.call(e)}function o(e){return null!==e&&"object"==u(e)}function r(e){return"[object Function]"===c.call(e)}function a(e,t){if(null!=e)if("object"!=u(e)&&(e=[e]),i(e))for(var n=0,o=e.length;n<o;n++)t.call(null,e[n],n,e);else for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.call(null,e[r],r,e)}var s=n(3),n=n(4),c=Object.prototype.toString;e.exports={isArray:i,isArrayBuffer:function(e){return"[object ArrayBuffer]"===c.call(e)},isBuffer:n,isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},isArrayBufferView:function(e){return"undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&e.buffer instanceof ArrayBuffer},isString:function(e){return"string"==typeof e},isNumber:function(e){return"number"==typeof e},isObject:o,isUndefined:function(e){return void 0===e},isDate:function(e){return"[object Date]"===c.call(e)},isFile:function(e){return"[object File]"===c.call(e)},isBlob:function(e){return"[object Blob]"===c.call(e)},isFunction:r,isStream:function(e){return o(e)&&r(e.pipe)},isURLSearchParams:function(e){return"undefined"!=typeof URLSearchParams&&e instanceof URLSearchParams},isStandardBrowserEnv:function(){return("undefined"==typeof navigator||"ReactNative"!==navigator.product&&"NativeScript"!==navigator.product&&"NS"!==navigator.product)&&"undefined"!=typeof window&&"undefined"!=typeof document},forEach:a,merge:function n(){function e(e,t){"object"==u(o[t])&&"object"==u(e)?o[t]=n(o[t],e):o[t]=e}for(var o={},t=0,r=arguments.length;t<r;t++)a(arguments[t],e);return o},deepMerge:function n(){function e(e,t){"object"==u(o[t])&&"object"==u(e)?o[t]=n(o[t],e):"object"==u(e)?o[t]=n({},e):o[t]=e}for(var o={},t=0,r=arguments.length;t<r;t++)a(arguments[t],e);return o},extend:function(n,e,o){return a(e,function(e,t){n[t]=o&&"function"==typeof e?s(e,o):e}),n},trim:function(e){return e.replace(/^\s*/,"").replace(/\s*$/,"")}}},function(e,t){"use strict";e.exports=function(n,o){return function(){for(var e=new Array(arguments.length),t=0;t<e.length;t++)e[t]=arguments[t];return n.apply(o,e)}}},function(e,t){e.exports=function(e){return null!=e&&null!=e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}},function(e,t,n){"use strict";function r(e){this.defaults=e,this.interceptors={request:new a,response:new a}}var i=n(2),o=n(6),a=n(7),s=n(8),c=n(22);r.prototype.request=function(e){"string"==typeof e?(e=arguments[1]||{}).url=arguments[0]:e=e||{},(e=c(this.defaults,e)).method=e.method?e.method.toLowerCase():"get";var t=[s,void 0],n=Promise.resolve(e);for(this.interceptors.request.forEach(function(e){t.unshift(e.fulfilled,e.rejected)}),this.interceptors.response.forEach(function(e){t.push(e.fulfilled,e.rejected)});t.length;)n=n.then(t.shift(),t.shift());return n},r.prototype.getUri=function(e){return e=c(this.defaults,e),o(e.url,e.params,e.paramsSerializer).replace(/^\?/,"")},i.forEach(["delete","get","head","options"],function(n){r.prototype[n]=function(e,t){return this.request(i.merge(t||{},{method:n,url:e}))}}),i.forEach(["post","put","patch"],function(o){r.prototype[o]=function(e,t,n){return this.request(i.merge(n||{},{method:o,url:e,data:t}))}}),e.exports=r},function(e,t,n){"use strict";function r(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}var i=n(2);e.exports=function(e,t,n){if(!t)return e;var o,t=n?n(t):i.isURLSearchParams(t)?t.toString():(o=[],i.forEach(t,function(e,t){null!=e&&(i.isArray(e)?t+="[]":e=[e],i.forEach(e,function(e){i.isDate(e)?e=e.toISOString():i.isObject(e)&&(e=JSON.stringify(e)),o.push(r(t)+"="+r(e))}))}),o.join("&"));return t&&(e+=(-1===e.indexOf("?")?"?":"&")+t),e}},function(e,t,n){"use strict";function o(){this.handlers=[]}var r=n(2);o.prototype.use=function(e,t){return this.handlers.push({fulfilled:e,rejected:t}),this.handlers.length-1},o.prototype.eject=function(e){this.handlers[e]&&(this.handlers[e]=null)},o.prototype.forEach=function(t){r.forEach(this.handlers,function(e){null!==e&&t(e)})},e.exports=o},function(e,t,n){"use strict";function o(e){e.cancelToken&&e.cancelToken.throwIfRequested()}var r=n(2),i=n(9),a=n(10),s=n(11),c=n(20),l=n(21);e.exports=function(t){return o(t),t.baseURL&&!c(t.url)&&(t.url=l(t.baseURL,t.url)),t.headers=t.headers||{},t.data=i(t.data,t.headers,t.transformRequest),t.headers=r.merge(t.headers.common||{},t.headers[t.method]||{},t.headers||{}),r.forEach(["delete","get","head","post","put","patch","common"],function(e){delete t.headers[e]}),(t.adapter||s.adapter)(t).then(function(e){return o(t),e.data=i(e.data,e.headers,t.transformResponse),e},function(e){return a(e)||(o(t),e&&e.response&&(e.response.data=i(e.response.data,e.response.headers,t.transformResponse))),Promise.reject(e)})}},function(e,t,n){"use strict";var o=n(2);e.exports=function(t,n,e){return o.forEach(e,function(e){t=e(t,n)}),t}},function(e,t){"use strict";e.exports=function(e){return!(!e||!e.__CANCEL__)}},function(e,t,n){"use strict";function o(e,t){!i.isUndefined(e)&&i.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}var r,i=n(2),a=n(12),s={"Content-Type":"application/x-www-form-urlencoded"},c={adapter:((void 0!==l&&"[object process]"===Object.prototype.toString.call(l)||"undefined"!=typeof XMLHttpRequest)&&(r=n(13)),r),transformRequest:[function(e,t){return a(t,"Accept"),a(t,"Content-Type"),i.isFormData(e)||i.isArrayBuffer(e)||i.isBuffer(e)||i.isStream(e)||i.isFile(e)||i.isBlob(e)?e:i.isArrayBufferView(e)?e.buffer:i.isURLSearchParams(e)?(o(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):i.isObject(e)?(o(t,"application/json;charset=utf-8"),JSON.stringify(e)):e}],transformResponse:[function(e){if("string"==typeof e)try{e=JSON.parse(e)}catch(e){}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,validateStatus:function(e){return 200<=e&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};i.forEach(["delete","get","head"],function(e){c.headers[e]={}}),i.forEach(["post","put","patch"],function(e){c.headers[e]=i.merge(s)}),e.exports=c},function(e,t,n){"use strict";var r=n(2);e.exports=function(n,o){r.forEach(n,function(e,t){t!==o&&t.toUpperCase()===o.toUpperCase()&&(n[o]=e,delete n[t])})}},function(e,t,c){"use strict";var l=c(2),u=c(14),d=c(6),f=c(17),p=c(18),h=c(15);e.exports=function(s){return new Promise(function(t,n){var o=s.data,r=s.headers;l.isFormData(o)&&delete r["Content-Type"];var e,i,a=new XMLHttpRequest;if(s.auth&&(e=s.auth.username||"",i=s.auth.password||"",r.Authorization="Basic "+btoa(e+":"+i)),a.open(s.method.toUpperCase(),d(s.url,s.params,s.paramsSerializer),!0),a.timeout=s.timeout,a.onreadystatechange=function(){var e;a&&4===a.readyState&&(0!==a.status||a.responseURL&&0===a.responseURL.indexOf("file:"))&&(e="getAllResponseHeaders"in a?f(a.getAllResponseHeaders()):null,e={data:s.responseType&&"text"!==s.responseType?a.response:a.responseText,status:a.status,statusText:a.statusText,headers:e,config:s,request:a},u(t,n,e),a=null)},a.onabort=function(){a&&(n(h("Request aborted",s,"ECONNABORTED",a)),a=null)},a.onerror=function(){n(h("Network Error",s,null,a)),a=null},a.ontimeout=function(){n(h("timeout of "+s.timeout+"ms exceeded",s,"ECONNABORTED",a)),a=null},l.isStandardBrowserEnv()&&(i=c(19),(i=(s.withCredentials||p(s.url))&&s.xsrfCookieName?i.read(s.xsrfCookieName):void 0)&&(r[s.xsrfHeaderName]=i)),"setRequestHeader"in a&&l.forEach(r,function(e,t){void 0===o&&"content-type"===t.toLowerCase()?delete r[t]:a.setRequestHeader(t,e)}),s.withCredentials&&(a.withCredentials=!0),s.responseType)try{a.responseType=s.responseType}catch(e){if("json"!==s.responseType)throw e}"function"==typeof s.onDownloadProgress&&a.addEventListener("progress",s.onDownloadProgress),"function"==typeof s.onUploadProgress&&a.upload&&a.upload.addEventListener("progress",s.onUploadProgress),s.cancelToken&&s.cancelToken.promise.then(function(e){a&&(a.abort(),n(e),a=null)}),void 0===o&&(o=null),a.send(o)})}},function(e,t,n){"use strict";var r=n(15);e.exports=function(e,t,n){var o=n.config.validateStatus;!o||o(n.status)?e(n):t(r("Request failed with status code "+n.status,n.config,null,n.request,n))}},function(e,t,n){"use strict";var i=n(16);e.exports=function(e,t,n,o,r){e=new Error(e);return i(e,t,n,o,r)}},function(e,t){"use strict";e.exports=function(e,t,n,o,r){return e.config=t,n&&(e.code=n),e.request=o,e.response=r,e.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code}},e}},function(e,t,n){"use strict";var r=n(2),i=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];e.exports=function(e){var t,n,o={};return e&&r.forEach(e.split("\n"),function(e){n=e.indexOf(":"),t=r.trim(e.substr(0,n)).toLowerCase(),n=r.trim(e.substr(n+1)),t&&(o[t]&&0<=i.indexOf(t)||(o[t]="set-cookie"===t?(o[t]||[]).concat([n]):o[t]?o[t]+", "+n:n))}),o}},function(e,t,n){"use strict";var o,r,i,a=n(2);function s(e){return o&&(r.setAttribute("href",e),e=r.href),r.setAttribute("href",e),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:"/"===r.pathname.charAt(0)?r.pathname:"/"+r.pathname}}e.exports=a.isStandardBrowserEnv()?(o=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a"),i=s(window.location.href),function(e){e=a.isString(e)?s(e):e;return e.protocol===i.protocol&&e.host===i.host}):function(){return!0}},function(e,t,n){"use strict";var s=n(2);e.exports=s.isStandardBrowserEnv()?{write:function(e,t,n,o,r,i){var a=[];a.push(e+"="+encodeURIComponent(t)),s.isNumber(n)&&a.push("expires="+new Date(n).toGMTString()),s.isString(o)&&a.push("path="+o),s.isString(r)&&a.push("domain="+r),!0===i&&a.push("secure"),document.cookie=a.join("; ")},read:function(e){e=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}}},function(e,t){"use strict";e.exports=function(e){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(e)}},function(e,t){"use strict";e.exports=function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}},function(e,t,n){"use strict";var r=n(2);e.exports=function(t,n){n=n||{};var o={};return r.forEach(["url","method","params","data"],function(e){void 0!==n[e]&&(o[e]=n[e])}),r.forEach(["headers","auth","proxy"],function(e){r.isObject(n[e])?o[e]=r.deepMerge(t[e],n[e]):void 0!==n[e]?o[e]=n[e]:r.isObject(t[e])?o[e]=r.deepMerge(t[e]):void 0!==t[e]&&(o[e]=t[e])}),r.forEach(["baseURL","transformRequest","transformResponse","paramsSerializer","timeout","withCredentials","adapter","responseType","xsrfCookieName","xsrfHeaderName","onUploadProgress","onDownloadProgress","maxContentLength","validateStatus","maxRedirects","httpAgent","httpsAgent","cancelToken","socketPath"],function(e){void 0!==n[e]?o[e]=n[e]:void 0!==t[e]&&(o[e]=t[e])}),o}},function(e,t){"use strict";function n(e){this.message=e}n.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")},n.prototype.__CANCEL__=!0,e.exports=n},function(e,t,n){"use strict";function o(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");var t;this.promise=new Promise(function(e){t=e});var n=this;e(function(e){n.reason||(n.reason=new r(e),t(n.reason))})}var r=n(23);o.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},o.source=function(){var t;return{token:new o(function(e){t=e}),cancel:t}},e.exports=o},function(e,t){"use strict";e.exports=function(t){return function(e){return t.apply(null,e)}}}],n.c=r,n.p="",n(0);function n(e){if(r[e])return r[e].exports;var t=r[e]={exports:{},id:e,loaded:!1};return o[e].call(t.exports,t,t.exports,n),t.loaded=!0,t.exports}var o,r},"object"==u(o)&&"object"==u(e)?e.exports=n():(t=[],void 0===(n="function"==typeof(n=n)?n.apply(o,t):n)||(e.exports=n))}).call(this,t(49),t(143)(e))},function(e,t){e.exports=function(e){if("function"!=typeof e)throw TypeError(e+" is not a function!");return e}},function(e,t,n){var o=n(8),r=n(35);e.exports=n(7)?function(e,t,n){return o.f(e,t,r(1,n))}:function(e,t,n){return e[t]=n,e}},function(e,t,n){var i=n(2),a=n(13),s=n(16),c=n(36)("src"),o=Function.toString,l=(""+o).split("toString");n(20).inspectSource=function(e){return o.call(e)},(e.exports=function(e,t,n,o){var r="function"==typeof n;r&&(s(n,"name")||a(n,"name",t)),e[t]!==n&&(r&&(s(n,c)||a(n,c,e[t]?""+e[t]:l.join(String(t)))),e===i?e[t]=n:o?e[t]?e[t]=n:a(e,t,n):(delete e[t],a(e,t,n)))})(Function.prototype,"toString",function(){return"function"==typeof this&&this[c]||o.call(this)})},function(e,t,n){function o(e,t,n,o){var r=String(a(e)),e="<"+t;return""!==n&&(e+=" "+n+'="'+String(o).replace(s,"&quot;")+'"'),e+">"+r+"</"+t+">"}var r=n(0),i=n(3),a=n(25),s=/"/g;e.exports=function(t,e){var n={};n[t]=e(o),r(r.P+r.F*i(function(){var e=""[t]('"');return e!==e.toLowerCase()||3<e.split('"').length}),"String",n)}},function(e,t){var n={}.hasOwnProperty;e.exports=function(e,t){return n.call(e,t)}},function(e,t,n){var o=n(53),r=n(25);e.exports=function(e){return o(r(e))}},function(e,t,n){var o=n(54),r=n(35),i=n(17),a=n(24),s=n(16),c=n(109),l=Object.getOwnPropertyDescriptor;t.f=n(7)?l:function(e,t){if(e=i(e),t=a(t,!0),c)try{return l(e,t)}catch(e){}if(s(e,t))return r(!o.f.call(e,t),e[t])}},function(e,t,n){var o=n(16),r=n(10),i=n(80)("IE_PROTO"),a=Object.prototype;e.exports=Object.getPrototypeOf||function(e){return e=r(e),o(e,i)?e[i]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?a:null}},function(e,t){e=e.exports={version:"2.5.7"};"number"==typeof __e&&(__e=e)},function(e,t,n){var i=n(12);e.exports=function(o,r,e){if(i(o),void 0===r)return o;switch(e){case 1:return function(e){return o.call(r,e)};case 2:return function(e,t){return o.call(r,e,t)};case 3:return function(e,t,n){return o.call(r,e,t,n)}}return function(){return o.apply(r,arguments)}}},function(e,t){var n={}.toString;e.exports=function(e){return n.call(e).slice(8,-1)}},function(e,t,n){"use strict";var o=n(3);e.exports=function(e,t){return!!e&&o(function(){t?e.call(null,function(){},1):e.call(null)})}},function(e,t,n){var r=n(4);e.exports=function(e,t){if(!r(e))return e;var n,o;if(t&&"function"==typeof(n=e.toString)&&!r(o=n.call(e)))return o;if("function"==typeof(n=e.valueOf)&&!r(o=n.call(e)))return o;if(!t&&"function"==typeof(n=e.toString)&&!r(o=n.call(e)))return o;throw TypeError("Can't convert object to primitive value")}},function(e,t){e.exports=function(e){if(null==e)throw TypeError("Can't call method on "+e);return e}},function(e,t){var n=Math.ceil,o=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(0<e?o:n)(e)}},function(e,t,n){var r=n(0),i=n(20),a=n(3);e.exports=function(e,t){var n=(i.Object||{})[e]||Object[e],o={};o[e]=t(n),r(r.S+r.F*a(function(){n(1)}),"Object",o)}},function(e,t,n){var y=n(21),w=n(53),x=n(10),_=n(9),o=n(97);e.exports=function(d,e){var f=1==d,p=2==d,h=3==d,m=4==d,g=6==d,v=5==d||g,b=e||o;return function(e,t,n){for(var o,r,i=x(e),a=w(i),s=y(t,n,3),c=_(a.length),l=0,u=f?b(e,c):p?b(e,0):void 0;l<c;l++)if((v||l in a)&&(r=s(o=a[l],l,i),d))if(f)u[l]=r;else if(r)switch(d){case 3:return!0;case 5:return o;case 6:return l;case 2:u.push(o)}else if(m)return!1;return g?-1:h||m?m:u}}},function(e,t,n){"use strict";var a,s,c,m,g,o,d,v,r,b,i,l,y,w,u,f,p,x,_,h,S,T,C,E,A,k,M,O,R,P,j,I,N,L,F,D,z,U,B,G,V,q,H,W,Y,X,K,J,$,Z,Q,ee,te,ne,oe,re,ie,ae,se,ce,le,ue,de,fe,pe,he,me,ge,ve,be,ye,we,xe,_e,Se,Te,Ce,Ee,Ae,ke,Me,Oe,Re,Pe,je,Ie,Ne,Le;n(7)?(a=n(33),s=n(2),c=n(3),m=n(0),g=n(69),o=n(103),d=n(21),v=n(42),r=n(35),b=n(13),i=n(44),l=n(26),y=n(9),w=n(135),u=n(38),f=n(24),p=n(16),x=n(55),_=n(4),h=n(10),S=n(94),T=n(39),C=n(19),E=n(40).f,A=n(96),Ie=n(36),Te=n(5),Ne=n(28),k=n(59),M=n(66),O=n(99),R=n(47),P=n(63),j=n(41),I=n(98),N=n(125),L=n(8),F=n(18),D=L.f,z=F.f,U=s.RangeError,B=s.TypeError,G=s.Uint8Array,n=Array.prototype,V=o.ArrayBuffer,q=o.DataView,H=Ne(0),W=Ne(2),Y=Ne(3),X=Ne(4),K=Ne(5),J=Ne(6),$=k(!0),Z=k(!1),Q=O.values,ee=O.keys,te=O.entries,ne=n.lastIndexOf,oe=n.reduce,re=n.reduceRight,ie=n.join,ae=n.sort,se=n.slice,ce=n.toString,le=n.toLocaleString,ue=Te("iterator"),de=Te("toStringTag"),fe=Ie("typed_constructor"),pe=Ie("def_constructor"),n=g.CONSTR,he=g.TYPED,me=g.VIEW,ge=Ne(1,function(e,t){return xe(M(e,e[pe]),t)}),ve=c(function(){return 1===new G(new Uint16Array([1]).buffer)[0]}),be=!!G&&!!G.prototype.set&&c(function(){new G(1).set({})}),ye=function(e,t){e=l(e);if(e<0||e%t)throw U("Wrong offset!");return e},we=function(e){if(_(e)&&he in e)return e;throw B(e+" is not a typed array!")},xe=function(e,t){if(!(_(e)&&fe in e))throw B("It is not a typed array constructor!");return new e(t)},_e=function(e,t){return Se(M(e,e[pe]),t)},Se=function(e,t){for(var n=0,o=t.length,r=xe(e,o);n<o;)r[n]=t[n++];return r},Te=function(e,t,n){D(e,t,{get:function(){return this._d[n]}})},Ce=function(e){var t,n,o,r,i,a,s=h(e),c=arguments.length,l=1<c?arguments[1]:void 0,u=void 0!==l,e=A(s);if(null!=e&&!S(e)){for(a=e.call(s),o=[],t=0;!(i=a.next()).done;t++)o.push(i.value);s=o}for(u&&2<c&&(l=d(l,arguments[2],2)),t=0,n=y(s.length),r=xe(this,n);t<n;t++)r[t]=u?l(s[t],t):s[t];return r},Ee=function(){for(var e=0,t=arguments.length,n=xe(this,t);e<t;)n[e]=arguments[e++];return n},Ae=!!G&&c(function(){le.call(new G(1))}),ke=function(){return le.apply(Ae?se.call(we(this)):we(this),arguments)},Me={copyWithin:function(e,t){return N.call(we(this),e,t,2<arguments.length?arguments[2]:void 0)},every:function(e){return X(we(this),e,1<arguments.length?arguments[1]:void 0)},fill:function(e){return I.apply(we(this),arguments)},filter:function(e){return _e(this,W(we(this),e,1<arguments.length?arguments[1]:void 0))},find:function(e){return K(we(this),e,1<arguments.length?arguments[1]:void 0)},findIndex:function(e){return J(we(this),e,1<arguments.length?arguments[1]:void 0)},forEach:function(e){H(we(this),e,1<arguments.length?arguments[1]:void 0)},indexOf:function(e){return Z(we(this),e,1<arguments.length?arguments[1]:void 0)},includes:function(e){return $(we(this),e,1<arguments.length?arguments[1]:void 0)},join:function(e){return ie.apply(we(this),arguments)},lastIndexOf:function(e){return ne.apply(we(this),arguments)},map:function(e){return ge(we(this),e,1<arguments.length?arguments[1]:void 0)},reduce:function(e){return oe.apply(we(this),arguments)},reduceRight:function(e){return re.apply(we(this),arguments)},reverse:function(){for(var e,t=we(this).length,n=Math.floor(t/2),o=0;o<n;)e=this[o],this[o++]=this[--t],this[t]=e;return this},some:function(e){return Y(we(this),e,1<arguments.length?arguments[1]:void 0)},sort:function(e){return ae.call(we(this),e)},subarray:function(e,t){var n=we(this),o=n.length,e=u(e,o);return new(M(n,n[pe]))(n.buffer,n.byteOffset+e*n.BYTES_PER_ELEMENT,y((void 0===t?o:u(t,o))-e))}},Oe=function(e,t){return _e(this,se.call(we(this),e,t))},Re=function(e){we(this);var t=ye(arguments[1],1),n=this.length,o=h(e),r=y(o.length),i=0;if(n<r+t)throw U("Wrong length!");for(;i<r;)this[t+i]=o[i++]},Pe={entries:function(){return te.call(we(this))},keys:function(){return ee.call(we(this))},values:function(){return Q.call(we(this))}},je=function(e,t){return _(e)&&e[he]&&"symbol"!=typeof t&&t in e&&String(+t)==String(t)},Ie=function(e,t){return je(e,t=f(t,!0))?r(2,e[t]):z(e,t)},Ne=function(e,t,n){return!(je(e,t=f(t,!0))&&_(n)&&p(n,"value"))||p(n,"get")||p(n,"set")||n.configurable||p(n,"writable")&&!n.writable||p(n,"enumerable")&&!n.enumerable?D(e,t,n):(e[t]=n.value,e)},n||(F.f=Ie,L.f=Ne),m(m.S+m.F*!n,"Object",{getOwnPropertyDescriptor:Ie,defineProperty:Ne}),c(function(){ce.call({})})&&(ce=le=function(){return ie.call(this)}),Le=i({},Me),i(Le,Pe),b(Le,ue,Pe.values),i(Le,{slice:Oe,set:Re,constructor:function(){},toString:ce,toLocaleString:ke}),Te(Le,"buffer","b"),Te(Le,"byteOffset","o"),Te(Le,"byteLength","l"),Te(Le,"length","e"),D(Le,de,{get:function(){return this[he]}}),e.exports=function(e,l,t,u){var d=e+((u=!!u)?"Clamped":"")+"Array",f="get"+e,p="set"+e,h=s[d],i=h||{},n=h&&C(h),o=!h||!g.ABV,e={},r=h&&h.prototype;o?(h=t(function(e,t,n,o){v(e,h,d,"_d");var r,i,a,s=0,c=0;if(_(t)){if(!(t instanceof V||"ArrayBuffer"==(a=x(t))||"SharedArrayBuffer"==a))return he in t?Se(h,t):Ce.call(h,t);a=t,c=ye(n,l);n=t.byteLength;if(void 0===o){if(n%l)throw U("Wrong length!");if((r=n-c)<0)throw U("Wrong length!")}else if((r=y(o)*l)+c>n)throw U("Wrong length!");i=r/l}else i=w(t),a=new V(r=i*l);for(b(e,"_d",{b:a,o:c,l:r,e:i,v:new q(a)});s<i;)!function(t){D(e,t,{get:function(){return function(e){e=e._d;return e.v[f](t*l+e.o,ve)}(this)},set:function(e){return function(e,t,n){e=e._d;u&&(n=(n=Math.round(n))<0?0:255<n?255:255&n),e.v[p](t*l+e.o,n,ve)}(this,t,e)},enumerable:!0})}(s++)}),r=h.prototype=T(Le),b(r,"constructor",h)):c(function(){h(1)})&&c(function(){new h(-1)})&&P(function(e){new h,new h(null),new h(1.5),new h(e)},!0)||(h=t(function(e,t,n,o){var r;return v(e,h,d),_(t)?t instanceof V||"ArrayBuffer"==(r=x(t))||"SharedArrayBuffer"==r?void 0!==o?new i(t,ye(n,l),o):void 0!==n?new i(t,ye(n,l)):new i(t):he in t?Se(h,t):Ce.call(h,t):new i(w(t))}),H(n!==Function.prototype?E(i).concat(E(n)):E(i),function(e){e in h||b(h,e,i[e])}),h.prototype=r,a||(r.constructor=h));o=r[ue],t=!!o&&("values"==o.name||null==o.name),n=Pe.values;b(h,fe,!0),b(r,he,d),b(r,me,!0),b(r,pe,h),(u?new h(1)[de]==d:de in r)||D(r,de,{get:function(){return d}}),e[d]=h,m(m.G+m.W+m.F*(h!=i),e),m(m.S,d,{BYTES_PER_ELEMENT:l}),m(m.S+m.F*c(function(){i.of.call(h,1)}),d,{from:Ce,of:Ee}),"BYTES_PER_ELEMENT"in r||b(r,"BYTES_PER_ELEMENT",l),m(m.P,d,Me),j(d),m(m.P+m.F*be,d,{set:Re}),m(m.P+m.F*!t,d,Pe),a||r.toString==ce||(r.toString=ce),m(m.P+m.F*c(function(){new h(1).slice()}),d,{slice:Oe}),m(m.P+m.F*(c(function(){return[1,2].toLocaleString()!=new h([1,2]).toLocaleString()})||!c(function(){r.toLocaleString.call([1,2])})),d,{toLocaleString:ke}),R[d]=t?o:n,a||t||b(r,ue,n)}):e.exports=function(){}},function(e,t,n){function r(e,t,n){var o=s.get(e);if(!o){if(!n)return;s.set(e,o=new i)}if(!(e=o.get(t))){if(!n)return;o.set(t,e=new i)}return e}var i=n(130),o=n(0),a=n(58)("metadata"),s=a.store||(a.store=new(n(133)));e.exports={store:s,map:r,has:function(e,t,n){n=r(t,n,!1);return void 0!==n&&n.has(e)},get:function(e,t,n){n=r(t,n,!1);return void 0===n?void 0:n.get(e)},set:function(e,t,n,o){r(n,o,!0).set(e,t)},keys:function(e,t){var t=r(e,t,!1),n=[];return t&&t.forEach(function(e,t){n.push(t)}),n},key:function(e){return void 0===e||"symbol"==typeof e?e:String(e)},exp:function(e){o(o.S,"Reflect",e)}}},function(e,t){var n=function(){return this}();try{n=n||new Function("return this")()}catch(e){"object"==typeof window&&(n=window)}e.exports=n},function(e,t,n){function o(e){s(e,r,{value:{i:"O"+ ++c,w:{}}})}var r=n(36)("meta"),i=n(4),a=n(16),s=n(8).f,c=0,l=Object.isExtensible||function(){return!0},u=!n(3)(function(){return l(Object.preventExtensions({}))}),d=e.exports={KEY:r,NEED:!1,fastKey:function(e,t){if(!i(e))return"symbol"==typeof e?e:("string"==typeof e?"S":"P")+e;if(!a(e,r)){if(!l(e))return"F";if(!t)return"E";o(e)}return e[r].i},getWeak:function(e,t){if(!a(e,r)){if(!l(e))return!0;if(!t)return!1;o(e)}return e[r].w},onFreeze:function(e){return u&&d.NEED&&l(e)&&!a(e,r)&&o(e),e}}},function(e,t){e.exports=!1},function(e,t,n){var o=n(5)("unscopables"),r=Array.prototype;null==r[o]&&n(13)(r,o,{}),e.exports=function(e){r[o][e]=!0}},function(e,t){e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},function(e,t){var n=0,o=Math.random();e.exports=function(e){return"Symbol(".concat(void 0===e?"":e,")_",(++n+o).toString(36))}},function(e,t,n){var o=n(111),r=n(81);e.exports=Object.keys||function(e){return o(e,r)}},function(e,t,n){var o=n(26),r=Math.max,i=Math.min;e.exports=function(e,t){return(e=o(e))<0?r(e+t,0):i(e,t)}},function(e,t,n){function o(){}var r=n(1),i=n(112),a=n(81),s=n(80)("IE_PROTO"),c=function(){var e=n(78)("iframe"),t=a.length;for(e.style.display="none",n(82).appendChild(e),e.src="javascript:",(e=e.contentWindow.document).open(),e.write("<script>document.F=Object<\/script>"),e.close(),c=e.F;t--;)delete c.prototype[a[t]];return c()};e.exports=Object.create||function(e,t){var n;return null!==e?(o.prototype=r(e),n=new o,o.prototype=null,n[s]=e):n=c(),void 0===t?n:i(n,t)}},function(e,t,n){var o=n(111),r=n(81).concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return o(e,r)}},function(e,t,n){"use strict";var o=n(2),r=n(8),i=n(7),a=n(5)("species");e.exports=function(e){e=o[e];i&&e&&!e[a]&&r.f(e,a,{configurable:!0,get:function(){return this}})}},function(e,t){e.exports=function(e,t,n,o){if(!(e instanceof t)||void 0!==o&&o in e)throw TypeError(n+": incorrect invocation!");return e}},function(e,t,n){var d=n(21),f=n(123),p=n(94),h=n(1),m=n(9),g=n(96),v={},b={};(t=e.exports=function(e,t,n,o,r){var i,a,s,c,r=r?function(){return e}:g(e),l=d(n,o,t?2:1),u=0;if("function"!=typeof r)throw TypeError(e+" is not iterable!");if(p(r)){for(i=m(e.length);u<i;u++)if((c=t?l(h(a=e[u])[0],a[1]):l(e[u]))===v||c===b)return c}else for(s=r.call(e);!(a=s.next()).done;)if((c=f(s,l,a.value,t))===v||c===b)return c}).BREAK=v,t.RETURN=b},function(e,t,n){var r=n(14);e.exports=function(e,t,n){for(var o in t)r(e,o,t[o],n);return e}},function(e,t,n){var o=n(8).f,r=n(16),i=n(5)("toStringTag");e.exports=function(e,t,n){e&&!r(e=n?e:e.prototype,i)&&o(e,i,{configurable:!0,value:t})}},function(e,t,n){var i=n(0),o=n(25),a=n(3),s=n(84),n="["+s+"]",r=RegExp("^"+n+n+"*"),c=RegExp(n+n+"*$"),n=function(e,t,n){var o={},r=a(function(){return!!s[e]()||"…"!="…"[e]()}),t=o[e]=r?t(l):s[e];n&&(o[n]=t),i(i.P+i.F*r,"String",o)},l=n.trim=function(e,t){return e=String(o(e)),1&t&&(e=e.replace(r,"")),2&t&&(e=e.replace(c,"")),e};e.exports=n},function(e,t){e.exports={}},function(e,t,n){var o=n(4);e.exports=function(e,t){if(!o(e)||e._t!==t)throw TypeError("Incompatible receiver, "+t+" required!");return e}},function(e,t){var n,o,e=e.exports={};function r(){throw new Error("setTimeout has not been defined")}function i(){throw new Error("clearTimeout has not been defined")}function a(t){if(n===setTimeout)return setTimeout(t,0);if((n===r||!n)&&setTimeout)return n=setTimeout,setTimeout(t,0);try{return n(t,0)}catch(e){try{return n.call(null,t,0)}catch(e){return n.call(this,t,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:r}catch(e){n=r}try{o="function"==typeof clearTimeout?clearTimeout:i}catch(e){o=i}}();var s,c=[],l=!1,u=-1;function d(){l&&s&&(l=!1,s.length?c=s.concat(c):u=-1,c.length&&f())}function f(){if(!l){var e=a(d);l=!0;for(var t=c.length;t;){for(s=c,c=[];++u<t;)s&&s[u].run();u=-1,t=c.length}s=null,l=!1,function(t){if(o===clearTimeout)return clearTimeout(t);if((o===i||!o)&&clearTimeout)return o=clearTimeout,clearTimeout(t);try{o(t)}catch(e){try{return o.call(null,t)}catch(e){return o.call(this,t)}}}(e)}}function p(e,t){this.fun=e,this.array=t}function h(){}e.nextTick=function(e){var t=new Array(arguments.length-1);if(1<arguments.length)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];c.push(new p(e,t)),1!==c.length||l||a(f)},p.prototype.run=function(){this.fun.apply(null,this.array)},e.title="browser",e.browser=!0,e.env={},e.argv=[],e.version="",e.versions={},e.on=h,e.addListener=h,e.once=h,e.off=h,e.removeListener=h,e.removeAllListeners=h,e.emit=h,e.prependListener=h,e.prependOnceListener=h,e.listeners=function(e){return[]},e.binding=function(e){throw new Error("process.binding is not supported")},e.cwd=function(){return"/"},e.chdir=function(e){throw new Error("process.chdir is not supported")},e.umask=function(){return 0}},function(e,t,n){function o(e){if(e)return function(e){for(var t in o.prototype)e[t]=o.prototype[t];return e}(e)}(e.exports=o).prototype.on=o.prototype.addEventListener=function(e,t){return this._callbacks=this._callbacks||{},(this._callbacks["$"+e]=this._callbacks["$"+e]||[]).push(t),this},o.prototype.once=function(e,t){function n(){this.off(e,n),t.apply(this,arguments)}return n.fn=t,this.on(e,n),this},o.prototype.off=o.prototype.removeListener=o.prototype.removeAllListeners=o.prototype.removeEventListener=function(e,t){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var n,o=this._callbacks["$"+e];if(!o)return this;if(1==arguments.length)return delete this._callbacks["$"+e],this;for(var r=0;r<o.length;r++)if((n=o[r])===t||n.fn===t){o.splice(r,1);break}return this},o.prototype.emit=function(e){this._callbacks=this._callbacks||{};var t=[].slice.call(arguments,1),n=this._callbacks["$"+e];if(n)for(var o=0,r=(n=n.slice(0)).length;o<r;++o)n[o].apply(this,t);return this},o.prototype.listeners=function(e){return this._callbacks=this._callbacks||{},this._callbacks["$"+e]||[]},o.prototype.hasListeners=function(e){return!!this.listeners(e).length}},function(e,f,t){var o,n=t(382),i=t(151),p=t(384),a=t(385),r=t(386);"undefined"!=typeof ArrayBuffer&&(o=t(387));var s="undefined"!=typeof navigator&&/Android/i.test(navigator.userAgent),c="undefined"!=typeof navigator&&/PhantomJS/i.test(navigator.userAgent),l=s||c;f.protocol=3;var u=f.packets={open:0,close:1,ping:2,pong:3,message:4,upgrade:5,noop:6},d=n(u),h={type:"error",data:"parser error"},m=t(388);function g(e,t,n){for(var r=new Array(e.length),o=a(e.length,n),i=0;i<e.length;i++)!function(n,e,o){t(e,function(e,t){r[n]=t,o(e,r)})}(i,e[i],o)}f.encodePacket=function(e,a,t,n){"function"==typeof a&&(n=a,a=!1),"function"==typeof t&&(n=t,t=null);var o=void 0===e.data?void 0:e.data.buffer||e.data;if("undefined"!=typeof ArrayBuffer&&o instanceof ArrayBuffer)return function(e,t){if(!a)return f.encodeBase64Packet(e,t);var n=e.data,o=new Uint8Array(n),r=new Uint8Array(1+n.byteLength);r[0]=u[e.type];for(var i=0;i<o.length;i++)r[i+1]=o[i];return t(r.buffer)}(e,n);if(void 0!==m&&o instanceof m)return function(e,t,n){if(!t)return f.encodeBase64Packet(e,n);if(l)return function(e,t,n){if(!t)return f.encodeBase64Packet(e,n);var o=new FileReader;return o.onload=function(){f.encodePacket({type:e.type,data:o.result},t,!0,n)},o.readAsArrayBuffer(e.data)}(e,t,n);t=new Uint8Array(1);return t[0]=u[e.type],n(new m([t.buffer,e.data]))}(e,a,n);if(o&&o.base64)return n("b"+f.packets[e.type]+e.data.data);o=u[e.type];return void 0!==e.data&&(o+=t?r.encode(String(e.data),{strict:!1}):String(e.data)),n(""+o)},f.encodeBase64Packet=function(t,n){var o,r="b"+f.packets[t.type];if(void 0!==m&&t.data instanceof m){var i=new FileReader;return i.onload=function(){var e=i.result.split(",")[1];n(r+e)},i.readAsDataURL(t.data)}try{o=String.fromCharCode.apply(null,new Uint8Array(t.data))}catch(e){for(var a=new Uint8Array(t.data),s=new Array(a.length),c=0;c<a.length;c++)s[c]=a[c];o=String.fromCharCode.apply(null,s)}return r+=btoa(o),n(r)},f.decodePacket=function(e,t,n){if(void 0===e)return h;if("string"==typeof e){if("b"===e.charAt(0))return f.decodeBase64Packet(e.substr(1),t);if(n&&!1===(e=function(e){try{e=r.decode(e,{strict:!1})}catch(e){return!1}return e}(e)))return h;var o=e.charAt(0);return Number(o)==o&&d[o]?1<e.length?{type:d[o],data:e.substring(1)}:{type:d[o]}:h}o=new Uint8Array(e)[0];e=p(e,1);return m&&"blob"===t&&(e=new m([e])),{type:d[o],data:e}},f.decodeBase64Packet=function(e,t){var n=d[e.charAt(0)];if(!o)return{type:n,data:{base64:!0,data:e.substr(1)}};e=o.decode(e.substr(1));return"blob"===t&&m&&(e=new m([e])),{type:n,data:e}},f.encodePayload=function(e,n,o){"function"==typeof n&&(o=n,n=null);var r=i(e);return n&&r?m&&!l?f.encodePayloadAsBlob(e,o):f.encodePayloadAsArrayBuffer(e,o):e.length?void g(e,function(e,t){f.encodePacket(e,!!r&&n,!1,function(e){t(null,e.length+":"+e)})},function(e,t){return o(t.join(""))}):o("0:")},f.decodePayload=function(e,t,n){if("string"!=typeof e)return f.decodePayloadAsBinary(e,t,n);if("function"==typeof t&&(n=t,t=null),""===e)return n(h,0,1);for(var o,r,i="",a=0,s=e.length;a<s;a++){var c=e.charAt(a);if(":"===c){if(""===i||i!=(o=Number(i)))return n(h,0,1);if(i!=(r=e.substr(a+1,o)).length)return n(h,0,1);if(r.length){if(r=f.decodePacket(r,t,!1),h.type===r.type&&h.data===r.data)return n(h,0,1);if(!1===n(r,a+o,s))return}a+=o,i=""}else i+=c}return""!==i?n(h,0,1):void 0},f.encodePayloadAsArrayBuffer=function(e,o){if(!e.length)return o(new ArrayBuffer(0));g(e,function(e,t){f.encodePacket(e,!0,!0,function(e){return t(null,e)})},function(e,t){var n=t.reduce(function(e,t){return e+(t="string"==typeof t?t.length:t.byteLength).toString().length+t+2},0),a=new Uint8Array(n),s=0;return t.forEach(function(e){var t="string"==typeof e,n=e;if(t){for(var o=new Uint8Array(e.length),r=0;r<e.length;r++)o[r]=e.charCodeAt(r);n=o.buffer}a[s++]=t?0:1;for(var i=n.byteLength.toString(),r=0;r<i.length;r++)a[s++]=parseInt(i[r]);for(a[s++]=255,o=new Uint8Array(n),r=0;r<o.length;r++)a[s++]=o[r]}),o(a.buffer)})},f.encodePayloadAsBlob=function(e,n){g(e,function(e,a){f.encodePacket(e,!0,!0,function(e){var t=new Uint8Array(1);if(t[0]=1,"string"==typeof e){for(var n=new Uint8Array(e.length),o=0;o<e.length;o++)n[o]=e.charCodeAt(o);e=n.buffer,t[0]=0}for(var r=(e instanceof ArrayBuffer?e.byteLength:e.size).toString(),i=new Uint8Array(r.length+1),o=0;o<r.length;o++)i[o]=parseInt(r[o]);i[r.length]=255,m&&(t=new m([t.buffer,i.buffer,e]),a(null,t))})},function(e,t){return n(new m(t))})},f.decodePayloadAsBinary=function(e,n,o){"function"==typeof n&&(o=n,n=null);for(var t=e,r=[];0<t.byteLength;){for(var i=new Uint8Array(t),a=0===i[0],s="",c=1;255!==i[c];c++){if(310<s.length)return o(h,0,1);s+=i[c]}t=p(t,2+s.length),s=parseInt(s);var l=p(t,0,s);if(a)try{l=String.fromCharCode.apply(null,new Uint8Array(l))}catch(e){for(var u=new Uint8Array(l),l="",c=0;c<u.length;c++)l+=String.fromCharCode(u[c])}r.push(l),t=p(t,s)}var d=r.length;r.forEach(function(e,t){o(f.decodePacket(e,n,!0),t,d)})}},function(e,t,n){var i=n(373),o=n(105),a=n(148),s=n(74)("socket.io-client");e.exports=t=r;var c=t.managers={};function r(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var n=i(e),o=n.source,r=n.id,e=n.path,e=c[r]&&e in c[r].nsps,r=t.forceNew||t["force new connection"]||!1===t.multiplex||e?(s("ignoring socket cache for %s",o),a(o,t)):(c[r]||(s("new io instance for %s",o),c[r]=a(o,t)),c[r]);return n.query&&!t.query&&(t.query=n.query),r.socket(n.path,t)}t.protocol=o.protocol,t.connect=r,t.Manager=n(148),t.Socket=n(154)},function(e,t,n){var o=n(22);e.exports=Object("z").propertyIsEnumerable(0)?Object:function(e){return"String"==o(e)?e.split(""):Object(e)}},function(e,t){t.f={}.propertyIsEnumerable},function(e,t,n){var o=n(22),r=n(5)("toStringTag"),i="Arguments"==o(function(){return arguments}());e.exports=function(e){var t;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(e=function(e,t){try{return e[t]}catch(e){}}(t=Object(e),r))?e:i?o(t):"Object"==(e=o(t))&&"function"==typeof t.callee?"Arguments":e}},function(e,t,n){"use strict";t.a="0.4.26"},function(e,t,n){var o;!function(){"use strict";void 0===(o="function"==typeof(o=function(){function d(e){throw e}function f(){}function e(e,t){for(var n in void 0===t&&"function"==typeof e&&(t=e),"[object Object]"!=Object.prototype.toString.call(e)&&(e={}),r)this[n]=(void 0!==e[n]?e:r)[n];this.dbName=this.storePrefix+this.storeName,this.dbVersion=parseInt(this.dbVersion,10)||1,t&&(this.onStoreReady=t);var o="object"==typeof window?window:self,t=this.implementationPreference.filter(function(e){return e in o});this.implementation=t[0],this.idb=o[this.implementation],this.keyRange=o.IDBKeyRange||o.webkitIDBKeyRange||o.mozIDBKeyRange,this.consts={READ_ONLY:"readonly",READ_WRITE:"readwrite",VERSION_CHANGE:"versionchange",NEXT:"next",NEXT_NO_DUPLICATE:"nextunique",PREV:"prev",PREV_NO_DUPLICATE:"prevunique"},this.openDB()}var r={storeName:"Store",storePrefix:"IDBWrapper-",dbVersion:1,keyPath:"id",autoIncrement:!0,onStoreReady:function(){},onError:d,indexes:[],implementationPreference:["indexedDB","webkitIndexedDB","mozIndexedDB","shimIndexedDB"]},t={constructor:e,version:"1.7.2",db:null,dbName:null,dbVersion:null,store:null,storeName:null,storePrefix:null,keyPath:null,autoIncrement:null,indexes:null,implementationPreference:null,implementation:"",onStoreReady:null,onError:null,_insertIdCount:0,openDB:function(){var e=this.idb.open(this.dbName,this.dbVersion),r=!1;e.onerror=function(e){var t,n;("error"in(n=e).target?"VersionError"==n.target.error.name:"errorCode"in n.target&&12==n.target.errorCode)?this.onError(new Error("The version number provided is lower than the existing one.")):(t=e.target.error||(t="IndexedDB unknown error occurred when opening DB "+this.dbName+" version "+this.dbVersion,"errorCode"in e.target&&(t+=" with error code "+e.target.errorCode),new Error(t)),this.onError(t))}.bind(this),e.onsuccess=function(e){var o;r||(this.db?this.onStoreReady():(this.db=e.target.result,"string"!=typeof this.db.version?this.db.objectStoreNames.contains(this.storeName)?(e=this.db.transaction([this.storeName],this.consts.READ_ONLY),this.store=e.objectStore(this.storeName),o=Array.prototype.slice.call(this.getIndexList()),this.indexes.forEach(function(e){var t,n=e.name;if(!n)return r=!0,void this.onError(new Error("Cannot create index: No index name given."));this.normalizeIndexData(e),this.hasIndex(n)?(t=this.store.index(n),this.indexComplies(t,e)||(r=!0,this.onError(new Error('Cannot modify index "'+n+'" for current version. Please bump version number to '+(this.dbVersion+1)+"."))),o.splice(o.indexOf(n),1)):(r=!0,this.onError(new Error('Cannot create new index "'+n+'" for current version. Please bump version number to '+(this.dbVersion+1)+".")))},this),o.length&&(r=!0,this.onError(new Error('Cannot delete index(es) "'+o.toString()+'" for current version. Please bump version number to '+(this.dbVersion+1)+"."))),r||this.onStoreReady()):this.onError(new Error("Object store couldn't be created.")):this.onError(new Error("The IndexedDB implementation in this browser is outdated. Please upgrade your browser."))))}.bind(this),e.onupgradeneeded=function(e){this.db=e.target.result,this.db.objectStoreNames.contains(this.storeName)?this.store=e.target.transaction.objectStore(this.storeName):(e={autoIncrement:this.autoIncrement},null!==this.keyPath&&(e.keyPath=this.keyPath),this.store=this.db.createObjectStore(this.storeName,e));var o=Array.prototype.slice.call(this.getIndexList());this.indexes.forEach(function(e){var t,n=e.name;n||(r=!0,this.onError(new Error("Cannot create index: No index name given."))),this.normalizeIndexData(e),this.hasIndex(n)?(t=this.store.index(n),this.indexComplies(t,e)||(this.store.deleteIndex(n),this.store.createIndex(n,e.keyPath,{unique:e.unique,multiEntry:e.multiEntry})),o.splice(o.indexOf(n),1)):this.store.createIndex(n,e.keyPath,{unique:e.unique,multiEntry:e.multiEntry})},this),o.length&&o.forEach(function(e){this.store.deleteIndex(e)},this)}.bind(this)},deleteDatabase:function(e,t){var n;this.idb.deleteDatabase?(this.db.close(),(n=this.idb.deleteDatabase(this.dbName)).onsuccess=e,n.onerror=t):t(new Error("Browser does not support IndexedDB deleteDatabase!"))},put:function(e,t,n,o){null!==this.keyPath&&(o=n,n=t,t=e),o=o||d,n=n||f;var r=!1,i=null,a=this.db.transaction([this.storeName],this.consts.READ_WRITE);return a.oncomplete=function(){(r?n:o)(i)},a.onabort=o,a.onerror=o,(e=null!==this.keyPath?(this._addIdPropertyIfNeeded(t),a.objectStore(this.storeName).put(t)):a.objectStore(this.storeName).put(t,e)).onsuccess=function(e){r=!0,i=e.target.result},e.onerror=o,a},get:function(e,t,n){n=n||d,t=t||f;var o=!1,r=null,i=this.db.transaction([this.storeName],this.consts.READ_ONLY);i.oncomplete=function(){(o?t:n)(r)},i.onabort=n,i.onerror=n;e=i.objectStore(this.storeName).get(e);return e.onsuccess=function(e){o=!0,r=e.target.result},e.onerror=n,i},remove:function(e,t,n){n=n||d,t=t||f;var o=!1,r=null,i=this.db.transaction([this.storeName],this.consts.READ_WRITE);i.oncomplete=function(){(o?t:n)(r)},i.onabort=n,i.onerror=n;e=i.objectStore(this.storeName).delete(e);return e.onsuccess=function(e){o=!0,r=e.target.result},e.onerror=n,i},batch:function(e,t,i){if(i=i||d,t=t||f,"[object Array]"!=Object.prototype.toString.call(e))i(new Error("dataArray argument must be of type Array."));else if(0===e.length)return t(!0);var n=e.length,a=!1,o=!1,s=this.db.transaction([this.storeName],this.consts.READ_WRITE);s.oncomplete=function(){(o?t:i)(o)},s.onabort=i,s.onerror=i;function c(){0!=--n||a||(o=a=!0)}return e.forEach(function(e){function t(e){s.abort(),a||(a=!0,i(e,n,o))}var n=e.type,o=e.key,r=e.value;"remove"==n?((e=s.objectStore(this.storeName).delete(o)).onsuccess=c,e.onerror=t):"put"==n&&((r=null!==this.keyPath?(this._addIdPropertyIfNeeded(r),s.objectStore(this.storeName).put(r)):s.objectStore(this.storeName).put(r,o)).onsuccess=c,r.onerror=t)},this),s},putBatch:function(e,t,n){e=e.map(function(e){return{type:"put",value:e}});return this.batch(e,t,n)},upsertBatch:function(t,e,n,o){"function"==typeof e&&(o=n=e,e={}),o=o||d,n=n||f,e=e||{},"[object Array]"!=Object.prototype.toString.call(t)&&o(new Error("dataArray argument must be of type Array."));var r=e.keyField||this.keyPath,i=t.length,a=!1,s=!1,c=0,l=this.db.transaction([this.storeName],this.consts.READ_WRITE);l.oncomplete=function(){s?n(t):o(!1)},l.onabort=o,l.onerror=o;function u(e){t[c++][r]=e.target.result,0!=--i||a||(s=a=!0)}return t.forEach(function(e){var t=e.key,t=null!==this.keyPath?(this._addIdPropertyIfNeeded(e),l.objectStore(this.storeName).put(e)):l.objectStore(this.storeName).put(e,t);t.onsuccess=u,t.onerror=function(e){l.abort(),a||(a=!0,o(e))}},this),l},removeBatch:function(e,t,n){e=e.map(function(e){return{type:"remove",key:e}});return this.batch(e,t,n)},getBatch:function(e,t,n,o){if(n=n||d,t=t||f,o=o||"sparse","[object Array]"!=Object.prototype.toString.call(e))n(new Error("keyArray argument must be of type Array."));else if(0===e.length)return t([]);var r=[],i=e.length,a=!1,s=null,c=this.db.transaction([this.storeName],this.consts.READ_ONLY);c.oncomplete=function(){(a?t:n)(s)},c.onabort=n,c.onerror=n;function l(e){e.target.result||"dense"==o?r.push(e.target.result):"sparse"==o&&r.length++,0==--i&&(a=!0,s=r)}return e.forEach(function(e){e=c.objectStore(this.storeName).get(e);e.onsuccess=l,e.onerror=function(e){n(s=e),c.abort()}},this),c},getAll:function(e,t){t=t||d,e=e||f;var n=this.db.transaction([this.storeName],this.consts.READ_ONLY),o=n.objectStore(this.storeName);return o.getAll?this._getAllNative(n,o,e,t):this._getAllCursor(n,o,e,t),n},_getAllNative:function(e,t,n,o){var r=!1,i=null;e.oncomplete=function(){(r?n:o)(i)},e.onabort=o,e.onerror=o;t=t.getAll();t.onsuccess=function(e){r=!0,i=e.target.result},t.onerror=o},_getAllCursor:function(e,t,n,o){var r=[],i=!1,a=null;e.oncomplete=function(){(i?n:o)(a)},e.onabort=o,e.onerror=o;t=t.openCursor();t.onsuccess=function(e){e=e.target.result;e?(r.push(e.value),e.continue()):(i=!0,a=r)},t.onError=o},clear:function(e,t){t=t||d,e=e||f;var n=!1,o=null,r=this.db.transaction([this.storeName],this.consts.READ_WRITE);r.oncomplete=function(){(n?e:t)(o)},r.onabort=t,r.onerror=t;var i=r.objectStore(this.storeName).clear();return i.onsuccess=function(e){n=!0,o=e.target.result},i.onerror=t,r},_addIdPropertyIfNeeded:function(e){void 0===e[this.keyPath]&&(e[this.keyPath]=this._insertIdCount+++Date.now())},getIndexList:function(){return this.store.indexNames},hasIndex:function(e){return this.store.indexNames.contains(e)},normalizeIndexData:function(e){e.keyPath=e.keyPath||e.name,e.unique=!!e.unique,e.multiEntry=!!e.multiEntry},indexComplies:function(i,a){return["keyPath","unique","multiEntry"].every(function(e){if("multiEntry"==e&&void 0===i[e]&&!1===a[e])return!0;if("keyPath"!=e||"[object Array]"!=Object.prototype.toString.call(a[e]))return a[e]==i[e];var t=a.keyPath,n=i.keyPath;if("string"==typeof n)return t.toString()==n;if("function"!=typeof n.contains&&"function"!=typeof n.indexOf)return!1;if(n.length!==t.length)return!1;for(var o=0,r=t.length;o<r;o++)if(!(n.contains&&n.contains(t[o])||n.indexOf(-1!==t[o])))return!1;return!0})},iterate:function(n,o){var e="desc"==(o=s({index:null,order:"ASC",autoContinue:!0,filterDuplicates:!1,keyRange:null,writeAccess:!1,onEnd:null,onError:d,limit:1/0,offset:0,allowItemRejection:!1},o||{})).order.toLowerCase()?"PREV":"NEXT";o.filterDuplicates&&(e+="_NO_DUPLICATE");var r=!1,i=this.db.transaction([this.storeName],this.consts[o.writeAccess?"READ_WRITE":"READ_ONLY"]),t=i.objectStore(this.storeName);o.index&&(t=t.index(o.index));var a=0;i.oncomplete=function(){r?o.onEnd?o.onEnd():n(null):o.onError(null)},i.onabort=o.onError,i.onerror=o.onError;e=t.openCursor(o.keyRange,this.consts[e]);return e.onerror=o.onError,e.onsuccess=function(e){var t=e.target.result;t?o.offset?(t.advance(o.offset),o.offset=0):(e=n(t.value,t,i),o.allowItemRejection&&!1===e||a++,o.autoContinue&&(a+o.offset<o.limit?t.continue():r=!0)):r=!0},i},query:function(e,n){var o=[],r=0;return(n=n||{}).autoContinue=!0,n.writeAccess=!1,n.allowItemRejection=!!n.filter,n.onEnd=function(){e(o,r)},this.iterate(function(e){r++;var t=!n.filter||n.filter(e);return!1!==t&&o.push(e),t},n)},count:function(e,t){var n=(t=s({index:null,keyRange:null},t||{})).onError||d,o=!1,r=null,i=this.db.transaction([this.storeName],this.consts.READ_ONLY);i.oncomplete=function(){(o?e:n)(r)},i.onabort=n,i.onerror=n;var a=i.objectStore(this.storeName);t.index&&(a=a.index(t.index));t=a.count(t.keyRange);return t.onsuccess=function(e){o=!0,r=e.target.result},t.onError=n,i},makeKeyRange:function(e){var t,n=void 0!==e.lower,o=void 0!==e.upper;switch(!0){case void 0!==e.only:t=this.keyRange.only(e.only);break;case n&&o:t=this.keyRange.bound(e.lower,e.upper,e.excludeLower,e.excludeUpper);break;case n:t=this.keyRange.lowerBound(e.lower,e.excludeLower);break;case o:t=this.keyRange.upperBound(e.upper,e.excludeUpper);break;default:throw new Error('Cannot create KeyRange. Provide one or both of "lower" or "upper" value, or an "only" value.')}return t}},i={};function s(e,t){var n,o;for(n in t)(o=t[n])!==i[n]&&o!==e[n]&&(e[n]=o);return e}return e.prototype=t,e.version=t.version,e})?o.call(t,n,t,e):o)||(e.exports=o)}()},function(e,t,n){var o=n(20),r=n(2),i=r["__core-js_shared__"]||(r["__core-js_shared__"]={});(e.exports=function(e,t){return i[e]||(i[e]=void 0!==t?t:{})})("versions",[]).push({version:o.version,mode:n(33)?"pure":"global",copyright:"© 2018 Denis Pushkarev (zloirock.ru)"})},function(e,t,n){var c=n(17),l=n(9),u=n(38);e.exports=function(s){return function(e,t,n){var o,r=c(e),i=l(r.length),a=u(n,i);if(s&&t!=t){for(;a<i;)if((o=r[a++])!=o)return!0}else for(;a<i;a++)if((s||a in r)&&r[a]===t)return s||a||0;return!s&&-1}}},function(e,t){t.f=Object.getOwnPropertySymbols},function(e,t,n){var o=n(22);e.exports=Array.isArray||function(e){return"Array"==o(e)}},function(e,t,n){var o=n(4),r=n(22),i=n(5)("match");e.exports=function(e){var t;return o(e)&&(void 0!==(t=e[i])?!!t:"RegExp"==r(e))}},function(e,t,n){var i=n(5)("iterator"),a=!1;try{var o=[7][i]();o.return=function(){a=!0},Array.from(o,function(){throw 2})}catch(e){}e.exports=function(e,t){if(!t&&!a)return!1;var n=!1;try{var o=[7],r=o[i]();r.next=function(){return{done:n=!0}},o[i]=function(){return r},e(o)}catch(e){}return n}},function(e,t,n){"use strict";var o=n(1);e.exports=function(){var e=o(this),t="";return e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.unicode&&(t+="u"),e.sticky&&(t+="y"),t}},function(e,t,n){"use strict";var a=n(13),s=n(14),c=n(3),l=n(25),u=n(5);e.exports=function(t,e,n){var o=u(t),r=n(l,o,""[t]),n=r[0],i=r[1];c(function(){var e={};return e[o]=function(){return 7},7!=""[t](e)})&&(s(String.prototype,t,n),a(RegExp.prototype,o,2==e?function(e,t){return i.call(e,this,t)}:function(e){return i.call(e,this)}))}},function(e,t,n){var o=n(1),r=n(12),i=n(5)("species");e.exports=function(e,t){var n,e=o(e).constructor;return void 0===e||null==(n=o(e)[i])?t:r(n)}},function(e,t,n){n=n(2).navigator;e.exports=n&&n.userAgent||""},function(e,t,n){"use strict";var v=n(2),b=n(0),y=n(14),w=n(44),x=n(32),_=n(43),S=n(42),T=n(4),C=n(3),E=n(63),A=n(45),k=n(85);e.exports=function(n,e,t,o,r,i){function a(e){var n=m[e];y(m,e,"delete"==e?function(e){return!(i&&!T(e))&&n.call(this,0===e?0:e)}:"has"==e?function(e){return!(i&&!T(e))&&n.call(this,0===e?0:e)}:"get"==e?function(e){return i&&!T(e)?void 0:n.call(this,0===e?0:e)}:"add"==e?function(e){return n.call(this,0===e?0:e),this}:function(e,t){return n.call(this,0===e?0:e,t),this})}var s,c,l,u,d,f=v[n],p=f,h=r?"set":"add",m=p&&p.prototype,g={};return"function"==typeof p&&(i||m.forEach&&!C(function(){(new p).entries().next()}))?(c=(s=new p)[h](i?{}:-0,1)!=s,l=C(function(){s.has(1)}),u=E(function(e){new p(e)}),d=!i&&C(function(){for(var e=new p,t=5;t--;)e[h](t,t);return!e.has(-0)}),u||(((p=e(function(e,t){S(e,p,n);e=k(new f,e,p);return null!=t&&_(t,r,e[h],e),e})).prototype=m).constructor=p),(l||d)&&(a("delete"),a("has"),r&&a("get")),(d||c)&&a(h),i&&m.clear&&delete m.clear):(p=o.getConstructor(e,n,r,h),w(p.prototype,t),x.NEED=!0),A(p,n),g[n]=p,b(b.G+b.W+b.F*(p!=f),g),i||o.setStrong(p,n,r),p}},function(e,t,n){for(var o,r=n(2),i=n(13),n=n(36),a=n("typed_array"),s=n("view"),n=!(!r.ArrayBuffer||!r.DataView),c=n,l=0,u="Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array".split(",");l<9;)(o=r[u[l++]])?(i(o.prototype,a,!0),i(o.prototype,s,!0)):c=!1;e.exports={ABV:n,CONSTR:c,TYPED:a,VIEW:s}},function(e,t,n){"use strict";e.exports=n(33)||!n(3)(function(){var e=Math.random();__defineSetter__.call(null,e,function(){}),delete n(2)[e]})},function(e,t,n){"use strict";var o=n(0);e.exports=function(e){o(o.S,e,{of:function(){for(var e=arguments.length,t=new Array(e);e--;)t[e]=arguments[e];return new this(t)}})}},function(e,t,n){"use strict";var o=n(0),a=n(12),s=n(21),c=n(43);e.exports=function(e){o(o.S,e,{from:function(e){var t,n,o,r,i=arguments[1];return a(this),(t=void 0!==i)&&a(i),null==e?new this:(n=[],t?(o=0,r=s(i,arguments[2],2),c(e,!1,function(e){n.push(r(e,o++))})):c(e,!1,n.push,n),new this(n))}})}},function(e,R,P){"use strict";(function(e){var s=P(370),i=P(371),a=P(372);function n(){return d.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function r(e,t){if(n()<t)throw new RangeError("Invalid typed array length");return d.TYPED_ARRAY_SUPPORT?(e=new Uint8Array(t)).__proto__=d.prototype:(null===e&&(e=new d(t)),e.length=t),e}function d(e,t,n){if(!(d.TYPED_ARRAY_SUPPORT||this instanceof d))return new d(e,t,n);if("number"!=typeof e)return o(this,e,t,n);if("string"==typeof t)throw new Error("If encoding is specified then the first argument must be a string");return l(this,e)}function o(e,t,n,o){if("number"==typeof t)throw new TypeError('"value" argument must not be a number');return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer?function(e,t,n,o){if(t.byteLength,n<0||t.byteLength<n)throw new RangeError("'offset' is out of bounds");if(t.byteLength<n+(o||0))throw new RangeError("'length' is out of bounds");return t=void 0===n&&void 0===o?new Uint8Array(t):void 0===o?new Uint8Array(t,n):new Uint8Array(t,n,o),d.TYPED_ARRAY_SUPPORT?(e=t).__proto__=d.prototype:e=u(e,t),e}(e,t,n,o):"string"==typeof t?function(e,t,n){if("string"==typeof n&&""!==n||(n="utf8"),!d.isEncoding(n))throw new TypeError('"encoding" must be a valid string encoding');var o=0|p(t,n),n=(e=r(e,o)).write(t,n);return n!==o&&(e=e.slice(0,n)),e}(e,t,n):function(e,t){if(d.isBuffer(t)){var n=0|f(t.length);return 0===(e=r(e,n)).length||t.copy(e,0,0,n),e}if(t){if("undefined"!=typeof ArrayBuffer&&t.buffer instanceof ArrayBuffer||"length"in t)return"number"!=typeof t.length||(n=t.length)!=n?r(e,0):u(e,t);if("Buffer"===t.type&&a(t.data))return u(e,t.data)}throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}(e,t)}function c(e){if("number"!=typeof e)throw new TypeError('"size" argument must be a number');if(e<0)throw new RangeError('"size" argument must not be negative')}function l(e,t){if(c(t),e=r(e,t<0?0:0|f(t)),!d.TYPED_ARRAY_SUPPORT)for(var n=0;n<t;++n)e[n]=0;return e}function u(e,t){var n=t.length<0?0:0|f(t.length);e=r(e,n);for(var o=0;o<n;o+=1)e[o]=255&t[o];return e}function f(e){if(e>=n())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+n().toString(16)+" bytes");return 0|e}function p(e,t){if(d.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var n=e.length;if(0===n)return 0;for(var o=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return k(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return M(e).length;default:if(o)return k(e).length;t=(""+t).toLowerCase(),o=!0}}function t(e,t,n){var o,r,i,a=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e=e||"utf8";;)switch(e){case"hex":return function(e,t,n){var o=e.length;(!t||t<0)&&(t=0),(!n||n<0||o<n)&&(n=o);for(var r="",i=t;i<n;++i)r+=function(e){return e<16?"0"+e.toString(16):e.toString(16)}(e[i]);return r}(this,t,n);case"utf8":case"utf-8":return b(this,t,n);case"ascii":return function(e,t,n){var o="";n=Math.min(e.length,n);for(var r=t;r<n;++r)o+=String.fromCharCode(127&e[r]);return o}(this,t,n);case"latin1":case"binary":return function(e,t,n){var o="";n=Math.min(e.length,n);for(var r=t;r<n;++r)o+=String.fromCharCode(e[r]);return o}(this,t,n);case"base64":return o=this,i=n,0===(r=t)&&i===o.length?s.fromByteArray(o):s.fromByteArray(o.slice(r,i));case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return function(e,t,n){for(var o=e.slice(t,n),r="",i=0;i<o.length;i+=2)r+=String.fromCharCode(o[i]+256*o[i+1]);return r}(this,t,n);default:if(a)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),a=!0}}function h(e,t,n){var o=e[t];e[t]=e[n],e[n]=o}function m(e,t,n,o,r){if(0===e.length)return-1;if("string"==typeof n?(o=n,n=0):2147483647<n?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=r?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(r)return-1;n=e.length-1}else if(n<0){if(!r)return-1;n=0}if("string"==typeof t&&(t=d.from(t,o)),d.isBuffer(t))return 0===t.length?-1:g(e,t,n,o,r);if("number"==typeof t)return t&=255,d.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?(r?Uint8Array.prototype.indexOf:Uint8Array.prototype.lastIndexOf).call(e,t,n):g(e,[t],n,o,r);throw new TypeError("val must be string, number or Buffer")}function g(e,t,n,o,r){var i=1,a=e.length,s=t.length;if(void 0!==o&&("ucs2"===(o=String(o).toLowerCase())||"ucs-2"===o||"utf16le"===o||"utf-16le"===o)){if(e.length<2||t.length<2)return-1;a/=i=2,s/=2,n/=2}function c(e,t){return 1===i?e[t]:e.readUInt16BE(t*i)}if(r)for(var l=-1,u=n;u<a;u++)if(c(e,u)===c(t,-1===l?0:u-l)){if(-1===l&&(l=u),u-l+1===s)return l*i}else-1!==l&&(u-=u-l),l=-1;else for(a<n+s&&(n=a-s),u=n;0<=u;u--){for(var d=!0,f=0;f<s;f++)if(c(e,u+f)!==c(t,f)){d=!1;break}if(d)return u}return-1}function v(e,t,n,o){return O(function(e){for(var t=[],n=0;n<e.length;++n)t.push(255&e.charCodeAt(n));return t}(t),e,n,o)}function b(e,t,n){n=Math.min(e.length,n);for(var o=[],r=t;r<n;){var i,a,s,c,l=e[r],u=null,d=239<l?4:223<l?3:191<l?2:1;if(r+d<=n)switch(d){case 1:l<128&&(u=l);break;case 2:128==(192&(i=e[r+1]))&&127<(c=(31&l)<<6|63&i)&&(u=c);break;case 3:i=e[r+1],a=e[r+2],128==(192&i)&&128==(192&a)&&2047<(c=(15&l)<<12|(63&i)<<6|63&a)&&(c<55296||57343<c)&&(u=c);break;case 4:i=e[r+1],a=e[r+2],s=e[r+3],128==(192&i)&&128==(192&a)&&128==(192&s)&&65535<(c=(15&l)<<18|(63&i)<<12|(63&a)<<6|63&s)&&c<1114112&&(u=c)}null===u?(u=65533,d=1):65535<u&&(u-=65536,o.push(u>>>10&1023|55296),u=56320|1023&u),o.push(u),r+=d}return function(e){var t=e.length;if(t<=y)return String.fromCharCode.apply(String,e);for(var n="",o=0;o<t;)n+=String.fromCharCode.apply(String,e.slice(o,o+=y));return n}(o)}R.Buffer=d,R.SlowBuffer=function(e){return+e!=e&&(e=0),d.alloc(+e)},R.INSPECT_MAX_BYTES=50,d.TYPED_ARRAY_SUPPORT=void 0!==e.TYPED_ARRAY_SUPPORT?e.TYPED_ARRAY_SUPPORT:function(){try{var e=new Uint8Array(1);return e.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===e.foo()&&"function"==typeof e.subarray&&0===e.subarray(1,1).byteLength}catch(e){return!1}}(),R.kMaxLength=n(),d.poolSize=8192,d._augment=function(e){return e.__proto__=d.prototype,e},d.from=function(e,t,n){return o(null,e,t,n)},d.TYPED_ARRAY_SUPPORT&&(d.prototype.__proto__=Uint8Array.prototype,d.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&d[Symbol.species]===d&&Object.defineProperty(d,Symbol.species,{value:null,configurable:!0})),d.alloc=function(e,t,n){return o=null,t=t,n=n,c(e=e),!(e<=0)&&void 0!==t?"string"==typeof n?r(o,e).fill(t,n):r(o,e).fill(t):r(o,e);var o},d.allocUnsafe=function(e){return l(null,e)},d.allocUnsafeSlow=function(e){return l(null,e)},d.isBuffer=function(e){return!(null==e||!e._isBuffer)},d.compare=function(e,t){if(!d.isBuffer(e)||!d.isBuffer(t))throw new TypeError("Arguments must be Buffers");if(e===t)return 0;for(var n=e.length,o=t.length,r=0,i=Math.min(n,o);r<i;++r)if(e[r]!==t[r]){n=e[r],o=t[r];break}return n<o?-1:o<n?1:0},d.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},d.concat=function(e,t){if(!a(e))throw new TypeError('"list" argument must be an Array of Buffers');if(0===e.length)return d.alloc(0);if(void 0===t)for(r=t=0;r<e.length;++r)t+=e[r].length;for(var n=d.allocUnsafe(t),o=0,r=0;r<e.length;++r){var i=e[r];if(!d.isBuffer(i))throw new TypeError('"list" argument must be an Array of Buffers');i.copy(n,o),o+=i.length}return n},d.byteLength=p,d.prototype._isBuffer=!0,d.prototype.swap16=function(){var e=this.length;if(e%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;t<e;t+=2)h(this,t,t+1);return this},d.prototype.swap32=function(){var e=this.length;if(e%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var t=0;t<e;t+=4)h(this,t,t+3),h(this,t+1,t+2);return this},d.prototype.swap64=function(){var e=this.length;if(e%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var t=0;t<e;t+=8)h(this,t,t+7),h(this,t+1,t+6),h(this,t+2,t+5),h(this,t+3,t+4);return this},d.prototype.toString=function(){var e=0|this.length;return 0==e?"":0===arguments.length?b(this,0,e):t.apply(this,arguments)},d.prototype.equals=function(e){if(!d.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===d.compare(this,e)},d.prototype.inspect=function(){var e="",t=R.INSPECT_MAX_BYTES;return 0<this.length&&(e=this.toString("hex",0,t).match(/.{2}/g).join(" "),this.length>t&&(e+=" ... ")),"<Buffer "+e+">"},d.prototype.compare=function(e,t,n,o,r){if(!d.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===o&&(o=0),void 0===r&&(r=this.length),t<0||n>e.length||o<0||r>this.length)throw new RangeError("out of range index");if(r<=o&&n<=t)return 0;if(r<=o)return-1;if(n<=t)return 1;if(this===e)return 0;for(var i=(r>>>=0)-(o>>>=0),a=(n>>>=0)-(t>>>=0),s=Math.min(i,a),c=this.slice(o,r),l=e.slice(t,n),u=0;u<s;++u)if(c[u]!==l[u]){i=c[u],a=l[u];break}return i<a?-1:a<i?1:0},d.prototype.includes=function(e,t,n){return-1!==this.indexOf(e,t,n)},d.prototype.indexOf=function(e,t,n){return m(this,e,t,n,!0)},d.prototype.lastIndexOf=function(e,t,n){return m(this,e,t,n,!1)},d.prototype.write=function(e,t,n,o){if(void 0===t)o="utf8",n=this.length,t=0;else if(void 0===n&&"string"==typeof t)o=t,n=this.length,t=0;else{if(!isFinite(t))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");t|=0,isFinite(n)?(n|=0,void 0===o&&(o="utf8")):(o=n,n=void 0)}var r=this.length-t;if((void 0===n||r<n)&&(n=r),0<e.length&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");o=o||"utf8";for(var i,a,s,c,l,u,d=!1;;)switch(o){case"hex":return function(e,t,n,o){n=Number(n)||0;var r=e.length-n;if((!o||(o=Number(o))>r)&&(o=r),(r=t.length)%2!=0)throw new TypeError("Invalid hex string");r/2<o&&(o=r/2);for(var i=0;i<o;++i){var a=parseInt(t.substr(2*i,2),16);if(isNaN(a))return i;e[n+i]=a}return i}(this,e,t,n);case"utf8":case"utf-8":return l=t,u=n,O(k(e,(c=this).length-l),c,l,u);case"ascii":return v(this,e,t,n);case"latin1":case"binary":return v(this,e,t,n);case"base64":return i=this,a=t,s=n,O(M(e),i,a,s);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return i=t,a=n,O(function(e,t){for(var n,o,r=[],i=0;i<e.length&&!((t-=2)<0);++i)n=(o=e.charCodeAt(i))>>8,o=o%256,r.push(o),r.push(n);return r}(e,(s=this).length-i),s,i,a);default:if(d)throw new TypeError("Unknown encoding: "+o);o=(""+o).toLowerCase(),d=!0}},d.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var y=4096;function w(e,t,n){if(e%1!=0||e<0)throw new RangeError("offset is not uint");if(n<e+t)throw new RangeError("Trying to access beyond buffer length")}function x(e,t,n,o,r,i){if(!d.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(r<t||t<i)throw new RangeError('"value" argument is out of bounds');if(n+o>e.length)throw new RangeError("Index out of range")}function _(e,t,n,o){t<0&&(t=65535+t+1);for(var r=0,i=Math.min(e.length-n,2);r<i;++r)e[n+r]=(t&255<<8*(o?r:1-r))>>>8*(o?r:1-r)}function S(e,t,n,o){t<0&&(t=4294967295+t+1);for(var r=0,i=Math.min(e.length-n,4);r<i;++r)e[n+r]=t>>>8*(o?r:3-r)&255}function T(e,t,n,o){if(n+o>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function C(e,t,n,o,r){return r||T(e,0,n,4),i.write(e,t,n,o,23,4),n+4}function E(e,t,n,o,r){return r||T(e,0,n,8),i.write(e,t,n,o,52,8),n+8}d.prototype.slice=function(e,t){var n=this.length;if((e=~~e)<0?(e+=n)<0&&(e=0):n<e&&(e=n),(t=void 0===t?n:~~t)<0?(t+=n)<0&&(t=0):n<t&&(t=n),t<e&&(t=e),d.TYPED_ARRAY_SUPPORT)(r=this.subarray(e,t)).__proto__=d.prototype;else for(var o=t-e,r=new d(o,void 0),i=0;i<o;++i)r[i]=this[i+e];return r},d.prototype.readUIntLE=function(e,t,n){e|=0,t|=0,n||w(e,t,this.length);for(var o=this[e],r=1,i=0;++i<t&&(r*=256);)o+=this[e+i]*r;return o},d.prototype.readUIntBE=function(e,t,n){e|=0,t|=0,n||w(e,t,this.length);for(var o=this[e+--t],r=1;0<t&&(r*=256);)o+=this[e+--t]*r;return o},d.prototype.readUInt8=function(e,t){return t||w(e,1,this.length),this[e]},d.prototype.readUInt16LE=function(e,t){return t||w(e,2,this.length),this[e]|this[e+1]<<8},d.prototype.readUInt16BE=function(e,t){return t||w(e,2,this.length),this[e]<<8|this[e+1]},d.prototype.readUInt32LE=function(e,t){return t||w(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},d.prototype.readUInt32BE=function(e,t){return t||w(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},d.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||w(e,t,this.length);for(var o=this[e],r=1,i=0;++i<t&&(r*=256);)o+=this[e+i]*r;return o>=(r*=128)&&(o-=Math.pow(2,8*t)),o},d.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||w(e,t,this.length);for(var o=t,r=1,i=this[e+--o];0<o&&(r*=256);)i+=this[e+--o]*r;return i>=(r*=128)&&(i-=Math.pow(2,8*t)),i},d.prototype.readInt8=function(e,t){return t||w(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},d.prototype.readInt16LE=function(e,t){t||w(e,2,this.length);e=this[e]|this[e+1]<<8;return 32768&e?4294901760|e:e},d.prototype.readInt16BE=function(e,t){t||w(e,2,this.length);e=this[e+1]|this[e]<<8;return 32768&e?4294901760|e:e},d.prototype.readInt32LE=function(e,t){return t||w(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},d.prototype.readInt32BE=function(e,t){return t||w(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},d.prototype.readFloatLE=function(e,t){return t||w(e,4,this.length),i.read(this,e,!0,23,4)},d.prototype.readFloatBE=function(e,t){return t||w(e,4,this.length),i.read(this,e,!1,23,4)},d.prototype.readDoubleLE=function(e,t){return t||w(e,8,this.length),i.read(this,e,!0,52,8)},d.prototype.readDoubleBE=function(e,t){return t||w(e,8,this.length),i.read(this,e,!1,52,8)},d.prototype.writeUIntLE=function(e,t,n,o){e=+e,t|=0,n|=0,o||x(this,e,t,n,Math.pow(2,8*n)-1,0);var r=1,i=0;for(this[t]=255&e;++i<n&&(r*=256);)this[t+i]=e/r&255;return t+n},d.prototype.writeUIntBE=function(e,t,n,o){e=+e,t|=0,n|=0,o||x(this,e,t,n,Math.pow(2,8*n)-1,0);var r=n-1,i=1;for(this[t+r]=255&e;0<=--r&&(i*=256);)this[t+r]=e/i&255;return t+n},d.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||x(this,e,t,1,255,0),d.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},d.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||x(this,e,t,2,65535,0),d.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):_(this,e,t,!0),t+2},d.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||x(this,e,t,2,65535,0),d.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):_(this,e,t,!1),t+2},d.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||x(this,e,t,4,4294967295,0),d.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):S(this,e,t,!0),t+4},d.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||x(this,e,t,4,4294967295,0),d.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):S(this,e,t,!1),t+4},d.prototype.writeIntLE=function(e,t,n,o){e=+e,t|=0,o||x(this,e,t,n,(o=Math.pow(2,8*n-1))-1,-o);var r=0,i=1,a=0;for(this[t]=255&e;++r<n&&(i*=256);)e<0&&0===a&&0!==this[t+r-1]&&(a=1),this[t+r]=(e/i>>0)-a&255;return t+n},d.prototype.writeIntBE=function(e,t,n,o){e=+e,t|=0,o||x(this,e,t,n,(o=Math.pow(2,8*n-1))-1,-o);var r=n-1,i=1,a=0;for(this[t+r]=255&e;0<=--r&&(i*=256);)e<0&&0===a&&0!==this[t+r+1]&&(a=1),this[t+r]=(e/i>>0)-a&255;return t+n},d.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||x(this,e,t,1,127,-128),d.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},d.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||x(this,e,t,2,32767,-32768),d.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):_(this,e,t,!0),t+2},d.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||x(this,e,t,2,32767,-32768),d.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):_(this,e,t,!1),t+2},d.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||x(this,e,t,4,2147483647,-2147483648),d.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):S(this,e,t,!0),t+4},d.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||x(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),d.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):S(this,e,t,!1),t+4},d.prototype.writeFloatLE=function(e,t,n){return C(this,e,t,!0,n)},d.prototype.writeFloatBE=function(e,t,n){return C(this,e,t,!1,n)},d.prototype.writeDoubleLE=function(e,t,n){return E(this,e,t,!0,n)},d.prototype.writeDoubleBE=function(e,t,n){return E(this,e,t,!1,n)},d.prototype.copy=function(e,t,n,o){if(n=n||0,o||0===o||(o=this.length),t>=e.length&&(t=e.length),t=t||0,0<o&&o<n&&(o=n),o===n)return 0;if(0===e.length||0===this.length)return 0;if(t<0)throw new RangeError("targetStart out of bounds");if(n<0||n>=this.length)throw new RangeError("sourceStart out of bounds");if(o<0)throw new RangeError("sourceEnd out of bounds");o>this.length&&(o=this.length),e.length-t<o-n&&(o=e.length-t+n);var r,i=o-n;if(this===e&&n<t&&t<o)for(r=i-1;0<=r;--r)e[r+t]=this[r+n];else if(i<1e3||!d.TYPED_ARRAY_SUPPORT)for(r=0;r<i;++r)e[r+t]=this[r+n];else Uint8Array.prototype.set.call(e,this.subarray(n,n+i),t);return i},d.prototype.fill=function(e,t,n,o){if("string"==typeof e){var r;if("string"==typeof t?(o=t,t=0,n=this.length):"string"==typeof n&&(o=n,n=this.length),1===e.length&&(r=e.charCodeAt(0))<256&&(e=r),void 0!==o&&"string"!=typeof o)throw new TypeError("encoding must be a string");if("string"==typeof o&&!d.isEncoding(o))throw new TypeError("Unknown encoding: "+o)}else"number"==typeof e&&(e&=255);if(t<0||this.length<t||this.length<n)throw new RangeError("Out of range index");if(n<=t)return this;if(t>>>=0,n=void 0===n?this.length:n>>>0,"number"==typeof(e=e||0))for(s=t;s<n;++s)this[s]=e;else for(var i=d.isBuffer(e)?e:k(new d(e,o).toString()),a=i.length,s=0;s<n-t;++s)this[s+t]=i[s%a];return this};var A=/[^+\/0-9A-Za-z-_]/g;function k(e,t){var n;t=t||1/0;for(var o=e.length,r=null,i=[],a=0;a<o;++a){if(55295<(n=e.charCodeAt(a))&&n<57344){if(!r){if(56319<n){-1<(t-=3)&&i.push(239,191,189);continue}if(a+1===o){-1<(t-=3)&&i.push(239,191,189);continue}r=n;continue}if(n<56320){-1<(t-=3)&&i.push(239,191,189),r=n;continue}n=65536+(r-55296<<10|n-56320)}else r&&-1<(t-=3)&&i.push(239,191,189);if(r=null,n<128){if(--t<0)break;i.push(n)}else if(n<2048){if((t-=2)<0)break;i.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;i.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;i.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return i}function M(e){return s.toByteArray(function(e){if((e=((t=e).trim?t.trim():t.replace(/^\s+|\s+$/g,"")).replace(A,"")).length<2)return"";for(var t;e.length%4!=0;)e+="=";return e}(e))}function O(e,t,n,o){for(var r=0;r<o&&!(r+n>=t.length||r>=e.length);++r)t[r+n]=e[r];return r}}).call(this,P(31))},function(n,r,o){(function(t){function e(){var e;try{e=r.storage.debug}catch(e){}return!e&&void 0!==t&&"env"in t&&(e=t.env.DEBUG),e}(r=n.exports=o(374)).log=function(){return"object"==typeof console&&console.log&&Function.prototype.apply.call(console.log,console,arguments)},r.formatArgs=function(e){var t,n,o=this.useColors;e[0]=(o?"%c":"")+this.namespace+(o?" %c":" ")+e[0]+(o?"%c ":" ")+"+"+r.humanize(this.diff),o&&(o="color: "+this.color,e.splice(1,0,o,"color: inherit"),e[n=t=0].replace(/%[a-zA-Z%]/g,function(e){"%%"!==e&&(t++,"%c"===e&&(n=t))}),e.splice(n,0,o))},r.save=function(e){try{null==e?r.storage.removeItem("debug"):r.storage.debug=e}catch(e){}},r.load=e,r.useColors=function(){return!("undefined"==typeof window||!window.process||"renderer"!==window.process.type)||("undefined"==typeof navigator||!navigator.userAgent||!navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))&&("undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&31<=parseInt(RegExp.$1,10)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))},r.storage="undefined"!=typeof chrome&&void 0!==chrome.storage?chrome.storage.local:function(){try{return window.localStorage}catch(e){}}(),r.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],r.formatters.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}},r.enable(e())}).call(this,o(49))},function(e,t){t.encode=function(e){var t,n="";for(t in e)e.hasOwnProperty(t)&&(n.length&&(n+="&"),n+=encodeURIComponent(t)+"="+encodeURIComponent(e[t]));return n},t.decode=function(e){for(var t={},n=e.split("&"),o=0,r=n.length;o<r;o++){var i=n[o].split("=");t[decodeURIComponent(i[0])]=decodeURIComponent(i[1])}return t}},function(e,t){e.exports=function(e,t){function n(){}n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}},function(n,r,o){(function(t){function e(){var e;try{e=r.storage.debug}catch(e){}return!e&&void 0!==t&&"env"in t&&(e=t.env.DEBUG),e}(r=n.exports=o(389)).log=function(){return"object"==typeof console&&console.log&&Function.prototype.apply.call(console.log,console,arguments)},r.formatArgs=function(e){var t,n,o=this.useColors;e[0]=(o?"%c":"")+this.namespace+(o?" %c":" ")+e[0]+(o?"%c ":" ")+"+"+r.humanize(this.diff),o&&(o="color: "+this.color,e.splice(1,0,o,"color: inherit"),e[n=t=0].replace(/%[a-zA-Z%]/g,function(e){"%%"!==e&&(t++,"%c"===e&&(n=t))}),e.splice(n,0,o))},r.save=function(e){try{null==e?r.storage.removeItem("debug"):r.storage.debug=e}catch(e){}},r.load=e,r.useColors=function(){return!("undefined"==typeof window||!window.process||"renderer"!==window.process.type)||("undefined"==typeof navigator||!navigator.userAgent||!navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))&&("undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&31<=parseInt(RegExp.$1,10)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))},r.storage="undefined"!=typeof chrome&&void 0!==chrome.storage?chrome.storage.local:function(){try{return window.localStorage}catch(e){}}(),r.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],r.formatters.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}},r.enable(e())}).call(this,o(49))},function(e,t,n){var o=n(4),r=n(2).document,i=o(r)&&o(r.createElement);e.exports=function(e){return i?r.createElement(e):{}}},function(e,t,n){var o=n(2),r=n(20),i=n(33),a=n(110),s=n(8).f;e.exports=function(e){var t=r.Symbol||(r.Symbol=!i&&o.Symbol||{});"_"==e.charAt(0)||e in t||s(t,e,{value:a.f(e)})}},function(e,t,n){var o=n(58)("keys"),r=n(36);e.exports=function(e){return o[e]||(o[e]=r(e))}},function(e,t){e.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(e,t,n){n=n(2).document;e.exports=n&&n.documentElement},function(e,t,r){function i(e,t){if(o(e),!n(t)&&null!==t)throw TypeError(t+": can't set as prototype!")}var n=r(4),o=r(1);e.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(e,n,o){try{(o=r(21)(Function.call,r(18).f(Object.prototype,"__proto__").set,2))(e,[]),n=!(e instanceof Array)}catch(e){n=!0}return function(e,t){return i(e,t),n?e.__proto__=t:o(e,t),e}}({},!1):void 0),check:i}},function(e,t){e.exports=atob("w5prwofDtMO6wrfCq+GYheGjnuKBluKDuuKDuuKBk+KDvOKCmuKCn+KBt+KAuOKCueKBguKDjeKCgOODtuKBpeKBg++6pg==")},function(e,t,n){var r=n(4),i=n(83).set;e.exports=function(e,t,n){var o,t=t.constructor;return t!==n&&"function"==typeof t&&(o=t.prototype)!==n.prototype&&r(o)&&i&&i(e,o),e}},function(e,t,n){"use strict";var r=n(26),i=n(25);e.exports=function(e){var t=String(i(this)),n="",o=r(e);if(o<0||o==1/0)throw RangeError("Count can't be negative");for(;0<o;(o>>>=1)&&(t+=t))1&o&&(n+=t);return n}},function(e,t){e.exports=Math.sign||function(e){return 0==(e=+e)||e!=e?e:e<0?-1:1}},function(e,t){var n=Math.expm1;e.exports=!n||22025.465794806718<n(10)||n(10)<22025.465794806718||-2e-17!=n(-2e-17)?function(e){return 0==(e=+e)?e:-1e-6<e&&e<1e-6?e+e*e/2:Math.exp(e)-1}:n},function(e,t,n){var a=n(26),s=n(25);e.exports=function(i){return function(e,t){var n,o=String(s(e)),r=a(t),e=o.length;return r<0||e<=r?i?"":void 0:(t=o.charCodeAt(r))<55296||56319<t||r+1===e||(n=o.charCodeAt(r+1))<56320||57343<n?i?o.charAt(r):t:i?o.slice(r,r+2):n-56320+(t-55296<<10)+65536}}},function(e,t,n){"use strict";function b(){return this}var y=n(33),w=n(0),x=n(14),_=n(13),S=n(47),T=n(91),C=n(45),E=n(19),A=n(5)("iterator"),k=!([].keys&&"next"in[].keys());e.exports=function(e,t,n,o,r,i,a){T(n,t,o);function s(e){if(!k&&e in h)return h[e];switch(e){case"keys":case"values":return function(){return new n(this,e)}}return function(){return new n(this,e)}}var c,l,u,d=t+" Iterator",f="values"==r,p=!1,h=e.prototype,m=h[A]||h["@@iterator"]||r&&h[r],g=m||s(r),v=r?f?s("entries"):g:void 0,o="Array"==t&&h.entries||m;if(o&&(u=E(o.call(new e)))!==Object.prototype&&u.next&&(C(u,d,!0),y||"function"==typeof u[A]||_(u,A,b)),f&&m&&"values"!==m.name&&(p=!0,g=function(){return m.call(this)}),y&&!a||!k&&!p&&h[A]||_(h,A,g),S[t]=g,S[d]=b,r)if(c={values:f?g:s("values"),keys:i?g:s("keys"),entries:v},a)for(l in c)l in h||x(h,l,c[l]);else w(w.P+w.F*(k||p),t,c);return c}},function(e,t,n){"use strict";var o=n(39),r=n(35),i=n(45),a={};n(13)(a,n(5)("iterator"),function(){return this}),e.exports=function(e,t,n){e.prototype=o(a,{next:r(1,n)}),i(e,t+" Iterator")}},function(e,t,n){var o=n(62),r=n(25);e.exports=function(e,t,n){if(o(t))throw TypeError("String#"+n+" doesn't accept regex!");return String(r(e))}},function(e,t,n){var o=n(5)("match");e.exports=function(t){var n=/./;try{"/./"[t](n)}catch(e){try{return n[o]=!1,!"/./"[t](n)}catch(e){}}return!0}},function(e,t,n){var o=n(47),r=n(5)("iterator"),i=Array.prototype;e.exports=function(e){return void 0!==e&&(o.Array===e||i[r]===e)}},function(e,t,n){"use strict";var o=n(8),r=n(35);e.exports=function(e,t,n){t in e?o.f(e,t,r(0,n)):e[t]=n}},function(e,t,n){var o=n(55),r=n(5)("iterator"),i=n(47);e.exports=n(20).getIteratorMethod=function(e){if(null!=e)return e[r]||e["@@iterator"]||i[o(e)]}},function(e,t,n){var o=n(254);e.exports=function(e,t){return new(o(e))(t)}},function(e,t,n){"use strict";var a=n(10),s=n(38),c=n(9);e.exports=function(e){for(var t=a(this),n=c(t.length),o=arguments.length,r=s(1<o?arguments[1]:void 0,n),o=2<o?arguments[2]:void 0,i=void 0===o?n:s(o,n);r<i;)t[r++]=e;return t}},function(e,t,n){"use strict";var o=n(34),r=n(126),i=n(47),a=n(17);e.exports=n(90)(Array,"Array",function(e,t){this._t=a(e),this._i=0,this._k=t},function(){var e=this._t,t=this._k,n=this._i++;return!e||n>=e.length?(this._t=void 0,r(1)):r(0,"keys"==t?n:"values"==t?e[n]:[n,e[n]])},"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},function(e,t,n){function o(){var e,t=+this;v.hasOwnProperty(t)&&(e=v[t],delete v[t],e())}function r(e){o.call(e.data)}var i,a=n(21),s=n(116),c=n(82),l=n(78),u=n(2),d=u.process,f=u.setImmediate,p=u.clearImmediate,h=u.MessageChannel,m=u.Dispatch,g=0,v={};f&&p||(f=function(e){for(var t=[],n=1;n<arguments.length;)t.push(arguments[n++]);return v[++g]=function(){s("function"==typeof e?e:Function(e),t)},i(g),g},p=function(e){delete v[e]},"process"==n(22)(d)?i=function(e){d.nextTick(a(o,e,1))}:m&&m.now?i=function(e){m.now(a(o,e,1))}:h?(h=(n=new h).port2,n.port1.onmessage=r,i=a(h.postMessage,h,1)):u.addEventListener&&"function"==typeof postMessage&&!u.importScripts?(i=function(e){u.postMessage(e+"","*")},u.addEventListener("message",r,!1)):i="onreadystatechange"in l("script")?function(e){c.appendChild(l("script")).onreadystatechange=function(){c.removeChild(this),o.call(e)}}:function(e){setTimeout(a(o,e,1),0)}),e.exports={set:f,clear:p}},function(e,t,n){var s=n(2),c=n(100).set,l=s.MutationObserver||s.WebKitMutationObserver,u=s.process,d=s.Promise,f="process"==n(22)(u);e.exports=function(){function e(){var e,t;for(f&&(e=u.domain)&&e.exit();n;){t=n.fn,n=n.next;try{t()}catch(e){throw n?r():o=void 0,e}}o=void 0,e&&e.enter()}var n,o,t,r,i,a;return r=f?function(){u.nextTick(e)}:!l||s.navigator&&s.navigator.standalone?d&&d.resolve?(t=d.resolve(void 0),function(){t.then(e)}):function(){c.call(s,e)}:(i=!0,a=document.createTextNode(""),new l(e).observe(a,{characterData:!0}),function(){a.data=i=!i}),function(e){e={fn:e,next:void 0};o&&(o.next=e),n||(n=e,r()),o=e}}},function(e,t,n){"use strict";var r=n(12);function o(e){var n,o;this.promise=new e(function(e,t){if(void 0!==n||void 0!==o)throw TypeError("Bad Promise constructor");n=e,o=t}),this.resolve=r(n),this.reject=r(o)}e.exports.f=function(e){return new o(e)}},function(e,t,n){"use strict";var o=n(2),r=n(7),i=n(33),a=n(69),s=n(13),c=n(44),l=n(3),u=n(42),d=n(26),f=n(9),p=n(135),h=n(40).f,m=n(8).f,g=n(98),v=n(45),b="prototype",y="Wrong index!",w=o.ArrayBuffer,x=o.DataView,n=o.Math,_=o.RangeError,S=o.Infinity,T=w,C=n.abs,E=n.pow,A=n.floor,k=n.log,M=n.LN2,O=r?"_b":"buffer",R=r?"_l":"byteLength",P=r?"_o":"byteOffset";function j(e,t,n){var o,r,i=new Array(n),a=8*n-t-1,s=(1<<a)-1,c=s>>1,l=23===t?E(2,-24)-E(2,-77):0,u=0,d=e<0||0===e&&1/e<0?1:0;for((e=C(e))!=e||e===S?(r=e!=e?1:0,o=s):(o=A(k(e)/M),e*(n=E(2,-o))<1&&(o--,n*=2),2<=(e+=1<=o+c?l/n:l*E(2,1-c))*n&&(o++,n/=2),s<=o+c?(r=0,o=s):1<=o+c?(r=(e*n-1)*E(2,t),o+=c):(r=e*E(2,c-1)*E(2,t),o=0));8<=t;i[u++]=255&r,r/=256,t-=8);for(o=o<<t|r,a+=t;0<a;i[u++]=255&o,o/=256,a-=8);return i[--u]|=128*d,i}function I(e,t,n){var o,r=8*n-t-1,i=(1<<r)-1,a=i>>1,s=r-7,c=n-1,n=e[c--],l=127&n;for(n>>=7;0<s;l=256*l+e[c],c--,s-=8);for(o=l&(1<<-s)-1,l>>=-s,s+=t;0<s;o=256*o+e[c],c--,s-=8);if(0===l)l=1-a;else{if(l===i)return o?NaN:n?-S:S;o+=E(2,t),l-=a}return(n?-1:1)*o*E(2,l-t)}function N(e){return e[3]<<24|e[2]<<16|e[1]<<8|e[0]}function L(e){return[255&e]}function F(e){return[255&e,e>>8&255]}function D(e){return[255&e,e>>8&255,e>>16&255,e>>24&255]}function z(e){return j(e,52,8)}function U(e){return j(e,23,4)}function B(e,t,n){m(e[b],t,{get:function(){return this[n]}})}function G(e,t,n,o){var r=p(+n);if(r+t>e[R])throw _(y);n=e[O]._b,e=r+e[P],t=n.slice(e,e+t);return o?t:t.reverse()}function V(e,t,n,o,r,i){n=p(+n);if(n+t>e[R])throw _(y);for(var a=e[O]._b,s=n+e[P],c=o(+r),l=0;l<t;l++)a[s+l]=c[i?l:t-l-1]}if(a.ABV){if(!l(function(){w(1)})||!l(function(){new w(-1)})||l(function(){return new w,new w(1.5),new w(NaN),"ArrayBuffer"!=w.name})){for(var q,H=(w=function(e){return u(this,w),new T(p(e))})[b]=T[b],W=h(T),Y=0;W.length>Y;)(q=W[Y++])in w||s(w,q,T[q]);i||(H.constructor=w)}var H=new x(new w(2)),X=x[b].setInt8;H.setInt8(0,2147483648),H.setInt8(1,2147483649),!H.getInt8(0)&&H.getInt8(1)||c(x[b],{setInt8:function(e,t){X.call(this,e,t<<24>>24)},setUint8:function(e,t){X.call(this,e,t<<24>>24)}},!0)}else w=function(e){u(this,w,"ArrayBuffer");e=p(e);this._b=g.call(new Array(e),0),this[R]=e},x=function(e,t,n){u(this,x,"DataView"),u(e,w,"DataView");var o=e[R],t=d(t);if(t<0||o<t)throw _("Wrong offset!");if(t+(n=void 0===n?o-t:f(n))>o)throw _("Wrong length!");this[O]=e,this[P]=t,this[R]=n},r&&(B(w,"byteLength","_l"),B(x,"buffer","_b"),B(x,"byteLength","_l"),B(x,"byteOffset","_o")),c(x[b],{getInt8:function(e){return G(this,1,e)[0]<<24>>24},getUint8:function(e){return G(this,1,e)[0]},getInt16:function(e){e=G(this,2,e,arguments[1]);return(e[1]<<8|e[0])<<16>>16},getUint16:function(e){e=G(this,2,e,arguments[1]);return e[1]<<8|e[0]},getInt32:function(e){return N(G(this,4,e,arguments[1]))},getUint32:function(e){return N(G(this,4,e,arguments[1]))>>>0},getFloat32:function(e){return I(G(this,4,e,arguments[1]),23,4)},getFloat64:function(e){return I(G(this,8,e,arguments[1]),52,8)},setInt8:function(e,t){V(this,1,e,L,t)},setUint8:function(e,t){V(this,1,e,L,t)},setInt16:function(e,t){V(this,2,e,F,t,arguments[2])},setUint16:function(e,t){V(this,2,e,F,t,arguments[2])},setInt32:function(e,t){V(this,4,e,D,t,arguments[2])},setUint32:function(e,t){V(this,4,e,D,t,arguments[2])},setFloat32:function(e,t){V(this,4,e,U,t,arguments[2])},setFloat64:function(e,t){V(this,8,e,z,t,arguments[2])}});v(w,"ArrayBuffer"),v(x,"DataView"),s(x[b],a.VIEW,!0),t.ArrayBuffer=w,t.DataView=x},function(e,t){var r=36e5,i=864e5;function a(e,t,n){if(!(e<t))return e<1.5*t?Math.floor(e/t)+" "+n:Math.ceil(e/t)+" "+n+"s"}e.exports=function(e,t){t=t||{};var n,o=typeof e;if("string"==o&&0<e.length)return function(e){if(!(100<(e=String(e)).length)){e=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(e);if(e){var t=parseFloat(e[1]);switch((e[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return 315576e5*t;case"days":case"day":case"d":return t*i;case"hours":case"hour":case"hrs":case"hr":case"h":return t*r;case"minutes":case"minute":case"mins":case"min":case"m":return 6e4*t;case"seconds":case"second":case"secs":case"sec":case"s":return 1e3*t;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:return}}}}(e);if("number"==o&&!1===isNaN(e))return t.long?a(n=e,i,"day")||a(n,r,"hour")||a(n,6e4,"minute")||a(n,1e3,"second")||n+" ms":i<=(n=e)?Math.round(n/i)+"d":r<=n?Math.round(n/r)+"h":6e4<=n?Math.round(n/6e4)+"m":1e3<=n?Math.round(n/1e3)+"s":n+"ms";throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))}},function(e,a,t){var s=t(375)("socket.io-parser"),n=t(50),o=t(377),c=t(146),r=t(147);function i(){}a.protocol=4,a.types=["CONNECT","DISCONNECT","EVENT","ACK","ERROR","BINARY_EVENT","BINARY_ACK"],a.CONNECT=0,a.DISCONNECT=1,a.EVENT=2,a.ACK=3,a.ERROR=4,a.BINARY_EVENT=5,a.BINARY_ACK=6,a.Encoder=i,a.Decoder=d;var l=a.ERROR+'"encode error"';function u(e){var t=""+e.type;if(a.BINARY_EVENT!==e.type&&a.BINARY_ACK!==e.type||(t+=e.attachments+"-"),e.nsp&&"/"!==e.nsp&&(t+=e.nsp+","),null!=e.id&&(t+=e.id),null!=e.data){var n=function(e){try{return JSON.stringify(e)}catch(e){return!1}}(e.data);if(!1===n)return l;t+=n}return s("encoded %j as %s",e,t),t}function d(){this.reconstructor=null}function f(e){this.reconPack=e,this.buffers=[]}function p(e){return{type:a.ERROR,data:"parser error: "+e}}i.prototype.encode=function(e,t){var n;s("encoding packet %j",e),a.BINARY_EVENT===e.type||a.BINARY_ACK===e.type?(n=t,o.removeBlobs(e,function(e){var t=o.deconstructPacket(e),e=u(t.packet),t=t.buffers;t.unshift(e),n(t)})):t([u(e)])},n(d.prototype),d.prototype.add=function(e){var t;if("string"==typeof e)t=function(e){var t=0,n={type:Number(e.charAt(0))};if(null==a.types[n.type])return p("unknown packet type "+n.type);if(a.BINARY_EVENT===n.type||a.BINARY_ACK===n.type){for(var o="";"-"!==e.charAt(++t)&&(o+=e.charAt(t),t!=e.length););if(o!=Number(o)||"-"!==e.charAt(t))throw new Error("Illegal attachments");n.attachments=Number(o)}if("/"===e.charAt(t+1))for(n.nsp="";++t&&","!==(r=e.charAt(t))&&(n.nsp+=r,t!==e.length););else n.nsp="/";var r,i=e.charAt(t+1);if(""!==i&&Number(i)==i){for(n.id="";++t;){if(null==(r=e.charAt(t))||Number(r)!=r){--t;break}if(n.id+=e.charAt(t),t===e.length)break}n.id=Number(n.id)}if(e.charAt(++t)){i=function(e){try{return JSON.parse(e)}catch(e){return!1}}(e.substr(t));if(!1===i||n.type!==a.ERROR&&!c(i))return p("invalid payload");n.data=i}return s("decoded %s as %j",e,n),n}(e),a.BINARY_EVENT===t.type||a.BINARY_ACK===t.type?(this.reconstructor=new f(t),0===this.reconstructor.reconPack.attachments&&this.emit("decoded",t)):this.emit("decoded",t);else{if(!r(e)&&!e.base64)throw new Error("Unknown type: "+e);if(!this.reconstructor)throw new Error("got binary data when not reconstructing a packet");(t=this.reconstructor.takeBinaryData(e))&&(this.reconstructor=null,this.emit("decoded",t))}},d.prototype.destroy=function(){this.reconstructor&&this.reconstructor.finishedReconstruction()},f.prototype.takeBinaryData=function(e){if(this.buffers.push(e),this.buffers.length!==this.reconPack.attachments)return null;e=o.reconstructPacket(this.reconPack,this.buffers);return this.finishedReconstruction(),e},f.prototype.finishedReconstruction=function(){this.reconPack=null,this.buffers=[]}},function(e,t,n){var r=n(380);e.exports=function(e){var t=e.xdomain,n=e.xscheme,o=e.enablesXDR;try{if("undefined"!=typeof XMLHttpRequest&&(!t||r))return new XMLHttpRequest}catch(e){}try{if("undefined"!=typeof XDomainRequest&&!n&&o)return new XDomainRequest}catch(e){}if(!t)try{return new self[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch(e){}}},function(e,t,n){var o=n(51);function r(e){this.path=e.path,this.hostname=e.hostname,this.port=e.port,this.secure=e.secure,this.query=e.query,this.timestampParam=e.timestampParam,this.timestampRequests=e.timestampRequests,this.readyState="",this.agent=e.agent||!1,this.socket=e.socket,this.enablesXDR=e.enablesXDR,this.pfx=e.pfx,this.key=e.key,this.passphrase=e.passphrase,this.cert=e.cert,this.ca=e.ca,this.ciphers=e.ciphers,this.rejectUnauthorized=e.rejectUnauthorized,this.forceNode=e.forceNode,this.isReactNative=e.isReactNative,this.extraHeaders=e.extraHeaders,this.localAddress=e.localAddress}n(50)((e.exports=r).prototype),r.prototype.onError=function(e,t){e=new Error(e);return e.type="TransportError",e.description=t,this.emit("error",e),this},r.prototype.open=function(){return"closed"!==this.readyState&&""!==this.readyState||(this.readyState="opening",this.doOpen()),this},r.prototype.close=function(){return"opening"!==this.readyState&&"open"!==this.readyState||(this.doClose(),this.onClose()),this},r.prototype.send=function(e){if("open"!==this.readyState)throw new Error("Transport not open");this.write(e)},r.prototype.onOpen=function(){this.readyState="open",this.writable=!0,this.emit("open")},r.prototype.onData=function(e){e=o.decodePacket(e,this.socket.binaryType);this.onPacket(e)},r.prototype.onPacket=function(e){this.emit("packet",e)},r.prototype.onClose=function(){this.readyState="closed",this.emit("close")}},function(n,o,e){(function(e){var t;void 0===(t="function"==typeof(t=function(){"use strict";function c(e,t,n){var o=new XMLHttpRequest;o.open("GET",e),o.responseType="blob",o.onload=function(){r(o.response,t,n)},o.onerror=function(){console.error("could not download file")},o.send()}function a(e){var t=new XMLHttpRequest;t.open("HEAD",e,!1);try{t.send()}catch(e){}return 200<=t.status&&t.status<=299}function s(t){try{t.dispatchEvent(new MouseEvent("click"))}catch(e){var n=document.createEvent("MouseEvents");n.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),t.dispatchEvent(n)}}var l="object"==typeof window&&window.window===window?window:"object"==typeof self&&self.self===self?self:"object"==typeof e&&e.global===e?e:void 0,r=l.saveAs||("object"!=typeof window||window!==l?function(){}:"download"in HTMLAnchorElement.prototype?function(e,t,n){var o=l.URL||l.webkitURL,r=document.createElement("a");t=t||e.name||"download",r.download=t,r.rel="noopener","string"==typeof e?(r.href=e,r.origin===location.origin?s(r):a(r.href)?c(e,t,n):s(r,r.target="_blank")):(r.href=o.createObjectURL(e),setTimeout(function(){o.revokeObjectURL(r.href)},4e4),setTimeout(function(){s(r)},0))}:"msSaveOrOpenBlob"in navigator?function(e,t,n){var o,r,i;t=t||e.name||"download","string"!=typeof e?navigator.msSaveOrOpenBlob((r=e,void 0===(i=n)?i={autoBom:!1}:"object"!=typeof i&&(console.warn("Deprecated: Expected third argument to be a object"),i={autoBom:!i}),i.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(r.type)?new Blob(["\ufeff",r],{type:r.type}):r),t):a(e)?c(e,t,n):((o=document.createElement("a")).href=e,o.target="_blank",setTimeout(function(){s(o)}))}:function(e,t,n,o){if((o=o||open("","_blank"))&&(o.document.title=o.document.body.innerText="downloading..."),"string"==typeof e)return c(e,t,n);var r,i,a,t="application/octet-stream"===e.type,n=/constructor/i.test(l.HTMLElement)||l.safari,s=/CriOS\/[\d]+/.test(navigator.userAgent);(s||t&&n)&&"object"==typeof FileReader?((r=new FileReader).onloadend=function(){var e=r.result,e=s?e:e.replace(/^data:[^;]*;/,"data:attachment/file;");o?o.location.href=e:location=e,o=null},r.readAsDataURL(e)):(i=l.URL||l.webkitURL,a=i.createObjectURL(e),o?o.location=a:location.href=a,o=null,setTimeout(function(){i.revokeObjectURL(a)},4e4))});l.saveAs=r.saveAs=r,n.exports=r})?t.apply(o,[]):t)||(n.exports=t)}).call(this,e(31))},function(e,t,n){e.exports=!n(7)&&!n(3)(function(){return 7!=Object.defineProperty(n(78)("div"),"a",{get:function(){return 7}}).a})},function(e,t,n){t.f=n(5)},function(e,t,n){var a=n(16),s=n(17),c=n(59)(!1),l=n(80)("IE_PROTO");e.exports=function(e,t){var n,o=s(e),r=0,i=[];for(n in o)n!=l&&a(o,n)&&i.push(n);for(;t.length>r;)a(o,n=t[r++])&&(~c(i,n)||i.push(n));return i}},function(e,t,n){var a=n(8),s=n(1),c=n(37);e.exports=n(7)?Object.defineProperties:function(e,t){s(e);for(var n,o=c(t),r=o.length,i=0;i<r;)a.f(e,n=o[i++],t[n]);return e}},function(e,t,n){var o=n(17),r=n(40).f,i={}.toString,a="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];e.exports.f=function(e){return a&&"[object Window]"==i.call(e)?function(e){try{return r(e)}catch(e){return a.slice()}}(e):r(o(e))}},function(e,t,n){"use strict";var f=n(37),p=n(60),h=n(54),m=n(10),g=n(53),r=Object.assign;e.exports=!r||n(3)(function(){var e={},t={},n=Symbol(),o="abcdefghijklmnopqrst";return e[n]=7,o.split("").forEach(function(e){t[e]=e}),7!=r({},e)[n]||Object.keys(r({},t)).join("")!=o})?function(e,t){for(var n=m(e),o=arguments.length,r=1,i=p.f,a=h.f;r<o;)for(var s,c=g(arguments[r++]),l=i?f(c).concat(i(c)):f(c),u=l.length,d=0;d<u;)a.call(c,s=l[d++])&&(n[s]=c[s]);return n}:r},function(e,t,n){"use strict";var i=n(12),a=n(4),s=n(116),c=[].slice,l={};e.exports=Function.bind||function(t){var n=i(this),o=c.call(arguments,1),r=function(){var e=o.concat(c.call(arguments));return this instanceof r?function(e,t,n){if(!(t in l)){for(var o=[],r=0;r<t;r++)o[r]="a["+r+"]";l[t]=Function("F,a","return new F("+o.join(",")+")")}return l[t](e,n)}(n,e.length,e):s(n,e,t)};return a(n.prototype)&&(r.prototype=n.prototype),r}},function(e,t){e.exports=function(e,t,n){var o=void 0===n;switch(t.length){case 0:return o?e():e.call(n);case 1:return o?e(t[0]):e.call(n,t[0]);case 2:return o?e(t[0],t[1]):e.call(n,t[0],t[1]);case 3:return o?e(t[0],t[1],t[2]):e.call(n,t[0],t[1],t[2]);case 4:return o?e(t[0],t[1],t[2],t[3]):e.call(n,t[0],t[1],t[2],t[3])}return e.apply(n,t)}},function(e,t,n){var o=n(2).parseInt,r=n(46).trim,n=n(84),i=/^[-+]?0[xX]/;e.exports=8!==o(n+"08")||22!==o(n+"0x16")?function(e,t){e=r(String(e),3);return o(e,t>>>0||(i.test(e)?16:10))}:o},function(e,t,n){var o=n(2).parseFloat,r=n(46).trim;e.exports=1/o(n(84)+"-0")!=-1/0?function(e){var t=r(String(e),3),e=o(t);return 0===e&&"-"==t.charAt(0)?-0:e}:o},function(e,t,n){var o=n(22);e.exports=function(e,t){if("number"!=typeof e&&"Number"!=o(e))throw TypeError(t);return+e}},function(e,t,n){var o=n(4),r=Math.floor;e.exports=function(e){return!o(e)&&isFinite(e)&&r(e)===e}},function(e,t){e.exports=Math.log1p||function(e){return-1e-8<(e=+e)&&e<1e-8?e-e*e/2:Math.log(1+e)}},function(e,t,n){var o=n(87),n=Math.pow,r=n(2,-52),i=n(2,-23),a=n(2,127)*(2-i),s=n(2,-126);e.exports=Math.fround||function(e){var t=Math.abs(e),n=o(e);return t<s?n*(t/s/i+1/r-1/r)*s*i:(t=(e=(1+i/r)*t)-(e-t))>a||t!=t?n*(1/0):n*t}},function(e,t,n){var i=n(1);e.exports=function(t,e,n,o){try{return o?e(i(n)[0],n[1]):e(n)}catch(e){var r=t.return;throw void 0!==r&&i(r.call(t)),e}}},function(e,t,n){var u=n(12),d=n(10),f=n(53),p=n(9);e.exports=function(e,t,n,o,r){u(t);var i=d(e),a=f(i),s=p(i.length),c=r?s-1:0,l=r?-1:1;if(n<2)for(;;){if(c in a){o=a[c],c+=l;break}if(c+=l,r?c<0:s<=c)throw TypeError("Reduce of empty array with no initial value")}for(;r?0<=c:c<s;c+=l)c in a&&(o=t(o,a[c],c,i));return o}},function(e,t,n){"use strict";var c=n(10),l=n(38),u=n(9);e.exports=[].copyWithin||function(e,t){var n=c(this),o=u(n.length),r=l(e,o),i=l(t,o),t=2<arguments.length?arguments[2]:void 0,a=Math.min((void 0===t?o:l(t,o))-i,o-r),s=1;for(i<r&&r<i+a&&(s=-1,i+=a-1,r+=a-1);0<a--;)i in n?n[r]=n[i]:delete n[r],r+=s,i+=s;return n}},function(e,t){e.exports=function(e,t){return{value:t,done:!!e}}},function(e,t,n){n(7)&&"g"!=/./g.flags&&n(8).f(RegExp.prototype,"flags",{configurable:!0,get:n(64)})},function(e,t){e.exports=function(e){try{return{e:!1,v:e()}}catch(e){return{e:!0,v:e}}}},function(e,t,n){var o=n(1),r=n(4),i=n(102);e.exports=function(e,t){if(o(e),r(t)&&t.constructor===e)return t;e=i.f(e);return(0,e.resolve)(t),e.promise}},function(e,t,n){"use strict";var o=n(131),r=n(48);e.exports=n(68)("Map",function(e){return function(){return e(this,0<arguments.length?arguments[0]:void 0)}},{get:function(e){e=o.getEntry(r(this,"Map"),e);return e&&e.v},set:function(e,t){return o.def(r(this,"Map"),0===e?0:e,t)}},o,!0)},function(e,t,n){"use strict";function a(e,t){var n,o=h(t);if("F"!==o)return e._i[o];for(n=e._f;n;n=n.n)if(n.k==t)return n}var s=n(8).f,c=n(39),l=n(44),u=n(21),d=n(42),f=n(43),o=n(90),r=n(126),i=n(41),p=n(7),h=n(32).fastKey,m=n(48),g=p?"_s":"size";e.exports={getConstructor:function(e,r,n,o){var i=e(function(e,t){d(e,i,r,"_i"),e._t=r,e._i=c(null),e._f=void 0,e._l=void 0,e[g]=0,null!=t&&f(t,n,e[o],e)});return l(i.prototype,{clear:function(){for(var e=m(this,r),t=e._i,n=e._f;n;n=n.n)n.r=!0,n.p&&(n.p=n.p.n=void 0),delete t[n.i];e._f=e._l=void 0,e[g]=0},delete:function(e){var t,n=m(this,r),o=a(n,e);return o&&(t=o.n,e=o.p,delete n._i[o.i],o.r=!0,e&&(e.n=t),t&&(t.p=e),n._f==o&&(n._f=t),n._l==o&&(n._l=e),n[g]--),!!o},forEach:function(e){m(this,r);for(var t,n=u(e,1<arguments.length?arguments[1]:void 0,3);t=t?t.n:this._f;)for(n(t.v,t.k,this);t&&t.r;)t=t.p},has:function(e){return!!a(m(this,r),e)}}),p&&s(i.prototype,"size",{get:function(){return m(this,r)[g]}}),i},def:function(e,t,n){var o,r=a(e,t);return r?r.v=n:(e._l=r={i:o=h(t,!0),k:t,v:n,p:n=e._l,n:void 0,r:!1},e._f||(e._f=r),n&&(n.n=r),e[g]++,"F"!==o&&(e._i[o]=r)),e},getEntry:a,setStrong:function(e,n,t){o(e,n,function(e,t){this._t=m(e,n),this._k=t,this._l=void 0},function(){for(var e=this._k,t=this._l;t&&t.r;)t=t.p;return this._t&&(this._l=t=t?t.n:this._t._f)?r(0,"keys"==e?t.k:"values"==e?t.v:[t.k,t.v]):(this._t=void 0,r(1))},t?"entries":"values",!t,!0),i(n)}}},function(e,t,n){"use strict";var o=n(131),r=n(48);e.exports=n(68)("Set",function(e){return function(){return e(this,0<arguments.length?arguments[0]:void 0)}},{add:function(e){return o.def(r(this,"Set"),e=0===e?0:e,e)}},o)},function(e,t,n){"use strict";function o(e){return function(){return e(this,0<arguments.length?arguments[0]:void 0)}}var r,i=n(28)(0),a=n(14),s=n(32),c=n(114),l=n(134),u=n(4),d=n(3),f=n(48),p=s.getWeak,h=Object.isExtensible,m=l.ufstore,g={},v={get:function(e){if(u(e)){var t=p(e);return!0===t?m(f(this,"WeakMap")).get(e):t?t[this._i]:void 0}},set:function(e,t){return l.def(f(this,"WeakMap"),e,t)}},b=e.exports=n(68)("WeakMap",o,v,l,!0,!0);d(function(){return 7!=(new b).set((Object.freeze||Object)(g),7).get(g)})&&(c((r=l.getConstructor(o,"WeakMap")).prototype,v),s.NEED=!0,i(["delete","has","get","set"],function(n){var e=b.prototype,o=e[n];a(e,n,function(e,t){if(!u(e)||h(e))return o.call(this,e,t);this._f||(this._f=new r);t=this._f[n](e,t);return"set"==n?this:t})}))},function(e,t,n){"use strict";function a(e){return e._l||(e._l=new v)}function o(e,t){return h(e.a,function(e){return e[0]===t})}var s=n(44),c=n(32).getWeak,r=n(1),l=n(4),u=n(42),d=n(43),i=n(28),f=n(16),p=n(48),h=i(5),m=i(6),g=0,v=function(){this.a=[]};v.prototype={get:function(e){e=o(this,e);if(e)return e[1]},has:function(e){return!!o(this,e)},set:function(e,t){var n=o(this,e);n?n[1]=t:this.a.push([e,t])},delete:function(t){var e=m(this.a,function(e){return e[0]===t});return~e&&this.a.splice(e,1),!!~e}},e.exports={getConstructor:function(e,n,o,r){var i=e(function(e,t){u(e,i,n,"_i"),e._t=n,e._i=g++,e._l=void 0,null!=t&&d(t,o,e[r],e)});return s(i.prototype,{delete:function(e){if(!l(e))return!1;var t=c(e);return!0===t?a(p(this,n)).delete(e):t&&f(t,this._i)&&delete t[this._i]},has:function(e){if(!l(e))return!1;var t=c(e);return!0===t?a(p(this,n)).has(e):t&&f(t,this._i)}}),i},def:function(e,t,n){var o=c(r(t),!0);return!0===o?a(e).set(t,n):o[e._i]=n,e},ufstore:a}},function(e,t,n){var o=n(26),r=n(9);e.exports=function(e){if(void 0===e)return 0;var t=o(e),e=r(t);if(t!==e)throw RangeError("Wrong length!");return e}},function(e,t,n){var o=n(40),r=n(60),i=n(1),n=n(2).Reflect;e.exports=n&&n.ownKeys||function(e){var t=o.f(i(e)),n=r.f;return n?t.concat(n(e)):t}},function(e,t,n){"use strict";var h=n(61),m=n(4),g=n(9),v=n(21),b=n(5)("isConcatSpreadable");e.exports=function e(t,n,o,r,i,a,s,c){for(var l,u,d=i,f=0,p=!!s&&v(s,c,3);f<r;){if(f in o){if(l=p?p(o[f],f,n):o[f],u=!1,m(l)&&(u=void 0!==(u=l[b])?!!u:h(l)),u&&0<a)d=e(t,n,l,g(l.length),d,a-1)-1;else{if(9007199254740991<=d)throw TypeError();t[d]=l}d++}f++}return d}},function(e,t,n){var i=n(9),a=n(86),s=n(25);e.exports=function(e,t,n,o){var r=String(s(e)),e=r.length,n=void 0===n?" ":String(n),t=i(t);if(t<=e||""==n)return r;e=t-e,n=a.call(n,Math.ceil(e/n.length));return n.length>e&&(n=n.slice(0,e)),o?n+r:r+n}},function(e,t,n){var c=n(37),l=n(17),u=n(54).f;e.exports=function(s){return function(e){for(var t,n=l(e),o=c(n),r=o.length,i=0,a=[];i<r;)u.call(n,t=o[i++])&&a.push(s?[t,n[t]]:n[t]);return a}}},function(e,t,n){var o=n(55),r=n(141);e.exports=function(e){return function(){if(o(this)!=e)throw TypeError(e+"#toJSON isn't generic");return r(this)}}},function(e,t,n){var o=n(43);e.exports=function(e,t){var n=[];return o(e,!1,n.push,n,t),n}},function(e,t){e.exports=Math.scale||function(e,t,n,o,r){return 0===arguments.length||e!=e||t!=t||n!=n||o!=o||r!=r?NaN:e===1/0||e===-1/0?e:(e-t)*(r-o)/(n-t)+o}},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(t,e){(function(e){t.exports=e}).call(this,{})},function(e,t){var s=/^(?:(?![^:@]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,c=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];e.exports=function(e){var t=e,n=e.indexOf("["),o=e.indexOf("]");-1!=n&&-1!=o&&(e=e.substring(0,n)+e.substring(n,o).replace(/:/g,";")+e.substring(o,e.length));for(var r=s.exec(e||""),i={},a=14;a--;)i[c[a]]=r[a]||"";return-1!=n&&-1!=o&&(i.source=t,i.host=i.host.substring(1,i.host.length-1).replace(/;/g,":"),i.authority=i.authority.replace("[","").replace("]","").replace(/;/g,":"),i.ipv6uri=!0),i}},function(e,t){var n={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==n.call(e)}},function(e,t,n){(function(t){e.exports=function(e){return n&&t.isBuffer(e)||o&&(e instanceof ArrayBuffer||r(e))};var n="function"==typeof t&&"function"==typeof t.isBuffer,o="function"==typeof ArrayBuffer,r=function(e){return"function"==typeof ArrayBuffer.isView?ArrayBuffer.isView(e):e.buffer instanceof ArrayBuffer}}).call(this,n(73).Buffer)},function(e,t,n){var c=n(378),i=n(154),o=n(50),r=n(105),l=n(155),a=n(156),u=n(74)("socket.io-client:manager"),s=n(153),d=n(394),f=Object.prototype.hasOwnProperty;function p(e,t){if(!(this instanceof p))return new p(e,t);e&&"object"==typeof e&&(t=e,e=void 0),(t=t||{}).path=t.path||"/socket.io",this.nsps={},this.subs=[],this.opts=t,this.reconnection(!1!==t.reconnection),this.reconnectionAttempts(t.reconnectionAttempts||1/0),this.reconnectionDelay(t.reconnectionDelay||1e3),this.reconnectionDelayMax(t.reconnectionDelayMax||5e3),this.randomizationFactor(t.randomizationFactor||.5),this.backoff=new d({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(null==t.timeout?2e4:t.timeout),this.readyState="closed",this.uri=e,this.connecting=[],this.lastPing=null,this.encoding=!1,this.packetBuffer=[];e=t.parser||r;this.encoder=new e.Encoder,this.decoder=new e.Decoder,this.autoConnect=!1!==t.autoConnect,this.autoConnect&&this.open()}(e.exports=p).prototype.emitAll=function(){for(var e in this.emit.apply(this,arguments),this.nsps)f.call(this.nsps,e)&&this.nsps[e].emit.apply(this.nsps[e],arguments)},p.prototype.updateSocketIds=function(){for(var e in this.nsps)f.call(this.nsps,e)&&(this.nsps[e].id=this.generateId(e))},p.prototype.generateId=function(e){return("/"===e?"":e+"#")+this.engine.id},o(p.prototype),p.prototype.reconnection=function(e){return arguments.length?(this._reconnection=!!e,this):this._reconnection},p.prototype.reconnectionAttempts=function(e){return arguments.length?(this._reconnectionAttempts=e,this):this._reconnectionAttempts},p.prototype.reconnectionDelay=function(e){return arguments.length?(this._reconnectionDelay=e,this.backoff&&this.backoff.setMin(e),this):this._reconnectionDelay},p.prototype.randomizationFactor=function(e){return arguments.length?(this._randomizationFactor=e,this.backoff&&this.backoff.setJitter(e),this):this._randomizationFactor},p.prototype.reconnectionDelayMax=function(e){return arguments.length?(this._reconnectionDelayMax=e,this.backoff&&this.backoff.setMax(e),this):this._reconnectionDelayMax},p.prototype.timeout=function(e){return arguments.length?(this._timeout=e,this):this._timeout},p.prototype.maybeReconnectOnOpen=function(){!this.reconnecting&&this._reconnection&&0===this.backoff.attempts&&this.reconnect()},p.prototype.open=p.prototype.connect=function(n,e){if(u("readyState %s",this.readyState),~this.readyState.indexOf("open"))return this;u("opening %s",this.uri),this.engine=c(this.uri,this.opts);var t=this.engine,o=this;this.readyState="opening",this.skipReconnect=!1;var r,i,a=l(t,"open",function(){o.onopen(),n&&n()}),s=l(t,"error",function(e){var t;u("connect_error"),o.cleanup(),o.readyState="closed",o.emitAll("connect_error",e),n?((t=new Error("Connection error")).data=e,n(t)):o.maybeReconnectOnOpen()});return!1!==this._timeout&&(r=this._timeout,u("connect attempt will timeout after %d",r),i=setTimeout(function(){u("connect attempt timed out after %d",r),a.destroy(),t.close(),t.emit("error","timeout"),o.emitAll("connect_timeout",r)},r),this.subs.push({destroy:function(){clearTimeout(i)}})),this.subs.push(a),this.subs.push(s),this},p.prototype.onopen=function(){u("open"),this.cleanup(),this.readyState="open",this.emit("open");var e=this.engine;this.subs.push(l(e,"data",a(this,"ondata"))),this.subs.push(l(e,"ping",a(this,"onping"))),this.subs.push(l(e,"pong",a(this,"onpong"))),this.subs.push(l(e,"error",a(this,"onerror"))),this.subs.push(l(e,"close",a(this,"onclose"))),this.subs.push(l(this.decoder,"decoded",a(this,"ondecoded")))},p.prototype.onping=function(){this.lastPing=new Date,this.emitAll("ping")},p.prototype.onpong=function(){this.emitAll("pong",new Date-this.lastPing)},p.prototype.ondata=function(e){this.decoder.add(e)},p.prototype.ondecoded=function(e){this.emit("packet",e)},p.prototype.onerror=function(e){u("error",e),this.emitAll("error",e)},p.prototype.socket=function(e,t){var n,o=this.nsps[e];function r(){~s(n.connecting,o)||n.connecting.push(o)}return o||(o=new i(this,e,t),this.nsps[e]=o,n=this,o.on("connecting",r),o.on("connect",function(){o.id=n.generateId(e)}),this.autoConnect&&r()),o},p.prototype.destroy=function(e){e=s(this.connecting,e);~e&&this.connecting.splice(e,1),this.connecting.length||this.close()},p.prototype.packet=function(n){u("writing packet %j",n);var o=this;n.query&&0===n.type&&(n.nsp+="?"+n.query),o.encoding?o.packetBuffer.push(n):(o.encoding=!0,this.encoder.encode(n,function(e){for(var t=0;t<e.length;t++)o.engine.write(e[t],n.options);o.encoding=!1,o.processPacketQueue()}))},p.prototype.processPacketQueue=function(){var e;0<this.packetBuffer.length&&!this.encoding&&(e=this.packetBuffer.shift(),this.packet(e))},p.prototype.cleanup=function(){u("cleanup");for(var e=this.subs.length,t=0;t<e;t++)this.subs.shift().destroy();this.packetBuffer=[],this.encoding=!1,this.lastPing=null,this.decoder.destroy()},p.prototype.close=p.prototype.disconnect=function(){u("disconnect"),this.skipReconnect=!0,this.reconnecting=!1,"opening"===this.readyState&&this.cleanup(),this.backoff.reset(),this.readyState="closed",this.engine&&this.engine.close()},p.prototype.onclose=function(e){u("onclose"),this.cleanup(),this.backoff.reset(),this.readyState="closed",this.emit("close",e),this._reconnection&&!this.skipReconnect&&this.reconnect()},p.prototype.reconnect=function(){if(this.reconnecting||this.skipReconnect)return this;var e,t,n=this;this.backoff.attempts>=this._reconnectionAttempts?(u("reconnect failed"),this.backoff.reset(),this.emitAll("reconnect_failed"),this.reconnecting=!1):(e=this.backoff.duration(),u("will wait %dms before reconnect attempt",e),this.reconnecting=!0,t=setTimeout(function(){n.skipReconnect||(u("attempting reconnect"),n.emitAll("reconnect_attempt",n.backoff.attempts),n.emitAll("reconnecting",n.backoff.attempts),n.skipReconnect||n.open(function(e){e?(u("reconnect attempt error"),n.reconnecting=!1,n.reconnect(),n.emitAll("reconnect_error",e.data)):(u("reconnect success"),n.onreconnect())}))},e),this.subs.push({destroy:function(){clearTimeout(t)}}))},p.prototype.onreconnect=function(){var e=this.backoff.attempts;this.reconnecting=!1,this.backoff.reset(),this.updateSocketIds(),this.emitAll("reconnect",e)}},function(e,t,n){var a=n(106),s=n(381),c=n(390),n=n(391);t.polling=function(e){var t,n,o=!1,r=!1,i=!1!==e.jsonp;if("undefined"!=typeof location&&(t="https:"===location.protocol,n=(n=location.port)||(t?443:80),o=e.hostname!==location.hostname||n!==e.port,r=e.secure!==t),e.xdomain=o,e.xscheme=r,"open"in new a(e)&&!e.forceJSONP)return new s(e);if(!i)throw new Error("JSONP disabled");return new c(e)},t.websocket=n},function(e,t,n){var o=n(107),r=n(75),i=n(51),a=n(76),s=n(152),c=n(77)("engine.io-client:polling");e.exports=u;var l=null!=new(n(106))({xdomain:!1}).responseType;function u(e){var t=e&&e.forceBase64;l&&!t||(this.supportsBinary=!1),o.call(this,e)}a(u,o),u.prototype.name="polling",u.prototype.doOpen=function(){this.poll()},u.prototype.pause=function(e){var t,n=this;function o(){c("paused"),n.readyState="paused",e()}this.readyState="pausing",this.polling||!this.writable?(t=0,this.polling&&(c("we are currently polling - waiting to pause"),t++,this.once("pollComplete",function(){c("pre-pause polling complete"),--t||o()})),this.writable||(c("we are currently writing - waiting to pause"),t++,this.once("drain",function(){c("pre-pause writing complete"),--t||o()}))):o()},u.prototype.poll=function(){c("polling"),this.polling=!0,this.doPoll(),this.emit("poll")},u.prototype.onData=function(e){var o=this;c("polling got data %s",e),i.decodePayload(e,this.socket.binaryType,function(e,t,n){return"opening"===o.readyState&&o.onOpen(),"close"===e.type?(o.onClose(),!1):void o.onPacket(e)}),"closed"!==this.readyState&&(this.polling=!1,this.emit("pollComplete"),"open"===this.readyState?this.poll():c('ignoring poll - transport state "%s"',this.readyState))},u.prototype.doClose=function(){var e=this;function t(){c("writing close packet"),e.write([{type:"close"}])}"open"===this.readyState?(c("transport open - closing"),t()):(c("transport not open - deferring close"),this.once("open",t))},u.prototype.write=function(e){var t=this;this.writable=!1;function n(){t.writable=!0,t.emit("drain")}i.encodePayload(e,this.supportsBinary,function(e){t.doWrite(e,n)})},u.prototype.uri=function(){var e=this.query||{},t=this.secure?"https":"http",n="";return!1!==this.timestampRequests&&(e[this.timestampParam]=s()),this.supportsBinary||e.sid||(e.b64=1),e=r.encode(e),this.port&&("https"==t&&443!==Number(this.port)||"http"==t&&80!==Number(this.port))&&(n=":"+this.port),e.length&&(e="?"+e),t+"://"+(-1!==this.hostname.indexOf(":")?"["+this.hostname+"]":this.hostname)+n+this.path+e}},function(t,e,n){(function(i){var a=n(383),e=Object.prototype.toString,s="function"==typeof Blob||"undefined"!=typeof Blob&&"[object BlobConstructor]"===e.call(Blob),c="function"==typeof File||"undefined"!=typeof File&&"[object FileConstructor]"===e.call(File);t.exports=function e(t){if(!t||"object"!=typeof t)return!1;if(a(t)){for(var n=0,o=t.length;n<o;n++)if(e(t[n]))return!0;return!1}if("function"==typeof i&&i.isBuffer&&i.isBuffer(t)||"function"==typeof ArrayBuffer&&t instanceof ArrayBuffer||s&&t instanceof Blob||c&&t instanceof File)return!0;if(t.toJSON&&"function"==typeof t.toJSON&&1===arguments.length)return e(t.toJSON(),!0);for(var r in t)if(Object.prototype.hasOwnProperty.call(t,r)&&e(t[r]))return!0;return!1}}).call(this,n(73).Buffer)},function(e,t,n){"use strict";var o,r="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_".split(""),i=64,a={},s=0,c=0;function l(e){for(var t="";t=r[e%i]+t,e=Math.floor(e/i),0<e;);return t}function u(){var e=l(+new Date);return e!==o?(s=0,o=e):e+"."+l(s++)}for(;c<i;c++)a[r[c]]=c;u.encode=l,u.decode=function(e){var t=0;for(c=0;c<e.length;c++)t=t*i+a[e.charAt(c)];return t},e.exports=u},function(e,t){var o=[].indexOf;e.exports=function(e,t){if(o)return e.indexOf(t);for(var n=0;n<e.length;++n)if(e[n]===t)return n;return-1}},function(e,t,n){var r=n(105),o=n(50),i=n(393),a=n(155),s=n(156),c=n(74)("socket.io-client:socket"),l=n(75),u=n(151);e.exports=p;var d={connect:1,connect_error:1,connect_timeout:1,connecting:1,disconnect:1,error:1,reconnect:1,reconnect_attempt:1,reconnect_failed:1,reconnect_error:1,reconnecting:1,ping:1,pong:1},f=o.prototype.emit;function p(e,t,n){this.io=e,this.nsp=t,(this.json=this).ids=0,this.acks={},this.receiveBuffer=[],this.sendBuffer=[],this.connected=!1,this.disconnected=!0,this.flags={},n&&n.query&&(this.query=n.query),this.io.autoConnect&&this.open()}o(p.prototype),p.prototype.subEvents=function(){var e;this.subs||(e=this.io,this.subs=[a(e,"open",s(this,"onopen")),a(e,"packet",s(this,"onpacket")),a(e,"close",s(this,"onclose"))])},p.prototype.open=p.prototype.connect=function(){return this.connected||(this.subEvents(),this.io.open(),"open"===this.io.readyState&&this.onopen(),this.emit("connecting")),this},p.prototype.send=function(){var e=i(arguments);return e.unshift("message"),this.emit.apply(this,e),this},p.prototype.emit=function(e){if(d.hasOwnProperty(e))return f.apply(this,arguments),this;var t=i(arguments),n={type:(void 0!==this.flags.binary?this.flags.binary:u(t))?r.BINARY_EVENT:r.EVENT,data:t,options:{}};return n.options.compress=!this.flags||!1!==this.flags.compress,"function"==typeof t[t.length-1]&&(c("emitting packet with ack id %d",this.ids),this.acks[this.ids]=t.pop(),n.id=this.ids++),this.connected?this.packet(n):this.sendBuffer.push(n),this.flags={},this},p.prototype.packet=function(e){e.nsp=this.nsp,this.io.packet(e)},p.prototype.onopen=function(){var e;c("transport is open - connecting"),"/"!==this.nsp&&(this.query?(e="object"==typeof this.query?l.encode(this.query):this.query,c("sending connect packet with query %s",e),this.packet({type:r.CONNECT,query:e})):this.packet({type:r.CONNECT}))},p.prototype.onclose=function(e){c("close (%s)",e),this.connected=!1,this.disconnected=!0,delete this.id,this.emit("disconnect",e)},p.prototype.onpacket=function(e){var t=e.nsp===this.nsp,n=e.type===r.ERROR&&"/"===e.nsp;if(t||n)switch(e.type){case r.CONNECT:this.onconnect();break;case r.EVENT:case r.BINARY_EVENT:this.onevent(e);break;case r.ACK:case r.BINARY_ACK:this.onack(e);break;case r.DISCONNECT:this.ondisconnect();break;case r.ERROR:this.emit("error",e.data)}},p.prototype.onevent=function(e){var t=e.data||[];c("emitting event %j",t),null!=e.id&&(c("attaching ack callback to event"),t.push(this.ack(e.id))),this.connected?f.apply(this,t):this.receiveBuffer.push(t)},p.prototype.ack=function(t){var n=this,o=!1;return function(){var e;o||(o=!0,e=i(arguments),c("sending ack %j",e),n.packet({type:u(e)?r.BINARY_ACK:r.ACK,id:t,data:e}))}},p.prototype.onack=function(e){var t=this.acks[e.id];"function"==typeof t?(c("calling ack %s with %j",e.id,e.data),t.apply(this,e.data),delete this.acks[e.id]):c("bad ack %s",e.id)},p.prototype.onconnect=function(){this.connected=!0,this.disconnected=!1,this.emit("connect"),this.emitBuffered()},p.prototype.emitBuffered=function(){for(var e=0;e<this.receiveBuffer.length;e++)f.apply(this,this.receiveBuffer[e]);for(this.receiveBuffer=[],e=0;e<this.sendBuffer.length;e++)this.packet(this.sendBuffer[e]);this.sendBuffer=[]},p.prototype.ondisconnect=function(){c("server disconnect (%s)",this.nsp),this.destroy(),this.onclose("io server disconnect")},p.prototype.destroy=function(){if(this.subs){for(var e=0;e<this.subs.length;e++)this.subs[e].destroy();this.subs=null}this.io.destroy(this)},p.prototype.close=p.prototype.disconnect=function(){return this.connected&&(c("performing disconnect (%s)",this.nsp),this.packet({type:r.DISCONNECT})),this.destroy(),this.connected&&this.onclose("io client disconnect"),this},p.prototype.compress=function(e){return this.flags.compress=e,this},p.prototype.binary=function(e){return this.flags.binary=e,this}},function(e,t){e.exports=function(e,t,n){return e.on(t,n),{destroy:function(){e.removeListener(t,n)}}}},function(e,t){var o=[].slice;e.exports=function(e,t){if("string"==typeof t&&(t=e[t]),"function"!=typeof t)throw new Error("bind() requires a function");var n=o.call(arguments,2);return function(){return t.apply(e,n.concat(o.call(arguments)))}}},function(e,t,n){var o;!function(){"use strict";var i={}.hasOwnProperty;function a(){for(var e=[],t=0;t<arguments.length;t++){var n=arguments[t];if(n){var o=typeof n;if("string"==o||"number"==o)e.push(this&&this[n]||n);else if(Array.isArray(n))e.push(a.apply(this,n));else if("object"==o)for(var r in n)i.call(n,r)&&n[r]&&e.push(this&&this[r]||r)}}return e.join(" ")}e.exports?(a.default=a,e.exports=a):void 0===(o=function(){return a}.apply(t,[]))||(e.exports=o)}()},function(e,t,n){var o=n(366);"string"==typeof o&&(o=[[e.i,o,""]]);n(368)(o,{hmr:!0,transform:void 0,insertInto:void 0}),o.locals&&(e.exports=o.locals)},function(e,t,n){var o,r;function i(e){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}r=function(){function e(){}function s(e,t){return this.identifier=t.identifier,this.position=t.position,this.frontPosition=t.frontPosition,this.collection=e,this.defaults={size:100,threshold:.1,color:"white",fadeTime:250,dataOnly:!1,restJoystick:!0,restOpacity:.5,mode:"dynamic",zone:document.body,lockX:!1,lockY:!1},this.config(t),"dynamic"===this.options.mode&&(this.options.restOpacity=0),this.id=s.id,s.id+=1,this.buildEl().stylize(),this.instance={el:this.ui.el,on:this.on.bind(this),off:this.off.bind(this),show:this.show.bind(this),hide:this.hide.bind(this),add:this.addToDom.bind(this),remove:this.removeFromDom.bind(this),destroy:this.destroy.bind(this),resetDirection:this.resetDirection.bind(this),computeDirection:this.computeDirection.bind(this),trigger:this.trigger.bind(this),position:this.position,frontPosition:this.frontPosition,ui:this.ui,identifier:this.identifier,id:this.id,options:this.options},this.instance}function o(e,t){var n=this;return n.nipples=[],n.idles=[],n.actives=[],n.ids=[],n.pressureIntervals={},n.manager=e,n.id=o.id,o.id+=1,n.defaults={zone:document.body,multitouch:!1,maxNumberOfNipples:10,mode:"dynamic",position:{top:0,left:0},catchDistance:200,size:100,threshold:.1,color:"white",fadeTime:250,dataOnly:!1,restJoystick:!0,restOpacity:.5,lockX:!1,lockY:!1},n.config(t),"static"!==n.options.mode&&"semi"!==n.options.mode||(n.options.multitouch=!1),n.options.multitouch||(n.options.maxNumberOfNipples=1),n.updateBox(),n.prepareNipples(),n.bindings(),n.begin(),n.nipples}function t(e){var t,o=this;return o.ids={},o.index=0,o.collections=[],o.config(e),o.prepareCollections(),u.bindEvt(window,"resize",function(e){clearTimeout(t),t=setTimeout(function(){var t,n=u.getScroll();o.collections.forEach(function(e){e.forEach(function(e){t=e.el.getBoundingClientRect(),e.position={x:n.x+t.left,y:n.y+t.top}})})},100)}),o.collections}var r,n=!!("ontouchstart"in window),i=!!window.PointerEvent,a=!!window.MSPointerEvent,c={start:"mousedown",move:"mousemove",end:"mouseup"},l={};i?r={start:"pointerdown",move:"pointermove",end:"pointerup, pointercancel"}:a?r={start:"MSPointerDown",move:"MSPointerMove",end:"MSPointerUp"}:n?(r={start:"touchstart",move:"touchmove",end:"touchend, touchcancel"},l=c):r=c;var u={distance:function(e,t){var n=t.x-e.x,e=t.y-e.y;return Math.sqrt(n*n+e*e)},angle:function(e,t){var n=t.x-e.x,e=t.y-e.y;return u.degrees(Math.atan2(e,n))},findCoord:function(e,t,n){var o={x:0,y:0};return n=u.radians(n),o.x=e.x-t*Math.cos(n),o.y=e.y-t*Math.sin(n),o},radians:function(e){return e*(Math.PI/180)},degrees:function(e){return e*(180/Math.PI)},bindEvt:function(e,t,n){for(var o,r=t.split(/[ ,]+/g),i=0;i<r.length;i+=1)o=r[i],e.addEventListener?e.addEventListener(o,n,!1):e.attachEvent&&e.attachEvent(o,n)},unbindEvt:function(e,t,n){for(var o,r=t.split(/[ ,]+/g),i=0;i<r.length;i+=1)o=r[i],e.removeEventListener?e.removeEventListener(o,n):e.detachEvent&&e.detachEvent(o,n)},trigger:function(e,t,n){n=new CustomEvent(t,n);e.dispatchEvent(n)},prepareEvent:function(e){return e.preventDefault(),e.type.match(/^touch/)?e.changedTouches:e},getScroll:function(){return{x:void 0!==window.pageXOffset?window.pageXOffset:(document.documentElement||document.body.parentNode||document.body).scrollLeft,y:void 0!==window.pageYOffset?window.pageYOffset:(document.documentElement||document.body.parentNode||document.body).scrollTop}},applyPosition:function(e,t){t.top||t.right||t.bottom||t.left?(e.style.top=t.top,e.style.right=t.right,e.style.bottom=t.bottom,e.style.left=t.left):(e.style.left=t.x+"px",e.style.top=t.y+"px")},getTransitionStyle:function(e,t,n){var o,r=u.configStylePropertyObject(e);for(o in r)if(r.hasOwnProperty(o))if("string"==typeof t)r[o]=t+" "+n;else{for(var i="",a=0,s=t.length;a<s;a+=1)i+=t[a]+" "+n+", ";r[o]=i.slice(0,-2)}return r},getVendorStyle:function(e,t){var n,o=u.configStylePropertyObject(e);for(n in o)o.hasOwnProperty(n)&&(o[n]=t);return o},configStylePropertyObject:function(t){var n={};return n[t]="",["webkit","Moz","o"].forEach(function(e){n[e+t.charAt(0).toUpperCase()+t.slice(1)]=""}),n},extend:function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return e},safeExtend:function(e,t){var n,o={};for(n in e)e.hasOwnProperty(n)&&t.hasOwnProperty(n)?o[n]=t[n]:e.hasOwnProperty(n)&&(o[n]=e[n]);return o},map:function(e,t){if(e.length)for(var n=0,o=e.length;n<o;n+=1)t(e[n]);else t(e)}};e.prototype.on=function(e,t){var n,o=e.split(/[ ,]+/g);this._handlers_=this._handlers_||{};for(var r=0;r<o.length;r+=1)n=o[r],this._handlers_[n]=this._handlers_[n]||[],this._handlers_[n].push(t);return this},e.prototype.off=function(e,t){return this._handlers_=this._handlers_||{},void 0===e?this._handlers_={}:void 0===t?this._handlers_[e]=null:this._handlers_[e]&&0<=this._handlers_[e].indexOf(t)&&this._handlers_[e].splice(this._handlers_[e].indexOf(t),1),this},e.prototype.trigger=function(e,t){var n,o=this,r=e.split(/[ ,]+/g);o._handlers_=o._handlers_||{};for(var i=0;i<r.length;i+=1)n=r[i],o._handlers_[n]&&o._handlers_[n].length&&o._handlers_[n].forEach(function(e){e.call(o,{type:n,target:o},t)})},e.prototype.config=function(e){this.options=this.defaults||{},e&&(this.options=u.safeExtend(this.options,e))},e.prototype.bindEvt=function(e,t){var n=this;return n._domHandlers_=n._domHandlers_||{},n._domHandlers_[t]=function(){"function"==typeof n["on"+t]?n["on"+t].apply(n,arguments):console.warn('[WARNING] : Missing "on'+t+'" handler.')},u.bindEvt(e,r[t],n._domHandlers_[t]),l[t]&&u.bindEvt(e,l[t],n._domHandlers_[t]),n},e.prototype.unbindEvt=function(e,t){return this._domHandlers_=this._domHandlers_||{},u.unbindEvt(e,r[t],this._domHandlers_[t]),l[t]&&u.unbindEvt(e,l[t],this._domHandlers_[t]),delete this._domHandlers_[t],this},s.prototype=new e,(s.constructor=s).id=0,s.prototype.buildEl=function(e){return this.ui={},this.options.dataOnly||(this.ui.el=document.createElement("div"),this.ui.back=document.createElement("div"),this.ui.front=document.createElement("div"),this.ui.el.className="nipple collection_"+this.collection.id,this.ui.back.className="back",this.ui.front.className="front",this.ui.el.setAttribute("id","nipple_"+this.collection.id+"_"+this.id),this.ui.el.appendChild(this.ui.back),this.ui.el.appendChild(this.ui.front)),this},s.prototype.stylize=function(){if(this.options.dataOnly)return this;var e=this.options.fadeTime+"ms",t=u.getVendorStyle("borderRadius","50%"),n=u.getTransitionStyle("transition","opacity",e),e={};return e.el={position:"absolute",opacity:this.options.restOpacity,display:"block",zIndex:999},e.back={position:"absolute",display:"block",width:this.options.size+"px",height:this.options.size+"px",marginLeft:-this.options.size/2+"px",marginTop:-this.options.size/2+"px",background:this.options.color,opacity:".5"},e.front={width:this.options.size/2+"px",height:this.options.size/2+"px",position:"absolute",display:"block",marginLeft:-this.options.size/4+"px",marginTop:-this.options.size/4+"px",background:this.options.color,opacity:".5"},u.extend(e.el,n),u.extend(e.back,t),u.extend(e.front,t),this.applyStyles(e),this},s.prototype.applyStyles=function(e){for(var t in this.ui)if(this.ui.hasOwnProperty(t))for(var n in e[t])this.ui[t].style[n]=e[t][n];return this},s.prototype.addToDom=function(){return this.options.dataOnly||document.body.contains(this.ui.el)||this.options.zone.appendChild(this.ui.el),this},s.prototype.removeFromDom=function(){return this.options.dataOnly||!document.body.contains(this.ui.el)||this.options.zone.removeChild(this.ui.el),this},s.prototype.destroy=function(){clearTimeout(this.removeTimeout),clearTimeout(this.showTimeout),clearTimeout(this.restTimeout),this.trigger("destroyed",this.instance),this.removeFromDom(),this.off()},s.prototype.show=function(e){var t=this;return t.options.dataOnly||(clearTimeout(t.removeTimeout),clearTimeout(t.showTimeout),clearTimeout(t.restTimeout),t.addToDom(),t.restCallback(),setTimeout(function(){t.ui.el.style.opacity=1},0),t.showTimeout=setTimeout(function(){t.trigger("shown",t.instance),"function"==typeof e&&e.call(this)},t.options.fadeTime)),t},s.prototype.hide=function(t){var n=this;return n.options.dataOnly||(n.ui.el.style.opacity=n.options.restOpacity,clearTimeout(n.removeTimeout),clearTimeout(n.showTimeout),clearTimeout(n.restTimeout),n.removeTimeout=setTimeout(function(){var e="dynamic"===n.options.mode?"none":"block";n.ui.el.style.display=e,"function"==typeof t&&t.call(n),n.trigger("hidden",n.instance)},n.options.fadeTime),n.options.restJoystick&&n.restPosition()),n},s.prototype.restPosition=function(e){var t=this;t.frontPosition={x:0,y:0};var n=t.options.fadeTime+"ms",o={};o.front=u.getTransitionStyle("transition",["top","left"],n);n={front:{}};n.front={left:t.frontPosition.x+"px",top:t.frontPosition.y+"px"},t.applyStyles(o),t.applyStyles(n),t.restTimeout=setTimeout(function(){"function"==typeof e&&e.call(t),t.restCallback()},t.options.fadeTime)},s.prototype.restCallback=function(){var e={};e.front=u.getTransitionStyle("transition","none",""),this.applyStyles(e),this.trigger("rested",this.instance)},s.prototype.resetDirection=function(){this.direction={x:!1,y:!1,angle:!1}},s.prototype.computeDirection=function(e){var t,n,o,r=e.angle.radian,i=Math.PI/4,a=Math.PI/2;if(i<r&&r<3*i&&!e.lockX?t="up":-i<r&&r<=i&&!e.lockY?t="left":3*-i<r&&r<=-i&&!e.lockX?t="down":e.lockY||(t="right"),e.lockY||(n=-a<r&&r<a?"left":"right"),e.lockX||(o=0<r?"up":"down"),e.force>this.options.threshold){var s={};for(c in this.direction)this.direction.hasOwnProperty(c)&&(s[c]=this.direction[c]);var c,l={};for(c in this.direction={x:n,y:o,angle:t},e.direction=this.direction,s)s[c]===this.direction[c]&&(l[c]=!0);if(l.x&&l.y&&l.angle)return e;l.x&&l.y||this.trigger("plain",e),l.x||this.trigger("plain:"+n,e),l.y||this.trigger("plain:"+o,e),l.angle||this.trigger("dir dir:"+t,e)}return e},o.prototype=new e,(o.constructor=o).id=0,o.prototype.prepareNipples=function(){var e=this,o=e.nipples;o.on=e.on.bind(e),o.off=e.off.bind(e),o.options=e.options,o.destroy=e.destroy.bind(e),o.ids=e.ids,o.id=e.id,o.processOnMove=e.processOnMove.bind(e),o.processOnEnd=e.processOnEnd.bind(e),o.get=function(e){if(void 0===e)return o[0];for(var t=0,n=o.length;t<n;t+=1)if(o[t].identifier===e)return o[t];return!1}},o.prototype.bindings=function(){this.bindEvt(this.options.zone,"start"),this.options.zone.style.touchAction="none",this.options.zone.style.msTouchAction="none"},o.prototype.begin=function(){var e=this.options;"static"===e.mode&&((e=this.createNipple(e.position,this.manager.getIdentifier())).add(),this.idles.push(e))},o.prototype.createNipple=function(e,t){var n,o,r=u.getScroll(),i={},a=this.options;e.x&&e.y?i={x:e.x-(r.x+this.box.left),y:e.y-(r.y+this.box.top)}:(e.top||e.right||e.bottom||e.left)&&((n=document.createElement("DIV")).style.display="hidden",n.style.top=e.top,n.style.right=e.right,n.style.bottom=e.bottom,n.style.left=e.left,n.style.position="absolute",a.zone.appendChild(n),o=n.getBoundingClientRect(),a.zone.removeChild(n),i=e,e={x:o.left+r.x,y:o.top+r.y});e=new s(this,{color:a.color,size:a.size,threshold:a.threshold,fadeTime:a.fadeTime,dataOnly:a.dataOnly,restJoystick:a.restJoystick,restOpacity:a.restOpacity,mode:a.mode,identifier:t,position:e,zone:a.zone,frontPosition:{x:0,y:0}});return a.dataOnly||(u.applyPosition(e.ui.el,i),u.applyPosition(e.ui.front,e.frontPosition)),this.nipples.push(e),this.trigger("added "+e.identifier+":added",e),this.manager.trigger("added "+e.identifier+":added",e),this.bindNipple(e),e},o.prototype.updateBox=function(){this.box=this.options.zone.getBoundingClientRect()},o.prototype.bindNipple=function(e){function t(e,t){n=e.type+" "+t.id+":"+e.type,o.trigger(n,t)}var n,o=this;e.on("destroyed",o.onDestroyed.bind(o)),e.on("shown hidden rested dir plain",t),e.on("dir:up dir:right dir:down dir:left",t),e.on("plain:up plain:right plain:down plain:left",t)},o.prototype.pressureFn=function(t,n,e){var o=this,r=0;clearInterval(o.pressureIntervals[e]),o.pressureIntervals[e]=setInterval(function(){var e=t.force||t.pressure||t.webkitForce||0;e!==r&&(n.trigger("pressure",e),o.trigger("pressure "+n.identifier+":pressure",e),r=e)}.bind(o),100)},o.prototype.onstart=function(e){var t=this,n=t.options;return e=u.prepareEvent(e),t.updateBox(),u.map(e,function(e){t.actives.length<n.maxNumberOfNipples&&t.processOnStart(e)}),t.manager.bindDocument(),!1},o.prototype.processOnStart=function(t){var n=this,e=n.options,o=n.manager.getIdentifier(t),r=t.force||t.pressure||t.webkitForce||0,i={x:t.pageX,y:t.pageY},a=n.getOrCreate(o,i);a.identifier!==o&&n.manager.removeIdentifier(a.identifier),a.identifier=o;function s(e){e.trigger("start",e),n.trigger("start "+e.id+":start",e),e.show(),0<r&&n.pressureFn(t,e,e.identifier),n.processOnMove(t)}if(0<=(o=n.idles.indexOf(a))&&n.idles.splice(o,1),n.actives.push(a),n.ids.push(a.identifier),"semi"!==e.mode)s(a);else{if(!(u.distance(i,a.position)<=e.catchDistance))return a.destroy(),void n.processOnStart(t);s(a)}return a},o.prototype.getOrCreate=function(e,t){var n,o=this.options;return/(semi|static)/.test(o.mode)?(n=this.idles[0])?(this.idles.splice(0,1),n):"semi"===o.mode?this.createNipple(t,e):(console.warn("Coudln't find the needed nipple."),!1):n=this.createNipple(t,e)},o.prototype.processOnMove=function(e){var t=this.options,n=this.manager.getIdentifier(e),o=this.nipples.get(n);if(!o)return console.error("Found zombie joystick with ID "+n),void this.manager.removeIdentifier(n);o.identifier=n;var r=o.options.size/2,i={x:e.pageX,y:e.pageY},a=u.distance(i,o.position),s=u.angle(i,o.position),c=u.radians(s),l=a/r;r<a&&(a=r,i=u.findCoord(o.position,a,s));n=i.x-o.position.x,r=i.y-o.position.y;t.lockX&&(r=0),t.lockY&&(n=0),o.frontPosition={x:n,y:r},t.dataOnly||u.applyPosition(o.ui.front,o.frontPosition);t={identifier:o.identifier,position:i,force:l,pressure:e.force||e.pressure||e.webkitForce||0,distance:a,angle:{radian:c,degree:s},instance:o,lockX:t.lockX,lockY:t.lockY};(t=o.computeDirection(t)).angle={radian:u.radians(180-s),degree:180-s},o.trigger("move",t),this.trigger("move "+o.id+":move",t)},o.prototype.processOnEnd=function(e){var t=this,n=t.options,e=t.manager.getIdentifier(e),o=t.nipples.get(e),e=t.manager.removeIdentifier(o.identifier);o&&(n.dataOnly||o.hide(function(){"dynamic"===n.mode&&(o.trigger("removed",o),t.trigger("removed "+o.id+":removed",o),t.manager.trigger("removed "+o.id+":removed",o),o.destroy())}),clearInterval(t.pressureIntervals[o.identifier]),o.resetDirection(),o.trigger("end",o),t.trigger("end "+o.id+":end",o),0<=t.ids.indexOf(o.identifier)&&t.ids.splice(t.ids.indexOf(o.identifier),1),0<=t.actives.indexOf(o)&&t.actives.splice(t.actives.indexOf(o),1),/(semi|static)/.test(n.mode)?t.idles.push(o):0<=t.nipples.indexOf(o)&&t.nipples.splice(t.nipples.indexOf(o),1),t.manager.unbindDocument(),/(semi|static)/.test(n.mode)&&(t.manager.ids[e.id]=e.identifier))},o.prototype.onDestroyed=function(e,t){var n=this;0<=n.nipples.indexOf(t)&&n.nipples.splice(n.nipples.indexOf(t),1),0<=n.actives.indexOf(t)&&n.actives.splice(n.actives.indexOf(t),1),0<=n.idles.indexOf(t)&&n.idles.splice(n.idles.indexOf(t),1),0<=n.ids.indexOf(t.identifier)&&n.ids.splice(n.ids.indexOf(t.identifier),1),n.manager.removeIdentifier(t.identifier),n.manager.unbindDocument()},o.prototype.destroy=function(){var e,t=this;for(e in t.unbindEvt(t.options.zone,"start"),t.nipples.forEach(function(e){e.destroy()}),t.pressureIntervals)t.pressureIntervals.hasOwnProperty(e)&&clearInterval(t.pressureIntervals[e]);t.trigger("destroyed",t.nipples),t.manager.unbindDocument(),t.off()},t.prototype=new e,(t.constructor=t).prototype.prepareCollections=function(){var e=this;e.collections.create=e.create.bind(e),e.collections.on=e.on.bind(e),e.collections.off=e.off.bind(e),e.collections.destroy=e.destroy.bind(e),e.collections.get=function(t){var n;return e.collections.every(function(e){return!(n=e.get(t))}),n}},t.prototype.create=function(e){return this.createCollection(e)},t.prototype.createCollection=function(e){e=new o(this,e);return this.bindCollection(e),this.collections.push(e),e},t.prototype.bindCollection=function(e){function t(e,t){n=e.type+" "+t.id+":"+e.type,o.trigger(n,t)}var n,o=this;e.on("destroyed",o.onDestroyed.bind(o)),e.on("shown hidden rested dir plain",t),e.on("dir:up dir:right dir:down dir:left",t),e.on("plain:up plain:right plain:down plain:left",t)},t.prototype.bindDocument=function(){this.binded||(this.bindEvt(document,"move").bindEvt(document,"end"),this.binded=!0)},t.prototype.unbindDocument=function(e){Object.keys(this.ids).length&&!0!==e||(this.unbindEvt(document,"move").unbindEvt(document,"end"),this.binded=!1)},t.prototype.getIdentifier=function(e){var t;return e?void 0===(t=void 0===e.identifier?e.pointerId:e.identifier)&&(t=this.latest||0):t=this.index,void 0===this.ids[t]&&(this.ids[t]=this.index,this.index+=1),this.latest=t,this.ids[t]},t.prototype.removeIdentifier=function(e){var t,n={};for(t in this.ids)if(this.ids[t]===e){n.id=t,n.identifier=this.ids[t],delete this.ids[t];break}return n},t.prototype.onmove=function(e){return this.onAny("move",e),!1},t.prototype.onend=function(e){return this.onAny("end",e),!1},t.prototype.oncancel=function(e){return this.onAny("end",e),!1},t.prototype.onAny=function(e,t){var n,o=this,r="processOn"+e.charAt(0).toUpperCase()+e.slice(1);t=u.prepareEvent(t);return u.map(t,function(e){n=o.getIdentifier(e),u.map(o.collections,function(e,t,n){0<=n.ids.indexOf(t)&&(n[r](e),e._found_=!0)}.bind(null,e,n)),e._found_||o.removeIdentifier(n)}),!1},t.prototype.destroy=function(){this.unbindDocument(!0),this.ids={},this.index=0,this.collections.forEach(function(e){e.destroy()}),this.off()},t.prototype.onDestroyed=function(e,t){if(this.collections.indexOf(t)<0)return!1;this.collections.splice(this.collections.indexOf(t),1)};var d=new t;return{create:function(e){return d.create(e)},factory:d}},"object"==i(t)&&void 0!==e?e.exports=r():(o=[],void 0===(r="function"==typeof(r=r)?r.apply(t,o):r)||(e.exports=r))},function(e,t,S){(function(b,y,w){var x;function _(e){return(_="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}!function(){"use strict";var l="input is invalid type",e=(i="object"===("undefined"==typeof window?"undefined":_(window)))?window:{};e.JS_MD5_NO_WINDOW&&(i=!1);var t=!i&&"object"===("undefined"==typeof self?"undefined":_(self)),o=!e.JS_MD5_NO_NODE_JS&&"object"===(void 0===b?"undefined":_(b))&&b.versions&&b.versions.node;o?e=y:t&&(e=self);var n,r=!e.JS_MD5_NO_COMMON_JS&&"object"===_(w)&&w.exports,i=S(144),u=!e.JS_MD5_NO_ARRAY_BUFFER&&"undefined"!=typeof ArrayBuffer,a="0123456789abcdef".split(""),s=[128,32768,8388608,-2147483648],d=[0,8,16,24],c=["hex","array","digest","buffer","arrayBuffer","base64"],f="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""),p=[];function h(t){return function(e){return new g(!0).update(e)[t]()}}u&&(t=new ArrayBuffer(68),n=new Uint8Array(t),p=new Uint32Array(t)),!e.JS_MD5_NO_NODE_JS&&Array.isArray||(Array.isArray=function(e){return"[object Array]"===Object.prototype.toString.call(e)}),!u||!e.JS_MD5_NO_ARRAY_BUFFER_IS_VIEW&&ArrayBuffer.isView||(ArrayBuffer.isView=function(e){return"object"===_(e)&&e.buffer&&e.buffer.constructor===ArrayBuffer});var m=function(t){var n=require("crypto"),o=require("buffer").Buffer;return function(e){if("string"==typeof e)return n.createHash("md5").update(e,"utf8").digest("hex");if(null==e)throw l;return e.constructor===ArrayBuffer&&(e=new Uint8Array(e)),Array.isArray(e)||ArrayBuffer.isView(e)||e.constructor===o?n.createHash("md5").update(new o(e)).digest("hex"):t(e)}};function g(e){e?(p[0]=p[16]=p[1]=p[2]=p[3]=p[4]=p[5]=p[6]=p[7]=p[8]=p[9]=p[10]=p[11]=p[12]=p[13]=p[14]=p[15]=0,this.blocks=p,this.buffer8=n):u?(e=new ArrayBuffer(68),this.buffer8=new Uint8Array(e),this.blocks=new Uint32Array(e)):this.blocks=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.h0=this.h1=this.h2=this.h3=this.start=this.bytes=this.hBytes=0,this.finalized=this.hashed=!1,this.first=!0}g.prototype.update=function(e){if(!this.finalized){var t,n=_(e);if("string"!==n){if("object"!==n)throw l;if(null===e)throw l;if(u&&e.constructor===ArrayBuffer)e=new Uint8Array(e);else if(!(Array.isArray(e)||u&&ArrayBuffer.isView(e)))throw l;t=!0}for(var o,r,i=0,a=e.length,s=this.blocks,c=this.buffer8;i<a;){if(this.hashed&&(this.hashed=!1,s[0]=s[16],s[16]=s[1]=s[2]=s[3]=s[4]=s[5]=s[6]=s[7]=s[8]=s[9]=s[10]=s[11]=s[12]=s[13]=s[14]=s[15]=0),t)if(u)for(r=this.start;i<a&&r<64;++i)c[r++]=e[i];else for(r=this.start;i<a&&r<64;++i)s[r>>2]|=e[i]<<d[3&r++];else if(u)for(r=this.start;i<a&&r<64;++i)(o=e.charCodeAt(i))<128?c[r++]=o:(o<2048?c[r++]=192|o>>6:(o<55296||57344<=o?c[r++]=224|o>>12:(o=65536+((1023&o)<<10|1023&e.charCodeAt(++i)),c[r++]=240|o>>18,c[r++]=128|o>>12&63),c[r++]=128|o>>6&63),c[r++]=128|63&o);else for(r=this.start;i<a&&r<64;++i)(o=e.charCodeAt(i))<128?s[r>>2]|=o<<d[3&r++]:(o<2048?s[r>>2]|=(192|o>>6)<<d[3&r++]:(o<55296||57344<=o?s[r>>2]|=(224|o>>12)<<d[3&r++]:(o=65536+((1023&o)<<10|1023&e.charCodeAt(++i)),s[r>>2]|=(240|o>>18)<<d[3&r++],s[r>>2]|=(128|o>>12&63)<<d[3&r++]),s[r>>2]|=(128|o>>6&63)<<d[3&r++]),s[r>>2]|=(128|63&o)<<d[3&r++]);this.lastByteIndex=r,this.bytes+=r-this.start,64<=r?(this.start=r-64,this.hash(),this.hashed=!0):this.start=r}return 4294967295<this.bytes&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}},g.prototype.finalize=function(){var e,t;this.finalized||(this.finalized=!0,(e=this.blocks)[(t=this.lastByteIndex)>>2]|=s[3&t],56<=t&&(this.hashed||this.hash(),e[0]=e[16],e[16]=e[1]=e[2]=e[3]=e[4]=e[5]=e[6]=e[7]=e[8]=e[9]=e[10]=e[11]=e[12]=e[13]=e[14]=e[15]=0),e[14]=this.bytes<<3,e[15]=this.hBytes<<3|this.bytes>>>29,this.hash())},g.prototype.hash=function(){var e,t,n,o,r,i=this.blocks,a=this.first?((a=((e=((e=i[0]-680876937)<<7|e>>>25)-271733879<<0)^(t=((t=(-271733879^(n=((n=(-1732584194^2004318071&e)+i[1]-117830708)<<12|n>>>20)+e<<0)&(-271733879^e))+i[2]-1126478375)<<17|t>>>15)+n<<0)&(n^e))+i[3]-1316259209)<<22|a>>>10)+t<<0:(e=this.h0,a=this.h1,t=this.h2,((a+=((e=((e+=((n=this.h3)^a&(t^n))+i[0]-680876936)<<7|e>>>25)+a<<0)^(t=((t+=(a^(n=((n+=(t^e&(a^t))+i[1]-389564586)<<12|n>>>20)+e<<0)&(e^a))+i[2]+606105819)<<17|t>>>15)+n<<0)&(n^e))+i[3]-1044525330)<<22|a>>>10)+t<<0);a=((a+=((e=((e+=(n^a&(t^n))+i[4]-176418897)<<7|e>>>25)+a<<0)^(t=((t+=(a^(n=((n+=(t^e&(a^t))+i[5]+1200080426)<<12|n>>>20)+e<<0)&(e^a))+i[6]-1473231341)<<17|t>>>15)+n<<0)&(n^e))+i[7]-45705983)<<22|a>>>10)+t<<0,a=((a+=((e=((e+=(n^a&(t^n))+i[8]+1770035416)<<7|e>>>25)+a<<0)^(t=((t+=(a^(n=((n+=(t^e&(a^t))+i[9]-1958414417)<<12|n>>>20)+e<<0)&(e^a))+i[10]-42063)<<17|t>>>15)+n<<0)&(n^e))+i[11]-1990404162)<<22|a>>>10)+t<<0,a=((a+=((e=((e+=(n^a&(t^n))+i[12]+1804603682)<<7|e>>>25)+a<<0)^(t=((t+=(a^(n=((n+=(t^e&(a^t))+i[13]-40341101)<<12|n>>>20)+e<<0)&(e^a))+i[14]-1502002290)<<17|t>>>15)+n<<0)&(n^e))+i[15]+1236535329)<<22|a>>>10)+t<<0,a=((a+=((n=((n+=(a^t&((e=((e+=(t^n&(a^t))+i[1]-165796510)<<5|e>>>27)+a<<0)^a))+i[6]-1069501632)<<9|n>>>23)+e<<0)^e&((t=((t+=(e^a&(n^e))+i[11]+643717713)<<14|t>>>18)+n<<0)^n))+i[0]-373897302)<<20|a>>>12)+t<<0,a=((a+=((n=((n+=(a^t&((e=((e+=(t^n&(a^t))+i[5]-701558691)<<5|e>>>27)+a<<0)^a))+i[10]+38016083)<<9|n>>>23)+e<<0)^e&((t=((t+=(e^a&(n^e))+i[15]-660478335)<<14|t>>>18)+n<<0)^n))+i[4]-405537848)<<20|a>>>12)+t<<0,a=((a+=((n=((n+=(a^t&((e=((e+=(t^n&(a^t))+i[9]+568446438)<<5|e>>>27)+a<<0)^a))+i[14]-1019803690)<<9|n>>>23)+e<<0)^e&((t=((t+=(e^a&(n^e))+i[3]-187363961)<<14|t>>>18)+n<<0)^n))+i[8]+1163531501)<<20|a>>>12)+t<<0,a=((a+=((n=((n+=(a^t&((e=((e+=(t^n&(a^t))+i[13]-1444681467)<<5|e>>>27)+a<<0)^a))+i[2]-51403784)<<9|n>>>23)+e<<0)^e&((t=((t+=(e^a&(n^e))+i[7]+1735328473)<<14|t>>>18)+n<<0)^n))+i[12]-1926607734)<<20|a>>>12)+t<<0,a=((a+=((r=(n=((n+=((o=a^t)^(e=((e+=(o^n)+i[5]-378558)<<4|e>>>28)+a<<0))+i[8]-2022574463)<<11|n>>>21)+e<<0)^e)^(t=((t+=(r^a)+i[11]+1839030562)<<16|t>>>16)+n<<0))+i[14]-35309556)<<23|a>>>9)+t<<0,a=((a+=((r=(n=((n+=((o=a^t)^(e=((e+=(o^n)+i[1]-1530992060)<<4|e>>>28)+a<<0))+i[4]+1272893353)<<11|n>>>21)+e<<0)^e)^(t=((t+=(r^a)+i[7]-155497632)<<16|t>>>16)+n<<0))+i[10]-1094730640)<<23|a>>>9)+t<<0,a=((a+=((r=(n=((n+=((o=a^t)^(e=((e+=(o^n)+i[13]+681279174)<<4|e>>>28)+a<<0))+i[0]-358537222)<<11|n>>>21)+e<<0)^e)^(t=((t+=(r^a)+i[3]-722521979)<<16|t>>>16)+n<<0))+i[6]+76029189)<<23|a>>>9)+t<<0,a=((a+=((r=(n=((n+=((o=a^t)^(e=((e+=(o^n)+i[9]-640364487)<<4|e>>>28)+a<<0))+i[12]-421815835)<<11|n>>>21)+e<<0)^e)^(t=((t+=(r^a)+i[15]+530742520)<<16|t>>>16)+n<<0))+i[2]-995338651)<<23|a>>>9)+t<<0,a=((a+=((n=((n+=(a^((e=((e+=(t^(a|~n))+i[0]-198630844)<<6|e>>>26)+a<<0)|~t))+i[7]+1126891415)<<10|n>>>22)+e<<0)^((t=((t+=(e^(n|~a))+i[14]-1416354905)<<15|t>>>17)+n<<0)|~e))+i[5]-57434055)<<21|a>>>11)+t<<0,a=((a+=((n=((n+=(a^((e=((e+=(t^(a|~n))+i[12]+1700485571)<<6|e>>>26)+a<<0)|~t))+i[3]-1894986606)<<10|n>>>22)+e<<0)^((t=((t+=(e^(n|~a))+i[10]-1051523)<<15|t>>>17)+n<<0)|~e))+i[1]-2054922799)<<21|a>>>11)+t<<0,a=((a+=((n=((n+=(a^((e=((e+=(t^(a|~n))+i[8]+1873313359)<<6|e>>>26)+a<<0)|~t))+i[15]-30611744)<<10|n>>>22)+e<<0)^((t=((t+=(e^(n|~a))+i[6]-1560198380)<<15|t>>>17)+n<<0)|~e))+i[13]+1309151649)<<21|a>>>11)+t<<0,a=((a+=((n=((n+=(a^((e=((e+=(t^(a|~n))+i[4]-145523070)<<6|e>>>26)+a<<0)|~t))+i[11]-1120210379)<<10|n>>>22)+e<<0)^((t=((t+=(e^(n|~a))+i[2]+718787259)<<15|t>>>17)+n<<0)|~e))+i[9]-343485551)<<21|a>>>11)+t<<0,this.first?(this.h0=e+1732584193<<0,this.h1=a-271733879<<0,this.h2=t-1732584194<<0,this.h3=n+271733878<<0,this.first=!1):(this.h0=this.h0+e<<0,this.h1=this.h1+a<<0,this.h2=this.h2+t<<0,this.h3=this.h3+n<<0)},g.prototype.toString=g.prototype.hex=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,o=this.h3;return a[e>>4&15]+a[15&e]+a[e>>12&15]+a[e>>8&15]+a[e>>20&15]+a[e>>16&15]+a[e>>28&15]+a[e>>24&15]+a[t>>4&15]+a[15&t]+a[t>>12&15]+a[t>>8&15]+a[t>>20&15]+a[t>>16&15]+a[t>>28&15]+a[t>>24&15]+a[n>>4&15]+a[15&n]+a[n>>12&15]+a[n>>8&15]+a[n>>20&15]+a[n>>16&15]+a[n>>28&15]+a[n>>24&15]+a[o>>4&15]+a[15&o]+a[o>>12&15]+a[o>>8&15]+a[o>>20&15]+a[o>>16&15]+a[o>>28&15]+a[o>>24&15]},g.prototype.array=g.prototype.digest=function(){this.finalize();var e=this.h0,t=this.h1,n=this.h2,o=this.h3;return[255&e,e>>8&255,e>>16&255,e>>24&255,255&t,t>>8&255,t>>16&255,t>>24&255,255&n,n>>8&255,n>>16&255,n>>24&255,255&o,o>>8&255,o>>16&255,o>>24&255]},g.prototype.buffer=g.prototype.arrayBuffer=function(){this.finalize();var e=new ArrayBuffer(16),t=new Uint32Array(e);return t[0]=this.h0,t[1]=this.h1,t[2]=this.h2,t[3]=this.h3,e},g.prototype.base64=function(){for(var e,t,n,o="",r=this.array(),i=0;i<15;)e=r[i++],t=r[i++],n=r[i++],o+=f[e>>>2]+f[63&(e<<4|t>>>4)]+f[63&(t<<2|n>>>6)]+f[63&n];return e=r[i],o+(f[e>>>2]+f[e<<4&63]+"==")};var v=function(){var t=h("hex");o&&(t=m(t)),t.create=function(){return new g},t.update=function(e){return t.create().update(e)};for(var e=0;e<c.length;++e){var n=c[e];t[n]=h(n)}return t}();r?w.exports=v:(e.md5=v,i&&(void 0===(x=function(){return v}.call(v,S,v,w))||(w.exports=x)))}()}).call(this,S(49),S(31),S(143)(e))},function(e,a,ee){"use strict";(function(g,Y,X){var e=ee(52),K=ee.n(e);function J(e){return(J="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function $(){var a=this,r=new t;a.chunks={},a.users={},a.readAsArrayBuffer=function(t,n,e){var o={file:t,earlyCallback:function(e){n(s(e,{currentPosition:-1}))},extra:e||{userid:0}};t.extra&&Object.keys(t.extra).length&&Object.keys(t.extra).forEach(function(e){o.extra[e]=t.extra[e]}),r.readAsArrayBuffer(a,o)},a.getNextChunk=function(e,t,n){var o;void 0!==e.currentPosition&&(o=e.currentPosition,e=e.uuid);var r=a.chunks[e];if(r){var i=r[o=void 0!==n?(a.users[n+""]||(a.users[n+""]={fileUUID:e,userid:n,currentPosition:-1}),void 0!==o&&(a.users[n+""].currentPosition=o),a.users[n+""].currentPosition++,a.users[n+""].currentPosition):(void 0!==o&&(a.chunks[e].currentPosition=o),a.chunks[e].currentPosition++,a.chunks[e].currentPosition)];if(!i)return delete a.chunks[e],void a.convertToArrayBuffer({chunkMissing:!0,currentPosition:o,uuid:e},t);i=s(i),void 0!==n&&(i.remoteUserId=n+""),i.start&&a.onBegin(i),i.end&&a.onEnd(i),a.onProgress(i),a.convertToArrayBuffer(i,function(e){i.currentPosition!=i.maxChunks?t(e,!1):t(e,!0)})}};var n=new o(a);function s(e,t){if(null==e||"object"!=J(e))return e;if(e.constructor!=Object&&e.constructor!=Array)return e;if(e.constructor==Date||e.constructor==RegExp||e.constructor==Function||e.constructor==String||e.constructor==Number||e.constructor==Boolean)return new e.constructor(e);for(var n in t=t||new e.constructor,e)t[n]=void 0===t[n]?s(e[n],null):t[n];return t}a.addChunk=function(e,t){e&&n.receive(e,function(e){a.convertToArrayBuffer({readyForNextChunk:!0,currentPosition:e.currentPosition,uuid:e.uuid},t)})},a.chunkMissing=function(e){delete n.chunks[e.uuid],delete n.chunksWaiters[e.uuid]},a.onBegin=function(){},a.onEnd=function(){},a.onProgress=function(){},a.convertToObject=i.ConvertToObject,a.convertToArrayBuffer=i.ConvertToArrayBuffer,a.setMultipleUsers=function(){}}function t(){this.readAsArrayBuffer=function(t,n){var o=n.earlyCallback;delete n.earlyCallback,function(e,o){o=o||function(e){postMessage(e)};var r=e.file;r.uuid||(r.uuid=(100*Math.random()).toString().replace(/\./g,""));var i=e.chunkSize||15e3;e.extra&&e.extra.chunkSize&&(i=e.extra.chunkSize);var a,s=0,c=Math.floor(Math.min(1e8,i)/i)*i,l=Math.ceil(r.size/i);r.maxChunks=l;var u=0,d=[];o({currentPosition:u,uuid:r.uuid,maxChunks:l,size:r.size,name:r.name,type:r.type,lastModifiedDate:(r.lastModifiedDate||new Date).toString(),start:!0});var f,p=new FileReader;p.onloadend=function(e){e.target.readyState==FileReader.DONE&&function(e){a=Math.ceil(e.byteLength/i);for(var t=0;t<a;t++){var n=t*i;d[u]=e.slice(n,Math.min(n+i,e.byteLength)),o({uuid:r.uuid,buffer:d[u],currentPosition:u,maxChunks:l,size:r.size,name:r.name,lastModifiedDate:(r.lastModifiedDate||new Date).toString(),type:r.type}),u++}(++s+1)*c<r.size?(f=r.slice(s*c,(s+1)*c),p.readAsArrayBuffer(f)):s*c<r.size?(f=r.slice(s*c,r.size),p.readAsArrayBuffer(f)):(r.url=URL.createObjectURL(r),o({currentPosition:u,uuid:r.uuid,maxChunks:l,size:r.size,name:r.name,lastModifiedDate:(r.lastModifiedDate||new Date).toString(),url:URL.createObjectURL(r),type:r.type,end:!0}))}((r.name,e.target.result))},u+=1,f=r.slice(s*c,(s+1)*c),p.readAsArrayBuffer(f)}(n,function(e){t.chunks[e.uuid]||(t.chunks[e.uuid]={currentPosition:-1}),n.extra=n.extra||{userid:0},e.userid=n.userid||n.extra.userid||0,e.extra=n.extra,(t.chunks[e.uuid][e.currentPosition]=e).end&&o&&(o(e.uuid),o=null),200<e.maxChunks&&200==e.currentPosition&&o&&(o(e.uuid),o=null)})}}function Z(){var r=this,i=function(){};function n(e,n,t){e=e||function(){};var o=document.createElement("input");o.type="file",n&&(o.multiple=!0),t&&(o.webkitdirectory=!0),o.accept=r.accept,o.onclick=function(){o.clickStarted=!0},document.body.onfocus=function(){setTimeout(function(){o.clickStarted&&(o.clickStarted=!1,o.value||i())},500)},o.onchange=function(){if(n){if(!o.files.length)return void console.error("No file selected.");var t=[];return Array.from(o.files).forEach(function(e){e.url=e.webkitRelativePath,t.push(e)}),void e(t)}o.files[0]?(e(o.files[0]),o.parentNode.removeChild(o)):console.error("No file selected.")},o.style.display="none",(document.body||document.documentElement).appendChild(o),function(e){if("function"==typeof e.click)return e.click();if("function"==typeof e.change)return e.change();if(void 0!==document.createEvent("Event")&&"function"==typeof(t=document.createEvent("Event")).initEvent&&"function"==typeof e.dispatchEvent)return t.initEvent("click",!0,!0),e.dispatchEvent(t);var t=new MouseEvent("click",{view:window,bubbles:!0,cancelable:!0});e.dispatchEvent(t)}(o)}r.selectSingleFile=function(e,t){t&&(i=t),n(e)},r.selectMultipleFiles=function(e,t){t&&(i=t),n(e,!0)},r.selectDirectory=function(e,t){t&&(i=t),n(e,!0,!0)},r.accept="*.*"}function o(a){var s=this;s.chunks={},s.chunksWaiters={},s.receive=function t(n,o){var r,i,e;n.uuid?(n.start&&!s.chunks[n.uuid]&&(s.chunks[n.uuid]={},a.onBegin&&a.onBegin(n)),!n.end&&n.buffer&&(s.chunks[n.uuid][n.currentPosition]=n.buffer),n.end&&(r=s.chunks[n.uuid],i=[],Object.keys(r).forEach(function(e,t){i.push(r[e])}),(e=Q(e=new Blob(i,{type:n.type}),n)).url=URL.createObjectURL(e),e.uuid=n.uuid,e.size||console.error("Something went wrong. Blob Size is 0."),a.onEnd&&a.onEnd(e),delete s.chunks[n.uuid],delete s.chunksWaiters[n.uuid]),n.buffer&&a.onProgress&&a.onProgress(n),n.end||(o(n),s.chunksWaiters[n.uuid]=function(){setTimeout(function e(){n.buffer&&s.chunks[n.uuid]&&(n.currentPosition==n.maxChunks||s.chunks[n.uuid][n.currentPosition]||(o(n),setTimeout(e,5e3)))},5e3)},s.chunksWaiters[n.uuid]())):a.convertToObject(n,function(e){t(e)})}}var i={ConvertToArrayBuffer:function(e,t){r.pack(e,function(e){t(e.buffer)})},ConvertToObject:function(e,t){r.unpack(e,t)}};function Q(e,t){if(e=e||{},!t)return e;for(var n in t)try{e[n]=t[n]}catch(e){}return e}function v(e,t){var n,o,r,i=0,a=e.getUint8(t,!1);t+=b,a!==x.ARRAY&&a!==x.OBJECT||(n=e.getUint16(t,!1),t+=y),o=e.getUint32(t,!1),t+=w;var s=_[a],c=null===s?0:window[s+"Array"].BYTES_PER_ELEMENT;switch(a){case x.NULL:case x.UNDEFINED:p=null;break;case x.STRING:n=o/c;for(var l=[],i=0;i<n;i++){var u=e.getUint16(t,!1);t+=c,l.push(String.fromCharCode(u))}p=l.join("");break;case x.NUMBER:p=e.getFloat64(t,!1),t+=c;break;case x.BOOLEAN:p=1===e.getUint8(t,!1),t+=c;break;case x.INT8ARRAY:case x.INT16ARRAY:case x.INT32ARRAY:case x.UINT8ARRAY:case x.UINT16ARRAY:case x.UINT32ARRAY:case x.FLOAT32ARRAY:case x.FLOAT64ARRAY:case x.ARRAYBUFFER:r=e.buffer.slice(t,t+o),t+=o,p=a===x.ARRAYBUFFER?r:new window[s+"Array"](r);break;case x.BLOB:var d,f,p=window.Blob?(t=(f=v(e,(d=v(e,t)).cursor)).cursor,new Blob([f.value],{type:d.value})):(r=e.buffer.slice(t,t+o),t+=o,new g(r));break;case x.ARRAY:for(p=[],i=0;i<n;i++)t=(r=v(e,t)).cursor,p.push(r.value);break;case x.OBJECT:for(p={},i=0;i<n;i++){var h=v(e,t),m=v(e,h.cursor);t=m.cursor,p[h.value]=m.value}break;default:throw"TypeError: Type not supported."}return{value:p,cursor:t}}function f(e,r){for(var i=e.length,a=[],s=0,c=0,t=0;t<e.length;t++)!function(o){n(e[o],function(e){if(a[o]=e,c+=e[0].header_size+e[0].byte_length,++s===i){for(var t=[],n=0;n<a.length;n++)t=t.concat(a[n]);r(t,c)}})}(t)}var b=Uint8Array.BYTES_PER_ELEMENT,y=Uint16Array.BYTES_PER_ELEMENT,w=Uint32Array.BYTES_PER_ELEMENT,x={NULL:0,UNDEFINED:1,STRING:2,NUMBER:3,BOOLEAN:4,ARRAY:5,OBJECT:6,INT8ARRAY:7,INT16ARRAY:8,INT32ARRAY:9,UINT8ARRAY:10,UINT16ARRAY:11,UINT32ARRAY:12,FLOAT32ARRAY:13,FLOAT64ARRAY:14,ARRAYBUFFER:15,BLOB:16,FILE:16,BUFFER:17},_=[null,null,"Uint16","Float64","Uint8",null,null,"Int8","Int16","Int32","Uint8","Uint16","Uint32","Float32","Float64","Uint8","Uint8","Uint8"],n=function(n,o){var r=b+w,e=0,i=0,t=n,a=function(e){var t=void 0;if(void 0===e)t=x.UNDEFINED;else if(null===e)t=x.NULL;else{var n=e.constructor.name,o=e.constructor.toString().match(/\w+/g)[1];if(void 0!==n&&void 0!==x[n.toUpperCase()])t=x[n.toUpperCase()];else if(void 0!==o&&void 0!==x[o.toUpperCase()])t=x[o.toUpperCase()];else switch(J(e)){case"string":t=x.STRING;break;case"number":t=x.NUMBER;break;case"boolean":t=x.BOOLEAN;break;case"object":e instanceof Array?t=x.ARRAY:e instanceof Int8Array?t=x.INT8ARRAY:e instanceof Int16Array?t=x.INT16ARRAY:e instanceof Int32Array?t=x.INT32ARRAY:e instanceof Uint8Array?t=x.UINT8ARRAY:e instanceof Uint16Array?t=x.UINT16ARRAY:e instanceof Uint32Array?t=x.UINT32ARRAY:e instanceof Float32Array?t=x.FLOAT32ARRAY:e instanceof Float64Array?t=x.FLOAT64ARRAY:e instanceof ArrayBuffer?t=x.ARRAYBUFFER:e instanceof Blob?t=x.BLOB:e instanceof g?t=x.BUFFER:e instanceof Object&&(t=x.OBJECT)}}return t}(n),s=null==_[a]?0:window[_[a]+"Array"].BYTES_PER_ELEMENT;switch(a){case x.UNDEFINED:case x.NULL:break;case x.NUMBER:case x.BOOLEAN:e=s;break;case x.STRING:e+=(i=n.length)*s;break;case x.INT8ARRAY:case x.INT16ARRAY:case x.INT32ARRAY:case x.UINT8ARRAY:case x.UINT16ARRAY:case x.UINT32ARRAY:case x.FLOAT32ARRAY:case x.FLOAT64ARRAY:e+=(i=n.length)*s;break;case x.ARRAY:return void f(n,function(e,t){o([{type:a,length:n.length,header_size:r+y,byte_length:t,value:null}].concat(e))});case x.OBJECT:var c,l=[];for(c in n)n.hasOwnProperty(c)&&(l.push(c),l.push(n[c]),i++);return void f(l,function(e,t){o([{type:a,length:i,header_size:r+y,byte_length:t,value:null}].concat(e))});case x.ARRAYBUFFER:e+=n.byteLength;break;case x.BLOB:var u=n.type,d=new FileReader;return d.onload=function(e){f([u,e.target.result],function(e,t){o([{type:a,length:i,header_size:r,byte_length:t,value:null}].concat(e))})},d.onerror=function(e){throw"FileReader Error: "+e},void d.readAsArrayBuffer(n);case x.BUFFER:e+=n.length;break;default:throw'TypeError: Type "'+n.constructor.name+'" not supported.'}o([{type:a,length:i,header_size:r,byte_length:e,value:t}].concat([]))},r={pack:function(e,t){try{n(e,function(e){t(function(e){for(var t=0,n=0,o=0,r=new ArrayBuffer(e[0].byte_length+e[0].header_size),i=new DataView(r),n=0;n<e.length;n++){e[n].header_size;var a=e[n].type,s=e[n].length,c=e[n].value,l=e[n].byte_length,u=_[a],d=null===u?0:window[u+"Array"].BYTES_PER_ELEMENT;switch(a===x.BUFFER?i.setUint8(t,x.BLOB,!1):i.setUint8(t,a,!1),t+=b,a!==x.ARRAY&&a!==x.OBJECT||(i.setUint16(t,s,!1),t+=y),i.setUint32(t,l,!1),t+=w,a){case x.NULL:case x.UNDEFINED:break;case x.STRING:for(o=0;o<s;o++,t+=d)i.setUint16(t,c.charCodeAt(o),!1);break;case x.NUMBER:case x.BOOLEAN:i["set"+u](t,c,!1),t+=d;break;case x.INT8ARRAY:case x.INT16ARRAY:case x.INT32ARRAY:case x.UINT8ARRAY:case x.UINT16ARRAY:case x.UINT32ARRAY:case x.FLOAT32ARRAY:case x.FLOAT64ARRAY:new Uint8Array(i.buffer,t,l).set(new Uint8Array(c.buffer)),t+=l;break;case x.ARRAYBUFFER:case x.BUFFER:new Uint8Array(i.buffer,t,l).set(new Uint8Array(c)),t+=l;break;case x.BLOB:case x.ARRAY:case x.OBJECT:break;default:throw"TypeError: Unexpected type found."}}return i}(e))})}catch(e){throw e}},unpack:function(e,t){try{t(function(e){e=e instanceof DataView?e:new DataView(e);return v(e,0).value}(e))}catch(e){throw e}}};a.a=function(f,p){var e;function h(i,e){function a(e){return!e.audio&&!e.video&&!e.screen&&e.data}var t="";t+="?userid="+i.userid,t+="&sessionid="+i.sessionid,t+="&msgEvent="+i.socketMessageEvent,t+="&socketCustomEvent="+i.socketCustomEvent,t+="&autoCloseEntireSession="+!!i.autoCloseEntireSession,!0===i.session.broadcast&&(t+="&oneToMany=true"),t+="&maxParticipantsAllowed="+i.maxParticipantsAllowed,i.enableScalableBroadcast&&(t+="&enableScalableBroadcast=true",t+="&maxRelayLimitPerUser="+(i.maxRelayLimitPerUser||2)),t+="&extra="+JSON.stringify(i.extra||{}),i.socketCustomParameters&&(t+=i.socketCustomParameters);try{K.a.sockets={}}catch(e){}if(i.socketURL||(i.socketURL="/"),"/"!=i.socketURL.substr(i.socketURL.length-1,1))throw'"socketURL" MUST end with a slash.';i.enableLogs&&("/"==i.socketURL?console.info("socket.io url is: ",location.origin+"/"):console.info("socket.io url is: ",i.socketURL));try{i.socket=K()(i.socketURL+t)}catch(e){i.socket=K.a.connect(i.socketURL+t,i.socketOptions)}var s=i.multiPeersHandler;function c(e,t){i.peersBackup[e]||(i.peersBackup[e]={userid:e,extra:{}}),i.peersBackup[e].extra=t}i.socket.on("extra-data-updated",function(e,t){i.peers[e]&&(i.peers[e].extra=t,i.onExtraDataUpdated({userid:e,extra:t}),c(e,t))}),i.socket.on(i.socketMessageEvent,function e(t){if(t.remoteUserId==i.userid)if(i.peers[t.sender]&&i.peers[t.sender].extra!=t.message.extra&&(i.peers[t.sender].extra=t.extra,i.onExtraDataUpdated({userid:t.sender,extra:t.extra}),c(t.sender,t.extra)),t.message.streamSyncNeeded&&i.peers[t.sender]){var n=i.streamEvents[t.message.streamid];if(n&&n.stream){var o=t.message.action;if("ended"===o||"inactive"===o||"stream-removed"===o)return i.peersBackup[n.userid]&&(n.extra=i.peersBackup[n.userid].extra),void i.onstreamended(n);var r="both"!=t.message.type?t.message.type:null;"function"==typeof n.stream[o]&&n.stream[o](r)}}else if("dropPeerConnection"!==t.message){if(t.message.allParticipants)return-1===t.message.allParticipants.indexOf(t.sender)&&t.message.allParticipants.push(t.sender),void t.message.allParticipants.forEach(function(e){s[i.peers[e]?"renegotiatePeer":"createNewPeer"](e,{localPeerSdpConstraints:{OfferToReceiveAudio:i.sdpConstraints.mandatory.OfferToReceiveAudio,OfferToReceiveVideo:i.sdpConstraints.mandatory.OfferToReceiveVideo},remotePeerSdpConstraints:{OfferToReceiveAudio:i.session.oneway?!!i.session.audio:i.sdpConstraints.mandatory.OfferToReceiveAudio,OfferToReceiveVideo:i.session.oneway?!!i.session.video||!!i.session.screen:i.sdpConstraints.mandatory.OfferToReceiveVideo},isOneWay:!!i.session.oneway||"one-way"===i.direction,isDataOnly:a(i.session)})});if(t.message.newParticipant)t.message.newParticipant!=i.userid&&(i.peers[t.message.newParticipant]||s.createNewPeer(t.message.newParticipant,t.message.userPreferences||{localPeerSdpConstraints:{OfferToReceiveAudio:i.sdpConstraints.mandatory.OfferToReceiveAudio,OfferToReceiveVideo:i.sdpConstraints.mandatory.OfferToReceiveVideo},remotePeerSdpConstraints:{OfferToReceiveAudio:i.session.oneway?!!i.session.audio:i.sdpConstraints.mandatory.OfferToReceiveAudio,OfferToReceiveVideo:i.session.oneway?!!i.session.video||!!i.session.screen:i.sdpConstraints.mandatory.OfferToReceiveVideo},isOneWay:!!i.session.oneway||"one-way"===i.direction,isDataOnly:a(i.session)}));else if(t.message.readyForOffer&&(i.attachStreams.length&&(i.waitingForLocalMedia=!1),i.waitingForLocalMedia))setTimeout(function(){e(t)},1);else if(t.message.newParticipationRequest&&t.sender!==i.userid){i.peers[t.sender]&&i.deletePeer(t.sender);r={extra:t.extra||{},localPeerSdpConstraints:t.message.remotePeerSdpConstraints||{OfferToReceiveAudio:i.sdpConstraints.mandatory.OfferToReceiveAudio,OfferToReceiveVideo:i.sdpConstraints.mandatory.OfferToReceiveVideo},remotePeerSdpConstraints:t.message.localPeerSdpConstraints||{OfferToReceiveAudio:i.session.oneway?!!i.session.audio:i.sdpConstraints.mandatory.OfferToReceiveAudio,OfferToReceiveVideo:i.session.oneway?!!i.session.video||!!i.session.screen:i.sdpConstraints.mandatory.OfferToReceiveVideo},isOneWay:void 0!==t.message.isOneWay?t.message.isOneWay:!!i.session.oneway||"one-way"===i.direction,isDataOnly:void 0!==t.message.isDataOnly?t.message.isDataOnly:a(i.session),dontGetRemoteStream:void 0!==t.message.isOneWay?t.message.isOneWay:!!i.session.oneway||"one-way"===i.direction,dontAttachLocalStream:!!t.message.dontGetRemoteStream,connectionDescription:t,successCallback:function(){}};i.onNewParticipant(t.sender,r)}else{if(t.message.changedUUID&&i.peers[t.message.oldUUID]&&(i.peers[t.message.newUUID]=i.peers[t.message.oldUUID],delete i.peers[t.message.oldUUID]),t.message.userLeft)return s.onUserLeft(t.sender),void(t.message.autoCloseEntireSession&&i.leave());s.addNegotiatedMessage(t.message,t.sender)}}else i.deletePeer(t.sender)});var n=!1;i.socket.resetProps=function(){n=!1},i.socket.on("connect",function(){n||(n=!0,i.enableLogs&&console.info("socket.io connection is opened."),setTimeout(function(){i.socket.emit("extra-data-updated",i.extra)},1e3),e&&e(i.socket))}),i.socket.on("disconnect",function(){i.enableLogs&&console.warn("socket.io connection is closed"),i.close()}),i.socket.on("user-disconnected",function(e){e!==i.userid&&(i.onUserStatusChanged({userid:e,status:"offline",extra:i.peers[e]&&i.peers[e].extra||{}}),i.deletePeer(e))}),i.socket.on("user-connected",function(e){e!==i.userid&&i.onUserStatusChanged({userid:e,status:"online",extra:i.peers[e]&&i.peers[e].extra||{}})}),i.socket.on("closed-entire-session",function(e,t){i.leave(),i.onEntireSessionClosed({sessionid:e,userid:e,extra:t})}),i.socket.on("userid-already-taken",function(e,t){i.onUserIdAlreadyTaken(e,t)}),i.socket.on("logs",function(e){i.enableLogs&&console.debug("server-logs",e)}),i.socket.on("number-of-broadcast-viewers-updated",function(e){i.onNumberOfBroadcastViewersUpdated(e)}),i.socket.on("set-isInitiator-true",function(e){e==i.sessionid&&(i.isInitiator=!0)})}function m(r){var i=this,o=["getAllParticipants","getLength","selectFirst","streams","send","forEach"];function a(){r.fbr=new $,r.fbr.onProgress=function(e){r.onFileProgress(e)},r.fbr.onBegin=function(e){r.onFileStart(e)},r.fbr.onEnd=function(e){r.onFileEnd(e)}}r.peers={getLength:function(){var e,t=0;for(e in this)-1==o.indexOf(e)&&t++;return t},selectFirst:function(){var e,t;for(t in this)-1==o.indexOf(t)&&(e=this[t]);return e},getAllParticipants:function(e){var t,n=[];for(t in this)-1==o.indexOf(t)&&t!=e&&n.push(t);return n},forEach:function(t){this.getAllParticipants().forEach(function(e){t(r.peers[e])})},send:function(t,e){var n=this;if(!c(t.size)&&!c(t.type)){if(r.enableFileSharing)return void i.shareFile(t,e);"string"!=typeof t&&(t=JSON.stringify(t))}if("text"===t.type||t instanceof ArrayBuffer||t instanceof DataView){if("text"===t.type&&(t=JSON.stringify(t)),e){var o=r.peers[e];if(o)return o.channels.length?void o.channels.forEach(function(e){e.send(t)}):(r.peers[e].createDataChannel(),r.renegotiate(e),void setTimeout(function(){n.send(t,e)},3e3))}this.getAllParticipants().forEach(function(e){return n[e].channels.length?void n[e].channels.forEach(function(e){e.send(t)}):(r.peers[e].createDataChannel(),r.renegotiate(e),void setTimeout(function(){n[e].channels.forEach(function(e){e.send(t)})},3e3))})}else q.send({text:t,channel:this,connection:r,remoteUserId:e})}},this.uuid=r.userid,this.getLocalConfig=function(e,n,t){return{streamsToShare:(t=t||{}).streamsToShare||{},rtcMultiConnection:r,connectionDescription:t.connectionDescription,userid:n,localPeerSdpConstraints:t.localPeerSdpConstraints,remotePeerSdpConstraints:t.remotePeerSdpConstraints,dontGetRemoteStream:!!t.dontGetRemoteStream,dontAttachLocalStream:!!t.dontAttachLocalStream,renegotiatingPeer:!!t.renegotiatingPeer,peerRef:t.peerRef,channels:t.channels||[],onLocalSdp:function(e){i.onNegotiationNeeded(e,n)},onLocalCandidate:function(e){(e=R.processCandidates(r,e))&&i.onNegotiationNeeded(e,n)},remoteSdp:e,onDataChannelMessage:function(e){var t;!r.fbr&&r.enableFileSharing&&a(),"string"!=typeof e&&r.enableFileSharing?(t=this,e instanceof ArrayBuffer||e instanceof DataView?r.fbr.convertToObject(e,function(e){t.onDataChannelMessage(e)}):e.readyForNextChunk?r.fbr.getNextChunk(e,function(t,e){r.peers[n].channels.forEach(function(e){e.send(t)})},n):e.chunkMissing?r.fbr.chunkMissing(e):r.fbr.addChunk(e,function(e){r.peers[n].peer.channel.send(e)})):i.onDataChannelMessage(e,n)},onDataChannelError:function(e){i.onDataChannelError(e,n)},onDataChannelOpened:function(e){i.onDataChannelOpened(e,n)},onDataChannelClosed:function(e){i.onDataChannelClosed(e,n)},onRemoteStream:function(e){r.peers[n]&&r.peers[n].streams.push(e),i.onGettingRemoteMedia(e,n)},onRemoteStreamRemoved:function(e){i.onRemovingRemoteMedia(e,n)},onPeerStateChanged:function(e){i.onPeerStateChanged(e),"new"===e.iceConnectionState&&i.onNegotiationStarted(n,e),"connected"===e.iceConnectionState&&i.onNegotiationCompleted(n,e),-1!==e.iceConnectionState.search(/closed|failed/gi)&&(i.onUserLeft(n),i.disconnectWith(n))}}},this.createNewPeer=function(e,t){if(!(r.maxParticipantsAllowed<=r.getAllParticipants().length)){if(t=t||{},r.isInitiator&&r.session.audio&&"two-way"===r.session.audio&&!t.streamsToShare&&(t.isOneWay=!1,t.isDataOnly=!1,t.session=r.session),!t.isOneWay&&!t.isDataOnly)return t.isOneWay=!0,void this.onNegotiationNeeded({enableMedia:!0,userPreferences:t},e);t=r.setUserPreferences(t,e);t=this.getLocalConfig(null,e,t);r.peers[e]=new l(t)}},this.createAnsweringPeer=function(e,t,n){n=r.setUserPreferences(n||{},t);n=this.getLocalConfig(e,t,n);r.peers[t]=new l(n)},this.renegotiatePeer=function(e,t,n){r.peers[e]?((t=t||{}).renegotiatingPeer=!0,t.peerRef=r.peers[e].peer,t.channels=r.peers[e].channels,t=this.getLocalConfig(n,e,t),r.peers[e]=new l(t)):r.enableLogs&&console.error("Peer ("+e+") does not exist. Renegotiation skipped.")},this.replaceTrack=function(t,n,o){if(!r.peers[n])throw"This peer ("+n+") does not exist.";var e=r.peers[n].peer;e.getSenders&&"function"==typeof e.getSenders&&e.getSenders().length?e.getSenders().forEach(function(e){o&&"video"===e.track.kind&&(r.peers[n].peer.lastVideoTrack=e.track,e.replaceTrack(t)),o||"audio"!==e.track.kind||(r.peers[n].peer.lastAudioTrack=e.track,e.replaceTrack(t))}):(console.warn("RTPSender.replaceTrack is NOT supported."),this.renegotiatePeer(n))},this.onNegotiationNeeded=function(e,t){},this.addNegotiatedMessage=function(e,t){return e.type&&e.sdp?("answer"==e.type&&r.peers[t]&&r.peers[t].addRemoteSdp(e),"offer"==e.type&&(e.renegotiatingPeer?this.renegotiatePeer(t,null,e):this.createAnsweringPeer(e,t)),void(r.enableLogs&&console.log("Remote peer's sdp:",e.sdp))):e.candidate?(r.peers[t]&&r.peers[t].addRemoteCandidate(e),void(r.enableLogs&&console.log("Remote peer's candidate pairs:",e.candidate))):(e.enableMedia&&(r.session=e.userPreferences.session||r.session,r.session.oneway&&r.attachStreams.length&&(r.attachStreams=[]),e.userPreferences.isDataOnly&&r.attachStreams.length&&(r.attachStreams.length=[]),n={},r.attachStreams.forEach(function(e){n[e.streamid]={isAudio:!!e.isAudio,isVideo:!!e.isVideo,isScreen:!!e.isScreen}}),e.userPreferences.streamsToShare=n,i.onNegotiationNeeded({readyForOffer:!0,userPreferences:e.userPreferences},t)),void(e.readyForOffer&&r.onReadyForOffer(t,e.userPreferences)));var n},this.onGettingRemoteMedia=function(e,t){},this.onRemovingRemoteMedia=function(e,t){},this.onGettingLocalMedia=function(e){},this.onLocalMediaError=function(e,t){r.onMediaError(e,t)},this.shareFile=function(e,n){a(),r.fbr.readAsArrayBuffer(e,function(t){var e=r.getAllParticipants();n&&(e=[n]),e.forEach(function(e){r.fbr.getNextChunk(t,function(t){r.peers[e].channels.forEach(function(e){e.send(t)})},e)})},{userid:r.userid,chunkSize:"Firefox"===DetectRTC.browser.name?15e3:r.chunkSize||0})};var n=new V(r);this.onDataChannelMessage=function(e,t){n.receive(JSON.parse(e),t,r.peers[t]?r.peers[t].extra:{})},this.onDataChannelClosed=function(e,t){e.userid=t,e.extra=r.peers[t]?r.peers[t].extra:{},r.onclose(e)},this.onDataChannelError=function(e,t){e.userid=t,event.extra=r.peers[t]?r.peers[t].extra:{},r.onerror(e)},this.onDataChannelOpened=function(e,t){r.peers[t].channels.length?r.peers[t].channels=[e]:(r.peers[t].channels.push(e),r.onopen({userid:t,extra:r.peers[t]?r.peers[t].extra:{},channel:e}))},this.onPeerStateChanged=function(e){r.onPeerStateChanged(e)},this.onNegotiationStarted=function(e,t){},this.onNegotiationCompleted=function(e,t){},this.getRemoteStreams=function(e){return e=e||r.peers.getAllParticipants()[0],r.peers[e]?r.peers[e].streams:[]}}function a(e,t,n){"undefined"!=typeof CustomEvent&&(n=new CustomEvent(t,{arguments:n,__exposedProps__:n}),e.dispatchEvent(n))}function g(t,n){n.stream&&n.stream&&n.stream.addEventListener&&(n.stream.addEventListener("mute",function(e){(e=t.streamEvents[n.streamid]).session={audio:"audio"===e.muteType,video:"video"===e.muteType},t.onmute(e)},!1),n.stream.addEventListener("unmute",function(e){(e=t.streamEvents[n.streamid]).session={audio:"audio"===e.unmuteType,video:"video"===e.unmuteType},t.onunmute(e)},!1))}function v(){if(window.crypto&&window.crypto.getRandomValues&&-1===navigator.userAgent.indexOf("Safari")){for(var e=window.crypto.getRandomValues(new Uint32Array(3)),t="",n=0,o=e.length;n<o;n++)t+=e[n].toString(36);return t}return(Math.random()*(new Date).getTime()).toString(36).replace(/\./g,"")}function b(n,t,o){if(o.autoCreateMediaElement){var e=!1;T(n,"video").length||n.isVideo||n.isScreen||(e=!0),"Firefox"===DetectRTC.browser.name&&(o.session.video||o.session.screen)&&(e=!1);var r,i=document.createElement(e?"audio":"video");i.srcObject=n;try{i.setAttributeNode(document.createAttribute("autoplay")),i.setAttributeNode(document.createAttribute("playsinline")),i.setAttributeNode(document.createAttribute("controls"))}catch(e){i.setAttribute("autoplay",!0),i.setAttribute("playsinline",!0),i.setAttribute("controls",!0)}"Firefox"===DetectRTC.browser.name&&(r="ended","oninactive"in i&&(r="inactive"),i.addEventListener(r,function(){var t,e;currentUserMediaRequest.remove(n.idInstance),"local"===n.type&&(r="ended","oninactive"in n&&(r="inactive"),N.onSyncNeeded(n.streamid,r),o.attachStreams.forEach(function(e,t){n.streamid===e.streamid&&delete o.attachStreams[t]}),t=[],o.attachStreams.forEach(function(e){e&&t.push(e)}),o.attachStreams=t,(e=o.streamEvents[n.streamid])?o.onstreamended(e):this.parentNode&&this.parentNode.removeChild(this))},!1));var a,e=i.play();void 0!==e?(a=!1,setTimeout(function(){a||(a=!0,t(i))},1e3),e.then(function(){a||(a=!0,t(i))}).catch(function(e){a||(a=!0,t(i))})):t(i)}else t({})}function y(e,t){window.removeEventListener(e,t),window.addEventListener(e,t,!1)}function s(e){var t=[];return e.forEach(function(e){e&&t.push(e)}),t}function w(e){return!e.audio&&!e.video&&!e.screen&&e.data}function c(e){return void 0===e}(e=void 0!==Y?Y:null)&&"undefined"==typeof window&&void 0!==Y&&(Y.navigator={userAgent:"Fake/5.0 (FakeOS) AppleWebKit/123 (KHTML, like Gecko) Fake/12.3.4567.89 Fake/123.45",getUserMedia:function(){}},Y.console||(Y.console={}),void 0===Y.console.debug&&(Y.console.debug=Y.console.info=Y.console.error=Y.console.log=Y.console.log||function(){console.log(arguments)}),"undefined"==typeof document&&(e.document={},document.createElement=document.captureStream=document.mozCaptureStream=function(){var e={getContext:function(){return e},play:function(){},pause:function(){},drawImage:function(){},toDataURL:function(){return""}};return e},document.addEventListener=document.removeEventListener=e.addEventListener=e.removeEventListener=function(){},e.HTMLVideoElement=e.HTMLMediaElement=function(){}),void 0===K.a&&(e.io=function(){return{on:function(e,t){t=t||function(){},"connect"===e&&t()},emit:function(e,t,n){n=n||function(){},"open-room"!==e&&"join-room"!==e||n(!0,t.sessionid,null)}}}),"undefined"==typeof location&&(e.location={protocol:"file:",href:"",hash:"",origin:"self"}),"undefined"==typeof screen&&(e.screen={width:0,height:0}),"undefined"==typeof URL&&(e.URL={createObjectURL:function(){return""},revokeObjectURL:function(){return""}}),e.window=Y),function(){var e="Fake/5.0 (FakeOS) AppleWebKit/123 (KHTML, like Gecko) Fake/12.3.4567.89 Fake/123.45";"object"===(void 0===X?"undefined":J(X))&&"object"===J(X.versions)&&X.versions.node&&!X.browser&&(r=X.versions.node.toString().replace("v",""),e="Nodejs/"+r+" (NodeOS) AppleWebKit/"+r+" (KHTML, like Gecko) Nodejs/"+r+" Nodejs/"+r),i=void 0!==Y?Y:window,"undefined"==typeof window&&("undefined"==typeof window&&void 0!==Y&&(Y.navigator={userAgent:e,getUserMedia:function(){}},i.window=Y),"undefined"==typeof location&&(i.location={protocol:"file:",href:"",hash:""}),"undefined"==typeof screen&&(i.screen={width:0,height:0}));var s=window.navigator;void 0!==s?(void 0!==s.webkitGetUserMedia&&(s.getUserMedia=s.webkitGetUserMedia),void 0!==s.mozGetUserMedia&&(s.getUserMedia=s.mozGetUserMedia)):s={getUserMedia:function(){},userAgent:e};var t=!!/Android|webOS|iPhone|iPad|iPod|BB10|BlackBerry|IEMobile|Opera Mini|Mobile|mobile/i.test(s.userAgent||""),a=!(-1===s.userAgent.indexOf("Edge")||!s.msSaveOrOpenBlob&&!s.msSaveBlob),c=!!window.opera||0<=s.userAgent.indexOf(" OPR/"),l=void 0!==window.InstallTrigger,u=/^((?!chrome|android).)*safari/i.test(s.userAgent),d=!!window.chrome&&!c,f="undefined"!=typeof document&&!!document.documentMode&&!a;function o(e,t){var n=0,o=!1,r=window.setInterval(function(){e()&&(window.clearInterval(r),t(o)),50<n++&&(window.clearInterval(r),t(o=!0))},10)}var n={Android:function(){return s.userAgent.match(/Android/i)},BlackBerry:function(){return s.userAgent.match(/BlackBerry|BB10/i)},iOS:function(){return s.userAgent.match(/iPhone|iPad|iPod/i)},Opera:function(){return s.userAgent.match(/Opera Mini/i)},Windows:function(){return s.userAgent.match(/IEMobile/i)},any:function(){return n.Android()||n.BlackBerry()||n.iOS()||n.Opera()||n.Windows()},getOsName:function(){var e="Unknown OS";return n.Android()&&(e="Android"),n.BlackBerry()&&(e="BlackBerry"),n.iOS()&&(e="iOS"),n.Opera()&&(e="Opera Mini"),n.Windows()&&(e="Windows"),e}},r="Unknown OS",i="Unknown OS Version";(e=function(){for(var e,t=s.appVersion,n=s.userAgent,o="-",r=[{s:"Windows 10",r:/(Windows 10.0|Windows NT 10.0)/},{s:"Windows 8.1",r:/(Windows 8.1|Windows NT 6.3)/},{s:"Windows 8",r:/(Windows 8|Windows NT 6.2)/},{s:"Windows 7",r:/(Windows 7|Windows NT 6.1)/},{s:"Windows Vista",r:/Windows NT 6.0/},{s:"Windows Server 2003",r:/Windows NT 5.2/},{s:"Windows XP",r:/(Windows NT 5.1|Windows XP)/},{s:"Windows 2000",r:/(Windows NT 5.0|Windows 2000)/},{s:"Windows ME",r:/(Win 9x 4.90|Windows ME)/},{s:"Windows 98",r:/(Windows 98|Win98)/},{s:"Windows 95",r:/(Windows 95|Win95|Windows_95)/},{s:"Windows NT 4.0",r:/(Windows NT 4.0|WinNT4.0|WinNT|Windows NT)/},{s:"Windows CE",r:/Windows CE/},{s:"Windows 3.11",r:/Win16/},{s:"Android",r:/Android/},{s:"Open BSD",r:/OpenBSD/},{s:"Sun OS",r:/SunOS/},{s:"Linux",r:/(Linux|X11)/},{s:"iOS",r:/(iPhone|iPad|iPod)/},{s:"Mac OS X",r:/Mac OS X/},{s:"Mac OS",r:/(MacPPC|MacIntel|Mac_PowerPC|Macintosh)/},{s:"QNX",r:/QNX/},{s:"UNIX",r:/UNIX/},{s:"BeOS",r:/BeOS/},{s:"OS/2",r:/OS\/2/},{s:"Search Bot",r:/(nuhk|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask Jeeves\/Teoma|ia_archiver)/}],i=0;e=r[i];i++)if(e.r.test(n)){o=e.s;break}var a="-";switch(/Windows/.test(o)&&(/Windows (.*)/.test(o)&&(a=/Windows (.*)/.exec(o)[1]),o="Windows"),o){case"Mac OS X":/Mac OS X (10[\.\_\d]+)/.test(n)&&(a=/Mac OS X (10[\.\_\d]+)/.exec(n)[1]);break;case"Android":/Android ([\.\_\d]+)/.test(n)&&(a=/Android ([\.\_\d]+)/.exec(n)[1]);break;case"iOS":/OS (\d+)_(\d+)_?(\d+)?/.test(n)&&(a=(a=/OS (\d+)_(\d+)_?(\d+)?/.exec(t))[1]+"."+a[2]+"."+(0|a[3]))}return{osName:o,osVersion:a}}())&&e.osName&&"-"!=e.osName?(r=e.osName,i=e.osVersion):n.any()&&"Android"==(r=n.getOsName())&&(i=!!(p=(p=(p||s.userAgent).toLowerCase()).match(/android\s([0-9\.]*)/))&&p[1]);var p="object"===(void 0===X?"undefined":J(X))&&"object"===J(X.versions)&&X.versions.node;"Unknown OS"===r&&p&&(r="Nodejs",i=X.versions.node.toString().replace("v",""));var h=!1,m=!1;["captureStream","mozCaptureStream","webkitCaptureStream"].forEach(function(e){"undefined"!=typeof document&&"function"==typeof document.createElement&&(!h&&e in document.createElement("canvas")&&(h=!0),!m&&e in document.createElement("video")&&(m=!0))});var g=/^(192\.168\.|169\.254\.|10\.|172\.(1[6-9]|2\d|3[01]))/,v=/([0-9]{1,3}(\.[0-9]{1,3}){3})/,b=/[a-f0-9]{1,4}(:[a-f0-9]{1,4}){7}/,y=[],w=[],x=[],_=[];s.mediaDevices&&s.mediaDevices.enumerateDevices&&(s.enumerateDevices=function(e){var t=s.mediaDevices.enumerateDevices();t&&t.then?s.mediaDevices.enumerateDevices().then(e).catch(function(){e([])}):e([])});var S=!1;(void 0!==P&&"getSources"in P||s.mediaDevices&&s.mediaDevices.enumerateDevices)&&(S=!0);var T=!1,C=!1,E=!1,A=!1,k=!1,M=window.DetectRTC||{};M.browser=function(){s.appVersion;var e,t,n=s.userAgent,o=s.appName,r=""+parseFloat(s.appVersion),i=parseInt(s.appVersion,10);if(u&&!d&&-1!==n.indexOf("CriOS")&&(d=!(u=!1)),c){o="Opera";try{i=(r=s.userAgent.split("OPR/")[1].split(" ")[0]).split(".")[0]}catch(e){r="0.0.0.0",i=0}}else f?(r=0<(t=n.indexOf("rv:"))?n.substring(t+3):(t=n.indexOf("MSIE"),n.substring(t+5)),o="IE"):d?(t=n.indexOf("Chrome"),o="Chrome",r=n.substring(t+7)):u?(t=n.indexOf("Safari"),o="Safari",r=n.substring(t+7),-1!==(t=n.indexOf("Version"))&&(r=n.substring(t+8)),-1!==s.userAgent.indexOf("Version/")&&(r=s.userAgent.split("Version/")[1].split(" ")[0])):l?(t=n.indexOf("Firefox"),o="Firefox",r=n.substring(t+8)):(e=n.lastIndexOf(" ")+1)<(t=n.lastIndexOf("/"))&&(o=n.substring(e,t),r=n.substring(t+1),o.toLowerCase()===o.toUpperCase()&&(o=s.appName));return a&&(o="Edge",r=s.userAgent.split("Edge/")[1]),-1!==(t=r.search(/[; \)]/))&&(r=r.substring(0,t)),i=parseInt(""+r,10),isNaN(i)&&(r=""+parseFloat(s.appVersion),i=parseInt(s.appVersion,10)),{fullVersion:r,version:i,name:o,isPrivateBrowsing:!1}}(),function(){var n,t;try{if(window.webkitRequestFileSystem)window.webkitRequestFileSystem(window.TEMPORARY,1,function(){n=!1},function(e){n=!0});else if(window.indexedDB&&/Firefox/.test(window.navigator.userAgent)){try{(t=window.indexedDB.open("test")).onerror=function(){return!0}}catch(e){n=!0}void 0===n&&o(function(){return"done"===t.readyState},function(e){e||(n=!t.result)})}else if(function(){var e=window.navigator.userAgent.toLowerCase();if(0!==e.indexOf("msie")||0!==e.indexOf("trident")){e=/(?:msie|rv:)\s?([\d\.]+)/.exec(e);return e&&10<=parseInt(e[1],10)}}()){n=!1;try{window.indexedDB||(n=!0)}catch(e){n=!0}}else if(window.localStorage&&/Safari/.test(window.navigator.userAgent)){try{window.localStorage.setItem("test",1)}catch(e){n=!0}void 0===n&&(n=!1,window.localStorage.removeItem("test"))}}catch(e){n=!1}o(function(){return void 0!==n},function(e){var t;t=n,M.browser.isPrivateBrowsing=!!t})}(),M.browser["is"+M.browser.name]=!0,M.osName=r,M.osVersion=i,"object"===(void 0===X?"undefined":J(X))&&"object"===J(X.versions)&&X.versions["node-webkit"];var O=!1;["RTCPeerConnection","webkitRTCPeerConnection","mozRTCPeerConnection","RTCIceGatherer"].forEach(function(e){O||e in window&&(O=!0)}),M.isWebRTCSupported=O,M.isORTCSupported="undefined"!=typeof RTCIceGatherer,i=!1,(M.browser.isChrome&&35<=M.browser.version||M.browser.isFirefox&&34<=M.browser.version||M.browser.isEdge&&17<=M.browser.version||"Android"===M.osName&&M.browser.isChrome)&&(i=!0),/^(https:|chrome-extension:)$/g.test(location.protocol||"")||("undefined"!=typeof document&&"string"==typeof document.domain&&document.domain.search&&-1===document.domain.search(/localhost|127.0./g)&&(M.browser.isChrome||M.browser.isEdge||M.browser.isOpera)||M.browser.isFirefox)&&(i=!1),M.isScreenCapturingSupported=i;var R={isSupported:!1,isCreateMediaStreamSourceSupported:!1};["AudioContext","webkitAudioContext","mozAudioContext","msAudioContext"].forEach(function(e){R.isSupported||e in window&&(R.isSupported=!0,window[e]&&"createMediaStreamSource"in window[e].prototype&&(R.isCreateMediaStreamSourceSupported=!0))}),M.isAudioContextSupported=R.isSupported,M.isCreateMediaStreamSourceSupported=R.isCreateMediaStreamSourceSupported,i=!1,M.browser.isChrome&&31<M.browser.version&&(i=!0),M.isRtpDataChannelsSupported=i,i=!1,(M.browser.isFirefox&&28<M.browser.version||M.browser.isChrome&&25<M.browser.version||M.browser.isOpera&&11<=M.browser.version)&&(i=!0),M.isSctpDataChannelsSupported=i,M.isMobileDevice=t,i=!1,(s.getUserMedia||s.mediaDevices&&s.mediaDevices.getUserMedia)&&(i=!0),M.browser.isChrome&&46<=M.browser.version&&!/^(https:|chrome-extension:)$/g.test(location.protocol||"")&&"undefined"!=typeof document&&"string"==typeof document.domain&&document.domain.search&&-1===document.domain.search(/localhost|127.0./g)&&(i="Requires HTTPs"),"Nodejs"===M.osName&&(i=!1),M.isGetUserMediaSupported=i;var t="";screen.width&&(t+=(screen.width||"")+" x "+(screen.height||"")),M.displayResolution=t,M.displayAspectRatio=((i=screen.width)/(i=function e(t,n){return 0==n?t:e(n,t%n)}(i,t=screen.height))/(t/i)).toFixed(2),M.isCanvasSupportsStreamCapturing=h,M.isVideoSupportsStreamCapturing=m,"Chrome"==M.browser.name&&53<=M.browser.version&&(M.isCanvasSupportsStreamCapturing||(M.isCanvasSupportsStreamCapturing="Requires chrome flag: enable-experimental-web-platform-features"),M.isVideoSupportsStreamCapturing||(M.isVideoSupportsStreamCapturing="Requires chrome flag: enable-experimental-web-platform-features")),M.DetectLocalIPAddress=function(t,e){var n,o;M.isWebRTCSupported&&(o=n=!0,function(n,e){if("undefined"!=typeof document&&"function"==typeof document.getElementById){var o={};if(!(r=window.RTCPeerConnection||window.mozRTCPeerConnection||window.webkitRTCPeerConnection)){var t=document.getElementById("iframe");if(!t)return;var t=t.contentWindow,r=t.RTCPeerConnection||t.mozRTCPeerConnection||t.webkitRTCPeerConnection}if(r){t=null;"Chrome"===M.browser&&M.browser.version<58&&(t={optional:[{RtpDataChannels:!0}]});var i=new r({iceServers:[{urls:"stun:stun.l.google.com:19302"}]},t);if(e&&(i.addStream?i.addStream(e):i.addTrack&&e.getTracks()[0]&&i.addTrack(e.getTracks()[0],e)),i.onicecandidate=function(e){e.candidate&&a(e.candidate.candidate)},!e)try{i.createDataChannel("sctp",{})}catch(e){}M.isPromisesSupported?i.createOffer().then(function(e){i.setLocalDescription(e).then(s)}):i.createOffer(function(e){i.setLocalDescription(e,s,function(){})},function(){})}}function a(e){var t=v.exec(e);t&&(t=t[1],e=e.match(g),void 0===o[t]&&n(t,e,!0),o[t]=!0)}function s(){i.localDescription.sdp.split("\n").forEach(function(e){0===e.indexOf("a=candidate:")&&a(e)})}}(function(e){e.match(g)?t("Local: "+e,n=!1,o):e.match(b)?t("Public: "+e,n,o=!1):t("Public: "+e,n,o)},e))},M.isWebSocketsSupported="WebSocket"in window&&2===window.WebSocket.CLOSING,M.isWebSocketsBlocked=!M.isWebSocketsSupported,"Nodejs"===M.osName&&(M.isWebSocketsSupported=!0,M.isWebSocketsBlocked=!1),M.checkWebSocketsSupport=function(t){t=t||function(){};try{var e,n=new WebSocket("wss://echo.websocket.org:443/");n.onopen=function(){M.isWebSocketsBlocked=!1,e=(new Date).getTime(),n.send("ping")},n.onmessage=function(){M.WebsocketLatency=(new Date).getTime()-e+"ms",t(),n.close(),n=null},n.onerror=function(){M.isWebSocketsBlocked=!0,t()}}catch(e){M.isWebSocketsBlocked=!0,t()}},M.load=function(e){var t,o;t=e=e||function(){},S?(!s.enumerateDevices&&window.MediaStreamTrack&&window.MediaStreamTrack.getSources&&(s.enumerateDevices=window.MediaStreamTrack.getSources.bind(window.MediaStreamTrack)),!s.enumerateDevices&&s.enumerateDevices&&(s.enumerateDevices=s.enumerateDevices.bind(s)),s.enumerateDevices?(y=[],w=[],x=[],k=A=E=C=T=!(_=[]),o={},s.enumerateDevices(function(e){e.forEach(function(e){var t,n={};for(t in e)try{"function"!=typeof e[t]&&(n[t]=e[t])}catch(e){}o[n.deviceId+n.label+n.kind]||("audio"===n.kind&&(n.kind="audioinput"),"video"===n.kind&&(n.kind="videoinput"),n.deviceId||(n.deviceId=n.id),n.id||(n.id=n.deviceId),n.label?("videoinput"!==n.kind||k||(k=!0),"audioinput"!==n.kind||A||(A=!0)):(n.isCustomLabel=!0,"videoinput"===n.kind?n.label="Camera "+(_.length+1):"audioinput"===n.kind?n.label="Microphone "+(w.length+1):"audiooutput"===n.kind?n.label="Speaker "+(x.length+1):n.label="Please invoke getUserMedia once.",void 0!==M&&M.browser.isChrome&&46<=M.browser.version&&!/^(https:|chrome-extension:)$/g.test(location.protocol||"")&&"undefined"!=typeof document&&"string"==typeof document.domain&&document.domain.search&&-1===document.domain.search(/localhost|127.0./g)&&(n.label="HTTPs is required to get label of this "+n.kind+" device.")),"audioinput"===n.kind&&(T=!0,-1===w.indexOf(n)&&w.push(n)),"audiooutput"===n.kind&&(C=!0,-1===x.indexOf(n)&&x.push(n)),"videoinput"===n.kind&&(E=!0,-1===_.indexOf(n)&&_.push(n)),y.push(n),o[n.deviceId+n.label+n.kind]=n)}),void 0!==M&&(M.MediaDevices=y,M.hasMicrophone=T,M.hasSpeakers=C,M.hasWebcam=E,M.isWebsiteHasWebcamPermissions=k,M.isWebsiteHasMicrophonePermissions=A,M.audioInputDevices=w,M.audioOutputDevices=x,M.videoInputDevices=_),t&&t()})):t&&t()):t&&t()},M.MediaDevices=void 0!==y?y:[],M.hasMicrophone=T,M.hasSpeakers=C,M.hasWebcam=E,M.isWebsiteHasWebcamPermissions=k,M.isWebsiteHasMicrophonePermissions=A,M.audioInputDevices=w,M.audioOutputDevices=x,M.videoInputDevices=_,i=!1,"undefined"!=typeof document&&"function"==typeof document.createElement&&"setSinkId"in document.createElement("video")&&(i=!0),M.isSetSinkIdSupported=i,i=!1,M.browser.isFirefox&&"undefined"!=typeof mozRTCPeerConnection?"getSenders"in mozRTCPeerConnection.prototype&&(i=!0):M.browser.isChrome&&"undefined"!=typeof webkitRTCPeerConnection&&"getSenders"in webkitRTCPeerConnection.prototype&&(i=!0),M.isRTPSenderReplaceTracksSupported=i,i=!1,M.browser.isFirefox&&38<M.browser.version&&(i=!0),M.isRemoteStreamProcessingSupported=i,i=!1,void 0!==P&&"applyConstraints"in P.prototype&&(i=!0),M.isApplyConstraintsSupported=i,i=!1,M.browser.isFirefox&&43<=M.browser.version&&(i=!0),M.isMultiMonitorScreenCapturingSupported=i,M.isPromisesSupported=!!("Promise"in window),M.version="1.3.7",void 0===M&&(window.DetectRTC={}),void 0===(i=window.MediaStream)&&"undefined"!=typeof webkitMediaStream&&(i=webkitMediaStream),M.MediaStream=void 0!==i&&"function"==typeof i&&Object.keys(i.prototype),M.MediaStreamTrack=void 0!==P&&Object.keys(P.prototype),i=window.RTCPeerConnection||window.mozRTCPeerConnection||window.webkitRTCPeerConnection,M.RTCPeerConnection=void 0!==i&&Object.keys(i.prototype),window.DetectRTC=M,"function"==typeof define&&ee(144)&&define("DetectRTC",[],function(){return M})}(),"undefined"!=typeof cordova&&(DetectRTC.isMobileDevice=!0,DetectRTC.browser.name="Chrome"),navigator&&navigator.userAgent&&-1!==navigator.userAgent.indexOf("Crosswalk")&&(DetectRTC.isMobileDevice=!0,DetectRTC.browser.name="Chrome"),window.addEventListener||(window.addEventListener=function(e,t,n){e.attachEvent&&e.attachEvent("on"+t,n)}),window.attachEventListener=function(e,t,n,o){e.addEventListener(t,n,o)};var x=window.MediaStream;function _(e,t){return!(e.session.audio&&"two-way"===e.session.audio||("Firefox"!==DetectRTC.browser.name||!1===t)&&("Chrome"!==DetectRTC.browser.name||DetectRTC.browser.version<50||!0!==typeof t&&(void 0!==t||!e.session.audio||!e.session.screen||e.session.video||(t=!0,0))))}function S(e){return"Firefox"===DetectRTC.browser.name||"Chrome"===DetectRTC.browser.name&&{mandatory:{chromeMediaSource:e.mandatory.chromeMediaSource,chromeMediaSourceId:e.mandatory.chromeMediaSourceId}}}function T(e,t){return e&&e.getTracks?e.getTracks().filter(function(e){return e.kind===(t||"audio")}):[]}function t(){var e;"undefined"!=typeof cordova&&void 0!==cordova.plugins&&void 0!==cordova.plugins.iosrtc&&(e=cordova.plugins.iosrtc,window.webkitRTCPeerConnection=e.RTCPeerConnection,window.RTCSessionDescription=e.RTCSessionDescription,window.RTCIceCandidate=e.RTCIceCandidate,window.MediaStream=e.MediaStream,window.MediaStreamTrack=e.MediaStreamTrack,navigator.getUserMedia=navigator.webkitGetUserMedia=e.getUserMedia,e.debug.enable("iosrtc*"),"function"==typeof e.selectAudioOutput&&e.selectAudioOutput(window.iOSDefaultAudioOutputDevice||"speaker"),e.registerGlobals())}void 0===x&&"undefined"!=typeof webkitMediaStream&&(x=webkitMediaStream),void 0!==x&&("stop"in x.prototype||(x.prototype.stop=function(){this.getTracks().forEach(function(e){e.stop()})})),window.iOSDefaultAudioOutputDevice=window.iOSDefaultAudioOutputDevice||"speaker",document.addEventListener("deviceready",t,!1),t();var C,E={};function A(e){return{OfferToReceiveAudio:!!e.OfferToReceiveAudio,OfferToReceiveVideo:!!e.OfferToReceiveVideo}}void 0!==window.RTCPeerConnection?C=window.RTCPeerConnection:"undefined"!=typeof mozRTCPeerConnection?C=mozRTCPeerConnection:"undefined"!=typeof webkitRTCPeerConnection&&(C=webkitRTCPeerConnection);var k=window.RTCSessionDescription||window.mozRTCSessionDescription,M=window.RTCIceCandidate||window.mozRTCIceCandidate,P=window.MediaStreamTrack;function l(n){if(void 0!==window.RTCPeerConnection?C=window.RTCPeerConnection:"undefined"!=typeof mozRTCPeerConnection?C=mozRTCPeerConnection:"undefined"!=typeof webkitRTCPeerConnection&&(C=webkitRTCPeerConnection),k=window.RTCSessionDescription||window.mozRTCSessionDescription,M=window.RTCIceCandidate||window.mozRTCIceCandidate,P=window.MediaStreamTrack,!C)throw"WebRTC 1.0 (RTCPeerConnection) API are NOT available in this browser.";var o=n.rtcMultiConnection;this.extra=(n.remoteSdp||o).extra,this.userid=n.userid,this.streams=[],this.channels=n.channels||[],this.connectionDescription=n.connectionDescription,this.addStream=function(e){o.addStream(e,r.userid)},this.removeStream=function(e){o.removeStream(e,r.userid)};var r=this;n.remoteSdp&&(this.connectionDescription=n.remoteSdp.connectionDescription);var i,a={};E.sdpConstraints=A({OfferToReceiveAudio:!0,OfferToReceiveVideo:!0});var e=!!n.renegotiatingPeer;n.remoteSdp&&(e=!!n.remoteSdp.renegotiatingPeer);var t=[];if(o.attachStreams.forEach(function(e){e&&t.push(e)}),e)i=n.peerRef;else{var s="all";(o.candidates.turn||o.candidates.relay)&&(o.candidates.stun||o.candidates.reflexive||o.candidates.host||(s="relay"));try{var c={iceServers:o.iceServers,iceTransportPolicy:o.iceTransportPolicy||s};void 0!==o.iceCandidatePoolSize&&(c.iceCandidatePoolSize=o.iceCandidatePoolSize),void 0!==o.bundlePolicy&&(c.bundlePolicy=o.bundlePolicy),void 0!==o.rtcpMuxPolicy&&(c.rtcpMuxPolicy=o.rtcpMuxPolicy),"Chrome"===DetectRTC.browser.name&&(c.sdpSemantics=o.sdpSemantics||"unified-plan"),o.iceServers&&o.iceServers.length||(c=null,o.optionalArgument=null),i=new C(c,o.optionalArgument)}catch(e){try{c={iceServers:o.iceServers},i=new C(c)}catch(e){i=new C}}}!i.getRemoteStreams&&i.getReceivers&&(i.getRemoteStreams=function(){var t=new x;return i.getReceivers().forEach(function(e){t.addTrack(e.track)}),[t]}),!i.getLocalStreams&&i.getSenders&&(i.getLocalStreams=function(){var t=new x;return i.getSenders().forEach(function(e){t.addTrack(e.track)}),[t]}),i.onicecandidate=function(e){e.candidate?o.trickleIce&&n.onLocalCandidate({candidate:e.candidate.candidate,sdpMid:e.candidate.sdpMid,sdpMLineIndex:e.candidate.sdpMLineIndex}):o.trickleIce||(e=i.localDescription,n.onLocalSdp({type:e.type,sdp:e.sdp,remotePeerSdpConstraints:n.remotePeerSdpConstraints||!1,renegotiatingPeer:!!n.renegotiatingPeer||!1,connectionDescription:r.connectionDescription,dontGetRemoteStream:!!n.dontGetRemoteStream,extra:o?o.extra:{},streamsToShare:p}))},t.forEach(function(t){n.remoteSdp&&n.remoteSdp.remotePeerSdpConstraints&&n.remoteSdp.remotePeerSdpConstraints.dontGetRemoteStream||n.dontAttachLocalStream||(t=o.beforeAddingStream(t,r))&&(i.getLocalStreams().forEach(function(e){t&&e.id==t.id&&(t=null)}),t&&t.getTracks&&t.getTracks().forEach(function(e){try{i.addTrack(e,t)}catch(e){}}))}),i.oniceconnectionstatechange=i.onsignalingstatechange=function(){var e=r.extra;o.peers[r.userid]&&(e=o.peers[r.userid].extra||e),i&&(n.onPeerStateChanged({iceConnectionState:i.iceConnectionState,iceGatheringState:i.iceGatheringState,signalingState:i.signalingState,extra:e,userid:r.userid}),i&&i.iceConnectionState&&-1!==i.iceConnectionState.search(/closed|failed/gi)&&r.streams instanceof Array&&r.streams.forEach(function(e){e=o.streamEvents[e.id]||{streamid:e.id,stream:e,type:"remote"};o.onstreamended(e)}))};var l={OfferToReceiveAudio:!!t.length,OfferToReceiveVideo:!!t.length};n.localPeerSdpConstraints&&(l=n.localPeerSdpConstraints),E.sdpConstraints=A(l);var u={};i.ontrack=function(t){var e;t&&"track"===t.type&&(t.stream=t.streams[t.streams.length-1],t.stream.id||(t.stream.id=t.track.id),u[t.stream.id]&&"Safari"!==DetectRTC.browser.name?t.track&&(t.track.onended=function(){i.onremovestream(t)}):(u[t.stream.id]=t.stream.id,e={},n.remoteSdp&&n.remoteSdp.streamsToShare?e=n.remoteSdp.streamsToShare:n.streamsToShare&&(e=n.streamsToShare),(e=e[t.stream.id])?(t.stream.isAudio=e.isAudio,t.stream.isVideo=e.isVideo,t.stream.isScreen=e.isScreen):(t.stream.isVideo=!!T(t.stream,"video").length,t.stream.isAudio=!t.stream.isVideo,t.stream.isScreen=!1),t.stream.streamid=t.stream.id,a[t.stream.id]=t.stream,n.onRemoteStream(t.stream),t.stream.getTracks().forEach(function(e){e.onended=function(){i.onremovestream(t)}}),t.stream.onremovetrack=function(){i.onremovestream(t)}))},i.onremovestream=function(e){e.stream.streamid=e.stream.id,a[e.stream.id]&&delete a[e.stream.id],n.onRemoteStreamRemoved(e.stream)},"function"!=typeof i.removeStream&&(i.removeStream=function(t){t.getTracks().forEach(function(e){i.removeTrack(e,t)})}),this.addRemoteCandidate=function(e){i.addIceCandidate(new M(e))},this.addRemoteSdp=function(t,n){n=n||function(){},"Safari"!==DetectRTC.browser.name&&(t.sdp=o.processSdp(t.sdp)),i.setRemoteDescription(new k(t)).then(n,function(e){o.enableLogs&&console.error("setRemoteDescription failed","\n",e,"\n",t.sdp),n()}).catch(function(e){o.enableLogs&&console.error("setRemoteDescription failed","\n",e,"\n",t.sdp),n()})};var d=!0;function f(t){t.binaryType="arraybuffer",t.onmessage=function(e){n.onDataChannelMessage(e.data)},t.onopen=function(){n.onDataChannelOpened(t)},t.onerror=function(e){n.onDataChannelError(e)},t.onclose=function(e){n.onDataChannelClosed(e)},t.internalSend=t.send,t.send=function(e){"open"===t.readyState&&t.internalSend(e)},i.channel=t}n.remoteSdp&&(d=!1),this.createDataChannel=function(){f(i.createDataChannel("sctp",{}))},!0!==o.session.data||e||(d?this.createDataChannel():i.ondatachannel=function(e){f(e.channel)}),this.enableDisableVideoEncoding=function(e){var t,n;i.getSenders().forEach(function(e){t||"video"!==e.track.kind||(t=e)}),t&&t.getParameters&&((n=t.getParameters()).encodings[1]&&(n.encodings[1].active=!!e),n.encodings[2]&&(n.encodings[2].active=!!e),t.setParameters(n))},n.remoteSdp&&(n.remoteSdp.remotePeerSdpConstraints&&(l=n.remoteSdp.remotePeerSdpConstraints),E.sdpConstraints=A(l),this.addRemoteSdp(n.remoteSdp,function(){h("createAnswer")})),"two-way"!=o.session.audio&&"two-way"!=o.session.video&&"two-way"!=o.session.screen||(E.sdpConstraints=A({OfferToReceiveAudio:"two-way"==o.session.audio||n.remoteSdp&&n.remoteSdp.remotePeerSdpConstraints&&n.remoteSdp.remotePeerSdpConstraints.OfferToReceiveAudio,OfferToReceiveVideo:"two-way"==o.session.video||"two-way"==o.session.screen||n.remoteSdp&&n.remoteSdp.remotePeerSdpConstraints&&n.remoteSdp.remotePeerSdpConstraints.OfferToReceiveAudio}));var p={};function h(e){i[e](E.sdpConstraints).then(function(e){"Safari"!==DetectRTC.browser.name&&(e.sdp=o.processSdp(e.sdp)),i.setLocalDescription(e).then(function(){o.trickleIce&&(n.onLocalSdp({type:e.type,sdp:e.sdp,remotePeerSdpConstraints:n.remotePeerSdpConstraints||!1,renegotiatingPeer:!!n.renegotiatingPeer||!1,connectionDescription:r.connectionDescription,dontGetRemoteStream:!!n.dontGetRemoteStream,extra:o?o.extra:{},streamsToShare:p}),o.onSettingLocalDescription(r))},function(e){o.enableLogs&&console.error("setLocalDescription error",e)})},function(e){o.enableLogs&&console.error("sdp-error",e)})}i.getLocalStreams().forEach(function(e){p[e.streamid]={isAudio:!!e.isAudio,isVideo:!!e.isVideo,isScreen:!!e.isScreen}}),d&&h("createOffer"),i.nativeClose=i.close,i.close=function(){if(i){try{i.nativeClose!==i.close&&i.nativeClose()}catch(e){}i=null,r.peer=null}},this.peer=i}var O={removeVPX:function(e){var t=r(e);return e=o(e,"vp9",t,!0),o(e,"vp8",t,!0)},disableNACK:function(e){if(!e||"string"!=typeof e)throw"Invalid arguments.";return(e=(e=(e=e.replace("a=rtcp-fb:126 nack\r\n","")).replace("a=rtcp-fb:126 nack pli\r\n","a=rtcp-fb:126 pli\r\n")).replace("a=rtcp-fb:97 nack\r\n","")).replace("a=rtcp-fb:97 nack pli\r\n","a=rtcp-fb:97 pli\r\n")},prioritize:function(o,e){if(e&&e.getSenders&&e.getSenders().length){if(!o||"string"!=typeof o)throw"Invalid arguments.";e.getSenders().forEach(function(e){for(var t=e.getParameters(),n=0;n<t.codecs.length;n++)if(t.codecs[n].mimeType==o){t.codecs.unshift(t.codecs.splice(n,1));break}e.setParameters(t)})}},removeNonG722:function(e){return e.replace(/m=audio ([0-9]+) RTP\/SAVPF ([0-9 ]*)/g,"m=audio $1 RTP/SAVPF 9")},setApplicationSpecificBandwidth:function(e,t,n){return e=e,n=n,(t=t)&&(void 0!==B&&B||(n&&(t.screen?t.screen<300&&console.warn("It seems that you are using wrong bandwidth value for screen. Screen sharing is expected to fail."):console.warn("It seems that you are not using bandwidth for screen. Screen sharing is expected to fail.")),t.screen&&n&&(e=(e=e.replace(/b=AS([^\r\n]+\r\n)/g,"")).replace(/a=mid:video\r\n/g,"a=mid:video\r\nb=AS:"+t.screen+"\r\n")),(t.audio||t.video)&&(e=e.replace(/b=AS([^\r\n]+\r\n)/g,"")),t.audio&&(e=e.replace(/a=mid:audio\r\n/g,"a=mid:audio\r\nb=AS:"+t.audio+"\r\n")),t.screen?e=e.replace(/a=mid:video\r\n/g,"a=mid:video\r\nb=AS:"+t.screen+"\r\n"):t.video&&(e=e.replace(/a=mid:video\r\n/g,"a=mid:video\r\nb=AS:"+t.video+"\r\n")))),e},setVideoBitrates:function(e,t){var n,o=(t=t||{}).min,r=t.max,i=e.split("\r\n"),t=u(i,"a=rtpmap","VP8/90000");if(t&&(n=d(i[t])),!n)return e;t=u(i,"a=rtpmap","rtx/90000");if(t&&(a=d(i[t])),!t)return e;var a,t=u(i,"a=fmtp:"+a.toString());return null!==t&&(a="\r\n",a+="a=fmtp:"+n+" x-google-min-bitrate="+(o||"228")+"; x-google-max-bitrate="+(r||"228"),i[t]=i[t].concat(a),e=i.join("\r\n")),e},setOpusAttributes:function(e,t){t=t||{};var n=e.split("\r\n"),o=u(n,"a=rtpmap","opus/48000");if(o&&(r=d(n[o])),!r)return e;var r=u(n,"a=fmtp:"+r.toString());if(null===r)return e;e="";return e+="; stereo="+(void 0!==t.stereo?t.stereo:"1"),e+="; sprop-stereo="+(void 0!==t["sprop-stereo"]?t["sprop-stereo"]:"1"),void 0!==t.maxaveragebitrate&&(e+="; maxaveragebitrate="+(t.maxaveragebitrate||1048576)),void 0!==t.maxplaybackrate&&(e+="; maxplaybackrate="+(t.maxplaybackrate||1048576)),void 0!==t.cbr&&(e+="; cbr="+(void 0!==t.cbr?t.cbr:"1")),void 0!==t.useinbandfec&&(e+="; useinbandfec="+t.useinbandfec),void 0!==t.usedtx&&(e+="; usedtx="+t.usedtx),void 0!==t.maxptime&&(e+="\r\na=maxptime:"+t.maxptime),n[r]=n[r].concat(e),n.join("\r\n")},preferVP9:function(e){return n(e,"vp9")},preferCodec:n,forceStereoAudio:function(e){for(var t=e.split("\r\n"),n=null,o=0;o<t.length;o++)if(-1!==t[o].search("opus/48000")){var r=extractSdp(t[o],/:(\d+) opus\/48000/i);break}for(o=0;o<t.length;o++)if(-1!==t[o].search("a=fmtp")&&extractSdp(t[o],/a=fmtp:(\d+)/)===r){n=o;break}return null===n?e:(t[n]=t[n].concat("; stereo=1; sprop-stereo=1"),e=t.join("\r\n"))}};function n(e,t){var n=r(e);return!n.videoCodecNumbers||"vp8"===t&&n.vp8LineNumber===n.videoCodecNumbers[0]||"vp9"===t&&n.vp9LineNumber===n.videoCodecNumbers[0]||"h264"===t&&n.h264LineNumber===n.videoCodecNumbers[0]?e:e=o(e,t,n)}function o(e,t,n,o){var r="";if("vp8"===t){if(!n.vp8LineNumber)return e;r=n.vp8LineNumber}if("vp9"===t){if(!n.vp9LineNumber)return e;r=n.vp9LineNumber}if("h264"===t){if(!n.h264LineNumber)return e;r=n.h264LineNumber}var t=n.videoCodecNumbersOriginal.split("SAVPF")[0]+"SAVPF ",i=o?[]:[r];return n.videoCodecNumbers.forEach(function(e){e!==r&&i.push(e)}),t+=i.join(" "),e.replace(n.videoCodecNumbersOriginal,t)}function r(e){var n={};return e.split("\n").forEach(function(t){0===t.indexOf("m=video")&&(n.videoCodecNumbers=[],t.split("SAVPF")[1].split(" ").forEach(function(e){(e=e.trim())&&e.length&&(n.videoCodecNumbers.push(e),n.videoCodecNumbersOriginal=t)})),-1===t.indexOf("VP8/90000")||n.vp8LineNumber||(n.vp8LineNumber=t.replace("a=rtpmap:","").split(" ")[0]),-1===t.indexOf("VP9/90000")||n.vp9LineNumber||(n.vp9LineNumber=t.replace("a=rtpmap:","").split(" ")[0]),-1===t.indexOf("H264/90000")||n.h264LineNumber||(n.h264LineNumber=t.replace("a=rtpmap:","").split(" ")[0])}),n}function u(e,t,n){return function(e,t,n){for(var o=e.length,r=0;r<o;++r)if(0===e[r].indexOf(t)&&(!n||-1!==e[r].toLowerCase().indexOf(n.toLowerCase())))return r;return null}(e,t,n)}function d(e){var t=new RegExp("a=rtpmap:(d+) w+/d+"),t=e.match(t);return t&&2===t.length?t[1]:null}window.BandwidthHandler=O;var R={processCandidates:function(e,t){var n=t.candidate,o=e.candidates,r=o.stun,i=o.turn;if(c(o.reflexive)||(r=o.reflexive),c(o.relay)||(i=o.relay),(o.host||!n.match(/typ host/g))&&(i||!n.match(/typ relay/g))&&(r||!n.match(/typ srflx/g))){r=e.iceProtocols;if((r.udp||!n.match(/ udp /g))&&(r.tcp||!n.match(/ tcp /g)))return e.enableLogs&&console.debug("Your candidate pairs:",n),{candidate:n,sdpMid:t.sdpMid,sdpMLineIndex:t.sdpMLineIndex}}}},j=function(e){return[{urls:["stun:webrtcweb.com:7788"],username:"muazkh",credential:"muazkh"},{urls:["turn:webrtcweb.com:7788","turn:webrtcweb.com:8877","turn:webrtcweb.com:4455"],username:"muazkh",credential:"muazkh"},{urls:["stun:stun.l.google.com:19302","stun:stun1.l.google.com:19302","stun:stun2.l.google.com:19302","stun:stun.l.google.com:19302?transport=udp"]}]};function I(r){if(!0!==currentUserMediaRequest.mutex){currentUserMediaRequest.mutex=!0;var t,n,o,i=JSON.stringify(r.localMediaConstraints);if(currentUserMediaRequest.streams[i])a(currentUserMediaRequest.streams[i].stream,!0);else{if(/BB10|BlackBerry/i.test(navigator.userAgent||"")||void 0===navigator.mediaDevices||"function"!=typeof navigator.mediaDevices.getUserMedia)return navigator.getUserMedia=navigator.getUserMedia||navigator.webkitGetUserMedia||navigator.mozGetUserMedia,void navigator.getUserMedia(r.localMediaConstraints,function(e){e.streamid=e.streamid||e.id||v(),e.idInstance=i,a(e)},function(e){r.onLocalMediaError(e,r.localMediaConstraints)});void 0===navigator.mediaDevices&&(navigator.getUserMedia=navigator.getUserMedia||navigator.webkitGetUserMedia||navigator.mozGetUserMedia,o=function(){},navigator.mediaDevices={getUserMedia:function(e){return navigator.getUserMedia(e,function(e){e(stream),t=stream},function(e){o(e),n=e}),{then:function(e){if(!t)return{then:function(e){n?e(n):o=e}};e(t)}}}}),navigator.mediaDevices.getUserMedia(r.localMediaConstraints).then(function(e){e.streamid=e.streamid||e.id||v(),e.idInstance=i,a(e)}).catch(function(e){r.onLocalMediaError(e,r.localMediaConstraints)})}}else currentUserMediaRequest.queueRequests.push(r);function a(e,t){var n;n=r.localMediaConstraints,o=e,n.mandatory&&n.mandatory.chromeMediaSource||n.mozMediaSource||n.mediaSource?o.isScreen=!0:n.video?o.isVideo=!0:n.audio&&(o.isAudio=!0);var o="ended";"oninactive"in e&&(o="inactive"),e.addEventListener(o,function(){delete currentUserMediaRequest.streams[i],currentUserMediaRequest.mutex=!1,currentUserMediaRequest.queueRequests.indexOf(r)&&(delete currentUserMediaRequest.queueRequests[currentUserMediaRequest.queueRequests.indexOf(r)],currentUserMediaRequest.queueRequests=s(currentUserMediaRequest.queueRequests))},!1),currentUserMediaRequest.streams[i]={stream:e},currentUserMediaRequest.mutex=!1,currentUserMediaRequest.queueRequests.length&&I(currentUserMediaRequest.queueRequests.shift()),r.onGettingLocalMedia(e,t)}}window.currentUserMediaRequest={streams:[],mutex:!1,queueRequests:[],remove:function(e){this.mutex=!1;var t=this.streams[e];t&&(t=(t=t.stream).currentUserMediaRequestOptions,this.queueRequests.indexOf(t)&&(delete this.queueRequests[this.queueRequests.indexOf(t)],this.queueRequests=s(this.queueRequests)),this.streams[e].stream=null,delete this.streams[e])}};var N={setHandlers:function(o,r,i){var e;o&&o.addEventListener&&(void 0!==r&&1!=r||(e="ended","oninactive"in o&&(e="inactive"),o.addEventListener(e,function(){N.onSyncNeeded(this.streamid,e)},!1)),o.mute=function(e,t){e=L(e),void 0!==t&&(r=t),void 0!==e&&"audio"!=e||T(o,"audio").forEach(function(e){e.enabled=!1,i.streamEvents[o.streamid].isAudioMuted=!0}),void 0!==e&&"video"!=e||T(o,"video").forEach(function(e){e.enabled=!1}),void 0!==r&&1!=r||N.onSyncNeeded(o.streamid,"mute",e),i.streamEvents[o.streamid].muteType=e||"both",a(o,"mute",e)},o.unmute=function(e,t){var n;e=L(e),void 0!==t&&(r=t),i.streamEvents[o.streamid].mediaElement&&((n=i.streamEvents[o.streamid].mediaElement).volume=0,function e(t,n,o,r){n<=(r=(r||0)+1)||setTimeout(function(){o(),e(t,n,o,r)},t)}(200,5,function(){try{n.volume+=.2}catch(e){n.volume=1}})),void 0!==e&&"audio"!=e||T(o,"audio").forEach(function(e){e.enabled=!0,i.streamEvents[o.streamid].isAudioMuted=!1}),void 0!==e&&"video"!=e||(T(o,"video").forEach(function(e){e.enabled=!0}),void 0!==e&&"video"==e&&i.streamEvents[o.streamid].isAudioMuted&&function e(t){t=t||0,++t<100&&i.streamEvents[o.streamid].isAudioMuted&&(o.mute("audio"),setTimeout(function(){e(t)},50))}()),void 0!==r&&1!=r||N.onSyncNeeded(o.streamid,"unmute",e),i.streamEvents[o.streamid].unmuteType=e||"both",a(o,"unmute",e)})},onSyncNeeded:function(e,t,n){}};function L(e){if(e)return"string"==typeof e||void 0===e?e:e.audio&&e.video?null:e.audio?"audio":e.video?"video":void 0}window.addEventListener("message",function(e){e.origin==window.location.origin&&function(e){if("PermissionDeniedError"==e){if(z="PermissionDeniedError",D)return D("PermissionDeniedError");throw new Error("PermissionDeniedError")}"rtcmulticonnection-extension-loaded"==e&&(z="desktop"),e.sourceId&&D&&D(F=e.sourceId,!0===e.canRequestAudioTrack)}(e.data)});var F,D,z="screen";function U(e){if(e){if("desktop"==z)return e(!0);window.postMessage("are-you-there","*"),setTimeout(function(){e("screen"!=z)},2e3)}}var B=void 0!==window.InstallTrigger;window.opera||navigator.userAgent.indexOf(" OPR/");function G(e,t){if(B)return t("not-chrome");2!=arguments.length&&(t=e,e="ajhifddimkapgcifgcodmmfdlknahffk");var n=document.createElement("img");n.src="chrome-extension://"+e+"/icon.png",n.onload=function(){z="screen",window.postMessage("are-you-there","*"),setTimeout(function(){t("screen"==z?"installed-disabled":"installed-enabled")},2e3)},n.onerror=function(){t("not-installed")}}function V(a){var s={};return{receive:function(e,t,n){var o,r,i=e.uuid;s[i]||(s[i]=[]),s[i].push(e.message),e.last&&(o=s[i].join(""),e.isobject&&(o=JSON.parse(o)),r={data:o,userid:t,extra:n,latency:(new Date).getTime()-e.sendingTime},a.autoTranslateText?(r.original=r.data,a.Translator.TranslateText(r.data,function(e){r.data=e,a.onmessage(r)})):a.onmessage(r),delete s[i])}}}window.chrome;var q={send:function(e){var r,i=e.connection,a=e.channel,s=e.remoteUserId,e=e.text,c=i.chunkSize||1e3,l=!1;"string"!=typeof e&&(l=!0,e=JSON.stringify(e));var u=v(),d=(new Date).getTime();!function e(t,n){var o={type:"text",uuid:u,sendingTime:d};t&&(n=t,o.packets=parseInt(n.length/c)),n.length>c?o.message=n.slice(0,c):(o.message=n,o.last=!0,o.isobject=l),a.send(o,s),(r=n.slice(o.message.length)).length&&setTimeout(function(){e(null,r)},i.chunkInterval||100)}(e)}},H={handle:function(n){var o={};n.onFileStart=function(e){var t=document.createElement("div");if(t.title=e.name,t.innerHTML="<label>0%</label> <progress></progress>",e.remoteUserId&&(t.innerHTML+=" (Sharing with:"+e.remoteUserId+")"),n.filesContainer||(n.filesContainer=document.body||document.documentElement),n.filesContainer.insertBefore(t,n.filesContainer.firstChild),!e.remoteUserId)return o[e.uuid]={div:t,progress:t.querySelector("progress"),label:t.querySelector("label")},void(o[e.uuid].progress.max=e.maxChunks);o[e.uuid]||(o[e.uuid]={}),o[e.uuid][e.remoteUserId]={div:t,progress:t.querySelector("progress"),label:t.querySelector("label")},o[e.uuid][e.remoteUserId].progress.max=e.maxChunks},n.onFileProgress=function(e){var t=o[e.uuid];t&&(e.remoteUserId&&!(t=o[e.uuid][e.remoteUserId])||(t.progress.value=e.currentPosition||e.maxChunks||t.progress.max,e=t.progress,t=t.label,-1!==e.position&&(e=+e.position.toFixed(2).split(".")[1]||100,t.innerHTML=e+"%")))},n.onFileEnd=function(e){var t=o[e.uuid];t?e.remoteUserId&&!(t=o[e.uuid][e.remoteUserId])||(t=t.div,-1!=e.type.indexOf("image")?t.innerHTML='<a href="'+e.url+'" download="'+e.name+'">Download <strong style="color:red;">'+e.name+'</strong> </a><br /><img src="'+e.url+'" title="'+e.name+'" style="max-width: 80%;">':t.innerHTML='<a href="'+e.url+'" download="'+e.name+'">Download <strong style="color:red;">'+e.name+'</strong> </a><br /><iframe src="'+e.url+'" title="'+e.name+'" style="width: 80%;border: 0;height: inherit;margin-top:1em;"></iframe>'):console.error("No such progress-helper element exist.",e)}}},W={handle:function(r){r.autoTranslateText=!1,r.language="en",r.googKey="AIzaSyCgB5hmFY74WYB-EoWkhr9cAGr6TiTHrEE",r.Translator={TranslateText:function(e,t){var n=document.createElement("script");n.type="text/javascript";var o=encodeURIComponent(e),e="method"+r.token();window[e]=function(e){e.data&&e.data.translations[0]&&t?t(e.data.translations[0].translatedText):e.error&&"Daily Limit Exceeded"===e.error.message?console.error('Text translation failed. Error message: "Daily Limit Exceeded."'):e.error?console.error(e.error.message):console.error(e)};o="https://www.googleapis.com/language/translate/v2?key="+r.googKey+"&target="+(r.language||"en-US")+"&callback=window."+e+"&q="+o;n.src=o,document.getElementsByTagName("head")[0].appendChild(n)},getListOfLanguages:function(t){var n=new XMLHttpRequest;n.onreadystatechange=function(){var e;n.readyState==XMLHttpRequest.DONE&&((e=JSON.parse(n.responseText))&&e.data&&e.data.languages?t(e.data.languages):e.error&&"Daily Limit Exceeded"===e.error.message?console.error('Text translation failed. Error message: "Daily Limit Exceeded."'):e.error?console.error(e.error.message):console.error(e))};var e="https://www.googleapis.com/language/translate/v2/languages?key="+r.googKey+"&target=en";n.open("GET",e,!0),n.send(null)}}}};!function(c){p=p||{useDefaultDevices:!0},c.channel=c.sessionid=(f||location.href.replace(/\/|:|#|\?|\$|\^|%|\.|`|~|!|\+|@|\[|\||]|\|*. /g,"").split("\n").join("").split("\r").join(""))+"";var a=new m(c),e={};function l(t){if(c.socketAutoReConnect=!0,c.socket)t&&t(c.socket);else{if(void 0===h)if("undefined"!=typeof FirebaseConnection)window.SocketConnection=FirebaseConnection;else{if("undefined"==typeof PubNubConnection)throw"SocketConnection.js seems missed.";window.SocketConnection=PubNubConnection}new h(c,function(e){t&&t(c.socket)})}}function u(n,o){c.socket.emit("join-room",{sessionid:c.sessionid,session:c.session,mediaConstraints:c.mediaConstraints,sdpConstraints:c.sdpConstraints,streams:t(),extra:c.extra,password:void 0!==c.password&&"object"!==J(c.password)?c.password:""},function(e,t){if(!0===e){if(c.enableLogs&&console.log("isRoomJoined: ",e," roomid: ",c.sessionid),c.peers[c.sessionid])return;a.onNegotiationNeeded(n)}!1===e&&c.enableLogs&&console.warn("isRoomJoined: ",t," roomid: ",c.sessionid),o(e,c.sessionid,t)})}function s(n){c.enableLogs&&console.log("Sending open-room signal to socket.io"),c.waitingForLocalMedia=!1,c.socket.emit("open-room",{sessionid:c.sessionid,session:c.session,mediaConstraints:c.mediaConstraints,sdpConstraints:c.sdpConstraints,streams:t(),extra:c.extra,identifier:c.publicRoomIdentifier,password:void 0!==c.password&&"object"!==J(c.password)?c.password:""},function(e,t){!0===e&&(c.enableLogs&&console.log("isRoomOpened: ",e," roomid: ",c.sessionid),n(e,c.sessionid)),!1===e&&(c.enableLogs&&console.warn("isRoomOpened: ",t," roomid: ",c.sessionid),n(e,c.sessionid,t))})}function t(){try{return c.streamEvents.selectAll("local").map(function(e){return{streamid:e.streamid,tracks:e.stream.getTracks().length}})}catch(e){return[]}}function d(e,n){var t,o;c.dontCaptureUserMedia||e.isDataOnly?n():(t={},e.localPeerSdpConstraints.OfferToReceiveAudio&&(t.audio=c.mediaConstraints.audio),e.localPeerSdpConstraints.OfferToReceiveVideo&&(t.video=c.mediaConstraints.video),(o=e.session||c.session).oneway&&"two-way"!==o.audio&&"two-way"!==o.video&&"two-way"!==o.screen?n():(o.oneway&&o.audio&&"two-way"===o.audio&&(o={audio:!0}),(o.audio||o.video||o.screen)&&(o.screen?"Edge"===DetectRTC.browser.name?navigator.getDisplayMedia({video:!0,audio:_(c)}).then(function(e){e.isScreen=!0,a.onGettingLocalMedia(e),!o.audio&&!o.video||_(c)?n(e):c.invokeGetUserMedia(null,n)},function(e){console.error("Unable to capture screen on Edge. HTTPs and version 17+ is required.")}):c.getScreenConstraints(function(e,t){c.invokeGetUserMedia({audio:!!_(c)&&S(t),video:t,isScreen:!0},!o.audio&&!o.video||_(c)?n:c.invokeGetUserMedia(null,n))}):(o.audio||o.video)&&c.invokeGetUserMedia(null,n,o))))}function o(e,t){e?(t.audio&&T(e,"audio").forEach(function(e){e.applyConstraints(t.audio)}),t.video&&T(e,"video").forEach(function(e){e.applyConstraints(t.video)})):c.enableLogs&&console.error("No stream to applyConstraints.")}function i(t,e,n){e?a.replaceTrack(t,e,n):c.peers.getAllParticipants().forEach(function(e){a.replaceTrack(t,e,n)})}a.onGettingLocalMedia=function(t,n){if(n=n||function(){},e[t.streamid])n();else{e[t.streamid]=!0;try{t.type="local"}catch(e){}c.setStreamEndHandler(t),b(t,function(e){e.id=t.streamid,e.muted=!0,e.volume=0,-1===c.attachStreams.indexOf(t)&&c.attachStreams.push(t),void 0!==N&&N.setHandlers(t,!0,c),c.streamEvents[t.streamid]={stream:t,type:"local",mediaElement:e,userid:c.userid,extra:c.extra,streamid:t.streamid,isAudioMuted:!0};try{!function(n,o){if(o.stream&&T(o.stream,"audio").length){if(!n||!o)throw"Both arguments are required.";if(n.onspeaking&&n.onsilence){if("undefined"==typeof hark)throw"hark.js not found.";hark(o.stream,{onspeaking:function(){n.onspeaking(o)},onsilence:function(){n.onsilence(o)},onvolumechange:function(e,t){n.onvolumechange&&n.onvolumechange(Q({volume:e,threshold:t},o))}})}}}(c,c.streamEvents[t.streamid]),g(c,c.streamEvents[t.streamid]),c.onstream(c.streamEvents[t.streamid])}catch(e){}n()},c)}},a.onGettingRemoteMedia=function(t,n){try{t.type="remote"}catch(e){}c.setStreamEndHandler(t,"remote-stream"),b(t,function(e){e.id=t.streamid,void 0!==N&&N.setHandlers(t,!1,c),c.streamEvents[t.streamid]={stream:t,type:"remote",userid:n,extra:c.peers[n]?c.peers[n].extra:{},mediaElement:e,streamid:t.streamid},g(c,c.streamEvents[t.streamid]),c.onstream(c.streamEvents[t.streamid])},c)},a.onRemovingRemoteMedia=function(e,t){var n=(n=c.streamEvents[e.streamid])||{stream:e,type:"remote",userid:t,extra:c.peers[t]?c.peers[t].extra:{},streamid:e.streamid,mediaElement:c.streamEvents[e.streamid]?c.streamEvents[e.streamid].mediaElement:null};c.peersBackup[n.userid]&&(n.extra=c.peersBackup[n.userid].extra),c.onstreamended(n),delete c.streamEvents[e.streamid]},a.onNegotiationNeeded=function(e,t,n){n=n||function(){};var o={remoteUserId:t=t||e.remoteUserId,message:e=e||"",sender:c.userid};e.remoteUserId&&e.message&&e.sender&&(o=e),l(function(){c.socket.emit(c.socketMessageEvent,o,n)})},a.onUserLeft=function(e){c.deletePeer(e)},a.disconnectWith=function(e,t){c.socket&&c.socket.emit("disconnect-with",e,t||function(){}),c.deletePeer(e)},c.socketOptions={transport:"polling"},c.openOrJoin=function(e,a){a=a||function(){},c.checkPresence(e,function(e,t){var n,o,r,i;e?(c.sessionid=t,n=!!c.session.oneway,o=w(c.session),r={OfferToReceiveAudio:c.sdpConstraints.mandatory.OfferToReceiveAudio,OfferToReceiveVideo:c.sdpConstraints.mandatory.OfferToReceiveVideo},e={OfferToReceiveAudio:n?!!c.session.audio:c.sdpConstraints.mandatory.OfferToReceiveAudio,OfferToReceiveVideo:n?!!c.session.video||!!c.session.screen:c.sdpConstraints.mandatory.OfferToReceiveVideo},d((i={remoteUserId:c.sessionid,message:{newParticipationRequest:!0,isOneWay:n,isDataOnly:o,localPeerSdpConstraints:e,remotePeerSdpConstraints:r},sender:c.userid}).message,function(){u(i,a)})):(c.waitingForLocalMedia=!0,c.isInitiator=!0,c.sessionid=t||c.sessionid,w(c.session)?s(a):c.captureUserMedia(function(){s(a)}))})},c.waitingForLocalMedia=!1,c.open=function(e,t){t=t||function(){},c.waitingForLocalMedia=!0,c.isInitiator=!0,c.sessionid=e||c.sessionid,l(function(){w(c.session)?s(t):c.captureUserMedia(function(){s(t)})})},c.peersBackup={},c.deletePeer=function(e){if(e&&c.peers[e]){var t={userid:e,extra:c.peers[e]?c.peers[e].extra:{}};if(c.peersBackup[t.userid]&&(t.extra=c.peersBackup[t.userid].extra),c.onleave(t),c.peers[e]){c.peers[e].streams.forEach(function(e){e.stop()});var n=c.peers[e].peer;if(n&&"closed"!==n.iceConnectionState)try{n.close()}catch(e){}c.peers[e]&&(c.peers[e].peer=null,delete c.peers[e])}}},c.rejoin=function(e){var t;!c.isInitiator&&e&&Object.keys(e).length&&(t={},c.peers[e.remoteUserId]&&(t=c.peers[e.remoteUserId].extra,c.deletePeer(e.remoteUserId)),e&&e.remoteUserId&&(c.join(e.remoteUserId),c.onReConnecting({userid:e.remoteUserId,extra:t})))},c.join=function(e,t){c.sessionid=!!e&&(e.sessionid||e.remoteUserId||e)||c.sessionid,c.sessionid+="";var n=!1,o=!1,r=!1,i=!1;(e&&e.session||!e||"string"==typeof e)&&(r=!!(e=e&&e.session||c.session).oneway,i=w(e),o={OfferToReceiveAudio:c.sdpConstraints.mandatory.OfferToReceiveAudio,OfferToReceiveVideo:c.sdpConstraints.mandatory.OfferToReceiveVideo},n={OfferToReceiveAudio:r?!!c.session.audio:c.sdpConstraints.mandatory.OfferToReceiveAudio,OfferToReceiveVideo:r?!!c.session.video||!!c.session.screen:c.sdpConstraints.mandatory.OfferToReceiveVideo});var a=function(){};"function"==typeof(t=t||{})&&(a=t,t={}),void 0!==t.localPeerSdpConstraints&&(n=t.localPeerSdpConstraints),void 0!==t.remotePeerSdpConstraints&&(o=t.remotePeerSdpConstraints),void 0!==t.isOneWay&&(r=t.isOneWay),void 0!==t.isDataOnly&&(i=t.isDataOnly);var s={remoteUserId:c.sessionid,message:{newParticipationRequest:!0,isOneWay:r,isDataOnly:i,localPeerSdpConstraints:n,remotePeerSdpConstraints:o},sender:c.userid};return d(s.message,function(){l(function(){u(s,a)})}),s},c.publicRoomIdentifier="",c.getUserMedia=c.captureUserMedia=function(o,r){o=o||function(){};var i=r||c.session;c.dontCaptureUserMedia||w(i)?o():(i.audio||i.video||i.screen)&&(i.screen?"Edge"===DetectRTC.browser.name?navigator.getDisplayMedia({video:!0,audio:_(c)}).then(function(e){if(e.isScreen=!0,a.onGettingLocalMedia(e),!i.audio&&!i.video||_(c))o(e);else{var t,n={};for(t in i)"screen"!==t&&(n[t]=i[t]);c.invokeGetUserMedia(r,o,n)}},function(e){console.error("Unable to capture screen on Edge. HTTPs and version 17+ is required.")}):c.getScreenConstraints(function(e,t){if(e)throw e;c.invokeGetUserMedia({audio:!!_(c)&&S(t),video:t,isScreen:!0},function(e){if(!i.audio&&!i.video||_(c))o(e);else{var t,n={};for(t in i)"screen"!==t&&(n[t]=i[t]);c.invokeGetUserMedia(r,o,n)}})}):(i.audio||i.video)&&c.invokeGetUserMedia(r,o,i))},c.onbeforeunload=function(e,t){c.closeBeforeUnload&&(c.peers.getAllParticipants().forEach(function(e){a.onNegotiationNeeded({userLeft:!0},e),c.peers[e]&&c.peers[e].peer&&c.peers[e].peer.close(),delete c.peers[e]}),t||c.closeSocket(),c.isInitiator=!1)},window.ignoreBeforeUnload?c.closeBeforeUnload=!1:(c.closeBeforeUnload=!0,window.addEventListener("beforeunload",c.onbeforeunload,!1)),c.userid=v(),c.changeUserId=function(e,t){t=t||function(){},c.userid=e||v(),c.socket.emit("changed-uuid",c.userid,t)},c.extra={},c.attachStreams=[],c.session={audio:!0,video:!0},c.enableFileSharing=!1,c.bandwidth={screen:!1,audio:!1,video:!1},c.codecs={audio:"opus",video:"VP9"},c.processSdp=function(e){return function(){var t=!1;try{if("undefined"==typeof RTCRtpTransceiver)return;if(!("currentDirection"in RTCRtpTransceiver.prototype))return;var e=new C;try{e.addTransceiver("audio"),t=!0}catch(e){}e.close()}catch(e){t=!1}return t&&function(){var t=!1;try{var e=new C({sdpSemantics:"unified-plan"});try{var n=e.getConfiguration(),t="unified-plan"==n.sdpSemantics||(n.sdpSemantics,!1)}catch(e){t=!1}}catch(e){t=!1}return t}()}()||"Safari"===DetectRTC.browser.name||("VP8"===c.codecs.video.toUpperCase()&&(e=O.preferCodec(e,"vp8")),"VP9"===c.codecs.video.toUpperCase()&&(e=O.preferCodec(e,"vp9")),"H264"===c.codecs.video.toUpperCase()&&(e=O.preferCodec(e,"h264")),"G722"===c.codecs.audio&&(e=O.removeNonG722(e)),"Firefox"===DetectRTC.browser.name||((c.bandwidth.video||c.bandwidth.screen)&&(e=O.setApplicationSpecificBandwidth(e,c.bandwidth,!!c.session.screen)),c.bandwidth.video&&(e=O.setVideoBitrates(e,{min:8*c.bandwidth.video*1024,max:8*c.bandwidth.video*1024})),c.bandwidth.audio&&(e=O.setOpusAttributes(e,{maxaveragebitrate:8*c.bandwidth.audio*1024,maxplaybackrate:8*c.bandwidth.audio*1024,stereo:1,maxptime:3})))),e},void 0!==O&&(c.BandwidthHandler=c.CodecsHandler=O),c.mediaConstraints={audio:{mandatory:{},optional:c.bandwidth.audio?[{bandwidth:8*c.bandwidth.audio*1024||1048576}]:[]},video:{mandatory:{},optional:c.bandwidth.video?[{bandwidth:8*c.bandwidth.video*1024||1048576},{facingMode:"user"}]:[{facingMode:"user"}]}},"Firefox"===DetectRTC.browser.name&&(c.mediaConstraints={audio:!0,video:!0}),p.useDefaultDevices||DetectRTC.isMobileDevice||DetectRTC.load(function(){var t,n;if(DetectRTC.MediaDevices.forEach(function(e){"audioinput"===e.kind&&!1!==c.mediaConstraints.audio&&(t=e),"videoinput"===e.kind&&!1!==c.mediaConstraints.video&&(n=e)}),t){if("Firefox"===DetectRTC.browser.name)return void(!0!==c.mediaConstraints.audio?c.mediaConstraints.audio.deviceId=t.id:c.mediaConstraints.audio={deviceId:t.id});1==c.mediaConstraints.audio&&(c.mediaConstraints.audio={mandatory:{},optional:[]}),c.mediaConstraints.audio.optional||(c.mediaConstraints.audio.optional=[]);var e=[{sourceId:t.id}];c.mediaConstraints.audio.optional=e.concat(c.mediaConstraints.audio.optional)}n&&("Firefox"!==DetectRTC.browser.name?(1==c.mediaConstraints.video&&(c.mediaConstraints.video={mandatory:{},optional:[]}),c.mediaConstraints.video.optional||(c.mediaConstraints.video.optional=[]),e=[{sourceId:n.id}],c.mediaConstraints.video.optional=e.concat(c.mediaConstraints.video.optional)):!0!==c.mediaConstraints.video?c.mediaConstraints.video.deviceId=n.id:c.mediaConstraints.video={deviceId:n.id})}),c.sdpConstraints={mandatory:{OfferToReceiveAudio:!0,OfferToReceiveVideo:!0},optional:[{VoiceActivityDetection:!1}]},c.sdpSemantics=null,c.iceCandidatePoolSize=null,c.bundlePolicy=null,c.rtcpMuxPolicy=null,c.iceTransportPolicy=null,c.optionalArgument={optional:[{DtlsSrtpKeyAgreement:!0},{googImprovedWifiBwe:!0},{googScreencastMinBitrate:300},{googIPv6:!0},{googDscp:!0},{googCpuUnderuseThreshold:55},{googCpuOveruseThreshold:85},{googSuspendBelowMinBitrate:!0},{googCpuOveruseDetection:!0}],mandatory:{}},c.iceServers=j(c),c.candidates={host:!0,stun:!0,turn:!0},c.iceProtocols={tcp:!0,udp:!0},c.onopen=function(e){c.enableLogs&&console.info("Data connection has been opened between you & ",e.userid)},c.onclose=function(e){c.enableLogs&&console.warn("Data connection has been closed between you & ",e.userid)},c.onerror=function(e){c.enableLogs&&console.error(e.userid,"data-error",e)},c.onmessage=function(e){c.enableLogs&&console.debug("data-message",e.userid,e.data)},c.send=function(e,t){c.peers.send(e,t)},c.close=c.disconnect=c.leave=function(){c.onbeforeunload(!1,!0)},c.closeEntireSession=function(t){t=t||function(){},c.socket.emit("close-entire-session",function e(){c.getAllParticipants().length?setTimeout(e,100):(c.onEntireSessionClosed({sessionid:c.sessionid,userid:c.userid,extra:c.extra}),c.changeUserId(null,function(){c.close(),t()}))})},c.onEntireSessionClosed=function(e){c.enableLogs&&console.info("Entire session is closed: ",e.sessionid,e.extra)},c.onstream=function(e){var t=c.videosContainer;t.insertBefore(e.mediaElement,t.firstChild);t=e.mediaElement.play();void 0===t?setTimeout(function(){e.mediaElement.play()},2e3):t.catch(function(){}).then(function(){setTimeout(function(){e.mediaElement.play()},2e3)})},c.onstreamended=function(e){e.mediaElement||(e.mediaElement=document.getElementById(e.streamid)),e.mediaElement&&e.mediaElement.parentNode&&e.mediaElement.parentNode.removeChild(e.mediaElement)},c.direction="many-to-many",c.removeStream=function(t,n){var o;c.attachStreams.forEach(function(e){e.id===t&&(o=e)}),o?(c.peers.getAllParticipants().forEach(function(e){if(!n||e===n){var t=c.peers[e];try{t.peer.removeStream(o)}catch(e){}}}),c.renegotiate()):console.warn("No such stream exist.",t)},c.addStream=function(n,t){if(n.getTracks)return-1===c.attachStreams.indexOf(n)&&(n.streamid||(n.streamid=n.id),c.attachStreams.push(n)),void c.renegotiate(t);function o(e){n.streamCallback&&n.streamCallback(e),c.renegotiate(t)}w(n)?c.renegotiate(t):(n.audio||n.video||n.screen)&&(n.screen?"Edge"===DetectRTC.browser.name?navigator.getDisplayMedia({video:!0,audio:_(c)}).then(function(e){e.isScreen=!0,a.onGettingLocalMedia(e),!n.audio&&!n.video||_(c)?o(e):c.invokeGetUserMedia(null,function(e){o(e)})},function(e){console.error("Unable to capture screen on Edge. HTTPs and version 17+ is required.")}):c.getScreenConstraints(function(e,t){return e?"PermissionDeniedError"===e?(n.streamCallback&&n.streamCallback(null),void(c.enableLogs&&console.error("User rejected to share his screen."))):alert(e):void c.invokeGetUserMedia({audio:!!_(c)&&S(t),video:t,isScreen:!0},function(e){!n.audio&&!n.video||_(c)?o(e):c.invokeGetUserMedia(null,function(e){o(e)})})}):(n.audio||n.video)&&c.invokeGetUserMedia(null,o))},c.invokeGetUserMedia=function(n,o,e){e=e||c.session,I({onGettingLocalMedia:function(e){var t=n.video;t&&(t.mediaSource||t.mozMediaSource||t.mandatory&&t.mandatory.chromeMediaSource)&&(e.isScreen=!0),e.isScreen||(e.isVideo=!!T(e,"video").length,e.isAudio=!e.isVideo&&T(e,"audio").length),a.onGettingLocalMedia(e,function(){"function"==typeof o&&o(e)})},onLocalMediaError:function(e,t){a.onLocalMediaError(e,t)},localMediaConstraints:(n=n||c.mediaConstraints)||{audio:!!e.audio&&n.audio,video:!!e.video&&n.video}})},c.applyConstraints=function(t,e){if(P&&P.prototype.applyConstraints){var n;if(e)return c.streamEvents[e]&&(n=c.streamEvents[e].stream),void o(n,t);c.attachStreams.forEach(function(e){o(e,t)})}else alert("track.applyConstraints is NOT supported in your browser.")},c.replaceTrack=function(n,t,o){if(n=n||{},C.prototype.getSenders)if(n instanceof P)i(n,t,o);else{if(n instanceof x)return T(n,"video").length&&i(T(n,"video")[0],t,!0),void(T(n,"audio").length&&i(T(n,"audio")[0],t,!1));if(w(n))throw"connection.replaceTrack requires audio and/or video and/or screen.";(n.audio||n.video||n.screen)&&(n.screen?"Edge"===DetectRTC.browser.name?navigator.getDisplayMedia({video:!0,audio:_(c)}).then(function(e){e.isScreen=!0,a.onGettingLocalMedia(e),!n.audio&&!n.video||_(c)?r(e):c.invokeGetUserMedia(null,r)},function(e){console.error("Unable to capture screen on Edge. HTTPs and version 17+ is required.")}):c.getScreenConstraints(function(e,t){return e?alert(e):void c.invokeGetUserMedia({audio:!!_(c)&&S(t),video:t,isScreen:!0},!n.audio&&!n.video||_(c)?r:c.invokeGetUserMedia(null,r))}):(n.audio||n.video)&&c.invokeGetUserMedia(null,r))}else c.addStream(n);function r(e){c.replaceTrack(e,t,o||n.video||n.screen)}},c.resetTrack=function(e,n){"string"==typeof(e=e||c.getAllParticipants())&&(e=[e]),e.forEach(function(e){var t=c.peers[e].peer;void 0!==n&&!0!==n||!t.lastVideoTrack||c.replaceTrack(t.lastVideoTrack,e,!0),void 0!==n&&!1!==n||!t.lastAudioTrack||c.replaceTrack(t.lastAudioTrack,e,!1)})},c.renegotiate=function(e){e?a.renegotiatePeer(e):c.peers.getAllParticipants().forEach(function(e){a.renegotiatePeer(e)})},c.setStreamEndHandler=function(o,r){var e;o&&o.addEventListener&&(r=!!r,!o.alreadySetEndHandler)&&(o.alreadySetEndHandler=!0,e="ended","oninactive"in o&&(e="inactive"),o.addEventListener(e,function(){o.idInstance&&currentUserMediaRequest.remove(o.idInstance),r||(t=[],c.attachStreams.forEach(function(e){e.id!=o.id&&t.push(e)}),c.attachStreams=t);var e,t,n=(n=c.streamEvents[o.streamid])||{stream:o,streamid:o.streamid,type:r?"remote":"local",userid:c.userid,extra:c.extra,mediaElement:c.streamEvents[o.streamid]?c.streamEvents[o.streamid].mediaElement:null};r&&c.peers[n.userid]&&(e=c.peers[n.userid].peer,t=[],e.getRemoteStreams().forEach(function(e){e.id!=o.id&&t.push(e)}),c.peers[n.userid].streams=t),n.userid===c.userid&&"remote"===n.type||(c.peersBackup[n.userid]&&(n.extra=c.peersBackup[n.userid].extra),c.onstreamended(n),delete c.streamEvents[o.streamid])},!1))},c.onMediaError=function(e,t){c.enableLogs&&console.error(e,t)},c.autoCloseEntireSession=!1,c.filesContainer=c.videosContainer=document.body||document.documentElement,c.isInitiator=!1,c.shareFile=a.shareFile,H.handle(c),W.handle(c),c.token=v,c.onNewParticipant=function(e,t){c.acceptParticipationRequest(e,t)},c.acceptParticipationRequest=function(e,t){t.successCallback&&(t.successCallback(),delete t.successCallback),a.createNewPeer(e,t)},void 0!==N&&(c.StreamsHandler=N),c.onleave=function(e){},c.invokeSelectFileDialog=function(e){var t=new Z;t.accept="*.*",t.selectSingleFile(e)},c.onmute=function(e){var t;e&&e.mediaElement&&("both"===e.muteType||"video"===e.muteType?(e.mediaElement.src=null,void 0!==(t=e.mediaElement.pause())?t.then(function(){e.mediaElement.poster=e.snapshot||"https://cdn.webrtc-experiment.com/images/muted.png"}):e.mediaElement.poster=e.snapshot||"https://cdn.webrtc-experiment.com/images/muted.png"):"audio"===e.muteType&&(e.mediaElement.muted=!0))},c.onunmute=function(e){e&&e.mediaElement&&e.stream&&("both"===e.unmuteType||"video"===e.unmuteType?(e.mediaElement.poster=null,e.mediaElement.srcObject=e.stream,e.mediaElement.play()):"audio"===e.unmuteType&&(e.mediaElement.muted=!1))},c.onExtraDataUpdated=function(e){e.status="online",c.onUserStatusChanged(e,!0)},c.getAllParticipants=function(e){return c.peers.getAllParticipants(e)},void 0!==N&&(N.onSyncNeeded=function(t,n,o){c.peers.getAllParticipants().forEach(function(e){a.onNegotiationNeeded({streamid:t,action:n,streamSyncNeeded:!0,type:o||"both"},e)})}),c.connectSocket=function(e){l(e)},c.closeSocket=function(){try{K.a.sockets={}}catch(e){}c.socket&&("function"==typeof c.socket.disconnect&&c.socket.disconnect(),"function"==typeof c.socket.resetProps&&c.socket.resetProps(),c.socket=null)},c.getSocket=function(e){return!e&&c.enableLogs&&console.warn("getSocket.callback paramter is required."),e=e||function(){},c.socket?e(c.socket):l(function(){e(c.socket)}),c.socket},c.getRemoteStreams=a.getRemoteStreams;var n,r=["selectFirst","selectAll","forEach"];c.streamEvents={selectFirst:function(e){return c.streamEvents.selectAll(e)[0]},selectAll:function(n){"local"==(n=n||{local:!0,remote:!0,isScreen:!0,isAudio:!0,isVideo:!0})&&(n={local:!0}),"remote"==n&&(n={remote:!0}),"screen"==n&&(n={isScreen:!0}),"audio"==n&&(n={isAudio:!0}),"video"==n&&(n={isVideo:!0});var o=[];return Object.keys(c.streamEvents).forEach(function(e){var t=c.streamEvents[e];-1===r.indexOf(e)&&(e=!0,n.local&&"local"===t.type&&(e=!1),n.remote&&"remote"===t.type&&(e=!1),n.isScreen&&t.stream.isScreen&&(e=!1),n.isVideo&&t.stream.isVideo&&(e=!1),n.isAudio&&t.stream.isAudio&&(e=!1),n.userid&&t.userid===n.userid&&(e=!1),!1===e&&o.push(t))}),o}},c.socketURL="/",c.socketMessageEvent="RTCMultiConnection-Message",c.socketCustomEvent="RTCMultiConnection-Custom-Message",c.DetectRTC=DetectRTC,c.setCustomSocketEvent=function(e){e&&(c.socketCustomEvent=e),c.socket&&c.socket.emit("set-custom-socket-event-listener",c.socketCustomEvent)},c.getNumberOfBroadcastViewers=function(e,t){c.socket&&e&&t&&c.socket.emit("get-number-of-users-in-specific-broadcast",e,t)},c.onNumberOfBroadcastViewersUpdated=function(e){c.enableLogs&&c.isInitiator&&console.info("Number of broadcast (",e.broadcastId,") viewers",e.numberOfBroadcastViewers)},c.onUserStatusChanged=function(e,t){c.enableLogs&&!t&&console.info(e.userid,e.status)},c.getUserMediaHandler=I,c.multiPeersHandler=a,c.enableLogs=!0,c.setCustomSocketHandler=function(e){void 0!==h&&(h=e)},c.chunkSize=4e4,c.maxParticipantsAllowed=1e3,c.disconnectWith=a.disconnectWith,c.checkPresence=function(e,o){e=e||c.sessionid,"SSEConnection"!==h.name?c.socket?c.socket.emit("check-presence",e+"",function(e,t,n){c.enableLogs&&console.log("checkPresence.isRoomExist: ",e," roomid: ",t),o(e,t,n)}):c.connectSocket(function(){c.checkPresence(e,o)}):SSEConnection.checkPresence(e,function(e,t,n){return c.socket?void o(e,t):(e||(c.userid=t),void c.connectSocket(function(){o(e,t,n)}))})},c.onReadyForOffer=function(e,t){c.multiPeersHandler.createNewPeer(e,t)},c.setUserPreferences=function(e){return c.dontAttachStream&&(e.dontAttachLocalStream=!0),c.dontGetRemoteStream&&(e.dontGetRemoteStream=!0),e},c.updateExtraData=function(){c.socket.emit("extra-data-updated",c.extra)},c.enableScalableBroadcast=!1,c.maxRelayLimitPerUser=3,c.dontCaptureUserMedia=!1,c.dontAttachStream=!1,c.dontGetRemoteStream=!1,c.onReConnecting=function(e){c.enableLogs&&console.info("ReConnecting with",e.userid,"...")},c.beforeAddingStream=function(e){return e},c.beforeRemovingStream=function(e){return e},c.checkIfChromeExtensionAvailable=U,"undefined"!=typeof isFirefoxExtensionAvailable&&(c.checkIfChromeExtensionAvailable=isFirefoxExtensionAvailable),c.getChromeExtensionStatus=G,c.getScreenConstraints=function(n,e){_(c,e)&&(e=!0),function(n,e){if(B)return n(null,{mozMediaSource:"window",mediaSource:"window"});var t,o={mandatory:{chromeMediaSource:z,maxWidth:1920<screen.width?screen.width:1920,maxHeight:1080<screen.height?screen.height:1080},optional:[]};"desktop"!=z||F?("desktop"==z&&(o.mandatory.chromeMediaSourceId=F),n(null,o)):e?(t=function(e,t){o.mandatory.chromeMediaSourceId=e,t&&(o.canRequestAudioTrack=!0),n("PermissionDeniedError"==e?e:null,o)},F?t(F):(D=t,window.postMessage("audio-plus-tab","*"))):(t=function(e){o.mandatory.chromeMediaSourceId=e,n("PermissionDeniedError"==e?e:null,o)},F?t(F):(D=t,window.postMessage("get-sourceId","*")))}(function(e,t){e||(t=c.modifyScreenConstraints(t),n(e,t))},e)},c.modifyScreenConstraints=function(e){return e},c.onPeerStateChanged=function(e){c.enableLogs&&-1!==e.iceConnectionState.search(/closed|failed/gi)&&console.error("Peer connection is closed between you & ",e.userid,e.extra,"state:",e.iceConnectionState)},c.isOnline=!0,y("online",function(){c.isOnline=!0}),y("offline",function(){c.isOnline=!1}),c.isLowBandwidth=!1,navigator&&navigator.connection&&navigator.connection.type&&(c.isLowBandwidth=-1!==navigator.connection.type.toString().toLowerCase().search(/wifi|cell/g),c.isLowBandwidth)&&(c.bandwidth={audio:!1,video:!1,screen:!1},c.mediaConstraints.audio&&c.mediaConstraints.audio.optional&&c.mediaConstraints.audio.optional.length&&(n=[],c.mediaConstraints.audio.optional.forEach(function(e){void 0===e.bandwidth&&n.push(e)}),c.mediaConstraints.audio.optional=n),c.mediaConstraints.video&&c.mediaConstraints.video.optional&&c.mediaConstraints.video.optional.length&&(n=[],c.mediaConstraints.video.optional.forEach(function(e){void 0===e.bandwidth&&n.push(e)}),c.mediaConstraints.video.optional=n)),c.getExtraData=function(e,o){if(!e)throw"remoteUserId is required.";if(!o)return c.peers[e]?c.peers[e].extra:c.peersBackup[e]?c.peersBackup[e].extra:{};c.socket.emit("get-remote-user-extra-data",e,function(e,t,n){o(e,t,n)})},p.autoOpenOrJoin&&c.openOrJoin(c.sessionid),c.onUserIdAlreadyTaken=function(e,t){c.close(),c.closeSocket(),c.isInitiator=!1,c.userid=c.token(),c.join(c.sessionid),c.enableLogs&&console.warn("Userid already taken.",e,"Your new userid:",c.userid)},c.trickleIce=!0,c.version="3.6.5",c.onSettingLocalDescription=function(e){c.enableLogs&&console.info("Set local description for remote user",e.userid)},c.resetScreen=function(){F=null,DetectRTC&&DetectRTC.screen&&delete DetectRTC.screen.sourceId,currentUserMediaRequest={streams:[],mutex:!1,queueRequests:[]}},c.autoCreateMediaElement=!0,c.password=null,c.setPassword=function(e,t){t=t||function(){},c.socket?c.socket.emit("set-password",e,t):(c.password=e,t(!0,c.sessionid,null))},c.errors={ROOM_NOT_AVAILABLE:"Room not available",INVALID_PASSWORD:"Invalid password",USERID_NOT_AVAILABLE:"User ID does not exist",ROOM_PERMISSION_DENIED:"Room permission denied",ROOM_FULL:"Room full",DID_NOT_JOIN_ANY_ROOM:"Did not join any room yet",INVALID_SOCKET:"Invalid socket",PUBLIC_IDENTIFIER_MISSING:"publicRoomIdentifier is required",INVALID_ADMIN_CREDENTIAL:"Invalid username or password attempted"}}(this)}}).call(this,ee(73).Buffer,ee(31),ee(49))},function(e,t,n){"use strict";(function(e){if(n(163),n(360),n(361),e._babelPolyfill)throw new Error("only one instance of babel-polyfill is allowed");e._babelPolyfill=!0;function t(e,t,n){e[t]||Object.defineProperty(e,t,{writable:!0,configurable:!0,value:n})}t(String.prototype,"padLeft","".padStart),t(String.prototype,"padRight","".padEnd),"pop,reverse,shift,keys,values,entries,indexOf,every,some,forEach,map,filter,find,findIndex,includes,join,slice,concat,push,splice,unshift,sort,lastIndexOf,reduce,reduceRight,copyWithin,fill".split(",").forEach(function(e){[][e]&&t(Array,e,Function.call.bind([][e]))})}).call(this,n(31))},function(e,t,n){n(164),n(166),n(167),n(168),n(169),n(170),n(171),n(172),n(173),n(174),n(175),n(176),n(177),n(178),n(179),n(180),n(182),n(183),n(184),n(185),n(186),n(187),n(188),n(189),n(190),n(191),n(192),n(193),n(194),n(195),n(196),n(197),n(198),n(199),n(200),n(201),n(202),n(203),n(204),n(205),n(206),n(207),n(208),n(209),n(210),n(211),n(212),n(213),n(214),n(215),n(216),n(217),n(218),n(219),n(220),n(221),n(222),n(223),n(224),n(225),n(226),n(227),n(228),n(229),n(230),n(231),n(232),n(233),n(234),n(235),n(236),n(237),n(238),n(239),n(240),n(241),n(242),n(244),n(245),n(247),n(248),n(249),n(250),n(251),n(252),n(253),n(255),n(256),n(257),n(258),n(259),n(260),n(261),n(262),n(263),n(264),n(265),n(266),n(267),n(99),n(268),n(269),n(127),n(270),n(271),n(272),n(273),n(274),n(130),n(132),n(133),n(275),n(276),n(277),n(278),n(279),n(280),n(281),n(282),n(283),n(284),n(285),n(286),n(287),n(288),n(289),n(290),n(291),n(292),n(293),n(294),n(295),n(296),n(297),n(298),n(299),n(300),n(301),n(302),n(303),n(304),n(305),n(306),n(307),n(308),n(309),n(310),n(311),n(312),n(313),n(314),n(315),n(316),n(317),n(318),n(319),n(320),n(321),n(322),n(323),n(324),n(325),n(326),n(327),n(328),n(329),n(330),n(331),n(332),n(333),n(334),n(335),n(336),n(337),n(338),n(339),n(340),n(341),n(342),n(343),n(344),n(345),n(346),n(347),n(348),n(349),n(350),n(351),n(352),n(353),n(354),n(355),n(356),n(357),n(358),n(359),e.exports=n(20)},function(e,t,n){"use strict";function o(e){var t=G[e]=A(N.prototype);return t._k=e,t}function r(e,t){_(e);for(var n,o=w(t=T(t)),r=0,i=o.length;r<i;)J(e,n=o[r++],t[n]);return e}function i(e){var t=U.call(this,e=C(e,!0));return!(this===q&&c(G,e)&&!c(V,e))&&(!(t||!c(this,e)||!c(G,e)||c(this,D)&&this[D][e])||t)}function a(e,t){if(e=T(e),t=C(t,!0),e!==q||!c(G,t)||c(V,t)){var n=P(e,t);return!n||!c(G,t)||c(e,D)&&e[D][t]||(n.enumerable=!0),n}}var s=n(2),c=n(16),l=n(7),u=n(0),d=n(14),f=n(32).KEY,p=n(3),h=n(58),m=n(45),g=n(36),v=n(5),b=n(110),y=n(79),w=n(165),x=n(61),_=n(1),S=n(4),T=n(17),C=n(24),E=n(35),A=n(39),k=n(113),M=n(18),O=n(8),R=n(37),P=M.f,j=O.f,I=k.f,N=s.Symbol,L=s.JSON,F=L&&L.stringify,D=v("_hidden"),z=v("toPrimitive"),U={}.propertyIsEnumerable,B=h("symbol-registry"),G=h("symbols"),V=h("op-symbols"),q=Object.prototype,H="function"==typeof N,W=s.QObject,Y=!W||!W.prototype||!W.prototype.findChild,X=l&&p(function(){return 7!=A(j({},"a",{get:function(){return j(this,"a",{value:7}).a}})).a})?function(e,t,n){var o=P(q,t);o&&delete q[t],j(e,t,n),o&&e!==q&&j(q,t,o)}:j,K=H&&"symbol"==typeof N.iterator?function(e){return"symbol"==typeof e}:function(e){return e instanceof N},J=function(e,t,n){return e===q&&J(V,t,n),_(e),t=C(t,!0),_(n),c(G,t)?(n.enumerable?(c(e,D)&&e[D][t]&&(e[D][t]=!1),n=A(n,{enumerable:E(0,!1)})):(c(e,D)||j(e,D,E(1,{})),e[D][t]=!0),X(e,t,n)):j(e,t,n)},h=function(e){for(var t,n=I(T(e)),o=[],r=0;n.length>r;)c(G,t=n[r++])||t==D||t==f||o.push(t);return o},W=function(e){for(var t,n=e===q,o=I(n?V:T(e)),r=[],i=0;o.length>i;)!c(G,t=o[i++])||n&&!c(q,t)||r.push(G[t]);return r};H||(d((N=function(){if(this instanceof N)throw TypeError("Symbol is not a constructor!");var t=g(0<arguments.length?arguments[0]:void 0),n=function(e){this===q&&n.call(V,e),c(this,D)&&c(this[D],t)&&(this[D][t]=!1),X(this,t,E(1,e))};return l&&Y&&X(q,t,{configurable:!0,set:n}),o(t)}).prototype,"toString",function(){return this._k}),M.f=a,O.f=J,n(40).f=k.f=h,n(54).f=i,n(60).f=W,l&&!n(33)&&d(q,"propertyIsEnumerable",i,!0),b.f=function(e){return o(v(e))}),u(u.G+u.W+u.F*!H,{Symbol:N});for(var $="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),Z=0;$.length>Z;)v($[Z++]);for(var Q=R(v.store),ee=0;Q.length>ee;)y(Q[ee++]);u(u.S+u.F*!H,"Symbol",{for:function(e){return c(B,e+="")?B[e]:B[e]=N(e)},keyFor:function(e){if(!K(e))throw TypeError(e+" is not a symbol!");for(var t in B)if(B[t]===e)return t},useSetter:function(){Y=!0},useSimple:function(){Y=!1}}),u(u.S+u.F*!H,"Object",{create:function(e,t){return void 0===t?A(e):r(A(e),t)},defineProperty:J,defineProperties:r,getOwnPropertyDescriptor:a,getOwnPropertyNames:h,getOwnPropertySymbols:W}),L&&u(u.S+u.F*(!H||p(function(){var e=N();return"[null]"!=F([e])||"{}"!=F({a:e})||"{}"!=F(Object(e))})),"JSON",{stringify:function(e){for(var t,n,o=[e],r=1;r<arguments.length;)o.push(arguments[r++]);if(n=t=o[1],(S(t)||void 0!==e)&&!K(e))return x(t)||(t=function(e,t){if("function"==typeof n&&(t=n.call(this,e,t)),!K(t))return t}),o[1]=t,F.apply(L,o)}}),N.prototype[z]||n(13)(N.prototype,z,N.prototype.valueOf),m(N,"Symbol"),m(Math,"Math",!0),m(s.JSON,"JSON",!0)},function(e,t,n){var s=n(37),c=n(60),l=n(54);e.exports=function(e){var t=s(e),n=c.f;if(n)for(var o,r=n(e),i=l.f,a=0;r.length>a;)i.call(e,o=r[a++])&&t.push(o);return t}},function(e,t,n){var o=n(0);o(o.S,"Object",{create:n(39)})},function(e,t,n){var o=n(0);o(o.S+o.F*!n(7),"Object",{defineProperty:n(8).f})},function(e,t,n){var o=n(0);o(o.S+o.F*!n(7),"Object",{defineProperties:n(112)})},function(e,t,n){var o=n(17),r=n(18).f;n(27)("getOwnPropertyDescriptor",function(){return function(e,t){return r(o(e),t)}})},function(e,t,n){var o=n(10),r=n(19);n(27)("getPrototypeOf",function(){return function(e){return r(o(e))}})},function(e,t,n){var o=n(10),r=n(37);n(27)("keys",function(){return function(e){return r(o(e))}})},function(e,t,n){n(27)("getOwnPropertyNames",function(){return n(113).f})},function(e,t,n){var o=n(4),r=n(32).onFreeze;n(27)("freeze",function(t){return function(e){return t&&o(e)?t(r(e)):e}})},function(e,t,n){var o=n(4),r=n(32).onFreeze;n(27)("seal",function(t){return function(e){return t&&o(e)?t(r(e)):e}})},function(e,t,n){var o=n(4),r=n(32).onFreeze;n(27)("preventExtensions",function(t){return function(e){return t&&o(e)?t(r(e)):e}})},function(e,t,n){var o=n(4);n(27)("isFrozen",function(t){return function(e){return!o(e)||!!t&&t(e)}})},function(e,t,n){var o=n(4);n(27)("isSealed",function(t){return function(e){return!o(e)||!!t&&t(e)}})},function(e,t,n){var o=n(4);n(27)("isExtensible",function(t){return function(e){return!!o(e)&&(!t||t(e))}})},function(e,t,n){var o=n(0);o(o.S+o.F,"Object",{assign:n(114)})},function(e,t,n){var o=n(0);o(o.S,"Object",{is:n(181)})},function(e,t){e.exports=Object.is||function(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}},function(e,t,n){var o=n(0);o(o.S,"Object",{setPrototypeOf:n(83).set})},function(e,t,n){"use strict";var o=n(55),r={};r[n(5)("toStringTag")]="z",r+""!="[object z]"&&n(14)(Object.prototype,"toString",function(){return"[object "+o(this)+"]"},!0)},function(e,t,n){var o=n(0);o(o.P,"Function",{bind:n(115)})},function(e,t,n){var o=n(8).f,r=Function.prototype,i=/^\s*function ([^ (]*)/;"name"in r||n(7)&&o(r,"name",{configurable:!0,get:function(){try{return(""+this).match(i)[1]}catch(e){return""}}})},function(e,t,n){"use strict";var o=n(4),r=n(19),i=n(5)("hasInstance"),a=Function.prototype;i in a||n(8).f(a,i,{value:function(e){if("function"!=typeof this||!o(e))return!1;if(!o(this.prototype))return e instanceof this;for(;e=r(e);)if(this.prototype===e)return!0;return!1}})},function(e,t,n){var o=n(0),n=n(117);o(o.G+o.F*(parseInt!=n),{parseInt:n})},function(e,t,n){var o=n(0),n=n(118);o(o.G+o.F*(parseFloat!=n),{parseFloat:n})},function(e,t,n){"use strict";function o(e){var t=l(e,!1);if("string"==typeof t&&2<t.length){var n,o,r=(t=b?t.trim():p(t,3)).charCodeAt(0);if(43===r||45===r){if(88===(e=t.charCodeAt(2))||120===e)return NaN}else if(48===r){switch(t.charCodeAt(1)){case 66:case 98:n=2,o=49;break;case 79:case 111:n=8,o=55;break;default:return+t}for(var i,a=t.slice(2),s=0,c=a.length;s<c;s++)if((i=a.charCodeAt(s))<48||o<i)return NaN;return parseInt(a,n)}}return+t}var r=n(2),i=n(16),a=n(22),s=n(85),l=n(24),c=n(3),u=n(40).f,d=n(18).f,f=n(8).f,p=n(46).trim,h=r.Number,m=h,g=h.prototype,v="Number"==a(n(39)(g)),b="trim"in String.prototype;if(!h(" 0o1")||!h("0b1")||h("+0x1")){h=function(e){var e=arguments.length<1?0:e,t=this;return t instanceof h&&(v?c(function(){g.valueOf.call(t)}):"Number"!=a(t))?s(new m(o(e)),t,h):o(e)};for(var y,w=n(7)?u(m):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),x=0;w.length>x;x++)i(m,y=w[x])&&!i(h,y)&&f(h,y,d(m,y));(h.prototype=g).constructor=h,n(14)(r,"Number",h)}},function(e,t,n){"use strict";function s(e,t){for(var n=-1,o=t;++n<6;)o+=e*a[n],a[n]=o%1e7,o=i(o/1e7)}function c(e){for(var t=6,n=0;0<=--t;)n+=a[t],a[t]=i(n/e),n=n%e*1e7}function l(){for(var e,t=6,n="";0<=--t;)""===n&&0!==t&&0===a[t]||(e=String(a[t]),n=""===n?e:n+f.call("0",7-e.length)+e);return n}var o=n(0),u=n(26),d=n(119),f=n(86),r=1..toFixed,i=Math.floor,a=[0,0,0,0,0,0],p="Number.toFixed: incorrect invocation!",h=function(e,t,n){return 0===t?n:t%2==1?h(e,t-1,n*e):h(e*e,t/2,n)};o(o.P+o.F*(!!r&&("0.000"!==8e-5.toFixed(3)||"1"!==.9.toFixed(0)||"1.25"!==1.255.toFixed(2)||"1000000000000000128"!==0xde0b6b3a7640080.toFixed(0))||!n(3)(function(){r.call({})})),"Number",{toFixed:function(e){var t,n,o=d(this,p),r=u(e),i="",a="0";if(r<0||20<r)throw RangeError(p);if(o!=o)return"NaN";if(o<=-1e21||1e21<=o)return String(o);if(o<0&&(i="-",o=-o),1e-21<o)if(e=(n=function(){for(var e=0,t=o*h(2,69,1);4096<=t;)e+=12,t/=4096;for(;2<=t;)e+=1,t/=2;return e}()-69)<0?o*h(2,-n,1):o/h(2,n,1),e*=4503599627370496,0<(n=52-n)){for(s(0,e),t=r;7<=t;)s(1e7,0),t-=7;for(s(h(10,t,1),0),t=n-1;23<=t;)c(1<<23),t-=23;c(1<<t),s(1,1),c(2),a=l()}else s(0,e),s(1<<-n,0),a=l()+f.call("0",r);return 0<r?i+((n=a.length)<=r?"0."+f.call("0",r-n)+a:a.slice(0,n-r)+"."+a.slice(n-r)):i+a}})},function(e,t,n){"use strict";var o=n(0),r=n(3),i=n(119),a=1..toPrecision;o(o.P+o.F*(r(function(){return"1"!==a.call(1,void 0)})||!r(function(){a.call({})})),"Number",{toPrecision:function(e){var t=i(this,"Number#toPrecision: incorrect invocation!");return void 0===e?a.call(t):a.call(t,e)}})},function(e,t,n){n=n(0);n(n.S,"Number",{EPSILON:Math.pow(2,-52)})},function(e,t,n){var o=n(0),r=n(2).isFinite;o(o.S,"Number",{isFinite:function(e){return"number"==typeof e&&r(e)}})},function(e,t,n){var o=n(0);o(o.S,"Number",{isInteger:n(120)})},function(e,t,n){n=n(0);n(n.S,"Number",{isNaN:function(e){return e!=e}})},function(e,t,n){var o=n(0),r=n(120),i=Math.abs;o(o.S,"Number",{isSafeInteger:function(e){return r(e)&&i(e)<=9007199254740991}})},function(e,t,n){n=n(0);n(n.S,"Number",{MAX_SAFE_INTEGER:9007199254740991})},function(e,t,n){n=n(0);n(n.S,"Number",{MIN_SAFE_INTEGER:-9007199254740991})},function(e,t,n){var o=n(0),n=n(118);o(o.S+o.F*(Number.parseFloat!=n),"Number",{parseFloat:n})},function(e,t,n){var o=n(0),n=n(117);o(o.S+o.F*(Number.parseInt!=n),"Number",{parseInt:n})},function(e,t,n){var o=n(0),r=n(121),i=Math.sqrt,n=Math.acosh;o(o.S+o.F*!(n&&710==Math.floor(n(Number.MAX_VALUE))&&n(1/0)==1/0),"Math",{acosh:function(e){return(e=+e)<1?NaN:94906265.62425156<e?Math.log(e)+Math.LN2:r(e-1+i(e-1)*i(e+1))}})},function(e,t,n){var o=n(0),n=Math.asinh;o(o.S+o.F*!(n&&0<1/n(0)),"Math",{asinh:function e(t){return isFinite(t=+t)&&0!=t?t<0?-e(-t):Math.log(t+Math.sqrt(t*t+1)):t}})},function(e,t,n){var o=n(0),n=Math.atanh;o(o.S+o.F*!(n&&1/n(-0)<0),"Math",{atanh:function(e){return 0==(e=+e)?e:Math.log((1+e)/(1-e))/2}})},function(e,t,n){var o=n(0),r=n(87);o(o.S,"Math",{cbrt:function(e){return r(e=+e)*Math.pow(Math.abs(e),1/3)}})},function(e,t,n){n=n(0);n(n.S,"Math",{clz32:function(e){return(e>>>=0)?31-Math.floor(Math.log(e+.5)*Math.LOG2E):32}})},function(e,t,n){var n=n(0),o=Math.exp;n(n.S,"Math",{cosh:function(e){return(o(e=+e)+o(-e))/2}})},function(e,t,n){var o=n(0),n=n(88);o(o.S+o.F*(n!=Math.expm1),"Math",{expm1:n})},function(e,t,n){var o=n(0);o(o.S,"Math",{fround:n(122)})},function(e,t,n){var n=n(0),c=Math.abs;n(n.S,"Math",{hypot:function(e,t){for(var n,o,r=0,i=0,a=arguments.length,s=0;i<a;)s<(n=c(arguments[i++]))?(r=r*(o=s/n)*o+1,s=n):r+=0<n?(o=n/s)*o:n;return s===1/0?1/0:s*Math.sqrt(r)}})},function(e,t,n){var o=n(0),r=Math.imul;o(o.S+o.F*n(3)(function(){return-5!=r(4294967295,5)||2!=r.length}),"Math",{imul:function(e,t){var n=+e,o=+t,e=65535&n,t=65535&o;return 0|e*t+((65535&n>>>16)*t+e*(65535&o>>>16)<<16>>>0)}})},function(e,t,n){n=n(0);n(n.S,"Math",{log10:function(e){return Math.log(e)*Math.LOG10E}})},function(e,t,n){var o=n(0);o(o.S,"Math",{log1p:n(121)})},function(e,t,n){n=n(0);n(n.S,"Math",{log2:function(e){return Math.log(e)/Math.LN2}})},function(e,t,n){var o=n(0);o(o.S,"Math",{sign:n(87)})},function(e,t,n){var o=n(0),r=n(88),i=Math.exp;o(o.S+o.F*n(3)(function(){return-2e-17!=!Math.sinh(-2e-17)}),"Math",{sinh:function(e){return Math.abs(e=+e)<1?(r(e)-r(-e))/2:(i(e-1)-i(-e-1))*(Math.E/2)}})},function(e,t,n){var o=n(0),r=n(88),i=Math.exp;o(o.S,"Math",{tanh:function(e){var t=r(e=+e),n=r(-e);return t==1/0?1:n==1/0?-1:(t-n)/(i(e)+i(-e))}})},function(e,t,n){n=n(0);n(n.S,"Math",{trunc:function(e){return(0<e?Math.floor:Math.ceil)(e)}})},function(e,t,n){var o=n(0),i=n(38),a=String.fromCharCode,n=String.fromCodePoint;o(o.S+o.F*(!!n&&1!=n.length),"String",{fromCodePoint:function(e){for(var t,n=[],o=arguments.length,r=0;r<o;){if(t=+arguments[r++],i(t,1114111)!==t)throw RangeError(t+" is not a valid code point");n.push(t<65536?a(t):a(55296+((t-=65536)>>10),t%1024+56320))}return n.join("")}})},function(e,t,n){var o=n(0),a=n(17),s=n(9);o(o.S,"String",{raw:function(e){for(var t=a(e.raw),n=s(t.length),o=arguments.length,r=[],i=0;i<n;)r.push(String(t[i++])),i<o&&r.push(String(arguments[i]));return r.join("")}})},function(e,t,n){"use strict";n(46)("trim",function(e){return function(){return e(this,3)}})},function(e,t,n){"use strict";var o=n(89)(!0);n(90)(String,"String",function(e){this._t=String(e),this._i=0},function(){var e=this._t,t=this._i;return t>=e.length?{value:void 0,done:!0}:(t=o(e,t),this._i+=t.length,{value:t,done:!1})})},function(e,t,n){"use strict";var o=n(0),r=n(89)(!1);o(o.P,"String",{codePointAt:function(e){return r(this,e)}})},function(e,t,n){"use strict";var o=n(0),r=n(9),i=n(92),a="".endsWith;o(o.P+o.F*n(93)("endsWith"),"String",{endsWith:function(e){var t=i(this,e,"endsWith"),n=1<arguments.length?arguments[1]:void 0,o=r(t.length),o=void 0===n?o:Math.min(r(n),o),e=String(e);return a?a.call(t,e,o):t.slice(o-e.length,o)===e}})},function(e,t,n){"use strict";var o=n(0),r=n(92);o(o.P+o.F*n(93)("includes"),"String",{includes:function(e){return!!~r(this,e,"includes").indexOf(e,1<arguments.length?arguments[1]:void 0)}})},function(e,t,n){var o=n(0);o(o.P,"String",{repeat:n(86)})},function(e,t,n){"use strict";var o=n(0),r=n(9),i=n(92),a="".startsWith;o(o.P+o.F*n(93)("startsWith"),"String",{startsWith:function(e){var t=i(this,e,"startsWith"),n=r(Math.min(1<arguments.length?arguments[1]:void 0,t.length)),e=String(e);return a?a.call(t,e,n):t.slice(n,n+e.length)===e}})},function(e,t,n){"use strict";n(15)("anchor",function(t){return function(e){return t(this,"a","name",e)}})},function(e,t,n){"use strict";n(15)("big",function(e){return function(){return e(this,"big","","")}})},function(e,t,n){"use strict";n(15)("blink",function(e){return function(){return e(this,"blink","","")}})},function(e,t,n){"use strict";n(15)("bold",function(e){return function(){return e(this,"b","","")}})},function(e,t,n){"use strict";n(15)("fixed",function(e){return function(){return e(this,"tt","","")}})},function(e,t,n){"use strict";n(15)("fontcolor",function(t){return function(e){return t(this,"font","color",e)}})},function(e,t,n){"use strict";n(15)("fontsize",function(t){return function(e){return t(this,"font","size",e)}})},function(e,t,n){"use strict";n(15)("italics",function(e){return function(){return e(this,"i","","")}})},function(e,t,n){"use strict";n(15)("link",function(t){return function(e){return t(this,"a","href",e)}})},function(e,t,n){"use strict";n(15)("small",function(e){return function(){return e(this,"small","","")}})},function(e,t,n){"use strict";n(15)("strike",function(e){return function(){return e(this,"strike","","")}})},function(e,t,n){"use strict";n(15)("sub",function(e){return function(){return e(this,"sub","","")}})},function(e,t,n){"use strict";n(15)("sup",function(e){return function(){return e(this,"sup","","")}})},function(e,t,n){n=n(0);n(n.S,"Date",{now:function(){return(new Date).getTime()}})},function(e,t,n){"use strict";var o=n(0),r=n(10),i=n(24);o(o.P+o.F*n(3)(function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}),"Date",{toJSON:function(e){var t=r(this),n=i(t);return"number"!=typeof n||isFinite(n)?t.toISOString():null}})},function(e,t,n){var o=n(0),n=n(243);o(o.P+o.F*(Date.prototype.toISOString!==n),"Date",{toISOString:n})},function(e,t,n){"use strict";function o(e){return 9<e?e:"0"+e}var n=n(3),r=Date.prototype.getTime,i=Date.prototype.toISOString;e.exports=n(function(){return"0385-07-25T07:06:39.999Z"!=i.call(new Date(-5e13-1))})||!n(function(){i.call(new Date(NaN))})?function(){if(!isFinite(r.call(this)))throw RangeError("Invalid time value");var e=this.getUTCFullYear(),t=this.getUTCMilliseconds(),n=e<0?"-":9999<e?"+":"";return n+("00000"+Math.abs(e)).slice(n?-6:-4)+"-"+o(this.getUTCMonth()+1)+"-"+o(this.getUTCDate())+"T"+o(this.getUTCHours())+":"+o(this.getUTCMinutes())+":"+o(this.getUTCSeconds())+"."+(99<t?t:"0"+o(t))+"Z"}:i},function(e,t,n){var o=Date.prototype,r=o.toString,i=o.getTime;new Date(NaN)+""!="Invalid Date"&&n(14)(o,"toString",function(){var e=i.call(this);return e==e?r.call(this):"Invalid Date"})},function(e,t,n){var o=n(5)("toPrimitive"),r=Date.prototype;o in r||n(13)(r,o,n(246))},function(e,t,n){"use strict";var o=n(1),r=n(24);e.exports=function(e){if("string"!==e&&"number"!==e&&"default"!==e)throw TypeError("Incorrect hint");return r(o(this),"number"!=e)}},function(e,t,n){var o=n(0);o(o.S,"Array",{isArray:n(61)})},function(e,t,n){"use strict";var d=n(21),o=n(0),f=n(10),p=n(123),h=n(94),m=n(9),g=n(95),v=n(96);o(o.S+o.F*!n(63)(function(e){Array.from(e)}),"Array",{from:function(e){var t,n,o,r,i=f(e),a="function"==typeof this?this:Array,s=arguments.length,c=1<s?arguments[1]:void 0,l=void 0!==c,u=0,e=v(i);if(l&&(c=d(c,2<s?arguments[2]:void 0,2)),null==e||a==Array&&h(e))for(n=new a(t=m(i.length));u<t;u++)g(n,u,l?c(i[u],u):i[u]);else for(r=e.call(i),n=new a;!(o=r.next()).done;u++)g(n,u,l?p(r,c,[o.value,u],!0):o.value);return n.length=u,n}})},function(e,t,n){"use strict";var o=n(0),r=n(95);o(o.S+o.F*n(3)(function(){function e(){}return!(Array.of.call(e)instanceof e)}),"Array",{of:function(){for(var e=0,t=arguments.length,n=new("function"==typeof this?this:Array)(t);e<t;)r(n,e,arguments[e++]);return n.length=t,n}})},function(e,t,n){"use strict";var o=n(0),r=n(17),i=[].join;o(o.P+o.F*(n(53)!=Object||!n(23)(i)),"Array",{join:function(e){return i.call(r(this),void 0===e?",":e)}})},function(e,t,n){"use strict";var o=n(0),r=n(82),c=n(22),l=n(38),u=n(9),d=[].slice;o(o.P+o.F*n(3)(function(){r&&d.call(r)}),"Array",{slice:function(e,t){var n=u(this.length),o=c(this);if(t=void 0===t?n:t,"Array"==o)return d.call(this,e,t);for(var r=l(e,n),n=l(t,n),i=u(n-r),a=new Array(i),s=0;s<i;s++)a[s]="String"==o?this.charAt(r+s):this[r+s];return a}})},function(e,t,n){"use strict";var o=n(0),r=n(12),i=n(10),a=n(3),s=[].sort,c=[1,2,3];o(o.P+o.F*(a(function(){c.sort(void 0)})||!a(function(){c.sort(null)})||!n(23)(s)),"Array",{sort:function(e){return void 0===e?s.call(i(this)):s.call(i(this),r(e))}})},function(e,t,n){"use strict";var o=n(0),r=n(28)(0),n=n(23)([].forEach,!0);o(o.P+o.F*!n,"Array",{forEach:function(e){return r(this,e,arguments[1])}})},function(e,t,n){var o=n(4),r=n(61),i=n(5)("species");e.exports=function(e){var t;return r(e)&&("function"!=typeof(t=e.constructor)||t!==Array&&!r(t.prototype)||(t=void 0),o(t)&&null===(t=t[i])&&(t=void 0)),void 0===t?Array:t}},function(e,t,n){"use strict";var o=n(0),r=n(28)(1);o(o.P+o.F*!n(23)([].map,!0),"Array",{map:function(e){return r(this,e,arguments[1])}})},function(e,t,n){"use strict";var o=n(0),r=n(28)(2);o(o.P+o.F*!n(23)([].filter,!0),"Array",{filter:function(e){return r(this,e,arguments[1])}})},function(e,t,n){"use strict";var o=n(0),r=n(28)(3);o(o.P+o.F*!n(23)([].some,!0),"Array",{some:function(e){return r(this,e,arguments[1])}})},function(e,t,n){"use strict";var o=n(0),r=n(28)(4);o(o.P+o.F*!n(23)([].every,!0),"Array",{every:function(e){return r(this,e,arguments[1])}})},function(e,t,n){"use strict";var o=n(0),r=n(124);o(o.P+o.F*!n(23)([].reduce,!0),"Array",{reduce:function(e){return r(this,e,arguments.length,arguments[1],!1)}})},function(e,t,n){"use strict";var o=n(0),r=n(124);o(o.P+o.F*!n(23)([].reduceRight,!0),"Array",{reduceRight:function(e){return r(this,e,arguments.length,arguments[1],!0)}})},function(e,t,n){"use strict";var o=n(0),r=n(59)(!1),i=[].indexOf,a=!!i&&1/[1].indexOf(1,-0)<0;o(o.P+o.F*(a||!n(23)(i)),"Array",{indexOf:function(e){return a?i.apply(this,arguments)||0:r(this,e,arguments[1])}})},function(e,t,n){"use strict";var o=n(0),r=n(17),i=n(26),a=n(9),s=[].lastIndexOf,c=!!s&&1/[1].lastIndexOf(1,-0)<0;o(o.P+o.F*(c||!n(23)(s)),"Array",{lastIndexOf:function(e){if(c)return s.apply(this,arguments)||0;var t=r(this),n=a(t.length),o=n-1;for(1<arguments.length&&(o=Math.min(o,i(arguments[1]))),o<0&&(o=n+o);0<=o;o--)if(o in t&&t[o]===e)return o||0;return-1}})},function(e,t,n){var o=n(0);o(o.P,"Array",{copyWithin:n(125)}),n(34)("copyWithin")},function(e,t,n){var o=n(0);o(o.P,"Array",{fill:n(98)}),n(34)("fill")},function(e,t,n){"use strict";var o=n(0),r=n(28)(5),i=!0;"find"in[]&&Array(1).find(function(){i=!1}),o(o.P+o.F*i,"Array",{find:function(e){return r(this,e,1<arguments.length?arguments[1]:void 0)}}),n(34)("find")},function(e,t,n){"use strict";var o=n(0),r=n(28)(6),i="findIndex",a=!0;i in[]&&Array(1)[i](function(){a=!1}),o(o.P+o.F*a,"Array",{findIndex:function(e){return r(this,e,1<arguments.length?arguments[1]:void 0)}}),n(34)(i)},function(e,t,n){n(41)("Array")},function(e,t,n){var o=n(2),i=n(85),r=n(8).f,a=n(40).f,s=n(62),c=n(64),l=o.RegExp,u=l,d=l.prototype,f=/a/g,p=/a/g,h=new l(f)!==f;if(n(7)&&(!h||n(3)(function(){return p[n(5)("match")]=!1,l(f)!=f||l(p)==p||"/a/i"!=l(f,"i")}))){l=function(e,t){var n=this instanceof l,o=s(e),r=void 0===t;return!n&&o&&e.constructor===l&&r?e:i(h?new u(o&&!r?e.source:e,t):u((o=e instanceof l)?e.source:e,o&&r?c.call(e):t),n?this:d,l)};for(var m=a(u),g=0;m.length>g;)!function(t){t in l||r(l,t,{configurable:!0,get:function(){return u[t]},set:function(e){u[t]=e}})}(m[g++]);(d.constructor=l).prototype=d,n(14)(o,"RegExp",l)}n(41)("RegExp")},function(e,t,n){"use strict";n(127);function o(e){n(14)(RegExp.prototype,"toString",e,!0)}var r=n(1),i=n(64),a=n(7),s=/./.toString;n(3)(function(){return"/a/b"!=s.call({source:"a",flags:"b"})})?o(function(){var e=r(this);return"/".concat(e.source,"/","flags"in e?e.flags:!a&&e instanceof RegExp?i.call(e):void 0)}):"toString"!=s.name&&o(function(){return s.call(this)})},function(e,t,n){n(65)("match",1,function(o,r,e){return[function(e){"use strict";var t=o(this),n=null==e?void 0:e[r];return void 0!==n?n.call(e,t):new RegExp(e)[r](String(t))},e]})},function(e,t,n){n(65)("replace",2,function(r,i,a){return[function(e,t){"use strict";var n=r(this),o=null==e?void 0:e[i];return void 0!==o?o.call(e,n,t):a.call(String(n),e,t)},a]})},function(e,t,n){n(65)("search",1,function(o,r,e){return[function(e){"use strict";var t=o(this),n=null==e?void 0:e[r];return void 0!==n?n.call(e,t):new RegExp(e)[r](String(t))},e]})},function(e,t,n){n(65)("split",2,function(r,i,a){"use strict";var p,h=n(62),m=a,g=[].push;return"c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||1<".".split(/()()/).length||"".split(/.?/).length?(p=void 0===/()??/.exec("")[1],a=function(e,t){var n=String(this);if(void 0===e&&0===t)return[];if(!h(e))return m.call(n,e,t);var o,r,i,a,s,c=[],l=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),u=0,d=void 0===t?4294967295:t>>>0,f=new RegExp(e.source,l+"g");for(p||(o=new RegExp("^"+f.source+"$(?!s)",l));(r=f.exec(n))&&!((i=r.index+r[0].length)>u&&(c.push(n.slice(u,r.index)),!p&&1<r.length&&r[0].replace(o,function(){for(s=1;s<arguments.length-2;s++)void 0===arguments[s]&&(r[s]=void 0)}),1<r.length&&r.index<n.length&&g.apply(c,r.slice(1)),a=r[0].length,u=i,c.length>=d));)f.lastIndex===r.index&&f.lastIndex++;return u===n.length?!a&&f.test("")||c.push(""):c.push(n.slice(u)),c.length>d?c.slice(0,d):c}):"0".split(void 0,0).length&&(a=function(e,t){return void 0===e&&0===t?[]:m.call(this,e,t)}),[function(e,t){var n=r(this),o=null==e?void 0:e[i];return void 0!==o?o.call(e,n,t):a.call(String(n),e,t)},a]})},function(e,t,n){"use strict";function o(){}function d(e){var t;return!(!g(e)||"function"!=typeof(t=e.then))&&t}function r(u,t){var n;u._n||(u._n=!0,n=u._c,_(function(){for(var c=u._v,l=1==u._s,e=0;n.length>e;)!function(e){var t,n,o,r=l?e.ok:e.fail,i=e.resolve,a=e.reject,s=e.domain;try{r?(l||(2==u._h&&L(u),u._h=1),!0===r?t=c:(s&&s.enter(),t=r(c),s&&(s.exit(),o=!0)),t===e.promise?a(A("Promise-chain cycle")):(n=d(t))?n.call(t,i,a):i(t)):a(c)}catch(e){s&&!o&&s.exit(),a(e)}}(n[e++]);u._c=[],u._n=!1,t&&!u._h&&I(u)}))}function i(e){var t=this;t._d||(t._d=!0,(t=t._w||t)._v=e,t._s=2,t._a||(t._a=t._c.slice()),r(t,!0))}var a,s,c,l,u=n(33),f=n(2),p=n(21),h=n(55),m=n(0),g=n(4),v=n(12),b=n(42),y=n(43),w=n(66),x=n(100).set,_=n(101)(),S=n(102),T=n(128),C=n(67),E=n(129),A=f.TypeError,k=f.process,M=k&&k.versions,O=M&&M.v8||"",R=f.Promise,P="process"==h(k),j=s=S.f,h=!!function(){try{var e=R.resolve(1),t=(e.constructor={})[n(5)("species")]=function(e){e(o,o)};return(P||"function"==typeof PromiseRejectionEvent)&&e.then(o)instanceof t&&0!==O.indexOf("6.6")&&-1===C.indexOf("Chrome/66")}catch(e){}}(),I=function(r){x.call(f,function(){var e,t,n=r._v,o=N(r);if(o&&(e=T(function(){P?k.emit("unhandledRejection",n,r):(t=f.onunhandledrejection)?t({promise:r,reason:n}):(t=f.console)&&t.error&&t.error("Unhandled promise rejection",n)}),r._h=P||N(r)?2:1),r._a=void 0,o&&e.e)throw e.v})},N=function(e){return 1!==e._h&&0===(e._a||e._c).length},L=function(t){x.call(f,function(){var e;P?k.emit("rejectionHandled",t):(e=f.onrejectionhandled)&&e({promise:t,reason:t._v})})},F=function(e){var n,o=this;if(!o._d){o._d=!0,o=o._w||o;try{if(o===e)throw A("Promise can't be resolved itself");(n=d(e))?_(function(){var t={_w:o,_d:!1};try{n.call(e,p(F,t,1),p(i,t,1))}catch(e){i.call(t,e)}}):(o._v=e,o._s=1,r(o,!1))}catch(e){i.call({_w:o,_d:!1},e)}}};h||(R=function(e){b(this,R,"Promise","_h"),v(e),a.call(this);try{e(p(F,this,1),p(i,this,1))}catch(e){i.call(this,e)}},(a=function(e){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=n(44)(R.prototype,{then:function(e,t){var n=j(w(this,R));return n.ok="function"!=typeof e||e,n.fail="function"==typeof t&&t,n.domain=P?k.domain:void 0,this._c.push(n),this._a&&this._a.push(n),this._s&&r(this,!1),n.promise},catch:function(e){return this.then(void 0,e)}}),c=function(){var e=new a;this.promise=e,this.resolve=p(F,e,1),this.reject=p(i,e,1)},S.f=j=function(e){return e===R||e===l?new c:s(e)}),m(m.G+m.W+m.F*!h,{Promise:R}),n(45)(R,"Promise"),n(41)("Promise"),l=n(20).Promise,m(m.S+m.F*!h,"Promise",{reject:function(e){var t=j(this);return(0,t.reject)(e),t.promise}}),m(m.S+m.F*(u||!h),"Promise",{resolve:function(e){return E(u&&this===l?R:this,e)}}),m(m.S+m.F*!(h&&n(63)(function(e){R.all(e).catch(o)})),"Promise",{all:function(e){var a=this,t=j(a),s=t.resolve,c=t.reject,n=T(function(){var o=[],r=0,i=1;y(e,!1,function(e){var t=r++,n=!1;o.push(void 0),i++,a.resolve(e).then(function(e){n||(n=!0,o[t]=e,--i||s(o))},c)}),--i||s(o)});return n.e&&c(n.v),t.promise},race:function(e){var t=this,n=j(t),o=n.reject,r=T(function(){y(e,!1,function(e){t.resolve(e).then(n.resolve,o)})});return r.e&&o(r.v),n.promise}})},function(e,t,n){"use strict";var o=n(134),r=n(48);n(68)("WeakSet",function(e){return function(){return e(this,0<arguments.length?arguments[0]:void 0)}},{add:function(e){return o.def(r(this,"WeakSet"),e,!0)}},o,!1,!0)},function(e,t,n){"use strict";var o=n(0),r=n(69),i=n(103),c=n(1),l=n(38),u=n(9),a=n(4),s=n(2).ArrayBuffer,d=n(66),f=i.ArrayBuffer,p=i.DataView,h=r.ABV&&s.isView,m=f.prototype.slice,g=r.VIEW;o(o.G+o.W+o.F*(s!==f),{ArrayBuffer:f}),o(o.S+o.F*!r.CONSTR,"ArrayBuffer",{isView:function(e){return h&&h(e)||a(e)&&g in e}}),o(o.P+o.U+o.F*n(3)(function(){return!new f(2).slice(1,void 0).byteLength}),"ArrayBuffer",{slice:function(e,t){if(void 0!==m&&void 0===t)return m.call(c(this),e);for(var n=c(this).byteLength,o=l(e,n),r=l(void 0===t?n:t,n),n=new(d(this,f))(u(r-o)),i=new p(this),a=new p(n),s=0;o<r;)a.setUint8(s++,i.getUint8(o++));return n}}),n(41)("ArrayBuffer")},function(e,t,n){var o=n(0);o(o.G+o.W+o.F*!n(69).ABV,{DataView:n(103).DataView})},function(e,t,n){n(29)("Int8",1,function(o){return function(e,t,n){return o(this,e,t,n)}})},function(e,t,n){n(29)("Uint8",1,function(o){return function(e,t,n){return o(this,e,t,n)}})},function(e,t,n){n(29)("Uint8",1,function(o){return function(e,t,n){return o(this,e,t,n)}},!0)},function(e,t,n){n(29)("Int16",2,function(o){return function(e,t,n){return o(this,e,t,n)}})},function(e,t,n){n(29)("Uint16",2,function(o){return function(e,t,n){return o(this,e,t,n)}})},function(e,t,n){n(29)("Int32",4,function(o){return function(e,t,n){return o(this,e,t,n)}})},function(e,t,n){n(29)("Uint32",4,function(o){return function(e,t,n){return o(this,e,t,n)}})},function(e,t,n){n(29)("Float32",4,function(o){return function(e,t,n){return o(this,e,t,n)}})},function(e,t,n){n(29)("Float64",8,function(o){return function(e,t,n){return o(this,e,t,n)}})},function(e,t,n){var o=n(0),r=n(12),i=n(1),a=(n(2).Reflect||{}).apply,s=Function.apply;o(o.S+o.F*!n(3)(function(){a(function(){})}),"Reflect",{apply:function(e,t,n){e=r(e),n=i(n);return a?a(e,t,n):s.call(e,t,n)}})},function(e,t,n){var o=n(0),r=n(39),i=n(12),a=n(1),s=n(4),c=n(3),l=n(115),u=(n(2).Reflect||{}).construct,d=c(function(){function e(){}return!(u(function(){},[],e)instanceof e)}),f=!c(function(){u(function(){})});o(o.S+o.F*(d||f),"Reflect",{construct:function(e,t){i(e),a(t);var n=arguments.length<3?e:i(arguments[2]);if(f&&!d)return u(e,t,n);if(e==n){switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3])}var o=[null];return o.push.apply(o,t),new(l.apply(e,o))}o=n.prototype,n=r(s(o)?o:Object.prototype),o=Function.apply.call(e,n,t);return s(o)?o:n}})},function(e,t,n){var o=n(8),r=n(0),i=n(1),a=n(24);r(r.S+r.F*n(3)(function(){Reflect.defineProperty(o.f({},1,{value:1}),1,{value:2})}),"Reflect",{defineProperty:function(e,t,n){i(e),t=a(t,!0),i(n);try{return o.f(e,t,n),!0}catch(e){return!1}}})},function(e,t,n){var o=n(0),r=n(18).f,i=n(1);o(o.S,"Reflect",{deleteProperty:function(e,t){var n=r(i(e),t);return!(n&&!n.configurable)&&delete e[t]}})},function(e,t,n){"use strict";function o(e){this._t=i(e),this._i=0;var t,n=this._k=[];for(t in e)n.push(t)}var r=n(0),i=n(1);n(91)(o,"Object",function(){var e,t=this._k;do{if(this._i>=t.length)return{value:void 0,done:!0}}while(!((e=t[this._i++])in this._t));return{value:e,done:!1}}),r(r.S,"Reflect",{enumerate:function(e){return new o(e)}})},function(e,t,n){var i=n(18),a=n(19),s=n(16),o=n(0),c=n(4),l=n(1);o(o.S,"Reflect",{get:function e(t,n){var o,r=arguments.length<3?t:arguments[2];return l(t)===r?t[n]:(o=i.f(t,n))?s(o,"value")?o.value:void 0!==o.get?o.get.call(r):void 0:c(o=a(t))?e(o,n,r):void 0}})},function(e,t,n){var o=n(18),r=n(0),i=n(1);r(r.S,"Reflect",{getOwnPropertyDescriptor:function(e,t){return o.f(i(e),t)}})},function(e,t,n){var o=n(0),r=n(19),i=n(1);o(o.S,"Reflect",{getPrototypeOf:function(e){return r(i(e))}})},function(e,t,n){n=n(0);n(n.S,"Reflect",{has:function(e,t){return t in e}})},function(e,t,n){var o=n(0),r=n(1),i=Object.isExtensible;o(o.S,"Reflect",{isExtensible:function(e){return r(e),!i||i(e)}})},function(e,t,n){var o=n(0);o(o.S,"Reflect",{ownKeys:n(136)})},function(e,t,n){var o=n(0),r=n(1),i=Object.preventExtensions;o(o.S,"Reflect",{preventExtensions:function(e){r(e);try{return i&&i(e),!0}catch(e){return!1}}})},function(e,t,n){var s=n(8),c=n(18),l=n(19),u=n(16),o=n(0),d=n(35),f=n(1),p=n(4);o(o.S,"Reflect",{set:function e(t,n,o){var r,i=arguments.length<4?t:arguments[3],a=c.f(f(t),n);if(!a){if(p(r=l(t)))return e(r,n,o,i);a=d(0)}if(u(a,"value")){if(!1===a.writable||!p(i))return!1;if(r=c.f(i,n)){if(r.get||r.set||!1===r.writable)return!1;r.value=o,s.f(i,n,r)}else s.f(i,n,d(0,o));return!0}return void 0!==a.set&&(a.set.call(i,o),!0)}})},function(e,t,n){var o=n(0),r=n(83);r&&o(o.S,"Reflect",{setPrototypeOf:function(e,t){r.check(e,t);try{return r.set(e,t),!0}catch(e){return!1}}})},function(e,t,n){"use strict";var o=n(0),r=n(59)(!0);o(o.P,"Array",{includes:function(e){return r(this,e,1<arguments.length?arguments[1]:void 0)}}),n(34)("includes")},function(e,t,n){"use strict";var o=n(0),r=n(137),i=n(10),a=n(9),s=n(12),c=n(97);o(o.P,"Array",{flatMap:function(e){var t,n,o=i(this);return s(e),t=a(o.length),n=c(o,0),r(n,o,o,t,0,1,e,arguments[1]),n}}),n(34)("flatMap")},function(e,t,n){"use strict";var o=n(0),r=n(137),i=n(10),a=n(9),s=n(26),c=n(97);o(o.P,"Array",{flatten:function(){var e=arguments[0],t=i(this),n=a(t.length),o=c(t,0);return r(o,t,t,n,0,void 0===e?1:s(e)),o}}),n(34)("flatten")},function(e,t,n){"use strict";var o=n(0),r=n(89)(!0);o(o.P,"String",{at:function(e){return r(this,e)}})},function(e,t,n){"use strict";var o=n(0),r=n(138),n=n(67);o(o.P+o.F*/Version\/10\.\d+(\.\d+)? Safari\//.test(n),"String",{padStart:function(e){return r(this,e,1<arguments.length?arguments[1]:void 0,!0)}})},function(e,t,n){"use strict";var o=n(0),r=n(138),n=n(67);o(o.P+o.F*/Version\/10\.\d+(\.\d+)? Safari\//.test(n),"String",{padEnd:function(e){return r(this,e,1<arguments.length?arguments[1]:void 0,!1)}})},function(e,t,n){"use strict";n(46)("trimLeft",function(e){return function(){return e(this,1)}},"trimStart")},function(e,t,n){"use strict";n(46)("trimRight",function(e){return function(){return e(this,2)}},"trimEnd")},function(e,t,n){"use strict";function o(e,t){this._r=e,this._s=t}var r=n(0),i=n(25),a=n(9),s=n(62),c=n(64),l=RegExp.prototype;n(91)(o,"RegExp String",function(){var e=this._r.exec(this._s);return{value:e,done:null===e}}),r(r.P,"String",{matchAll:function(e){if(i(this),!s(e))throw TypeError(e+" is not a regexp!");var t=String(this),n="flags"in l?String(e.flags):c.call(e),n=new RegExp(e.source,~n.indexOf("g")?n:"g"+n);return n.lastIndex=a(e.lastIndex),new o(n,t)}})},function(e,t,n){n(79)("asyncIterator")},function(e,t,n){n(79)("observable")},function(e,t,n){var o=n(0),c=n(136),l=n(17),u=n(18),d=n(95);o(o.S,"Object",{getOwnPropertyDescriptors:function(e){for(var t,n,o=l(e),r=u.f,i=c(o),a={},s=0;i.length>s;)void 0!==(n=r(o,t=i[s++]))&&d(a,t,n);return a}})},function(e,t,n){var o=n(0),r=n(139)(!1);o(o.S,"Object",{values:function(e){return r(e)}})},function(e,t,n){var o=n(0),r=n(139)(!0);o(o.S,"Object",{entries:function(e){return r(e)}})},function(e,t,n){"use strict";var o=n(0),r=n(10),i=n(12),a=n(8);n(7)&&o(o.P+n(70),"Object",{__defineGetter__:function(e,t){a.f(r(this),e,{get:i(t),enumerable:!0,configurable:!0})}})},function(e,t,n){"use strict";var o=n(0),r=n(10),i=n(12),a=n(8);n(7)&&o(o.P+n(70),"Object",{__defineSetter__:function(e,t){a.f(r(this),e,{set:i(t),enumerable:!0,configurable:!0})}})},function(e,t,n){"use strict";var o=n(0),r=n(10),i=n(24),a=n(19),s=n(18).f;n(7)&&o(o.P+n(70),"Object",{__lookupGetter__:function(e){var t,n=r(this),o=i(e,!0);do{if(t=s(n,o))return t.get}while(n=a(n))}})},function(e,t,n){"use strict";var o=n(0),r=n(10),i=n(24),a=n(19),s=n(18).f;n(7)&&o(o.P+n(70),"Object",{__lookupSetter__:function(e){var t,n=r(this),o=i(e,!0);do{if(t=s(n,o))return t.set}while(n=a(n))}})},function(e,t,n){var o=n(0);o(o.P+o.R,"Map",{toJSON:n(140)("Map")})},function(e,t,n){var o=n(0);o(o.P+o.R,"Set",{toJSON:n(140)("Set")})},function(e,t,n){n(71)("Map")},function(e,t,n){n(71)("Set")},function(e,t,n){n(71)("WeakMap")},function(e,t,n){n(71)("WeakSet")},function(e,t,n){n(72)("Map")},function(e,t,n){n(72)("Set")},function(e,t,n){n(72)("WeakMap")},function(e,t,n){n(72)("WeakSet")},function(e,t,n){var o=n(0);o(o.G,{global:n(2)})},function(e,t,n){var o=n(0);o(o.S,"System",{global:n(2)})},function(e,t,n){var o=n(0),r=n(22);o(o.S,"Error",{isError:function(e){return"Error"===r(e)}})},function(e,t,n){n=n(0);n(n.S,"Math",{clamp:function(e,t,n){return Math.min(n,Math.max(t,e))}})},function(e,t,n){n=n(0);n(n.S,"Math",{DEG_PER_RAD:Math.PI/180})},function(e,t,n){var n=n(0),o=180/Math.PI;n(n.S,"Math",{degrees:function(e){return e*o}})},function(e,t,n){var o=n(0),i=n(142),a=n(122);o(o.S,"Math",{fscale:function(e,t,n,o,r){return a(i(e,t,n,o,r))}})},function(e,t,n){n=n(0);n(n.S,"Math",{iaddh:function(e,t,n,o){e>>>=0,n>>>=0;return(t>>>0)+(o>>>0)+((e&n|(e|n)&~(e+n>>>0))>>>31)|0}})},function(e,t,n){n=n(0);n(n.S,"Math",{isubh:function(e,t,n,o){e>>>=0,n>>>=0;return(t>>>0)-(o>>>0)-((~e&n|~(e^n)&e-n>>>0)>>>31)|0}})},function(e,t,n){n=n(0);n(n.S,"Math",{imulh:function(e,t){var n=+e,o=+t,e=65535&n,t=65535&o,n=n>>16,o=o>>16,t=(n*t>>>0)+(e*t>>>16);return n*o+(t>>16)+((e*o>>>0)+(65535&t)>>16)}})},function(e,t,n){n=n(0);n(n.S,"Math",{RAD_PER_DEG:180/Math.PI})},function(e,t,n){var n=n(0),o=Math.PI/180;n(n.S,"Math",{radians:function(e){return e*o}})},function(e,t,n){var o=n(0);o(o.S,"Math",{scale:n(142)})},function(e,t,n){n=n(0);n(n.S,"Math",{umulh:function(e,t){var n=+e,o=+t,e=65535&n,t=65535&o,n=n>>>16,o=o>>>16,t=(n*t>>>0)+(e*t>>>16);return n*o+(t>>>16)+((e*o>>>0)+(65535&t)>>>16)}})},function(e,t,n){n=n(0);n(n.S,"Math",{signbit:function(e){return(e=+e)!=e?e:0==e?1/e==1/0:0<e}})},function(e,t,n){"use strict";var o=n(0),r=n(20),i=n(2),a=n(66),s=n(129);o(o.P+o.R,"Promise",{finally:function(t){var n=a(this,r.Promise||i.Promise),e="function"==typeof t;return this.then(e?function(e){return s(n,t()).then(function(){return e})}:t,e?function(e){return s(n,t()).then(function(){throw e})}:t)}})},function(e,t,n){"use strict";var o=n(0),r=n(102),i=n(128);o(o.S,"Promise",{try:function(e){var t=r.f(this),e=i(e);return(e.e?t.reject:t.resolve)(e.v),t.promise}})},function(e,t,n){var o=n(30),r=n(1),i=o.key,a=o.set;o.exp({defineMetadata:function(e,t,n,o){a(e,t,r(n),i(o))}})},function(e,t,n){var o=n(30),r=n(1),i=o.key,a=o.map,s=o.store;o.exp({deleteMetadata:function(e,t){var n=arguments.length<3?void 0:i(arguments[2]),o=a(r(t),n,!1);if(void 0===o||!o.delete(e))return!1;if(o.size)return!0;o=s.get(t);return o.delete(n),!!o.size||s.delete(t)}})},function(e,t,n){var o=n(30),r=n(1),i=n(19),a=o.has,s=o.get,c=o.key,l=function(e,t,n){if(a(e,t,n))return s(e,t,n);t=i(t);return null!==t?l(e,t,n):void 0};o.exp({getMetadata:function(e,t){return l(e,r(t),arguments.length<3?void 0:c(arguments[2]))}})},function(e,t,n){var o=n(132),r=n(141),i=n(30),a=n(1),s=n(19),c=i.keys,l=i.key,u=function(e,t){var n=c(e,t),e=s(e);if(null===e)return n;t=u(e,t);return t.length?n.length?r(new o(n.concat(t))):t:n};i.exp({getMetadataKeys:function(e){return u(a(e),arguments.length<2?void 0:l(arguments[1]))}})},function(e,t,n){var o=n(30),r=n(1),i=o.get,a=o.key;o.exp({getOwnMetadata:function(e,t){return i(e,r(t),arguments.length<3?void 0:a(arguments[2]))}})},function(e,t,n){var o=n(30),r=n(1),i=o.keys,a=o.key;o.exp({getOwnMetadataKeys:function(e){return i(r(e),arguments.length<2?void 0:a(arguments[1]))}})},function(e,t,n){var o=n(30),r=n(1),i=n(19),a=o.has,s=o.key,c=function(e,t,n){if(a(e,t,n))return!0;t=i(t);return null!==t&&c(e,t,n)};o.exp({hasMetadata:function(e,t){return c(e,r(t),arguments.length<3?void 0:s(arguments[2]))}})},function(e,t,n){var o=n(30),r=n(1),i=o.has,a=o.key;o.exp({hasOwnMetadata:function(e,t){return i(e,r(t),arguments.length<3?void 0:a(arguments[2]))}})},function(e,t,n){var o=n(30),r=n(1),i=n(12),a=o.key,s=o.set;o.exp({metadata:function(n,o){return function(e,t){s(n,o,(void 0!==t?r:i)(e),a(t))}}})},function(e,t,n){var o=n(0),r=n(101)(),i=n(2).process,a="process"==n(22)(i);o(o.G,{asap:function(e){var t=a&&i.domain;r(t?t.bind(e):e)}})},function(e,t,n){"use strict";function r(e){return null==e?void 0:p(e)}function i(e){var t=e._c;t&&(e._c=void 0,t())}function a(e){return void 0===e._o}function s(e){a(e)||(e._o=void 0,i(e))}function o(t,e){h(t),this._c=void 0,this._o=t,t=new w(this);try{var n=e(t),o=n;null!=n&&("function"==typeof n.unsubscribe?n=function(){o.unsubscribe()}:p(n),this._c=n)}catch(e){return void t.error(e)}a(this)&&i(this)}var c=n(0),l=n(2),u=n(20),d=n(101)(),f=n(5)("observable"),p=n(12),h=n(1),m=n(42),g=n(44),v=n(13),b=n(43),y=b.RETURN;o.prototype=g({},{unsubscribe:function(){s(this)}});var w=function(e){this._s=e};w.prototype=g({},{next:function(e){var t=this._s;if(!a(t)){var n=t._o;try{var o=r(n.next);if(o)return o.call(n,e)}catch(e){try{s(t)}finally{throw e}}}},error:function(e){var t=this._s;if(a(t))throw e;var n=t._o;t._o=void 0;try{var o=r(n.error);if(!o)throw e;e=o.call(n,e)}catch(e){try{i(t)}finally{throw e}}return i(t),e},complete:function(e){var t=this._s;if(!a(t)){var n=t._o;t._o=void 0;try{var o=r(n.complete);e=o?o.call(n,e):void 0}catch(e){try{i(t)}finally{throw e}}return i(t),e}}});var x=function(e){m(this,x,"Observable","_f")._f=p(e)};g(x.prototype,{subscribe:function(e){return new o(e,this._f)},forEach:function(o){var r=this;return new(u.Promise||l.Promise)(function(e,t){p(o);var n=r.subscribe({next:function(e){try{return o(e)}catch(e){t(e),n.unsubscribe()}},error:t,complete:e})})}}),g(x,{from:function(e){var t="function"==typeof this?this:x,n=r(h(e)[f]);if(n){var o=h(n.call(e));return o.constructor===t?o:new t(function(e){return o.subscribe(e)})}return new t(function(t){var n=!1;return d(function(){if(!n){try{if(b(e,!1,function(e){if(t.next(e),n)return y})===y)return}catch(e){if(n)throw e;return void t.error(e)}t.complete()}}),function(){n=!0}})},of:function(){for(var e=0,t=arguments.length,o=new Array(t);e<t;)o[e]=arguments[e++];return new("function"==typeof this?this:x)(function(t){var n=!1;return d(function(){if(!n){for(var e=0;e<o.length;++e)if(t.next(o[e]),n)return;t.complete()}}),function(){n=!0}})}}),v(x.prototype,f,function(){return this}),c(c.G,{Observable:x}),n(41)("Observable")},function(e,t,n){var o=n(2),r=n(0),i=n(67),a=[].slice,n=/MSIE .\./.test(i),i=function(r){return function(e,t){var n=2<arguments.length,o=!!n&&a.call(arguments,2);return r(n?function(){("function"==typeof e?e:Function(e)).apply(this,o)}:e,t)}};r(r.G+r.B+r.F*n,{setTimeout:i(o.setTimeout),setInterval:i(o.setInterval)})},function(e,t,n){var o=n(0),n=n(100);o(o.G+o.B,{setImmediate:n.set,clearImmediate:n.clear})},function(e,t,n){for(var o=n(99),r=n(37),i=n(14),a=n(2),s=n(13),c=n(47),n=n(5),l=n("iterator"),u=n("toStringTag"),d=c.Array,f={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},p=r(f),h=0;h<p.length;h++){var m,g=p[h],v=f[g],b=a[g],y=b&&b.prototype;if(y&&(y[l]||s(y,l,d),y[u]||s(y,u,g),c[g]=d,v))for(m in o)y[m]||i(y,m,o[m],!0)}},function(k,e,t){(function(e){!function(e){"use strict";var c,l,u,d,f,p,t,n=Object.prototype,h=n.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},r=o.iterator||"@@iterator",i=o.asyncIterator||"@@asyncIterator",a=o.toStringTag||"@@toStringTag",s="object"==typeof k,m=e.regeneratorRuntime;function g(e,t,n,o){var r,i,a,s,t=t&&t.prototype instanceof b?t:b,t=Object.create(t.prototype),o=new C(o||[]);return t._invoke=(r=e,i=n,a=o,s=l,function(e,t){if(s===d)throw new Error("Generator is already running");if(s===f){if("throw"===e)throw t;return A()}for(a.method=e,a.arg=t;;){var n=a.delegate;if(n){var o=function e(t,n){var o=t.iterator[n.method];if(o===c){if(n.delegate=null,"throw"===n.method){if(t.iterator.return&&(n.method="return",n.arg=c,e(t,n),"throw"===n.method))return p;n.method="throw",n.arg=new TypeError("The iterator does not provide a 'throw' method")}return p}o=v(o,t.iterator,n.arg);if("throw"===o.type)return n.method="throw",n.arg=o.arg,n.delegate=null,p;var o=o.arg;return o?o.done?(n[t.resultName]=o.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=c),n.delegate=null,p):o:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,p)}(n,a);if(o){if(o===p)continue;return o}}if("next"===a.method)a.sent=a._sent=a.arg;else if("throw"===a.method){if(s===l)throw s=f,a.arg;a.dispatchException(a.arg)}else"return"===a.method&&a.abrupt("return",a.arg);s=d;o=v(r,i,a);if("normal"===o.type){if(s=a.done?f:u,o.arg===p)continue;return{value:o.arg,done:a.done}}"throw"===o.type&&(s=f,a.method="throw",a.arg=o.arg)}}),t}function v(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}function b(){}function y(){}function w(){}function x(e){["next","throw","return"].forEach(function(t){e[t]=function(e){return this._invoke(t,e)}})}function _(i){function a(e,t,n,o){e=v(i[e],i,t);if("throw"!==e.type){var r=e.arg,t=r.value;return t&&"object"==typeof t&&h.call(t,"__await")?Promise.resolve(t.__await).then(function(e){a("next",e,n,o)},function(e){a("throw",e,n,o)}):Promise.resolve(t).then(function(e){r.value=e,n(r)},o)}o(e.arg)}var t;"object"==typeof e.process&&e.process.domain&&(a=e.process.domain.bind(a)),this._invoke=function(n,o){function e(){return new Promise(function(e,t){a(n,o,e,t)})}return t=t?t.then(e,e):e()}}function S(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function T(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function C(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(S,this),this.reset(!0)}function E(t){if(t){var e=t[r];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,e=function e(){for(;++n<t.length;)if(h.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=c,e.done=!0,e};return e.next=e}}return{next:A}}function A(){return{value:c,done:!0}}m?s&&(k.exports=m):((m=e.regeneratorRuntime=s?k.exports:{}).wrap=g,l="suspendedStart",u="suspendedYield",d="executing",f="completed",p={},(o={})[r]=function(){return this},(s=(s=Object.getPrototypeOf)&&s(s(E([]))))&&s!==n&&h.call(s,r)&&(o=s),t=w.prototype=b.prototype=Object.create(o),(y.prototype=t.constructor=w).constructor=y,w[a]=y.displayName="GeneratorFunction",m.isGeneratorFunction=function(e){e="function"==typeof e&&e.constructor;return!!e&&(e===y||"GeneratorFunction"===(e.displayName||e.name))},m.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,w):(e.__proto__=w,a in e||(e[a]="GeneratorFunction")),e.prototype=Object.create(t),e},m.awrap=function(e){return{__await:e}},x(_.prototype),_.prototype[i]=function(){return this},m.AsyncIterator=_,m.async=function(e,t,n,o){var r=new _(g(e,t,n,o));return m.isGeneratorFunction(t)?r:r.next().then(function(e){return e.done?e.value:r.next()})},x(t),t[a]="Generator",t[r]=function(){return this},t.toString=function(){return"[object Generator]"},m.keys=function(n){var e,o=[];for(e in n)o.push(e);return o.reverse(),function e(){for(;o.length;){var t=o.pop();if(t in n)return e.value=t,e.done=!1,e}return e.done=!0,e}},m.values=E,C.prototype={constructor:C,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=c,this.done=!1,this.delegate=null,this.method="next",this.arg=c,this.tryEntries.forEach(T),!e)for(var t in this)"t"===t.charAt(0)&&h.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=c)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(n){if(this.done)throw n;var o=this;function e(e,t){return i.type="throw",i.arg=n,o.next=e,t&&(o.method="next",o.arg=c),!!t}for(var t=this.tryEntries.length-1;0<=t;--t){var r=this.tryEntries[t],i=r.completion;if("root"===r.tryLoc)return e("end");if(r.tryLoc<=this.prev){var a=h.call(r,"catchLoc"),s=h.call(r,"finallyLoc");if(a&&s){if(this.prev<r.catchLoc)return e(r.catchLoc,!0);if(this.prev<r.finallyLoc)return e(r.finallyLoc)}else if(a){if(this.prev<r.catchLoc)return e(r.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<r.finallyLoc)return e(r.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;0<=n;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&h.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var r=o;break}}r&&("break"===e||"continue"===e)&&r.tryLoc<=t&&t<=r.finallyLoc&&(r=null);var i=r?r.completion:{};return i.type=e,i.arg=t,r?(this.method="next",this.next=r.finallyLoc,p):this.complete(i)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),p},finish:function(e){for(var t=this.tryEntries.length-1;0<=t;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),T(n),p}},catch:function(e){for(var t=this.tryEntries.length-1;0<=t;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var o,r=n.completion;return"throw"===r.type&&(o=r.arg,T(n)),o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:E(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=c),p}})}("object"==typeof e?e:"object"==typeof window?window:"object"==typeof self?self:this)}).call(this,t(31))},function(e,t,n){n(362),e.exports=n(20).RegExp.escape},function(e,t,n){var o=n(0),r=n(363)(/[\\^$*+?.()|[\]{}]/g,"$&");o(o.S,"RegExp",{escape:function(e){return r(e)}})},function(e,t){e.exports=function(t,n){var o=n===Object(n)?function(e){return n[e]}:n;return function(e){return String(e).replace(t,o)}}},function(e,t){!function(){if("undefined"!=typeof window)try{var e=new window.CustomEvent("test",{cancelable:!0});if(e.preventDefault(),!0!==e.defaultPrevented)throw new Error("Could not prevent default")}catch(e){function t(e,t){var n,o;return t=t||{bubbles:!1,cancelable:!1,detail:void 0},(n=document.createEvent("CustomEvent")).initCustomEvent(e,t.bubbles,t.cancelable,t.detail),o=n.preventDefault,n.preventDefault=function(){o.call(this);try{Object.defineProperty(this,"defaultPrevented",{get:function(){return!0}})}catch(e){this.defaultPrevented=!0}},n}t.prototype=window.Event.prototype,window.CustomEvent=t}}()},function(e,t,n){(function(e){function o(t){var e={next:function(){var e=t.shift();return{done:void 0===e,value:e}}};return s&&(e[Symbol.iterator]=function(){return e}),e}function r(e){return encodeURIComponent(e).replace(/%20/g,"+")}function i(e){return decodeURIComponent(e).replace(/\+/g," ")}var t,a,n,s;t=void 0!==e?e:"undefined"!=typeof window?window:"undefined"!=typeof self?self:this,s=function(){try{return!!Symbol.iterator}catch(e){return!1}}(),"URLSearchParams"in t&&"a=1"===new URLSearchParams("?a=1").toString()||((n=(a=function(e){var n;if(Object.defineProperty(this,"_entries",{value:{}}),"string"==typeof e){if(""!==e)for(var t,o=(e=e.replace(/^\?/,"")).split("&"),r=0;r<o.length;r++)t=o[r].split("="),this.append(i(t[0]),1<t.length?i(t[1]):"")}else e instanceof a&&(n=this,e.forEach(function(e,t){n.append(e,t)}))}).prototype).append=function(e,t){e in this._entries?this._entries[e].push(t.toString()):this._entries[e]=[t.toString()]},n.delete=function(e){delete this._entries[e]},n.get=function(e){return e in this._entries?this._entries[e][0]:null},n.getAll=function(e){return e in this._entries?this._entries[e].slice(0):[]},n.has=function(e){return e in this._entries},n.set=function(e,t){this._entries[e]=[t.toString()]},n.forEach=function(e,t){var n,o;for(o in this._entries)if(this._entries.hasOwnProperty(o)){n=this._entries[o];for(var r=0;r<n.length;r++)e.call(t,n[r],o,this)}},n.keys=function(){var n=[];return this.forEach(function(e,t){n.push(t)}),o(n)},n.values=function(){var t=[];return this.forEach(function(e){t.push(e)}),o(t)},n.entries=function(){var n=[];return this.forEach(function(e,t){n.push([t,e])}),o(n)},s&&(n[Symbol.iterator]=n.entries),n.toString=function(){var n=[];return this.forEach(function(e,t){n.push(r(t)+"="+r(e))}),n.join("&")},t.URLSearchParams=a),function(i){if(function(){try{var e=new URL("b","http://a");return e.pathname="c%20d","http://a/c%20d"===e.href&&e.searchParams}catch(e){return}}()||(n=i.URL,o=e.prototype,["hash","host","hostname","port","protocol","search"].forEach(function(e){var t;t=e,Object.defineProperty(o,t,{get:function(){return this._anchorElement[t]},set:function(e){this._anchorElement[t]=e},enumerable:!0})}),Object.defineProperties(o,{toString:{get:function(){var e=this;return function(){return e.href}}},href:{get:function(){return this._anchorElement.href.replace(/\?$/,"")},set:function(e){this._anchorElement.href=e},enumerable:!0},pathname:{get:function(){return this._anchorElement.pathname.replace(/(^\/?)/,"/")},set:function(e){this._anchorElement.pathname=e},enumerable:!0},origin:{get:function(){var e={"http:":80,"https:":443,"ftp:":21}[this._anchorElement.protocol],e=this._anchorElement.port!=e&&""!==this._anchorElement.port;return this._anchorElement.protocol+"//"+this._anchorElement.hostname+(e?":"+this._anchorElement.port:"")},enumerable:!0},password:{get:function(){return""},set:function(e){},enumerable:!0},username:{get:function(){return""},set:function(e){},enumerable:!0},searchParams:{get:function(){var n=new URLSearchParams(this.search),o=this;return["append","delete","set"].forEach(function(e){var t=n[e];n[e]=function(){t.apply(n,arguments),o.search=n.toString()}}),n},enumerable:!0}}),e.createObjectURL=function(e){return n.createObjectURL.apply(n,arguments)},e.revokeObjectURL=function(e){return n.revokeObjectURL.apply(n,arguments)},i.URL=e),void 0!==i.location&&!("origin"in i.location)){function t(){return i.location.protocol+"//"+i.location.hostname+(i.location.port?":"+i.location.port:"")}try{Object.defineProperty(i.location,"origin",{get:t,enumerable:!0})}catch(e){setInterval(function(){i.location.origin=t()},100)}}function e(e,t){"string"!=typeof e&&(e=String(e));var n,o=document;if(t&&(void 0===i.location||t!==i.location.href)){(n=(o=document.implementation.createHTMLDocument("")).createElement("base")).href=t,o.head.appendChild(n);try{if(0!==n.href.indexOf(t))throw new Error(n.href)}catch(e){throw new Error("URL unable to set base "+t+" due to "+e)}}var r=o.createElement("a");if(r.href=e,n&&(o.body.appendChild(r),r.href=r.href),":"===r.protocol||!/:/.test(r.href))throw new TypeError("Invalid URL");Object.defineProperty(this,"_anchorElement",{value:r})}var n,o}(void 0!==e?e:"undefined"!=typeof window?window:"undefined"!=typeof self?self:this)}).call(this,n(31))},function(e,t,n){(t=e.exports=n(367)(!1)).push([e.i,"@keyframes ejs--c2532bfe04554193cc42b3be753700{0%{opacity:0.5;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes ejs--7cadf43f3d9eb17c7e3c36de84973b{from{opacity:0}to{opacity:1}}@keyframes ejs--9bd947b3e6427453595f083d740a7c{from{}to{box-shadow:1px 3px 15px 8px #222,0px 7px 10px 0px #111,inset 0px 0px 1px 0px rgba(250,250,250,0.2),inset 8px 5px 35px 0px rgba(0,0,0,0.5)}}:root{--ejs-primary-color: 26, 175, 255}.ejs--de6433374cb30211f10e148b320b2f{height:100%}.ejs--7a5f920ceffb2913f6dbda780573cf{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;height:100%;width:100%;direction:ltr;font-family:Avenir,\"Avenir Next\",\"Helvetica Neue\",\"Segoe UI\",Helvetica,Arial,sans-serif;font-size:14px;font-variant-numeric:tabular-nums;font-weight:500;line-height:1.7;max-width:100%;min-width:200px;position:relative;text-shadow:none;transition:box-shadow 0.3s ease;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.ejs--7a5f920ceffb2913f6dbda780573cf a{color:#ddd;text-decoration:none}.ejs--7a5f920ceffb2913f6dbda780573cf button{font:inherit;line-height:inherit;width:auto}.ejs--7a5f920ceffb2913f6dbda780573cf ul{list-style:none;margin:0;padding:0}.ejs--7a5f920ceffb2913f6dbda780573cf:focus{outline:0}.ejs--7a5f920ceffb2913f6dbda780573cf *{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.ejs--f3a002bba9836fe4ebfed357a45521{box-sizing:border-box}.ejs--f3a002bba9836fe4ebfed357a45521 *,.ejs--f3a002bba9836fe4ebfed357a45521 *::after,.ejs--f3a002bba9836fe4ebfed357a45521 *::before{box-sizing:inherit}.ejs--f3a002bba9836fe4ebfed357a45521 a,.ejs--f3a002bba9836fe4ebfed357a45521 button,.ejs--f3a002bba9836fe4ebfed357a45521 input,.ejs--f3a002bba9836fe4ebfed357a45521 label{touch-action:manipulation}.ejs--008adea3c1ef33a8fc94892a1e97e6 li{display:inline-block;background:#fff;border:1px solid #ccc;font-size:12px}.ejs--008adea3c1ef33a8fc94892a1e97e6 li a{color:#000}.ejs--85a95eb6bf74a40ab61b91a91e5bff{position:absolute;width:100%;height:100%;top:0;z-index:9999;background:rgba(0,0,0,0.3) !important;color:#fff;text-align:center}.ejs--d169a219343bc32dd4aecc3f6b7f25{position:absolute;width:300px;top:50%;margin-left:-150px;margin-top:-50px;left:50%;background:rgba(0,0,0,0.8) !important;padding:15px 0}.ejs--782e3572812f983b3a150eec177391{text-align:center;font-size:13px}.ejs--c426dd1d179aa351e6cec47e1d9438,.ejs--31e7e81db48819ee35ec6f50378a2e,.ejs--20d4eb2646d396f558a645dc0574f1,.ejs--4de05306c8b099bdeb4585571ac095{font-size:12px}.ejs--c7957d8666bb6b8fc7c3e9c021aaf8{background:rgba(16,16,16,0.9);border-radius:3px;font-size:13px;min-width:180px;padding:8px}.ejs--c7957d8666bb6b8fc7c3e9c021aaf8 li{padding:4px 11px;text-align:center}.ejs--c7957d8666bb6b8fc7c3e9c021aaf8 li a{color:#999;display:block;font-size:13px}.ejs--c7957d8666bb6b8fc7c3e9c021aaf8 li:hover{background:rgba(var(--ejs-primary-color), 1);border-radius:4px;box-shadow:0 0 0 5px rgba(var(--ejs-primary-color), 0.5);outline:0}.ejs--c7957d8666bb6b8fc7c3e9c021aaf8 li:hover a{color:#fff}.ejs--c7957d8666bb6b8fc7c3e9c021aaf8 li:last-child{border:0}.ejs--cbcfe0a1421cadac9a04c81d6431d6{display:block !important;position:absolute;left:50%;top:50%;transform:translate(-50%, -50%)}.ejs--cbcfe0a1421cadac9a04c81d6431d6 .ejs--f3a1903d935f6cf720d4a0498db62a:after{content:\"\";position:absolute;border-left:20px solid transparent;border-right:20px solid #a7a7a77d;border-top:20px solid #a7a7a77d;border-bottom:20px solid transparent;right:0}.ejs--cbcfe0a1421cadac9a04c81d6431d6 .ejs--f3a1903d935f6cf720d4a0498db62a a{right:4px;top:4px;position:absolute;border:none;padding:0;width:15px;height:15px;z-index:99}.ejs--cbcfe0a1421cadac9a04c81d6431d6 .ejs--f3a1903d935f6cf720d4a0498db62a a:before{content:\"\";border-bottom:1px solid #fff;transform:rotate(45deg) translateY(-45%);width:15px;height:15px;display:block;position:absolute;top:0;right:0}.ejs--cbcfe0a1421cadac9a04c81d6431d6 .ejs--f3a1903d935f6cf720d4a0498db62a a:after{content:\"\";border-bottom:1px solid #fff;width:15px;height:15px;display:block;position:absolute;right:0;background:transparent;top:0;transform:rotate(-45deg) translateY(-50%) translateX(0%)}a.ejs--73f9b4e94a7a1fe74e11107d5ab2ef{display:flex;justify-content:center;text-shadow:0px 1px 1px rgba(0,0,0,0.5);font-size:20px;line-height:45px;text-transform:uppercase;font-weight:bolder;position:relative;text-decoration:none;width:200px;height:45px;border:0;color:#fff !important;border-radius:35px;text-align:center;background-color:rgba(var(--ejs-primary-color), 1)}a.ejs--73f9b4e94a7a1fe74e11107d5ab2ef:active{box-shadow:0px 0px 0px 0px #222,0px 3px 7px 0px #111,inset 0px 1px 1px 0px rgba(250,250,250,0.2),inset 0px -10px 35px 5px rgba(0,0,0,0.5);top:1px}a.ejs--73f9b4e94a7a1fe74e11107d5ab2ef:hover{animation:ejs--9bd947b3e6427453595f083d740a7c 1.2s linear infinite alternate}.ejs--8732295ca5c4902a060d34706a8146{background:transparent;border:0;border-radius:3px;color:inherit;cursor:pointer;flex-shrink:0;overflow:visible;padding:7px;position:relative;transition:all 0.3s ease}.ejs--8732295ca5c4902a060d34706a8146 svg{display:block;fill:currentColor;height:18px;pointer-events:none;width:18px}.ejs--8732295ca5c4902a060d34706a8146:focus{outline:0}.ejs--8732295ca5c4902a060d34706a8146.ejs--a83b6c705e103e81a7762d0ed5e64b{box-shadow:0 0 0 5px rgba(var(--ejs-primary-color), 0.5);outline:0}.ejs--8732295ca5c4902a060d34706a8146:not(.ejs--b1238136ec472a92297159882cf4b8) .ejs--ec731619062226d943da67f5d83009,.ejs--8732295ca5c4902a060d34706a8146.ejs--b1238136ec472a92297159882cf4b8 .ejs--dc7068585e3d84fe0e676864c1439e,.ejs--8732295ca5c4902a060d34706a8146:not(.ejs--b1238136ec472a92297159882cf4b8) .ejs--0c6561f9155750b0aeeed6da5da7bf,.ejs--8732295ca5c4902a060d34706a8146.ejs--b1238136ec472a92297159882cf4b8 .ejs--13d64e30c1333cc99391af48ddabaa{display:none}.ejs--d5f430a99a1619b3434bf58e34a99c .ejs--8732295ca5c4902a060d34706a8146 svg{filter:drop-shadow(0 1px 1px rgba(0,0,0,0.15))}.ejs--d5f430a99a1619b3434bf58e34a99c .ejs--8732295ca5c4902a060d34706a8146.ejs--a83b6c705e103e81a7762d0ed5e64b,.ejs--d5f430a99a1619b3434bf58e34a99c .ejs--8732295ca5c4902a060d34706a8146:hover,.ejs--d5f430a99a1619b3434bf58e34a99c .ejs--8732295ca5c4902a060d34706a8146[aria-expanded='true']{background:rgba(var(--ejs-primary-color), 1);color:#fff}.ejs--d5f430a99a1619b3434bf58e34a99c .ejs--8732295ca5c4902a060d34706a8146[disabled],.ejs--d5f430a99a1619b3434bf58e34a99c .ejs--8732295ca5c4902a060d34706a8146[disabled]:hover{background:transparent;color:#4b4b4b}.ejs--f3a002bba9836fe4ebfed357a45521 ::-webkit-media-controls{display:none}.ejs--1acedc5ed6816abe96dd27d910fd74{align-items:center;display:flex;justify-content:flex-start;text-align:center}.ejs--1acedc5ed6816abe96dd27d910fd74>.ejs--8732295ca5c4902a060d34706a8146,.ejs--1acedc5ed6816abe96dd27d910fd74 .ejs--f1aa376719b564cae0e653157cde14,.ejs--1acedc5ed6816abe96dd27d910fd74 .ejs--90d2780f99bcc76fdb6b0378a7238e,.ejs--1acedc5ed6816abe96dd27d910fd74 .ejs--c7bfb2d1b75a40fdaaf90624bea9e7,.ejs--1acedc5ed6816abe96dd27d910fd74 .ejs--36ceeeec0df37a9cf4bbe05fa204ec{margin-left:5px}.ejs--1acedc5ed6816abe96dd27d910fd74 .ejs--c7bfb2d1b75a40fdaaf90624bea9e7+.ejs--8732295ca5c4902a060d34706a8146,.ejs--1acedc5ed6816abe96dd27d910fd74>.ejs--8732295ca5c4902a060d34706a8146+.ejs--c7bfb2d1b75a40fdaaf90624bea9e7,.ejs--1acedc5ed6816abe96dd27d910fd74>.ejs--8732295ca5c4902a060d34706a8146+.ejs--8732295ca5c4902a060d34706a8146,.ejs--1acedc5ed6816abe96dd27d910fd74 .ejs--f1aa376719b564cae0e653157cde14+.ejs--8732295ca5c4902a060d34706a8146{margin-left:2px}.ejs--1acedc5ed6816abe96dd27d910fd74>.ejs--8732295ca5c4902a060d34706a8146:first-child,.ejs--1acedc5ed6816abe96dd27d910fd74>.ejs--8732295ca5c4902a060d34706a8146:first-child+[data-btn='pause']{margin-left:0}.ejs--1acedc5ed6816abe96dd27d910fd74>.ejs--8732295ca5c4902a060d34706a8146:first-child+[data-btn='netplay']{margin-right:auto}.ejs--1acedc5ed6816abe96dd27d910fd74:empty{display:none}@media (min-width: 480px){.ejs--1acedc5ed6816abe96dd27d910fd74>.ejs--8732295ca5c4902a060d34706a8146,.ejs--1acedc5ed6816abe96dd27d910fd74 .ejs--c7bfb2d1b75a40fdaaf90624bea9e7,.ejs--1acedc5ed6816abe96dd27d910fd74 .ejs--f1aa376719b564cae0e653157cde14,.ejs--1acedc5ed6816abe96dd27d910fd74 .ejs--90d2780f99bcc76fdb6b0378a7238e,.ejs--1acedc5ed6816abe96dd27d910fd74 .ejs--36ceeeec0df37a9cf4bbe05fa204ec{margin-left:10px}}.ejs--d5f430a99a1619b3434bf58e34a99c .ejs--1acedc5ed6816abe96dd27d910fd74{background:linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0.7));border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;bottom:0;color:#fff;left:0;padding:20px 5px 5px;position:absolute;right:0;transition:opacity 0.4s ease-in-out, transform 0.4s ease-in-out;z-index:3}@media (min-width: 480px){.ejs--d5f430a99a1619b3434bf58e34a99c .ejs--1acedc5ed6816abe96dd27d910fd74{padding:15px 10px 10px}}.ejs--d5f430a99a1619b3434bf58e34a99c.ejs--1b8cb7f2294b1eb5de5238daea3513 .ejs--1acedc5ed6816abe96dd27d910fd74{opacity:0;pointer-events:none;transform:translateY(100%)}.ejs--7a5f920ceffb2913f6dbda780573cf [data-btn='fullscreen']{display:none}.ejs--19409fe2057ab935a7e46abb5b4f49 [data-btn='fullscreen']{display:inline-block}.ejs--c7bfb2d1b75a40fdaaf90624bea9e7{display:flex;position:relative}.ejs--c7bfb2d1b75a40fdaaf90624bea9e7 .ejs--8732295ca5c4902a060d34706a8146 svg{transition:transform 0.3s ease}.ejs--c7bfb2d1b75a40fdaaf90624bea9e7 .ejs--8732295ca5c4902a060d34706a8146[aria-expanded='true'] svg{transform:rotate(90deg)}.ejs--c7bfb2d1b75a40fdaaf90624bea9e7 .ejs--8732295ca5c4902a060d34706a8146[aria-expanded='true'] .ejs--74c6d4176d27e37a19d2e9e61de8f4{display:none}.ejs--013213afedeeb6878089b1ca1b4e47{animation:ejs--c2532bfe04554193cc42b3be753700 0.2s ease;background:rgba(16,16,16,0.9);border-radius:4px;bottom:100%;box-shadow:0 1px 2px rgba(0,0,0,0.15);color:#4f5b5f;font-size:16px;margin-bottom:10px;position:absolute;right:-3px;text-align:left;white-space:nowrap;z-index:3}.ejs--013213afedeeb6878089b1ca1b4e47>div{overflow:hidden;transition:height 0.35s cubic-bezier(0.4, 0, 0.2, 1),width 0.35s cubic-bezier(0.4, 0, 0.2, 1)}.ejs--013213afedeeb6878089b1ca1b4e47::after{border:4px solid transparent;border-top-color:rgba(16,16,16,0.9);content:'';height:0;position:absolute;right:15px;top:100%;width:0}.ejs--013213afedeeb6878089b1ca1b4e47 [role='menu']{padding:7px}.ejs--013213afedeeb6878089b1ca1b4e47 [role='menuitem'],.ejs--013213afedeeb6878089b1ca1b4e47 [role='menuitemradio']{margin-top:2px}.ejs--013213afedeeb6878089b1ca1b4e47 [role='menuitem']:first-child,.ejs--013213afedeeb6878089b1ca1b4e47 [role='menuitemradio']:first-child{margin-top:0}.ejs--013213afedeeb6878089b1ca1b4e47 .ejs--8732295ca5c4902a060d34706a8146{align-items:center;color:#999;display:flex;font-size:13px;padding:4px 11px;user-select:none;width:100%}.ejs--013213afedeeb6878089b1ca1b4e47 .ejs--8732295ca5c4902a060d34706a8146>span{align-items:inherit;display:flex;width:100%}.ejs--013213afedeeb6878089b1ca1b4e47 .ejs--8732295ca5c4902a060d34706a8146::after{border:4px solid transparent;content:'';position:absolute;top:50%;transform:translateY(-50%)}.ejs--013213afedeeb6878089b1ca1b4e47 .ejs--0b4cdb4057d1a4623e60836ccc6275{padding-right:28px}.ejs--013213afedeeb6878089b1ca1b4e47 .ejs--0b4cdb4057d1a4623e60836ccc6275::after{border-left-color:rgba(79,91,95,0.8);right:5px}.ejs--013213afedeeb6878089b1ca1b4e47 .ejs--0b4cdb4057d1a4623e60836ccc6275.ejs--a83b6c705e103e81a7762d0ed5e64b::after,.ejs--013213afedeeb6878089b1ca1b4e47 .ejs--0b4cdb4057d1a4623e60836ccc6275:hover::after{border-left-color:currentColor}.ejs--013213afedeeb6878089b1ca1b4e47 .ejs--a7ad9de0cb0ca672b6703c50de7db9{font-weight:500;margin:7px;margin-bottom:3px;padding-left:28px;position:relative;width:calc(100% - 14px)}.ejs--013213afedeeb6878089b1ca1b4e47 .ejs--a7ad9de0cb0ca672b6703c50de7db9::after{border-right-color:rgba(79,91,95,0.8);left:7px}.ejs--013213afedeeb6878089b1ca1b4e47 .ejs--a7ad9de0cb0ca672b6703c50de7db9::before{background:#b7c5cd;box-shadow:0 1px 0 #fff;content:'';height:1px;left:0;margin-top:4px;overflow:hidden;position:absolute;right:0;top:100%}.ejs--013213afedeeb6878089b1ca1b4e47 .ejs--a7ad9de0cb0ca672b6703c50de7db9.ejs--a83b6c705e103e81a7762d0ed5e64b::after,.ejs--013213afedeeb6878089b1ca1b4e47 .ejs--a7ad9de0cb0ca672b6703c50de7db9:hover::after{border-right-color:currentColor}.ejs--013213afedeeb6878089b1ca1b4e47 .ejs--8732295ca5c4902a060d34706a8146[role='menuitemradio']{padding-left:7px}.ejs--013213afedeeb6878089b1ca1b4e47 .ejs--8732295ca5c4902a060d34706a8146[role='menuitemradio']::before,.ejs--013213afedeeb6878089b1ca1b4e47 .ejs--8732295ca5c4902a060d34706a8146[role='menuitemradio']::after{border-radius:100%}.ejs--013213afedeeb6878089b1ca1b4e47 .ejs--8732295ca5c4902a060d34706a8146[role='menuitemradio']::before{background:rgba(204,204,204,0.1);content:'';display:block;flex-shrink:0;height:16px;margin-right:10px;transition:all 0.3s ease;width:16px}.ejs--013213afedeeb6878089b1ca1b4e47 .ejs--8732295ca5c4902a060d34706a8146[role='menuitemradio']::after{background:#fff;border:0;height:6px;left:12px;opacity:0;top:50%;transform:translateY(-50%) scale(0);transition:transform 0.3s ease, opacity 0.3s ease;width:6px}.ejs--013213afedeeb6878089b1ca1b4e47 .ejs--8732295ca5c4902a060d34706a8146[role='menuitemradio'][aria-checked='true']::before{background:rgba(var(--ejs-primary-color), 1)}.ejs--013213afedeeb6878089b1ca1b4e47 .ejs--8732295ca5c4902a060d34706a8146[role='menuitemradio'][aria-checked='true']::after{opacity:1;transform:translateY(-50%) scale(1)}.ejs--013213afedeeb6878089b1ca1b4e47 .ejs--8732295ca5c4902a060d34706a8146[role='menuitemradio'].ejs--a83b6c705e103e81a7762d0ed5e64b::before,.ejs--013213afedeeb6878089b1ca1b4e47 .ejs--8732295ca5c4902a060d34706a8146[role='menuitemradio']:hover::before{background:rgba(0,0,0,0.1)}.ejs--013213afedeeb6878089b1ca1b4e47 .ejs--f91e90fe7cabc875aff9a431bf5389{align-items:center;display:flex;margin-left:auto;margin-right:-5px;overflow:hidden;padding-left:25px;pointer-events:none}.ejs--f3a002bba9836fe4ebfed357a45521 input[type='range']{-webkit-appearance:none;background:transparent;border:0;border-radius:28px;color:rgba(var(--ejs-primary-color), 1);display:block;height:20px;margin:0;padding:0;transition:box-shadow 0.3s ease;width:100%}.ejs--f3a002bba9836fe4ebfed357a45521 input[type='range']::-webkit-slider-runnable-track{background:transparent;border:0;border-radius:3px;height:6px;transition:box-shadow 0.3s ease;user-select:none;background-image:linear-gradient(to right, currentColor var(--value, 0%), transparent var(--value, 0%))}.ejs--f3a002bba9836fe4ebfed357a45521 input[type='range']::-webkit-slider-thumb{background:#fff;border:0;border-radius:100%;box-shadow:0 1px 1px rgba(0,0,0,0.15),0 0 0 1px rgba(47,52,61,0.2);height:14px;position:relative;transition:all 0.2s ease;width:14px;-webkit-appearance:none;margin-top:-4px}.ejs--f3a002bba9836fe4ebfed357a45521 input[type='range']::-moz-range-track{background:transparent;border:0;border-radius:3px;height:6px;transition:box-shadow 0.3s ease;user-select:none}.ejs--f3a002bba9836fe4ebfed357a45521 input[type='range']::-moz-range-thumb{background:#fff;border:0;border-radius:100%;box-shadow:0 1px 1px rgba(0,0,0,0.15),0 0 0 1px rgba(47,52,61,0.2);height:14px;position:relative;transition:all 0.2s ease;width:14px}.ejs--f3a002bba9836fe4ebfed357a45521 input[type='range']::-moz-range-progress{background:currentColor;border-radius:3px;height:6px}.ejs--f3a002bba9836fe4ebfed357a45521 input[type='range']::-ms-track{background:transparent;border:0;border-radius:3px;height:6px;transition:box-shadow 0.3s ease;user-select:none;color:transparent}.ejs--f3a002bba9836fe4ebfed357a45521 input[type='range']::-ms-fill-upper{background:transparent;border:0;border-radius:3px;height:6px;transition:box-shadow 0.3s ease;user-select:none}.ejs--f3a002bba9836fe4ebfed357a45521 input[type='range']::-ms-fill-lower{background:transparent;border:0;border-radius:3px;height:6px;transition:box-shadow 0.3s ease;user-select:none;background:currentColor}.ejs--f3a002bba9836fe4ebfed357a45521 input[type='range']::-ms-thumb{background:#fff;border:0;border-radius:100%;box-shadow:0 1px 1px rgba(0,0,0,0.15),0 0 0 1px rgba(47,52,61,0.2);height:14px;position:relative;transition:all 0.2s ease;width:14px;margin-top:0}.ejs--f3a002bba9836fe4ebfed357a45521 input[type='range']::-ms-tooltip{display:none}.ejs--f3a002bba9836fe4ebfed357a45521 input[type='range']:focus{outline:0}.ejs--f3a002bba9836fe4ebfed357a45521 input[type='range']::-moz-focus-outer{border:0}.ejs--f3a002bba9836fe4ebfed357a45521 input[type='range'].ejs--a83b6c705e103e81a7762d0ed5e64b::-webkit-slider-runnable-track{box-shadow:0 0 0 5px rgba(var(--ejs-primary-color), 0.5);outline:0}.ejs--f3a002bba9836fe4ebfed357a45521 input[type='range'].ejs--a83b6c705e103e81a7762d0ed5e64b::-moz-range-track{box-shadow:0 0 0 5px rgba(var(--ejs-primary-color), 0.5);outline:0}.ejs--f3a002bba9836fe4ebfed357a45521 input[type='range'].ejs--a83b6c705e103e81a7762d0ed5e64b::-ms-track{box-shadow:0 0 0 5px rgba(var(--ejs-primary-color), 0.5);outline:0}.ejs--f3a002bba9836fe4ebfed357a45521.ejs--d5f430a99a1619b3434bf58e34a99c input[type='range']::-webkit-slider-runnable-track{background-color:rgba(255,255,255,0.25)}.ejs--f3a002bba9836fe4ebfed357a45521.ejs--d5f430a99a1619b3434bf58e34a99c input[type='range']::-moz-range-track{background-color:rgba(255,255,255,0.25)}.ejs--f3a002bba9836fe4ebfed357a45521.ejs--d5f430a99a1619b3434bf58e34a99c input[type='range']::-ms-track{background-color:rgba(255,255,255,0.25)}.ejs--f3a002bba9836fe4ebfed357a45521.ejs--d5f430a99a1619b3434bf58e34a99c input[type='range']:active::-webkit-slider-thumb{box-shadow:0 1px 1px rgba(0,0,0,0.15),0 0 0 1px rgba(47,52,61,0.2),0 0 0 3px rgba(255,255,255,0.5)}.ejs--f3a002bba9836fe4ebfed357a45521.ejs--d5f430a99a1619b3434bf58e34a99c input[type='range']:active::-moz-range-thumb{box-shadow:0 1px 1px rgba(0,0,0,0.15),0 0 0 1px rgba(47,52,61,0.2),0 0 0 3px rgba(255,255,255,0.5)}.ejs--f3a002bba9836fe4ebfed357a45521.ejs--d5f430a99a1619b3434bf58e34a99c input[type='range']:active::-ms-thumb{box-shadow:0 1px 1px rgba(0,0,0,0.15),0 0 0 1px rgba(47,52,61,0.2),0 0 0 3px rgba(255,255,255,0.5)}.ejs--90d2780f99bcc76fdb6b0378a7238e{font-size:14px}.ejs--90d2780f99bcc76fdb6b0378a7238e+.ejs--90d2780f99bcc76fdb6b0378a7238e::before{content:'„4';margin-right:10px}@media (max-width: 767px){.ejs--90d2780f99bcc76fdb6b0378a7238e+.ejs--90d2780f99bcc76fdb6b0378a7238e{display:none}}.ejs--d5f430a99a1619b3434bf58e34a99c .ejs--90d2780f99bcc76fdb6b0378a7238e{text-shadow:0 1px 1px rgba(0,0,0,0.15)}.ejs--74c6d4176d27e37a19d2e9e61de8f4{background:rgba(255,255,255,0.9);border-radius:3px;bottom:100%;box-shadow:0 1px 2px rgba(0,0,0,0.15);color:#4f5b5f;font-size:14px;font-weight:500;left:50%;line-height:1.3;margin-bottom:10px;opacity:0;padding:5px 7.5px;pointer-events:none;position:absolute;transform:translate(-50%, 10px) scale(0.8);transform-origin:50% 100%;transition:transform 0.2s 0.1s ease, opacity 0.2s 0.1s ease;white-space:nowrap;z-index:2}.ejs--74c6d4176d27e37a19d2e9e61de8f4::before{border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid rgba(255,255,255,0.9);bottom:-4px;content:'';height:0;left:50%;position:absolute;transform:translateX(-50%);width:0;z-index:2}.ejs--7a5f920ceffb2913f6dbda780573cf .ejs--8732295ca5c4902a060d34706a8146:hover .ejs--74c6d4176d27e37a19d2e9e61de8f4,.ejs--7a5f920ceffb2913f6dbda780573cf .ejs--8732295ca5c4902a060d34706a8146.ejs--a83b6c705e103e81a7762d0ed5e64b .ejs--74c6d4176d27e37a19d2e9e61de8f4,.ejs--6ea27aa07e60d1d6e4c9782740028a{opacity:1;transform:translate(-50%, 0) scale(1)}.ejs--7a5f920ceffb2913f6dbda780573cf .ejs--8732295ca5c4902a060d34706a8146:hover .ejs--74c6d4176d27e37a19d2e9e61de8f4{z-index:3}.ejs--1acedc5ed6816abe96dd27d910fd74>.ejs--8732295ca5c4902a060d34706a8146:first-child .ejs--74c6d4176d27e37a19d2e9e61de8f4,.ejs--1acedc5ed6816abe96dd27d910fd74>.ejs--8732295ca5c4902a060d34706a8146:first-child+.ejs--8732295ca5c4902a060d34706a8146 .ejs--74c6d4176d27e37a19d2e9e61de8f4{left:0;transform:translate(0, 10px) scale(0.8);transform-origin:0 100%}.ejs--1acedc5ed6816abe96dd27d910fd74>.ejs--8732295ca5c4902a060d34706a8146:first-child .ejs--74c6d4176d27e37a19d2e9e61de8f4::before,.ejs--1acedc5ed6816abe96dd27d910fd74>.ejs--8732295ca5c4902a060d34706a8146:first-child+.ejs--8732295ca5c4902a060d34706a8146 .ejs--74c6d4176d27e37a19d2e9e61de8f4::before{left:16px}.ejs--1acedc5ed6816abe96dd27d910fd74>.ejs--8732295ca5c4902a060d34706a8146:last-child .ejs--74c6d4176d27e37a19d2e9e61de8f4{left:auto;right:0;transform:translate(0, 10px) scale(0.8);transform-origin:100% 100%}.ejs--1acedc5ed6816abe96dd27d910fd74>.ejs--8732295ca5c4902a060d34706a8146:last-child .ejs--74c6d4176d27e37a19d2e9e61de8f4::before{left:auto;right:16px;transform:translateX(50%)}.ejs--1acedc5ed6816abe96dd27d910fd74>.ejs--8732295ca5c4902a060d34706a8146:first-child:hover .ejs--74c6d4176d27e37a19d2e9e61de8f4,.ejs--1acedc5ed6816abe96dd27d910fd74>.ejs--8732295ca5c4902a060d34706a8146:first-child.ejs--a83b6c705e103e81a7762d0ed5e64b .ejs--74c6d4176d27e37a19d2e9e61de8f4,.ejs--1acedc5ed6816abe96dd27d910fd74>.ejs--8732295ca5c4902a060d34706a8146:first-child .ejs--6ea27aa07e60d1d6e4c9782740028a,.ejs--1acedc5ed6816abe96dd27d910fd74>.ejs--8732295ca5c4902a060d34706a8146:first-child+.ejs--8732295ca5c4902a060d34706a8146:hover .ejs--74c6d4176d27e37a19d2e9e61de8f4,.ejs--1acedc5ed6816abe96dd27d910fd74>.ejs--8732295ca5c4902a060d34706a8146:first-child+.ejs--8732295ca5c4902a060d34706a8146.ejs--a83b6c705e103e81a7762d0ed5e64b .ejs--74c6d4176d27e37a19d2e9e61de8f4,.ejs--1acedc5ed6816abe96dd27d910fd74>.ejs--8732295ca5c4902a060d34706a8146:first-child+.ejs--8732295ca5c4902a060d34706a8146 .ejs--6ea27aa07e60d1d6e4c9782740028a,.ejs--1acedc5ed6816abe96dd27d910fd74>.ejs--8732295ca5c4902a060d34706a8146:last-child:hover .ejs--74c6d4176d27e37a19d2e9e61de8f4,.ejs--1acedc5ed6816abe96dd27d910fd74>.ejs--8732295ca5c4902a060d34706a8146:last-child.ejs--a83b6c705e103e81a7762d0ed5e64b .ejs--74c6d4176d27e37a19d2e9e61de8f4,.ejs--1acedc5ed6816abe96dd27d910fd74>.ejs--8732295ca5c4902a060d34706a8146:last-child .ejs--6ea27aa07e60d1d6e4c9782740028a{transform:translate(0, 0) scale(1)}.ejs--d5f430a99a1619b3434bf58e34a99c{background:#000;color:#bcbcbc;overflow:hidden}.ejs--d5f430a99a1619b3434bf58e34a99c.ejs--da54136ccf8c6b0b16d98e8b8e8b88{overflow:visible}.ejs--057800d021995e1347ec07cb748672{background:#333;border-radius:inherit;height:100%;overflow:hidden;position:relative;text-align:center;z-index:0}.ejs--057800d021995e1347ec07cb748672>*{height:100% !important}.ejs--057800d021995e1347ec07cb748672 canvas{height:100% !important;width:auto !important;max-width:100% !important}.ejs--64f1256f556fb94454b930cb3ea7f2 .ejs--057800d021995e1347ec07cb748672 canvas{height:auto !important;width:100% !important}.ejs--7da7949f602347007818e6d192eb23 .ejs--057800d021995e1347ec07cb748672{background-color:transparent}.ejs--f1aa376719b564cae0e653157cde14{flex:1;left:7px;margin-right:14px;position:relative}.ejs--f1aa376719b564cae0e653157cde14 input[type='range'],.ejs--f8d706413436fd119cf01aaf5a9d9d{margin-left:-7px;margin-right:-7px;width:calc(100% + 14px)}.ejs--f1aa376719b564cae0e653157cde14 input[type='range']{position:relative;z-index:2}.ejs--f1aa376719b564cae0e653157cde14 .ejs--74c6d4176d27e37a19d2e9e61de8f4{font-size:14px;left:0}.ejs--f8d706413436fd119cf01aaf5a9d9d{-webkit-appearance:none;background:transparent;border:0;border-radius:100px;height:6px;left:0;margin-top:-3px;padding:0;position:absolute;top:50%}.ejs--f8d706413436fd119cf01aaf5a9d9d::-webkit-progress-bar{background:transparent;transition:width 0.2s ease}.ejs--f8d706413436fd119cf01aaf5a9d9d::-webkit-progress-value{background:currentColor;border-radius:100px;min-width:6px}.ejs--f8d706413436fd119cf01aaf5a9d9d::-moz-progress-bar{background:currentColor;border-radius:100px;min-width:6px;transition:width 0.2s ease}.ejs--f8d706413436fd119cf01aaf5a9d9d::-ms-fill{border-radius:100px;transition:width 0.2s ease}.ejs--d5f430a99a1619b3434bf58e34a99c .ejs--f8d706413436fd119cf01aaf5a9d9d{box-shadow:0 1px 1px rgba(0,0,0,0.15);color:rgba(255,255,255,0.25)}.ejs--bd0222e58d71b0a304d6037dfcffd5 .ejs--f8d706413436fd119cf01aaf5a9d9d{color:rgba(183,197,205,0.66)}.ejs--d5f430a99a1619b3434bf58e34a99c.ejs--2521e1257996f264de36e77cc9c5ee .ejs--f8d706413436fd119cf01aaf5a9d9d{background-color:rgba(255,255,255,0.25)}.ejs--bd0222e58d71b0a304d6037dfcffd5.ejs--2521e1257996f264de36e77cc9c5ee .ejs--f8d706413436fd119cf01aaf5a9d9d{background-color:rgba(183,197,205,0.66)}.ejs--36ceeeec0df37a9cf4bbe05fa204ec{max-width:120px;align-items:center;display:flex;flex:1;position:relative}.ejs--36ceeeec0df37a9cf4bbe05fa204ec input[type='range']{margin-left:5px;position:relative;z-index:2}@media (min-width: 480px){.ejs--36ceeeec0df37a9cf4bbe05fa204ec{max-width:90px}}@media (min-width: 768px){.ejs--36ceeeec0df37a9cf4bbe05fa204ec{max-width:110px}}.ejs--d31688f864f56d6426ebbf2217d6ee{height:100%;overflow:hidden;position:absolute;top:0;width:100%}.ejs--5e71fd80268afbb1d588e40b993508{background:rgba(0,0,0,0.8);height:100%;overflow:auto;position:relative;text-align:center;z-index:9999}.ejs--5e71fd80268afbb1d588e40b993508 h4{color:#ccc;font-size:24px;margin:0;padding:10px}.ejs--1e0f0672f67d0e96592314c9ed78b0{display:block}.ejs--d7e6a6a8f38bfaa256fe5d709a8258{background:transparent;display:block;position:absolute;top:0;width:100%;z-index:10001}.ejs--b183f581b5336c4908ad258d3e1cc7{display:block}.ejs--b183f581b5336cashrqd258d3e1cc7{display:block}.ejs--158ea9dd34e3e7af2d837f8b05babb{display:block}.ejs--3f0897a8158ba363a0ee0afe4da7c5{display:block}.ejs--38cc09882a55e98c76168dbe838aa0{height:100%;margin:0 auto;max-width:800px;overflow:hidden;position:relative;width:100%}.ejs--3f0897a8158ba363a0ee0afe4da7c5 input[type='text']{background-color:#fff;border:1px solid #000;font-size:12px;font-weight:700}.ejs--f3a002bba9836fe4ebfed357a45521 ::-webkit-scrollbar{width:8px;height:16px;background-color:transparent}.ejs--f3a002bba9836fe4ebfed357a45521 ::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 6px rgba(0,0,0,0.3);border-radius:10px;background-color:transparent}.ejs--f3a002bba9836fe4ebfed357a45521 ::-webkit-scrollbar-thumb{border-radius:0;-webkit-box-shadow:inset 0 0 6px rgba(0,0,0,0.3);background-color:#f5f5f5}.ejs--f3a002bba9836fe4ebfed357a45521{scrollbar-face-color:#F5F5F5;scrollbar-highlight-color:transparent;scrollbar-3dlight-color:transparent;scrollbar-darkshadow-color:transparent;scrollbar-Shadow-color:transparent;scrollbar-arrow-color:#fff;scrollbar-track-color:transparent;scrollbar-width:thin;scrollbar-color:transparent #f5f5f5}.ejs--5e71fd80268afbb1d588e40b993508 *{color:#bcbcbc !important;border:unset}.ejs--5e71fd80268afbb1d588e40b993508 a:focus{background:inherit}.ejs--5e71fd80268afbb1d588e40b993508 input,.ejs--5e71fd80268afbb1d588e40b993508 textarea{color:#000 !important}.ejs--5e71fd80268afbb1d588e40b993508 .ejs--b373c9d5029d49324fb8ac3ece96c1{float:none}.ejs--5e71fd80268afbb1d588e40b993508 .ejs--a5e2629abb9a5bcbc8b2c1307922d2{height:calc(100% - 130px);overflow:auto}.ejs--5e71fd80268afbb1d588e40b993508 .ejs--a5e2629abb9a5bcbc8b2c1307922d2 a{border:none}.ejs--5e71fd80268afbb1d588e40b993508 .ejs--580e3c22e63f8a1eb29694fd0b141b{margin-top:10px}.ejs--5e71fd80268afbb1d588e40b993508 .ejs--580e3c22e63f8a1eb29694fd0b141b a{border-radius:.25rem;font-size:.875rem;padding-left:1rem;padding-right:1rem;padding-top:.5rem;padding-bottom:.5rem;display:inline-block;background-color:rgba(var(--ejs-primary-color), 1);margin:0 10px;color:#fff !important}.ejs--5e71fd80268afbb1d588e40b993508 .ejs--580e3c22e63f8a1eb29694fd0b141b a.ejs--ad20569e1449d7b8e99e6465960456{background-color:#929292}.ejs--5e71fd80268afbb1d588e40b993508 .ejs--8e7922427f460a31935084b7acfb1a{opacity:1}.ejs--5e71fd80268afbb1d588e40b993508 .ejs--8e7922427f460a31935084b7acfb1a li{display:inline-block;float:none}.ejs--5e71fd80268afbb1d588e40b993508 .ejs--8e7922427f460a31935084b7acfb1a li.ejs--68d337c212ec6a5bc43125440d422b{border-bottom:1px solid #fff;background-color:#ffffff}.ejs--5e71fd80268afbb1d588e40b993508 .ejs--8e7922427f460a31935084b7acfb1a li a{padding:2px 5px;color:#bcbcbc !important}.ejs--5e71fd80268afbb1d588e40b993508 .ejs--8e7922427f460a31935084b7acfb1a li.ejs--68d337c212ec6a5bc43125440d422b a{color:#000 !important}.ejs--5e71fd80268afbb1d588e40b993508 .ejs--31eb28817642bb1bfe0a2c422108bb{opacity:1}.ejs--5e71fd80268afbb1d588e40b993508 .ejs--f932566a0af5314da834324c901978{opacity:1}.ejs--5e71fd80268afbb1d588e40b993508 .ejs--f932566a0af5314da834324c901978 div.ejs--c233fb69cbef43078bc39e9d1efac8:hover{background-color:#2d2d2d}.ejs--d169a219343bc32dd4aecc3f6b7f25{opacity:1}.ejs--ad20569e1449d7b8e99e6465960456{float:none}.ejs--ad20569e1449d7b8e99e6465963825{float:none}.ejs--ad20569e1449d7b8e99e6468571053{float:none}.ejs--bdb54e9fc47f9805b506b746e897bf{float:none}.ejs--67d03ee7480b871ad6507d6319a839{float:none}.ejs--c2d931157456c1d438d40a2f66af2c{float:none}.ejs--5e71fd80268afbb1d588e40b993508 .ejs--f932566a0af5314da834324c901978 a.ejs--6604c83041a275a78837c452a71dd8,.ejs--99150e15f962c63c689cadc81ef40d{float:none;padding:0.1rem 0.5rem;background-color:rgba(var(--ejs-primary-color), 1);color:#fff !important;border-radius:0.25rem;cursor:pointer}.ejs--71527b6509aa48afce3ce1a11c02f0{float:none}.ejs--7ad35768e3f6b9faf97db01d5b60ae{float:none}.ejs--9c403e5e107a3e4374ba244b636400{float:none}.ejs--d6a46533fa6e510a571af5c28b440a{float:none}.ejs--d6a46533fa6e510a571af5c28b440a table{font-size:0.8rem;padding:0 10px}.ejs--d6a46533fa6e510a571af5c28b440a thead{background-color:rgba(50,50,50,0.66)}.ejs--d6a46533fa6e510a571af5c28b440a tbody tr:hover{background-color:#2d2d2d}.ejs--d6a46533fa6e510a571af5c28b440a tbody td{padding:10px 0}.ejs--d6a46533fa6e510a571af5c28b440a tbody td svg{width:12px;vertical-align:middle}.ejs--d6a46533fa6e510a571af5c28b440a table td:nth-child(2),.ejs--d6a46533fa6e510a571af5c28b440a table td:nth-child(3){text-align:center;width:80px}.ejs--57ca9b3853cc7de731483cfcc95a59{float:none}.ejs--0885d5e25e19127b6b516014426a1b{float:none}.ejs--25023d28756fdb9dfbbfb6dccb8677{float:none}.ejs--75b3a8d35aacc6424ed7422fdeaaaa{float:none}.ejs--eefdf28d69ed2d20f197308981bb61{float:none}.ejs--eefdf28d69ed2d20f197308981bb61 table{font-size:0.8rem;padding:0 10px}.ejs--eefdf28d69ed2d20f197308981bb61 thead,.ejs--eefdf28d69ed2d20f197308981bb61 tbody,.ejs--eefdf28d69ed2d20f197308981bb61 tfoot,.ejs--d6a46533fa6e510a571af5c28b440a thead,.ejs--d6a46533fa6e510a571af5c28b440a tbody,.ejs--d6a46533fa6e510a571af5c28b440a tfoot{background:transparent;text-align:left}.ejs--eefdf28d69ed2d20f197308981bb61 tbody tr:hover{background-color:#2d2d2d}.ejs--eefdf28d69ed2d20f197308981bb61 tr td:nth-child(1),.ejs--eefdf28d69ed2d20f197308981bb61 tr td:nth-child(3){width:80px}.ejs--9e670880bb57e824400fa00f09aaad,.ejs--2b4e3c245b7b25dfdac5e09155a68e,.ejs--572b0b3a0345a6b01b01a15a02842c,.ejs--a7d7f80c8999469c991ea452a85dd9{float:none}.ejs--2b4e3c245b7b25dfdac5e09155a68e{max-width:320px;margin:0 auto;text-align:left;width:100%}.ejs--952c974392296e7f643d51db380157{height:100%;overflow:hidden;position:absolute;top:0;width:100%}.ejs--0d7e216cf12ae73705b5d5bb0452fc{float:none}.ejs--c0a5e71f6613caab66d6ae15a5a00f{color:rgba(255,255,255,0.8);font-size:0.8rem;padding:5px;text-align:left;text-shadow:1px 1px 1px #000}.ejs--2440e3b831017ff8327c939e2a4413{display:none;position:fixed;bottom:30px;width:100%;position:absolute;bottom:80px}.ejs--2440e3b831017ff8327c939e2a4413 .ejs--b8d8b771d0bbb94e2bbd03054f53fd{position:absolute;bottom:250px;width:100%}.ejs--2440e3b831017ff8327c939e2a4413 .ejs--c83d70cb63c933edc073c7fe92e32b{position:absolute;bottom:50px;width:125px;height:125px;left:10px}@media (min-width: 480px){.ejs--2440e3b831017ff8327c939e2a4413{bottom:50px}}.ejs--2440e3b831017ff8327c939e2a4413 .ejs--6e7015634623fd6a82e6a7d3488c84{position:absolute;font-size:20px;width:50px;height:50px;text-align:center;line-height:50px;border:1px solid #ccc;border-radius:50%;font-size:30px;font-weight:bold;background-color:rgba(255,255,255,0.15);user-select:none}.ejs--2440e3b831017ff8327c939e2a4413 .ejs--49fa47c86a131e4ca8fb268bfdde89{position:absolute;bottom:10px;height:30px;width:124px;left:50%;margin-left:-62px}.ejs--2440e3b831017ff8327c939e2a4413 .ejs--49fa47c86a131e4ca8fb268bfdde89 .ejs--6e7015634623fd6a82e6a7d3488c84{width:60px;height:30px;font-size:12px;font-weight:bolder;border-radius:5px;border:1px solid #ccc;line-height:30px;text-align:center;text-transform:uppercase}.ejs--2440e3b831017ff8327c939e2a4413 .ejs--7d2b19f77fd0ccabf94dc1ca39ae18{position:absolute;bottom:50px;width:130px;height:130px;right:10px}.ejs--2440e3b831017ff8327c939e2a4413 .ejs--7d2b19f77fd0ccabf94dc1ca39ae18 .ejs--6e7015634623fd6a82e6a7d3488c84{width:50px;height:50px;text-align:center;line-height:50px;border:1px solid #ccc;border-radius:50%;font-size:30px;font-weight:bold;transition:all 0.2s}.ejs--2440e3b831017ff8327c939e2a4413 .ejs--6e7015634623fd6a82e6a7d3488c84.ejs--d708d9d486f1eca73a593d5c09f8ad{background-color:#000000ad}.ejs--2440e3b831017ff8327c939e2a4413 .ejs--6e7015634623fd6a82e6a7d3488c84 img{width:100%}.ejs--2440e3b831017ff8327c939e2a4413 .ejs--76fa7567879f97f5991c50ac600735{left:30px}.ejs--82fa3531556f97f5991c50ac600735{left:-35px}.ejs--fbd492618ebsd464fbcd1c9185cd14{left:95px}.ejs--2440e3b831017ff8327c939e2a4413 .ejs--fbd499578ebef494fbcd1c9114cd1d{left:40px}.ejs--2440e3b831017ff8327c939e2a4413 .ejs--b4c6d9bdbbd3dcfc8fa82689ecf448{left:40px;top:80px}.ejs--2440e3b831017ff8327c939e2a4413 .ejs--87c940c15830daa967b08e67e9b87e{left:0;top:40px}.ejs--2440e3b831017ff8327c939e2a4413 .ejs--b7c456c7dd7a616a55965bb134323b{left:81px;top:40px}.ejs--2440e3b831017ff8327c939e2a4413 .ejs--7930ee9bb7ae2fa6e2f7b5568f1e98,.ejs--2440e3b831017ff8327c939e2a4413 .ejs--2226100d4c5408c2699e942aabb31c{height:31px;text-align:center;border:1px solid #ccc;border-radius:5px;line-height:31px}.ejs--2440e3b831017ff8327c939e2a4413 .ejs--7930ee9bb7ae2fa6e2f7b5568f1e98{left:10px}.ejs--2440e3b831017ff8327c939e2a4413 .ejs--2226100d4c5408c2699e942aabb31c{right:10px}.ejs--eefec939452eb92fad035932d0f47c{float:none}.ejs--f1f43b27384834c8c22c6f81d0c5ae{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.6);display:flex;justify-content:center;align-items:center}.ejs--c4ee33766a01ed0356c3ec07898e96{background-color:rgba(0,0,0,0.8);border:1px solid rgba(238,238,238,0.2);padding:30px;min-width:200px;max-width:500px;max-height:100vh;border-radius:4px;overflow-y:auto;box-sizing:border-box}.ejs--a073f32023da1ced805c5f95a4e81c{display:flex;justify-content:space-between;align-items:center}.ejs--ed44f59bb8cd49177586b140658c6c{background-color:transparent;padding:0}.ejs--81470ba5e6a6d68014839ad4d9a977{margin-top:0 !important;margin-bottom:0 !important;font-weight:600 !important;font-size:1.25rem;line-height:1.25 !important;color:rgba(var(--ejs-primary-color), 1) !important}.ejs--c3c85789c2a7f56d8b26dba75b7e1f{background:transparent;border:0}.ejs--a073f32023da1ced805c5f95a4e81c .ejs--c3c85789c2a7f56d8b26dba75b7e1f:before{content:\"¹5\"}.ejs--db44f5520e6f4fd0dd34b478bb9ee8{margin-top:2rem;margin-bottom:2rem;line-height:1.5;color:rgba(0,0,0,0.8);text-align:left}.ejs--db44f5520e6f4fd0dd34b478bb9ee8 input,.ejs--db44f5520e6f4fd0dd34b478bb9ee8 select,.ejs--db44f5520e6f4fd0dd34b478bb9ee8 textarea{font-size:1rem;padding:0.4rem;max-width:100%}.ejs--319bcec5dee9444e1a2a53d6503b7c{color:#fff !important;font-size:.875rem;padding-left:1rem;padding-right:1rem;padding-top:.5rem;padding-bottom:.5rem;background-color:#929292;color:rgba(0,0,0,0.8);border-radius:.25rem;border-style:none;border-width:0;cursor:pointer;-webkit-appearance:button;text-transform:none;overflow:visible;line-height:1.15;margin:0;will-change:transform;-moz-osx-font-smoothing:grayscale;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform:translateZ(0);transform:translateZ(0);transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out}.ejs--319bcec5dee9444e1a2a53d6503b7c:focus,.ejs--319bcec5dee9444e1a2a53d6503b7c:hover{-webkit-transform:scale(1.05);transform:scale(1.05)}.ejs--eaf3c1cba25d415d92ac48d7db34dd{background-color:rgba(var(--ejs-primary-color), 1)}.ejs--940087708c06b6129ce2bfa45f1d89{color:#f00 !important}@keyframes ejs--9d7aa2bd5ee276be085e5b2a0bbc2e{from{opacity:0}to{opacity:1}}@keyframes ejs--184b7558ffeb569c1790654537477b{from{opacity:1}to{opacity:0}}@keyframes ejs--8b069266f76099cc6bc220f6ea56cc{from{transform:translateY(15%)}to{transform:translateY(0)}}@keyframes ejs--379a464ad0e66ea5fc601e5f2fd73e{from{transform:translateY(0)}to{transform:translateY(-10%)}}.ejs--bef295f3125e9ba83d4f3677264bae{display:none}.ejs--bef295f3125e9ba83d4f3677264bae.ejs--60c17e0d149099f207b06f27edae6a{position:absolute;top:0;display:block;height:100%;width:100%}.ejs--bef295f3125e9ba83d4f3677264bae[aria-hidden=\"false\"] .ejs--f1f43b27384834c8c22c6f81d0c5ae{animation:ejs--9d7aa2bd5ee276be085e5b2a0bbc2e 0.3s cubic-bezier(0, 0, 0.2, 1)}.ejs--bef295f3125e9ba83d4f3677264bae[aria-hidden=\"false\"] .ejs--c4ee33766a01ed0356c3ec07898e96{animation:ejs--8b069266f76099cc6bc220f6ea56cc 0.3s cubic-bezier(0, 0, 0.2, 1)}.ejs--bef295f3125e9ba83d4f3677264bae[aria-hidden=\"true\"] .ejs--f1f43b27384834c8c22c6f81d0c5ae{animation:ejs--184b7558ffeb569c1790654537477b 0.3s cubic-bezier(0, 0, 0.2, 1)}.ejs--bef295f3125e9ba83d4f3677264bae[aria-hidden=\"true\"] .ejs--c4ee33766a01ed0356c3ec07898e96{animation:ejs--379a464ad0e66ea5fc601e5f2fd73e 0.3s cubic-bezier(0, 0, 0.2, 1)}.ejs--bef295f3125e9ba83d4f3677264bae .ejs--c4ee33766a01ed0356c3ec07898e96,.ejs--bef295f3125e9ba83d4f3677264bae .ejs--f1f43b27384834c8c22c6f81d0c5ae{will-change:transform}.ejs--4c3e63d4005bd8a0468e9c74a35f62{padding-left:2.25rem;position:relative;padding:0.2em 0;clear:both}.ejs--4c3e63d4005bd8a0468e9c74a35f62:hover{background-color:rgba(0,0,0,0.8)}.ejs--4c3e63d4005bd8a0468e9c74a35f62 input[type=checkbox]{position:absolute;z-index:-1;opacity:0;box-sizing:border-box;width:auto}.ejs--4c3e63d4005bd8a0468e9c74a35f62 label{position:relative;margin-bottom:0;vertical-align:top;word-break:break-word}.ejs--4c3e63d4005bd8a0468e9c74a35f62 label::before{position:absolute;top:.325rem;display:block;height:1rem;content:\"\";background-color:#fff;border:#adb5bd solid 1px;left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:.5rem}.ejs--4c3e63d4005bd8a0468e9c74a35f62 label::after{position:absolute;display:block;content:\"\";background-repeat:no-repeat;background-position:center center;top:calc(.325rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:.5rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-transform .15s ease-in-out;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-transform .15s ease-in-out}.ejs--4c3e63d4005bd8a0468e9c74a35f62 input:checked+label::before{color:#fff;border-color:rgba(var(--ejs-primary-color), 1);background-color:rgba(var(--ejs-primary-color), 1)}.ejs--4c3e63d4005bd8a0468e9c74a35f62 input:checked+label::after{background-color:#fff;-webkit-transform:translateX(0.75rem);transform:translateX(0.75rem)}.ejs--90bcdd71cd0d2307e9ee0dffa916da{position:absolute;padding:0.1rem 0.5rem;background-color:rgba(var(--ejs-primary-color), 1);color:#fff !important;border-radius:0.25rem;cursor:pointer;right:.025rem}.ejs--7a5f920ceffb2913f6dbda780573cf:fullscreen{background:#000;border-radius:0 !important;height:100%;margin:0;width:100%}.ejs--7a5f920ceffb2913f6dbda780573cf:fullscreen canvas{height:100% !important;max-width:100%;min-width:0;width:auto}.ejs--7a5f920ceffb2913f6dbda780573cf:fullscreen .ejs--057800d021995e1347ec07cb748672{height:100%;width:100%}.ejs--7a5f920ceffb2913f6dbda780573cf:fullscreen .ejs--8732295ca5c4902a060d34706a8146 .ejs--2b3dd6e2e26c0f0dc4ac5779dedd5e{display:block}.ejs--7a5f920ceffb2913f6dbda780573cf:fullscreen .ejs--8732295ca5c4902a060d34706a8146 .ejs--2b3dd6e2e26c0f0dc4ac5779dedd5e+svg{display:none}.ejs--7a5f920ceffb2913f6dbda780573cf:-webkit-full-screen{background:#000;border-radius:0 !important;height:100%;margin:0;width:100%}.ejs--7a5f920ceffb2913f6dbda780573cf:-webkit-full-screen canvas{height:100% !important;max-width:100%;min-width:0;width:auto}.ejs--7a5f920ceffb2913f6dbda780573cf:-webkit-full-screen .ejs--057800d021995e1347ec07cb748672{height:100%;width:100%}.ejs--7a5f920ceffb2913f6dbda780573cf:-webkit-full-screen .ejs--8732295ca5c4902a060d34706a8146 .ejs--2b3dd6e2e26c0f0dc4ac5779dedd5e{display:block}.ejs--7a5f920ceffb2913f6dbda780573cf:-webkit-full-screen .ejs--8732295ca5c4902a060d34706a8146 .ejs--2b3dd6e2e26c0f0dc4ac5779dedd5e+svg{display:none}.ejs--7a5f920ceffb2913f6dbda780573cf:-moz-full-screen{background:#000;border-radius:0 !important;height:100%;margin:0;width:100%}.ejs--7a5f920ceffb2913f6dbda780573cf:-moz-full-screen canvas{height:100% !important;max-width:100%;min-width:0;width:auto}.ejs--7a5f920ceffb2913f6dbda780573cf:-moz-full-screen .ejs--057800d021995e1347ec07cb748672{height:100%;width:100%}.ejs--7a5f920ceffb2913f6dbda780573cf:-moz-full-screen .ejs--8732295ca5c4902a060d34706a8146 .ejs--2b3dd6e2e26c0f0dc4ac5779dedd5e{display:block}.ejs--7a5f920ceffb2913f6dbda780573cf:-moz-full-screen .ejs--8732295ca5c4902a060d34706a8146 .ejs--2b3dd6e2e26c0f0dc4ac5779dedd5e+svg{display:none}.ejs--7a5f920ceffb2913f6dbda780573cf:-ms-fullscreen{background:#000;border-radius:0 !important;height:100%;margin:0;width:100%}.ejs--7a5f920ceffb2913f6dbda780573cf:-ms-fullscreen canvas{height:100% !important;max-width:100%;min-width:0;width:auto}.ejs--7a5f920ceffb2913f6dbda780573cf:-ms-fullscreen .ejs--057800d021995e1347ec07cb748672{height:100%;width:100%}.ejs--7a5f920ceffb2913f6dbda780573cf:-ms-fullscreen .ejs--8732295ca5c4902a060d34706a8146 .ejs--2b3dd6e2e26c0f0dc4ac5779dedd5e{display:block}.ejs--7a5f920ceffb2913f6dbda780573cf:-ms-fullscreen .ejs--8732295ca5c4902a060d34706a8146 .ejs--2b3dd6e2e26c0f0dc4ac5779dedd5e+svg{display:none}.ejs--412041671de21945d3e028b6ae84c9{background:#000;border-radius:0 !important;height:100%;margin:0;width:100%;bottom:0;left:0;position:fixed;right:0;top:0;z-index:10000000}.ejs--412041671de21945d3e028b6ae84c9 canvas{height:100% !important;max-width:100%;min-width:0;width:auto}.ejs--412041671de21945d3e028b6ae84c9 .ejs--057800d021995e1347ec07cb748672{height:100%;width:100%}.ejs--412041671de21945d3e028b6ae84c9 .ejs--8732295ca5c4902a060d34706a8146 .ejs--2b3dd6e2e26c0f0dc4ac5779dedd5e{display:block}.ejs--412041671de21945d3e028b6ae84c9 .ejs--8732295ca5c4902a060d34706a8146 .ejs--2b3dd6e2e26c0f0dc4ac5779dedd5e+svg{display:none}.ejs--7a5f920ceffb2913f6dbda780573cf.ejs--64f1256f556fb94454b930cb3ea7f2:fullscreen canvas{width:100%;height:auto !important}.ejs--7a5f920ceffb2913f6dbda780573cf.ejs--64f1256f556fb94454b930cb3ea7f2:-webkit-full-screen canvas{width:100%;height:auto !important}.ejs--7a5f920ceffb2913f6dbda780573cf.ejs--64f1256f556fb94454b930cb3ea7f2:-moz-full-screen{width:100%;height:auto !important}.ejs--7a5f920ceffb2913f6dbda780573cf.ejs--64f1256f556fb94454b930cb3ea7f2:-ms-fullscreen{width:100%;height:auto !important}.ejs--33643265135cf89e6c0a0d9866d6f1{transition:none !important}.ejs--6f0e996cd15e5fb6be0256918531d7{clip:rect(1px, 1px, 1px, 1px);overflow:hidden;border:0 !important;height:1px !important;padding:0 !important;position:absolute !important;width:1px !important}.ejs--7a5f920ceffb2913f6dbda780573cf [hidden]{display:none !important}",""]),t.locals={"ejs-wrapper":"ejs--de6433374cb30211f10e148b320b2f",ejs:"ejs--7a5f920ceffb2913f6dbda780573cf","ejs--full-ui":"ejs--f3a002bba9836fe4ebfed357a45521","controls-tabs":"ejs--008adea3c1ef33a8fc94892a1e97e6",overlay:"ejs--85a95eb6bf74a40ab61b91a91e5bff","key-setting-popup":"ejs--d169a219343bc32dd4aecc3f6b7f25","loading-info":"ejs--782e3572812f983b3a150eec177391",p1:"ejs--c426dd1d179aa351e6cec47e1d9438",p2:"ejs--31e7e81db48819ee35ec6f50378a2e",p3:"ejs--20d4eb2646d396f558a645dc0574f1",p4:"ejs--4de05306c8b099bdeb4585571ac095",ejs__contextmenu:"ejs--c7957d8666bb6b8fc7c3e9c021aaf8",ad:"ejs--cbcfe0a1421cadac9a04c81d6431d6","close-ad":"ejs--f3a1903d935f6cf720d4a0498db62a","start-game":"ejs--73f9b4e94a7a1fe74e11107d5ab2ef",pulse:"ejs--9bd947b3e6427453595f083d740a7c",ejs__control:"ejs--8732295ca5c4902a060d34706a8146","ejs__tab-focus":"ejs--a83b6c705e103e81a7762d0ed5e64b","ejs__control--pressed":"ejs--b1238136ec472a92297159882cf4b8","icon--pressed":"ejs--ec731619062226d943da67f5d83009","icon--not-pressed":"ejs--dc7068585e3d84fe0e676864c1439e","label--pressed":"ejs--0c6561f9155750b0aeeed6da5da7bf","label--not-pressed":"ejs--13d64e30c1333cc99391af48ddabaa","ejs--video":"ejs--d5f430a99a1619b3434bf58e34a99c",ejs__controls:"ejs--1acedc5ed6816abe96dd27d910fd74",ejs__progress:"ejs--f1aa376719b564cae0e653157cde14",ejs__time:"ejs--90d2780f99bcc76fdb6b0378a7238e",ejs__menu:"ejs--c7bfb2d1b75a40fdaaf90624bea9e7",ejs__volume:"ejs--36ceeeec0df37a9cf4bbe05fa204ec","ejs--hide-controls":"ejs--1b8cb7f2294b1eb5de5238daea3513","ejs--fullscreen-enabled":"ejs--19409fe2057ab935a7e46abb5b4f49",ejs__tooltip:"ejs--74c6d4176d27e37a19d2e9e61de8f4",ejs__menu__container:"ejs--013213afedeeb6878089b1ca1b4e47","ejs-popup":"ejs--c2532bfe04554193cc42b3be753700","ejs__control--forward":"ejs--0b4cdb4057d1a4623e60836ccc6275","ejs__control--back":"ejs--a7ad9de0cb0ca672b6703c50de7db9",ejs__menu__value:"ejs--f91e90fe7cabc875aff9a431bf5389","ejs__tooltip--visible":"ejs--6ea27aa07e60d1d6e4c9782740028a","ejs--menu-open":"ejs--da54136ccf8c6b0b16d98e8b8e8b88","ejs__video-wrapper":"ejs--057800d021995e1347ec07cb748672",portrait:"ejs--64f1256f556fb94454b930cb3ea7f2","game-started":"ejs--7da7949f602347007818e6d192eb23",ejs__progress__buffer:"ejs--f8d706413436fd119cf01aaf5a9d9d","ejs--audio":"ejs--bd0222e58d71b0a304d6037dfcffd5","ejs--loading":"ejs--2521e1257996f264de36e77cc9c5ee",ejs__dialogs:"ejs--d31688f864f56d6426ebbf2217d6ee",ejs__dialog:"ejs--5e71fd80268afbb1d588e40b993508",ejs__cache__container:"ejs--1e0f0672f67d0e96592314c9ed78b0",ejs__loading__container:"ejs--d7e6a6a8f38bfaa256fe5d709a8258","ejs__load-state__container":"ejs--b183f581b5336c4908ad258d3e1cc7",ejs__screenRecord__container:"ejs--b183f581b5336cashrqd258d3e1cc7",ejs__netplay__container:"ejs--158ea9dd34e3e7af2d837f8b05babb",ejs__gamepad__container:"ejs--3f0897a8158ba363a0ee0afe4da7c5","dialog-container":"ejs--38cc09882a55e98c76168dbe838aa0","dialog-title":"ejs--b373c9d5029d49324fb8ac3ece96c1","dialog-content":"ejs--a5e2629abb9a5bcbc8b2c1307922d2","dialog-buttons":"ejs--580e3c22e63f8a1eb29694fd0b141b","btn-cancel":"ejs--ad20569e1449d7b8e99e6465960456","btn-reset":"ejs--ad20569e1449d7b8e99e6465963825","btn-clear":"ejs--ad20569e1449d7b8e99e6468571053",tabs:"ejs--8e7922427f460a31935084b7acfb1a",active:"ejs--68d337c212ec6a5bc43125440d422b","tabs-content":"ejs--31eb28817642bb1bfe0a2c422108bb","tabs-panel":"ejs--f932566a0af5314da834324c901978","button-container":"ejs--c233fb69cbef43078bc39e9d1efac8","btn-submit":"ejs--bdb54e9fc47f9805b506b746e897bf","btn-create-room":"ejs--67d03ee7480b871ad6507d6319a839","btn-quit":"ejs--c2d931157456c1d438d40a2f66af2c",set:"ejs--6604c83041a275a78837c452a71dd8","btn-join-room":"ejs--99150e15f962c63c689cadc81ef40d","netplay-player-name":"ejs--71527b6509aa48afce3ce1a11c02f0","netplay-player-name-input":"ejs--7ad35768e3f6b9faf97db01d5b60ae","netplay-player-name-set":"ejs--9c403e5e107a3e4374ba244b636400","netplay-roomlist":"ejs--d6a46533fa6e510a571af5c28b440a","netplay-create-room":"ejs--57ca9b3853cc7de731483cfcc95a59","netplay-room-name-input":"ejs--0885d5e25e19127b6b516014426a1b","netplay-room-password-input":"ejs--25023d28756fdb9dfbbfb6dccb8677","netplay-create-room-set":"ejs--75b3a8d35aacc6424ed7422fdeaaaa","netplay-room":"ejs--eefdf28d69ed2d20f197308981bb61","cheats-add":"ejs--9e670880bb57e824400fa00f09aaad","cheats-list":"ejs--2b4e3c245b7b25dfdac5e09155a68e","cheat-code-input":"ejs--572b0b3a0345a6b01b01a15a02842c","cheat-name-input":"ejs--a7d7f80c8999469c991ea452a85dd9",ejs__widgets:"ejs--952c974392296e7f643d51db380157",ejs__widget:"ejs--0d7e216cf12ae73705b5d5bb0452fc",ejs__widget_netplay:"ejs--c0a5e71f6613caab66d6ae15a5a00f","virtual-gamepad":"ejs--2440e3b831017ff8327c939e2a4413",top:"ejs--b8d8b771d0bbb94e2bbd03054f53fd",left:"ejs--c83d70cb63c933edc073c7fe92e32b",buttons:"ejs--6e7015634623fd6a82e6a7d3488c84",center:"ejs--49fa47c86a131e4ca8fb268bfdde89",right:"ejs--7d2b19f77fd0ccabf94dc1ca39ae18",touch:"ejs--d708d9d486f1eca73a593d5c09f8ad",modal:"ejs--eefec939452eb92fad035932d0f47c",modal__overlay:"ejs--f1f43b27384834c8c22c6f81d0c5ae",modal__container:"ejs--c4ee33766a01ed0356c3ec07898e96",modal__header:"ejs--a073f32023da1ced805c5f95a4e81c",modal__footer:"ejs--ed44f59bb8cd49177586b140658c6c",modal__title:"ejs--81470ba5e6a6d68014839ad4d9a977",modal__close:"ejs--c3c85789c2a7f56d8b26dba75b7e1f",modal__content:"ejs--db44f5520e6f4fd0dd34b478bb9ee8",modal__btn:"ejs--319bcec5dee9444e1a2a53d6503b7c","modal__btn-primary":"ejs--eaf3c1cba25d415d92ac48d7db34dd",modal__errmsg:"ejs--940087708c06b6129ce2bfa45f1d89","micromodal-slide":"ejs--bef295f3125e9ba83d4f3677264bae","is-open":"ejs--60c17e0d149099f207b06f27edae6a",mmfadeIn:"ejs--9d7aa2bd5ee276be085e5b2a0bbc2e",mmslideIn:"ejs--8b069266f76099cc6bc220f6ea56cc",mmfadeOut:"ejs--184b7558ffeb569c1790654537477b",mmslideOut:"ejs--379a464ad0e66ea5fc601e5f2fd73e","ejs-switch":"ejs--4c3e63d4005bd8a0468e9c74a35f62","ejs-delete-cheat":"ejs--90bcdd71cd0d2307e9ee0dffa916da","icon--exit-fullscreen":"ejs--2b3dd6e2e26c0f0dc4ac5779dedd5e","ejs--fullscreen-fallback":"ejs--412041671de21945d3e028b6ae84c9","ejs--no-transition":"ejs--33643265135cf89e6c0a0d9866d6f1","ejs__sr-only":"ejs--6f0e996cd15e5fb6be0256918531d7","ejs-fade-in":"ejs--7cadf43f3d9eb17c7e3c36de84973b"}},function(e,t){e.exports=function(i){var a=[];return a.toString=function(){return this.map(function(r){var e=function(){var e=r[1]||"",t=r[3];if(!t)return e;if(i&&"function"==typeof btoa){var n="/*# sourceMappingURL=data:application/json;charset=utf-8;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(t))))+" */",o=t.sources.map(function(e){return"/*# sourceURL="+t.sourceRoot+e+" */"});return[e].concat(o).concat([n]).join("\n")}return[e].join("\n")}();return r[2]?"@media "+r[2]+"{"+e+"}":e}).join("")},a.i=function(e,t){"string"==typeof e&&(e=[[null,e,""]]);for(var n={},o=0;o<this.length;o++){var r=this[o][0];"number"==typeof r&&(n[r]=!0)}for(o=0;o<e.length;o++){var i=e[o];"number"==typeof i[0]&&n[i[0]]||(t&&!i[2]?i[2]=t:t&&(i[2]="("+i[2]+") and ("+t+")"),a.push(i))}},a}},function(e,t,o){var n,r,i,c={},l=(n=function(){return window&&document&&document.all&&!window.atob},function(){return void 0===r&&(r=n.apply(this,arguments)),r}),a=(i={},function(e,t){if("function"==typeof e)return e();if(void 0===i[e]){var n=function(e,t){return(t||document).querySelector(e)}.call(this,e,t);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(e){n=null}i[e]=n}return i[e]}),s=null,u=0,d=[],f=o(369);function p(e,t){for(var n=0;n<e.length;n++){var o=e[n],r=c[o.id];if(r){r.refs++;for(var i=0;i<r.parts.length;i++)r.parts[i](o.parts[i]);for(;i<o.parts.length;i++)r.parts.push(y(o.parts[i],t))}else{for(var a=[],i=0;i<o.parts.length;i++)a.push(y(o.parts[i],t));c[o.id]={id:o.id,refs:1,parts:a}}}}function h(e,t){for(var n=[],o={},r=0;r<e.length;r++){var i=e[r],a=t.base?i[0]+t.base:i[0],i={css:i[1],media:i[2],sourceMap:i[3]};o[a]?o[a].parts.push(i):n.push(o[a]={id:a,parts:[i]})}return n}function m(e,t){var n=a(e.insertInto);if(!n)throw new Error("Couldn't find a style target. This probably means that the value for the 'insertInto' parameter is invalid.");var o=d[d.length-1];if("top"===e.insertAt)o?o.nextSibling?n.insertBefore(t,o.nextSibling):n.appendChild(t):n.insertBefore(t,n.firstChild),d.push(t);else if("bottom"===e.insertAt)n.appendChild(t);else{if("object"!=typeof e.insertAt||!e.insertAt.before)throw new Error("[Style Loader]\n\n Invalid value for parameter 'insertAt' ('options.insertAt') found.\n Must be 'top', 'bottom', or Object.\n (https://github.com/webpack-contrib/style-loader#insertat)\n");e=a(e.insertAt.before,n);n.insertBefore(t,e)}}function g(e){null!==e.parentNode&&(e.parentNode.removeChild(e),0<=(e=d.indexOf(e))&&d.splice(e,1))}function v(e){var t,n=document.createElement("style");return void 0===e.attrs.type&&(e.attrs.type="text/css"),void 0===e.attrs.nonce&&(t=o.nc)&&(e.attrs.nonce=t),b(n,e.attrs),m(e,n),n}function b(t,n){Object.keys(n).forEach(function(e){t.setAttribute(e,n[e])})}function y(t,e){var n,o,r,i,a;if(e.transform&&t.css){if(!(i="function"==typeof e.transform?e.transform(t.css):e.transform.default(t.css)))return function(){};t.css=i}return r=e.singleton?(a=u++,n=s=s||v(e),o=_.bind(null,n,a,!1),_.bind(null,n,a,!0)):t.sourceMap&&"function"==typeof URL&&"function"==typeof URL.createObjectURL&&"function"==typeof URL.revokeObjectURL&&"function"==typeof Blob&&"function"==typeof btoa?(i=e,a=document.createElement("link"),void 0===i.attrs.type&&(i.attrs.type="text/css"),i.attrs.rel="stylesheet",b(a,i.attrs),m(i,a),o=function(e,t,n){var o=n.css,r=n.sourceMap,n=void 0===t.convertToAbsoluteUrls&&r;(t.convertToAbsoluteUrls||n)&&(o=f(o)),r&&(o+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(r))))+" */");r=new Blob([o],{type:"text/css"}),o=e.href;e.href=URL.createObjectURL(r),o&&URL.revokeObjectURL(o)}.bind(null,n=a,e),function(){g(n),n.href&&URL.revokeObjectURL(n.href)}):(n=v(e),o=function(e,t){var n=t.css,t=t.media;if(t&&e.setAttribute("media",t),e.styleSheet)e.styleSheet.cssText=n;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n))}}.bind(null,n),function(){g(n)}),o(t),function(e){e?e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap||o(t=e):r()}}e.exports=function(e,a){if("undefined"!=typeof DEBUG&&DEBUG&&"object"!=typeof document)throw new Error("The style-loader cannot be used in a non-browser environment");(a=a||{}).attrs="object"==typeof a.attrs?a.attrs:{},a.singleton||"boolean"==typeof a.singleton||(a.singleton=l()),a.insertInto||(a.insertInto="head"),a.insertAt||(a.insertAt="bottom");var s=h(e,a);return p(s,a),function(e){for(var t,n=[],o=0;o<s.length;o++){var r=s[o];(t=c[r.id]).refs--,n.push(t)}for(e&&p(h(e,a),a),o=0;o<n.length;o++)if(0===(t=n[o]).refs){for(var i=0;i<t.parts.length;i++)t.parts[i]();delete c[t.id]}}};var w,x=(w=[],function(e,t){return w[e]=t,w.filter(Boolean).join("\n")});function _(e,t,n,o){n=n?"":o.css;e.styleSheet?e.styleSheet.cssText=x(t,n):(o=document.createTextNode(n),(n=e.childNodes)[t]&&e.removeChild(n[t]),n.length?e.insertBefore(o,n[t]):e.appendChild(o))}},function(e,t){e.exports=function(e){var t="undefined"!=typeof window&&window.location;if(!t)throw new Error("fixUrls requires window.location");if(!e||"string"!=typeof e)return e;var n=t.protocol+"//"+t.host,o=n+t.pathname.replace(/\/[^\/]*$/,"/");return e.replace(/url\s*\(((?:[^)(]|\((?:[^)(]+|\([^)(]*\))*\))*)\)/gi,function(e,t){var t=t.trim().replace(/^"(.*)"$/,function(e,t){return t}).replace(/^'(.*)'$/,function(e,t){return t});return/^(#|data:|http:\/\/|https:\/\/|file:\/\/\/|\s*$)/i.test(t)?e:(t=0===t.indexOf("//")?t:0===t.indexOf("/")?n+t:o+t.replace(/^\.\//,""),"url("+JSON.stringify(t)+")")})}},function(e,t,n){"use strict";t.byteLength=function(e){var t=u(e),e=t[0],t=t[1];return 3*(e+t)/4-t},t.toByteArray=function(e){for(var t,n=u(e),o=n[0],n=n[1],r=new l(3*(o+n)/4-n),i=0,a=0<n?o-4:o,s=0;s<a;s+=4)t=c[e.charCodeAt(s)]<<18|c[e.charCodeAt(s+1)]<<12|c[e.charCodeAt(s+2)]<<6|c[e.charCodeAt(s+3)],r[i++]=t>>16&255,r[i++]=t>>8&255,r[i++]=255&t;return 2===n&&(t=c[e.charCodeAt(s)]<<2|c[e.charCodeAt(s+1)]>>4,r[i++]=255&t),1===n&&(t=c[e.charCodeAt(s)]<<10|c[e.charCodeAt(s+1)]<<4|c[e.charCodeAt(s+2)]>>2,r[i++]=t>>8&255,r[i++]=255&t),r},t.fromByteArray=function(e){for(var t,n=e.length,o=n%3,r=[],i=0,a=n-o;i<a;i+=16383)r.push(function(e,t,n){for(var o,r=[],i=t;i<n;i+=3)o=(e[i]<<16&16711680)+(e[i+1]<<8&65280)+(255&e[i+2]),r.push(s[o>>18&63]+s[o>>12&63]+s[o>>6&63]+s[63&o]);return r.join("")}(e,i,a<i+16383?a:i+16383));return 1==o?(t=e[n-1],r.push(s[t>>2]+s[t<<4&63]+"==")):2==o&&(t=(e[n-2]<<8)+e[n-1],r.push(s[t>>10]+s[t>>4&63]+s[t<<2&63]+"=")),r.join("")};for(var s=[],c=[],l="undefined"!=typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r=0,i=o.length;r<i;++r)s[r]=o[r],c[o.charCodeAt(r)]=r;function u(e){var t=e.length;if(0<t%4)throw new Error("Invalid string. Length must be a multiple of 4");e=e.indexOf("=");return-1===e&&(e=t),[e,e===t?0:4-e%4]}c["-".charCodeAt(0)]=62,c["_".charCodeAt(0)]=63},function(e,t){t.read=function(e,t,n,o,r){var i,a,s=8*r-o-1,c=(1<<s)-1,l=c>>1,u=-7,d=n?r-1:0,f=n?-1:1,n=e[t+d];for(d+=f,i=n&(1<<-u)-1,n>>=-u,u+=s;0<u;i=256*i+e[t+d],d+=f,u-=8);for(a=i&(1<<-u)-1,i>>=-u,u+=o;0<u;a=256*a+e[t+d],d+=f,u-=8);if(0===i)i=1-l;else{if(i===c)return a?NaN:1/0*(n?-1:1);a+=Math.pow(2,o),i-=l}return(n?-1:1)*a*Math.pow(2,i-o)},t.write=function(e,t,n,o,r,i){var a,s,c=8*i-r-1,l=(1<<c)-1,u=l>>1,d=23===r?Math.pow(2,-24)-Math.pow(2,-77):0,f=o?0:i-1,p=o?1:-1,i=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,a=l):(a=Math.floor(Math.log(t)/Math.LN2),t*(o=Math.pow(2,-a))<1&&(a--,o*=2),2<=(t+=1<=a+u?d/o:d*Math.pow(2,1-u))*o&&(a++,o/=2),l<=a+u?(s=0,a=l):1<=a+u?(s=(t*o-1)*Math.pow(2,r),a+=u):(s=t*Math.pow(2,u-1)*Math.pow(2,r),a=0));8<=r;e[n+f]=255&s,f+=p,s/=256,r-=8);for(a=a<<r|s,c+=r;0<c;e[n+f]=255&a,f+=p,a/=256,c-=8);e[n+f-p]|=128*i}},function(e,t){var n={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==n.call(e)}},function(e,t,n){var o=n(145),r=n(74)("socket.io-client:url");e.exports=function(e,t){var n=e;t=t||"undefined"!=typeof location&&location,null==e&&(e=t.protocol+"//"+t.host),"string"==typeof e&&("/"===e.charAt(0)&&(e="/"===e.charAt(1)?t.protocol+e:t.host+e),/^(https?|wss?):\/\//.test(e)||(r("protocol-less url %s",e),e=void 0!==t?t.protocol+"//"+e:"https://"+e),r("parse %s",e),n=o(e)),n.port||(/^(http|ws)$/.test(n.protocol)?n.port="80":/^(http|ws)s$/.test(n.protocol)&&(n.port="443")),n.path=n.path||"/";e=-1!==n.host.indexOf(":")?"["+n.host+"]":n.host;return n.id=n.protocol+"://"+e+":"+n.port,n.href=n.protocol+"://"+e+(t&&t.port===n.port?"":":"+n.port),n}},function(e,c,t){function n(e){var a;function s(){if(s.enabled){var o=s,e=+new Date,t=e-(a||e);o.diff=t,o.prev=a,o.curr=e,a=e;for(var r=new Array(arguments.length),n=0;n<r.length;n++)r[n]=arguments[n];r[0]=c.coerce(r[0]),"string"!=typeof r[0]&&r.unshift("%O");var i=0;r[0]=r[0].replace(/%([a-zA-Z%])/g,function(e,t){if("%%"===e)return e;i++;var n=c.formatters[t];return"function"==typeof n&&(t=r[i],e=n.call(o,t),r.splice(i,1),i--),e}),c.formatArgs.call(o,r),(s.log||c.log||console.log.bind(console)).apply(o,r)}}return s.namespace=e,s.enabled=c.enabled(e),s.useColors=c.useColors(),s.color=function(e){var t,n=0;for(t in e)n=(n<<5)-n+e.charCodeAt(t),n|=0;return c.colors[Math.abs(n)%c.colors.length]}(e),s.destroy=o,"function"==typeof c.init&&c.init(s),c.instances.push(s),s}function o(){var e=c.instances.indexOf(this);return-1!==e&&(c.instances.splice(e,1),!0)}(c=e.exports=n.debug=n.default=n).coerce=function(e){return e instanceof Error?e.stack||e.message:e},c.disable=function(){c.enable("")},c.enable=function(e){c.save(e),c.names=[],c.skips=[];for(var t=("string"==typeof e?e:"").split(/[\s,]+/),n=t.length,o=0;o<n;o++)t[o]&&("-"===(e=t[o].replace(/\*/g,".*?"))[0]?c.skips.push(new RegExp("^"+e.substr(1)+"$")):c.names.push(new RegExp("^"+e+"$")));for(o=0;o<c.instances.length;o++){var r=c.instances[o];r.enabled=c.enabled(r.namespace)}},c.enabled=function(e){if("*"===e[e.length-1])return!0;for(var t=0,n=c.skips.length;t<n;t++)if(c.skips[t].test(e))return!1;for(t=0,n=c.names.length;t<n;t++)if(c.names[t].test(e))return!0;return!1},c.humanize=t(104),c.instances=[],c.names=[],c.skips=[],c.formatters={}},function(n,r,o){(function(t){function e(){var e;try{e=r.storage.debug}catch(e){}return!e&&void 0!==t&&"env"in t&&(e=t.env.DEBUG),e}(r=n.exports=o(376)).log=function(){return"object"==typeof console&&console.log&&Function.prototype.apply.call(console.log,console,arguments)},r.formatArgs=function(e){var t,n,o=this.useColors;e[0]=(o?"%c":"")+this.namespace+(o?" %c":" ")+e[0]+(o?"%c ":" ")+"+"+r.humanize(this.diff),o&&(o="color: "+this.color,e.splice(1,0,o,"color: inherit"),e[n=t=0].replace(/%[a-zA-Z%]/g,function(e){"%%"!==e&&(t++,"%c"===e&&(n=t))}),e.splice(n,0,o))},r.save=function(e){try{null==e?r.storage.removeItem("debug"):r.storage.debug=e}catch(e){}},r.load=e,r.useColors=function(){return!("undefined"==typeof window||!window.process||"renderer"!==window.process.type)||("undefined"==typeof navigator||!navigator.userAgent||!navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))&&("undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&31<=parseInt(RegExp.$1,10)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))},r.storage="undefined"!=typeof chrome&&void 0!==chrome.storage?chrome.storage.local:function(){try{return window.localStorage}catch(e){}}(),r.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],r.formatters.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}},r.enable(e())}).call(this,o(49))},function(e,c,t){function n(e){var a;function s(){if(s.enabled){var o=s,e=+new Date,t=e-(a||e);o.diff=t,o.prev=a,o.curr=e,a=e;for(var r=new Array(arguments.length),n=0;n<r.length;n++)r[n]=arguments[n];r[0]=c.coerce(r[0]),"string"!=typeof r[0]&&r.unshift("%O");var i=0;r[0]=r[0].replace(/%([a-zA-Z%])/g,function(e,t){if("%%"===e)return e;i++;var n=c.formatters[t];return"function"==typeof n&&(t=r[i],e=n.call(o,t),r.splice(i,1),i--),e}),c.formatArgs.call(o,r),(s.log||c.log||console.log.bind(console)).apply(o,r)}}return s.namespace=e,s.enabled=c.enabled(e),s.useColors=c.useColors(),s.color=function(e){var t,n=0;for(t in e)n=(n<<5)-n+e.charCodeAt(t),n|=0;return c.colors[Math.abs(n)%c.colors.length]}(e),s.destroy=o,"function"==typeof c.init&&c.init(s),c.instances.push(s),s}function o(){var e=c.instances.indexOf(this);return-1!==e&&(c.instances.splice(e,1),!0)}(c=e.exports=n.debug=n.default=n).coerce=function(e){return e instanceof Error?e.stack||e.message:e},c.disable=function(){c.enable("")},c.enable=function(e){c.save(e),c.names=[],c.skips=[];for(var t=("string"==typeof e?e:"").split(/[\s,]+/),n=t.length,o=0;o<n;o++)t[o]&&("-"===(e=t[o].replace(/\*/g,".*?"))[0]?c.skips.push(new RegExp("^"+e.substr(1)+"$")):c.names.push(new RegExp("^"+e+"$")));for(o=0;o<c.instances.length;o++){var r=c.instances[o];r.enabled=c.enabled(r.namespace)}},c.enabled=function(e){if("*"===e[e.length-1])return!0;for(var t=0,n=c.skips.length;t<n;t++)if(c.skips[t].test(e))return!1;for(t=0,n=c.names.length;t<n;t++)if(c.names[t].test(e))return!0;return!1},c.humanize=t(104),c.instances=[],c.names=[],c.skips=[],c.formatters={}},function(e,t,n){var u=n(146),d=n(147),n=Object.prototype.toString,f="function"==typeof Blob||"undefined"!=typeof Blob&&"[object BlobConstructor]"===n.call(Blob),p="function"==typeof File||"undefined"!=typeof File&&"[object FileConstructor]"===n.call(File);t.deconstructPacket=function(e){var t=[],n=e.data,e=e;return e.data=function e(t,n){if(!t)return t;if(d(t)){var o={_placeholder:!0,num:n.length};return n.push(t),o}if(u(t)){for(var r=new Array(t.length),i=0;i<t.length;i++)r[i]=e(t[i],n);return r}if("object"!=typeof t||t instanceof Date)return t;for(var a in r={},t)r[a]=e(t[a],n);return r}(n,t),e.attachments=t.length,{packet:e,buffers:t}},t.reconstructPacket=function(e,t){return e.data=function e(t,n){if(!t)return t;if(t&&t._placeholder)return n[t.num];if(u(t))for(var o=0;o<t.length;o++)t[o]=e(t[o],n);else if("object"==typeof t)for(var r in t)t[r]=e(t[r],n);return t}(e.data,t),e.attachments=void 0,e},t.removeBlobs=function(e,s){var c=0,l=e;!function e(t,n,o){if(!t)return t;if(f&&t instanceof Blob||p&&t instanceof File){c++;var r=new FileReader;r.onload=function(){o?o[n]=this.result:l=this.result,--c||s(l)},r.readAsArrayBuffer(t)}else if(u(t))for(var i=0;i<t.length;i++)e(t[i],i,t);else if("object"==typeof t&&!d(t))for(var a in t)e(t[a],a,t)}(l),c||s(l)}},function(e,t,n){e.exports=n(379),e.exports.parser=n(51)},function(e,t,n){var o=n(149),r=n(50),d=n(77)("engine.io-client:socket"),i=n(153),a=n(51),s=n(145),c=n(75);function f(e,t){if(!(this instanceof f))return new f(e,t);t=t||{},e&&"object"==typeof e&&(t=e,e=null),e?(e=s(e),t.hostname=e.host,t.secure="https"===e.protocol||"wss"===e.protocol,t.port=e.port,e.query&&(t.query=e.query)):t.host&&(t.hostname=s(t.host).host),this.secure=null!=t.secure?t.secure:"undefined"!=typeof location&&"https:"===location.protocol,t.hostname&&!t.port&&(t.port=this.secure?"443":"80"),this.agent=t.agent||!1,this.hostname=t.hostname||("undefined"!=typeof location?location.hostname:"localhost"),this.port=t.port||("undefined"!=typeof location&&location.port?location.port:this.secure?443:80),this.query=t.query||{},"string"==typeof this.query&&(this.query=c.decode(this.query)),this.upgrade=!1!==t.upgrade,this.path=(t.path||"/engine.io").replace(/\/$/,"")+"/",this.forceJSONP=!!t.forceJSONP,this.jsonp=!1!==t.jsonp,this.forceBase64=!!t.forceBase64,this.enablesXDR=!!t.enablesXDR,this.timestampParam=t.timestampParam||"t",this.timestampRequests=t.timestampRequests,this.transports=t.transports||["polling","websocket"],this.transportOptions=t.transportOptions||{},this.readyState="",this.writeBuffer=[],this.prevBufferLen=0,this.policyPort=t.policyPort||843,this.rememberUpgrade=t.rememberUpgrade||!1,this.binaryType=null,this.onlyBinaryUpgrades=t.onlyBinaryUpgrades,this.perMessageDeflate=!1!==t.perMessageDeflate&&(t.perMessageDeflate||{}),!0===this.perMessageDeflate&&(this.perMessageDeflate={}),this.perMessageDeflate&&null==this.perMessageDeflate.threshold&&(this.perMessageDeflate.threshold=1024),this.pfx=t.pfx||null,this.key=t.key||null,this.passphrase=t.passphrase||null,this.cert=t.cert||null,this.ca=t.ca||null,this.ciphers=t.ciphers||null,this.rejectUnauthorized=void 0===t.rejectUnauthorized||t.rejectUnauthorized,this.forceNode=!!t.forceNode,this.isReactNative="undefined"!=typeof navigator&&"string"==typeof navigator.product&&"reactnative"===navigator.product.toLowerCase(),"undefined"!=typeof self&&!this.isReactNative||(t.extraHeaders&&0<Object.keys(t.extraHeaders).length&&(this.extraHeaders=t.extraHeaders),t.localAddress&&(this.localAddress=t.localAddress)),this.id=null,this.upgrades=null,this.pingInterval=null,this.pingTimeout=null,this.pingIntervalTimer=null,this.pingTimeoutTimer=null,this.open()}(e.exports=f).priorWebsocketSuccess=!1,r(f.prototype),f.protocol=a.protocol,(f.Socket=f).Transport=n(107),f.transports=n(149),f.parser=n(51),f.prototype.createTransport=function(e){d('creating transport "%s"',e);var t=function(e){var t,n={};for(t in e)e.hasOwnProperty(t)&&(n[t]=e[t]);return n}(this.query);t.EIO=4,t.transport=e;var n=this.transportOptions[e]||{};return this.id&&(t.sid=this.id),new o[e]({query:t,socket:this,agent:n.agent||this.agent,hostname:n.hostname||this.hostname,port:n.port||this.port,secure:n.secure||this.secure,path:n.path||this.path,forceJSONP:n.forceJSONP||this.forceJSONP,jsonp:n.jsonp||this.jsonp,forceBase64:n.forceBase64||this.forceBase64,enablesXDR:n.enablesXDR||this.enablesXDR,timestampRequests:n.timestampRequests||this.timestampRequests,timestampParam:n.timestampParam||this.timestampParam,policyPort:n.policyPort||this.policyPort,pfx:n.pfx||this.pfx,key:n.key||this.key,passphrase:n.passphrase||this.passphrase,cert:n.cert||this.cert,ca:n.ca||this.ca,ciphers:n.ciphers||this.ciphers,rejectUnauthorized:n.rejectUnauthorized||this.rejectUnauthorized,perMessageDeflate:n.perMessageDeflate||this.perMessageDeflate,extraHeaders:n.extraHeaders||this.extraHeaders,forceNode:n.forceNode||this.forceNode,localAddress:n.localAddress||this.localAddress,requestTimeout:n.requestTimeout||this.requestTimeout,protocols:n.protocols||void 0,isReactNative:this.isReactNative})},f.prototype.open=function(){var e;if(this.rememberUpgrade&&f.priorWebsocketSuccess&&-1!==this.transports.indexOf("websocket"))e="websocket";else{if(0===this.transports.length){var t=this;return void setTimeout(function(){t.emit("error","No transports available")},0)}e=this.transports[0]}this.readyState="opening";try{e=this.createTransport(e)}catch(e){return this.transports.shift(),void this.open()}e.open(),this.setTransport(e)},f.prototype.setTransport=function(e){d("setting transport %s",e.name);var t=this;this.transport&&(d("clearing existing transport %s",this.transport.name),this.transport.removeAllListeners()),(this.transport=e).on("drain",function(){t.onDrain()}).on("packet",function(e){t.onPacket(e)}).on("error",function(e){t.onError(e)}).on("close",function(){t.onClose("transport close")})},f.prototype.probe=function(n){d('probing transport "%s"',n);var o=this.createTransport(n,{probe:1}),t=!1,r=this;function e(){var e;r.onlyBinaryUpgrades&&(e=!this.supportsBinary&&r.transport.supportsBinary,t=t||e),t||(d('probe transport "%s" opened',n),o.send([{type:"ping",data:"probe"}]),o.once("packet",function(e){t||("pong"===e.type&&"probe"===e.data?(d('probe transport "%s" pong',n),r.upgrading=!0,r.emit("upgrading",o),o&&(f.priorWebsocketSuccess="websocket"===o.name,d('pausing current transport "%s"',r.transport.name),r.transport.pause(function(){t||"closed"!==r.readyState&&(d("changing transport and sending upgrade packet"),u(),r.setTransport(o),o.send([{type:"upgrade"}]),r.emit("upgrade",o),o=null,r.upgrading=!1,r.flush())}))):(d('probe transport "%s" failed',n),(e=new Error("probe error")).transport=o.name,r.emit("upgradeError",e)))}))}function i(){t||(t=!0,u(),o.close(),o=null)}function a(e){var t=new Error("probe error: "+e);t.transport=o.name,i(),d('probe transport "%s" failed because of error: %s',n,e),r.emit("upgradeError",t)}function s(){a("transport closed")}function c(){a("socket closed")}function l(e){o&&e.name!==o.name&&(d('"%s" works - aborting "%s"',e.name,o.name),i())}function u(){o.removeListener("open",e),o.removeListener("error",a),o.removeListener("close",s),r.removeListener("close",c),r.removeListener("upgrading",l)}f.priorWebsocketSuccess=!1,o.once("open",e),o.once("error",a),o.once("close",s),this.once("close",c),this.once("upgrading",l),o.open()},f.prototype.onOpen=function(){if(d("socket open"),this.readyState="open",f.priorWebsocketSuccess="websocket"===this.transport.name,this.emit("open"),this.flush(),"open"===this.readyState&&this.upgrade&&this.transport.pause){d("starting upgrade probes");for(var e=0,t=this.upgrades.length;e<t;e++)this.probe(this.upgrades[e])}},f.prototype.onPacket=function(e){if("opening"===this.readyState||"open"===this.readyState||"closing"===this.readyState)switch(d('socket receive: type "%s", data "%s"',e.type,e.data),this.emit("packet",e),this.emit("heartbeat"),e.type){case"open":this.onHandshake(JSON.parse(e.data));break;case"pong":this.setPing(),this.emit("pong");break;case"error":var t=new Error("server error");t.code=e.data,this.onError(t);break;case"message":this.emit("data",e.data),this.emit("message",e.data)}else d('packet received with socket readyState "%s"',this.readyState)},f.prototype.onHandshake=function(e){this.emit("handshake",e),this.id=e.sid,this.transport.query.sid=e.sid,this.upgrades=this.filterUpgrades(e.upgrades),this.pingInterval=e.pingInterval,this.pingTimeout=e.pingTimeout,this.onOpen(),"closed"!==this.readyState&&(this.setPing(),this.removeListener("heartbeat",this.onHeartbeat),this.on("heartbeat",this.onHeartbeat))},f.prototype.onHeartbeat=function(e){clearTimeout(this.pingTimeoutTimer);var t=this;t.pingTimeoutTimer=setTimeout(function(){"closed"!==t.readyState&&t.onClose("ping timeout")},e||t.pingInterval+t.pingTimeout)},f.prototype.setPing=function(){var e=this;clearTimeout(e.pingIntervalTimer),e.pingIntervalTimer=setTimeout(function(){d("writing ping packet - expecting pong within %sms",e.pingTimeout),e.ping(),e.onHeartbeat(e.pingTimeout)},e.pingInterval)},f.prototype.ping=function(){var e=this;this.sendPacket("ping",function(){e.emit("ping")})},f.prototype.onDrain=function(){this.writeBuffer.splice(0,this.prevBufferLen),(this.prevBufferLen=0)===this.writeBuffer.length?this.emit("drain"):this.flush()},f.prototype.flush=function(){"closed"!==this.readyState&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length&&(d("flushing %d packets in socket",this.writeBuffer.length),this.transport.send(this.writeBuffer),this.prevBufferLen=this.writeBuffer.length,this.emit("flush"))},f.prototype.write=f.prototype.send=function(e,t,n){return this.sendPacket("message",e,t,n),this},f.prototype.sendPacket=function(e,t,n,o){"function"==typeof t&&(o=t,t=void 0),"function"==typeof n&&(o=n,n=null),"closing"!==this.readyState&&"closed"!==this.readyState&&((n=n||{}).compress=!1!==n.compress,n={type:e,data:t,options:n},this.emit("packetCreate",n),this.writeBuffer.push(n),o&&this.once("flush",o),this.flush())},f.prototype.close=function(){var e;function t(){e.onClose("forced close"),d("socket closing - telling transport to close"),e.transport.close()}function n(){e.removeListener("upgrade",n),e.removeListener("upgradeError",n),t()}function o(){e.once("upgrade",n),e.once("upgradeError",n)}return"opening"!==this.readyState&&"open"!==this.readyState||(this.readyState="closing",(e=this).writeBuffer.length?this.once("drain",function(){(this.upgrading?o:t)()}):(this.upgrading?o:t)()),this},f.prototype.onError=function(e){d("socket error %j",e),f.priorWebsocketSuccess=!1,this.emit("error",e),this.onClose("transport error",e)},f.prototype.onClose=function(e,t){"opening"!==this.readyState&&"open"!==this.readyState&&"closing"!==this.readyState||(d('socket close with reason: "%s"',e),clearTimeout(this.pingIntervalTimer),clearTimeout(this.pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),this.readyState="closed",this.id=null,this.emit("close",e,t),this.writeBuffer=[],this.prevBufferLen=0)},f.prototype.filterUpgrades=function(e){for(var t=[],n=0,o=e.length;n<o;n++)~i(this.transports,e[n])&&t.push(e[n]);return t}},function(t,e){try{t.exports="undefined"!=typeof XMLHttpRequest&&"withCredentials"in new XMLHttpRequest}catch(e){t.exports=!1}},function(e,t,n){var r=n(106),o=n(150),i=n(50),a=n(76),s=n(77)("engine.io-client:polling-xhr");function c(){}function l(e){var t,n;o.call(this,e),this.requestTimeout=e.requestTimeout,this.extraHeaders=e.extraHeaders,"undefined"!=typeof location&&(t="https:"===location.protocol,n=(n=location.port)||(t?443:80),this.xd="undefined"!=typeof location&&e.hostname!==location.hostname||n!==e.port,this.xs=e.secure!==t)}function u(e){this.method=e.method||"GET",this.uri=e.uri,this.xd=!!e.xd,this.xs=!!e.xs,this.async=!1!==e.async,this.data=void 0!==e.data?e.data:null,this.agent=e.agent,this.isBinary=e.isBinary,this.supportsBinary=e.supportsBinary,this.enablesXDR=e.enablesXDR,this.requestTimeout=e.requestTimeout,this.pfx=e.pfx,this.key=e.key,this.passphrase=e.passphrase,this.cert=e.cert,this.ca=e.ca,this.ciphers=e.ciphers,this.rejectUnauthorized=e.rejectUnauthorized,this.extraHeaders=e.extraHeaders,this.create()}function d(){for(var e in u.requests)u.requests.hasOwnProperty(e)&&u.requests[e].abort()}e.exports=l,e.exports.Request=u,a(l,o),l.prototype.supportsBinary=!0,l.prototype.request=function(e){return(e=e||{}).uri=this.uri(),e.xd=this.xd,e.xs=this.xs,e.agent=this.agent||!1,e.supportsBinary=this.supportsBinary,e.enablesXDR=this.enablesXDR,e.pfx=this.pfx,e.key=this.key,e.passphrase=this.passphrase,e.cert=this.cert,e.ca=this.ca,e.ciphers=this.ciphers,e.rejectUnauthorized=this.rejectUnauthorized,e.requestTimeout=this.requestTimeout,e.extraHeaders=this.extraHeaders,new u(e)},l.prototype.doWrite=function(e,t){var n="string"!=typeof e&&void 0!==e,n=this.request({method:"POST",data:e,isBinary:n}),o=this;n.on("success",t),n.on("error",function(e){o.onError("xhr post error",e)}),this.sendXhr=n},l.prototype.doPoll=function(){s("xhr poll");var e=this.request(),t=this;e.on("data",function(e){t.onData(e)}),e.on("error",function(e){t.onError("xhr poll error",e)}),this.pollXhr=e},i(u.prototype),u.prototype.create=function(){var e={agent:this.agent,xdomain:this.xd,xscheme:this.xs,enablesXDR:this.enablesXDR};e.pfx=this.pfx,e.key=this.key,e.passphrase=this.passphrase,e.cert=this.cert,e.ca=this.ca,e.ciphers=this.ciphers,e.rejectUnauthorized=this.rejectUnauthorized;var t=this.xhr=new r(e),n=this;try{s("xhr open %s: %s",this.method,this.uri),t.open(this.method,this.uri,this.async);try{if(this.extraHeaders)for(var o in t.setDisableHeaderCheck&&t.setDisableHeaderCheck(!0),this.extraHeaders)this.extraHeaders.hasOwnProperty(o)&&t.setRequestHeader(o,this.extraHeaders[o])}catch(e){}if("POST"===this.method)try{this.isBinary?t.setRequestHeader("Content-type","application/octet-stream"):t.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch(e){}try{t.setRequestHeader("Accept","*/*")}catch(e){}"withCredentials"in t&&(t.withCredentials=!0),this.requestTimeout&&(t.timeout=this.requestTimeout),this.hasXDR()?(t.onload=function(){n.onLoad()},t.onerror=function(){n.onError(t.responseText)}):t.onreadystatechange=function(){if(2===t.readyState)try{var e=t.getResponseHeader("Content-Type");n.supportsBinary&&"application/octet-stream"===e&&(t.responseType="arraybuffer")}catch(e){}4===t.readyState&&(200===t.status||1223===t.status?n.onLoad():setTimeout(function(){n.onError(t.status)},0))},s("xhr data %s",this.data),t.send(this.data)}catch(e){return void setTimeout(function(){n.onError(e)},0)}"undefined"!=typeof document&&(this.index=u.requestsCount++,u.requests[this.index]=this)},u.prototype.onSuccess=function(){this.emit("success"),this.cleanup()},u.prototype.onData=function(e){this.emit("data",e),this.onSuccess()},u.prototype.onError=function(e){this.emit("error",e),this.cleanup(!0)},u.prototype.cleanup=function(e){if(void 0!==this.xhr&&null!==this.xhr){if(this.hasXDR()?this.xhr.onload=this.xhr.onerror=c:this.xhr.onreadystatechange=c,e)try{this.xhr.abort()}catch(e){}"undefined"!=typeof document&&delete u.requests[this.index],this.xhr=null}},u.prototype.onLoad=function(){var e,t;try{try{t=this.xhr.getResponseHeader("Content-Type")}catch(e){}e="application/octet-stream"===t&&this.xhr.response||this.xhr.responseText}catch(e){this.onError(e)}null!=e&&this.onData(e)},u.prototype.hasXDR=function(){return"undefined"!=typeof XDomainRequest&&!this.xs&&this.enablesXDR},u.prototype.abort=function(){this.cleanup()},u.requestsCount=0,u.requests={},"undefined"!=typeof document&&("function"==typeof attachEvent?attachEvent("onunload",d):"function"==typeof addEventListener&&(i="onpagehide"in self?"pagehide":"unload",addEventListener(i,d,!1)))},function(e,t){e.exports=Object.keys||function(e){var t,n=[],o=Object.prototype.hasOwnProperty;for(t in e)o.call(e,t)&&n.push(t);return n}},function(e,t){var n={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==n.call(e)}},function(e,t){e.exports=function(e,t,n){var o=e.byteLength;if(t=t||0,n=n||o,e.slice)return e.slice(t,n);if(t<0&&(t+=o),n<0&&(n+=o),o<n&&(n=o),o<=t||n<=t||0===o)return new ArrayBuffer(0);for(var r=new Uint8Array(e),i=new Uint8Array(n-t),a=t,s=0;a<n;a++,s++)i[s]=r[a];return i.buffer}},function(e,t){function a(){}e.exports=function(e,n,o){var r=!1;return o=o||a,0===(i.count=e)?n():i;function i(e,t){if(i.count<=0)throw new Error("after called too many times");--i.count,e?(r=!0,n(e),n=o):0!==i.count||r||n(null,t)}}},function(e,t){var i,a,s,c=String.fromCharCode;function l(e){for(var t,n,o=[],r=0,i=e.length;r<i;)55296<=(t=e.charCodeAt(r++))&&t<=56319&&r<i?56320==(64512&(n=e.charCodeAt(r++)))?o.push(((1023&t)<<10)+(1023&n)+65536):(o.push(t),r--):o.push(t);return o}function u(e,t){if(!(55296<=e&&e<=57343))return 1;if(t)throw Error("Lone surrogate U+"+e.toString(16).toUpperCase()+" is not a scalar value")}function d(e,t){return c(e>>t&63|128)}function f(){if(a<=s)throw Error("Invalid byte index");var e=255&i[s];if(s++,128==(192&e))return 63&e;throw Error("Invalid continuation byte")}e.exports={version:"2.1.2",encode:function(e,t){for(var n=!1!==(t=t||{}).strict,o=l(e),r=o.length,i=-1,a="";++i<r;)a+=function(e,t){if(0==(4294967168&e))return c(e);var n="";return 0==(4294965248&e)?n=c(e>>6&31|192):0==(4294901760&e)?(u(e,t)||(e=65533),n=c(e>>12&15|224),n+=d(e,6)):0==(4292870144&e)&&(n=c(e>>18&7|240),n+=d(e,12),n+=d(e,6)),n+c(63&e|128)}(o[i],n);return a},decode:function(e,t){var n=!1!==(t=t||{}).strict;i=l(e),a=i.length,s=0;for(var o,r=[];!1!==(o=function(e){var t,n;if(a<s)throw Error("Invalid byte index");if(s==a)return!1;if(t=255&i[s],s++,0==(128&t))return t;if(192==(224&t)){if(128<=(n=(31&t)<<6|f()))return n;throw Error("Invalid continuation byte")}if(224==(240&t)){if(2048<=(n=(15&t)<<12|f()<<6|f()))return u(n,e)?n:65533;throw Error("Invalid continuation byte")}if(240==(248&t)&&65536<=(n=(7&t)<<18|f()<<12|f()<<6|f())&&n<=1114111)return n;throw Error("Invalid UTF-8 detected")}(n));)r.push(o);return function(e){for(var t,n=e.length,o=-1,r="";++o<n;)65535<(t=e[o])&&(r+=c((t-=65536)>>>10&1023|55296),t=56320|1023&t),r+=c(t);return r}(r)}}},function(e,t){!function(){"use strict";for(var i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",u=new Uint8Array(256),e=0;e<i.length;e++)u[i.charCodeAt(e)]=e;t.encode=function(e){for(var t=new Uint8Array(e),n=t.length,o="",r=0;r<n;r+=3)o+=i[t[r]>>2],o+=i[(3&t[r])<<4|t[r+1]>>4],o+=i[(15&t[r+1])<<2|t[r+2]>>6],o+=i[63&t[r+2]];return n%3==2?o=o.substring(0,o.length-1)+"=":n%3==1&&(o=o.substring(0,o.length-2)+"=="),o},t.decode=function(e){var t,n,o,r,i=.75*e.length,a=e.length,s=0;"="===e[e.length-1]&&(i--,"="===e[e.length-2]&&i--);for(var i=new ArrayBuffer(i),c=new Uint8Array(i),l=0;l<a;l+=4)t=u[e.charCodeAt(l)],n=u[e.charCodeAt(l+1)],o=u[e.charCodeAt(l+2)],r=u[e.charCodeAt(l+3)],c[s++]=t<<2|n>>4,c[s++]=(15&n)<<4|o>>2,c[s++]=(3&o)<<6|63&r;return i}}()},function(e,t){var o=void 0!==o?o:"undefined"!=typeof WebKitBlobBuilder?WebKitBlobBuilder:"undefined"!=typeof MSBlobBuilder?MSBlobBuilder:"undefined"!=typeof MozBlobBuilder&&MozBlobBuilder,n=function(){try{return 2===new Blob(["hi"]).size}catch(e){return!1}}(),r=n&&function(){try{return 2===new Blob([new Uint8Array([1,2])]).size}catch(e){return!1}}(),i=o&&o.prototype.append&&o.prototype.getBlob;function a(e){return e.map(function(e){if(e.buffer instanceof ArrayBuffer){var t,n=e.buffer;return e.byteLength!==n.byteLength&&((t=new Uint8Array(e.byteLength)).set(new Uint8Array(n,e.byteOffset,e.byteLength)),n=t.buffer),n}return e})}function s(e,t){t=t||{};var n=new o;return a(e).forEach(function(e){n.append(e)}),t.type?n.getBlob(t.type):n.getBlob()}function c(e,t){return new Blob(a(e),t||{})}"undefined"!=typeof Blob&&(s.prototype=Blob.prototype,c.prototype=Blob.prototype),e.exports=n?r?Blob:c:i?s:void 0},function(e,c,t){function n(e){var a;function s(){if(s.enabled){var o=s,e=+new Date,t=e-(a||e);o.diff=t,o.prev=a,o.curr=e,a=e;for(var r=new Array(arguments.length),n=0;n<r.length;n++)r[n]=arguments[n];r[0]=c.coerce(r[0]),"string"!=typeof r[0]&&r.unshift("%O");var i=0;r[0]=r[0].replace(/%([a-zA-Z%])/g,function(e,t){if("%%"===e)return e;i++;var n=c.formatters[t];return"function"==typeof n&&(t=r[i],e=n.call(o,t),r.splice(i,1),i--),e}),c.formatArgs.call(o,r),(s.log||c.log||console.log.bind(console)).apply(o,r)}}return s.namespace=e,s.enabled=c.enabled(e),s.useColors=c.useColors(),s.color=function(e){var t,n=0;for(t in e)n=(n<<5)-n+e.charCodeAt(t),n|=0;return c.colors[Math.abs(n)%c.colors.length]}(e),s.destroy=o,"function"==typeof c.init&&c.init(s),c.instances.push(s),s}function o(){var e=c.instances.indexOf(this);return-1!==e&&(c.instances.splice(e,1),!0)}(c=e.exports=n.debug=n.default=n).coerce=function(e){return e instanceof Error?e.stack||e.message:e},c.disable=function(){c.enable("")},c.enable=function(e){c.save(e),c.names=[],c.skips=[];for(var t=("string"==typeof e?e:"").split(/[\s,]+/),n=t.length,o=0;o<n;o++)t[o]&&("-"===(e=t[o].replace(/\*/g,".*?"))[0]?c.skips.push(new RegExp("^"+e.substr(1)+"$")):c.names.push(new RegExp("^"+e+"$")));for(o=0;o<c.instances.length;o++){var r=c.instances[o];r.enabled=c.enabled(r.namespace)}},c.enabled=function(e){if("*"===e[e.length-1])return!0;for(var t=0,n=c.skips.length;t<n;t++)if(c.skips[t].test(e))return!1;for(t=0,n=c.names.length;t<n;t++)if(c.names[t].test(e))return!0;return!1},c.humanize=t(104),c.instances=[],c.names=[],c.skips=[],c.formatters={}},function(a,e,s){(function(n){var o=s(150),e=s(76);a.exports=t;var r,l=/\n/g,u=/\\n/g;function i(){}function t(e){o.call(this,e),this.query=this.query||{},r||(e="undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0!==n?n:{},r=e.___eio=e.___eio||[]),this.index=r.length;var t=this;r.push(function(e){t.onData(e)}),this.query.j=this.index,"function"==typeof addEventListener&&addEventListener("beforeunload",function(){t.script&&(t.script.onerror=i)},!1)}e(t,o),t.prototype.supportsBinary=!1,t.prototype.doClose=function(){this.script&&(this.script.parentNode.removeChild(this.script),this.script=null),this.form&&(this.form.parentNode.removeChild(this.form),this.form=null,this.iframe=null),o.prototype.doClose.call(this)},t.prototype.doPoll=function(){var t=this,e=document.createElement("script");this.script&&(this.script.parentNode.removeChild(this.script),this.script=null),e.async=!0,e.src=this.uri(),e.onerror=function(e){t.onError("jsonp poll error",e)};var n=document.getElementsByTagName("script")[0];n?n.parentNode.insertBefore(e,n):(document.head||document.body).appendChild(e),this.script=e,"undefined"!=typeof navigator&&/gecko/i.test(navigator.userAgent)&&setTimeout(function(){var e=document.createElement("iframe");document.body.appendChild(e),document.body.removeChild(e)},100)},t.prototype.doWrite=function(e,t){var n,o,r,i,a=this;function s(){c(),t()}function c(){if(a.iframe)try{a.form.removeChild(a.iframe)}catch(e){a.onError("jsonp polling iframe removal error",e)}try{var e='<iframe src="javascript:0" name="'+a.iframeId+'">';n=document.createElement(e)}catch(e){(n=document.createElement("iframe")).name=a.iframeId,n.src="javascript:0"}n.id=a.iframeId,a.form.appendChild(n),a.iframe=n}this.form||(o=document.createElement("form"),r=document.createElement("textarea"),i=this.iframeId="eio_iframe_"+this.index,o.className="socketio",o.style.position="absolute",o.style.top="-1000px",o.style.left="-1000px",o.target=i,o.method="POST",o.setAttribute("accept-charset","utf-8"),r.name="d",o.appendChild(r),document.body.appendChild(o),this.form=o,this.area=r),this.form.action=this.uri(),c(),e=e.replace(u,"\\\n"),this.area.value=e.replace(l,"\\n");try{this.form.submit()}catch(e){}this.iframe.attachEvent?this.iframe.onreadystatechange=function(){"complete"===a.iframe.readyState&&s()}:this.iframe.onload=s}}).call(this,s(31))},function(d,e,f){(function(i){var t,n,o=f(107),a=f(51),r=f(75),e=f(76),s=f(152),c=f(77)("engine.io-client:websocket");if("undefined"!=typeof WebSocket)t=WebSocket;else if("undefined"!=typeof self)t=self.WebSocket||self.MozWebSocket;else try{n=f(392)}catch(e){}var l=t||n;function u(e){e&&e.forceBase64&&(this.supportsBinary=!1),this.perMessageDeflate=e.perMessageDeflate,this.usingBrowserWebSocket=t&&!e.forceNode,this.protocols=e.protocols,this.usingBrowserWebSocket||(l=n),o.call(this,e)}e(d.exports=u,o),u.prototype.name="websocket",u.prototype.supportsBinary=!0,u.prototype.doOpen=function(){if(this.check()){var e=this.uri(),t=this.protocols,n={agent:this.agent,perMessageDeflate:this.perMessageDeflate};n.pfx=this.pfx,n.key=this.key,n.passphrase=this.passphrase,n.cert=this.cert,n.ca=this.ca,n.ciphers=this.ciphers,n.rejectUnauthorized=this.rejectUnauthorized,this.extraHeaders&&(n.headers=this.extraHeaders),this.localAddress&&(n.localAddress=this.localAddress);try{this.ws=this.usingBrowserWebSocket&&!this.isReactNative?t?new l(e,t):new l(e):new l(e,t,n)}catch(e){return this.emit("error",e)}void 0===this.ws.binaryType&&(this.supportsBinary=!1),this.ws.supports&&this.ws.supports.binary?(this.supportsBinary=!0,this.ws.binaryType="nodebuffer"):this.ws.binaryType="arraybuffer",this.addEventListeners()}},u.prototype.addEventListeners=function(){var t=this;this.ws.onopen=function(){t.onOpen()},this.ws.onclose=function(){t.onClose()},this.ws.onmessage=function(e){t.onData(e.data)},this.ws.onerror=function(e){t.onError("websocket error",e)}},u.prototype.write=function(e){var o=this;this.writable=!1;for(var r=e.length,t=0,n=r;t<n;t++)!function(n){a.encodePacket(n,o.supportsBinary,function(e){var t;o.usingBrowserWebSocket||(t={},n.options&&(t.compress=n.options.compress),!o.perMessageDeflate||("string"==typeof e?i.byteLength(e):e.length)<o.perMessageDeflate.threshold&&(t.compress=!1));try{o.usingBrowserWebSocket?o.ws.send(e):o.ws.send(e,t)}catch(e){c("websocket closed before onclose event")}--r||(o.emit("flush"),setTimeout(function(){o.writable=!0,o.emit("drain")},0))})}(e[t])},u.prototype.onClose=function(){o.prototype.onClose.call(this)},u.prototype.doClose=function(){void 0!==this.ws&&this.ws.close()},u.prototype.uri=function(){var e=this.query||{},t=this.secure?"wss":"ws",n="";return this.port&&("wss"==t&&443!==Number(this.port)||"ws"==t&&80!==Number(this.port))&&(n=":"+this.port),this.timestampRequests&&(e[this.timestampParam]=s()),this.supportsBinary||(e.b64=1),(e=r.encode(e)).length&&(e="?"+e),t+"://"+(-1!==this.hostname.indexOf(":")?"["+this.hostname+"]":this.hostname)+n+this.path+e},u.prototype.check=function(){return!(!l||"__initialize"in l&&this.name===u.prototype.name)}}).call(this,f(73).Buffer)},function(e,t){},function(e,t){e.exports=function(e,t){for(var n=[],o=(t=t||0)||0;o<e.length;o++)n[o-t]=e[o];return n}},function(e,t){function n(e){e=e||{},this.ms=e.min||100,this.max=e.max||1e4,this.factor=e.factor||2,this.jitter=0<e.jitter&&e.jitter<=1?e.jitter:0,this.attempts=0}(e.exports=n).prototype.duration=function(){var e,t,n=this.ms*Math.pow(this.factor,this.attempts++);return this.jitter&&(e=Math.random(),t=Math.floor(e*this.jitter*n),n=0==(1&Math.floor(10*e))?n-t:n+t),0|Math.min(n,this.max)},n.prototype.reset=function(){this.attempts=0},n.prototype.setMin=function(e){this.ms=e},n.prototype.setMax=function(e){this.max=e},n.prototype.setJitter=function(e){this.jitter=e}},void 0,function(e,t,n){"use strict";for(var o in window.EJS_RESET_VARS=[],window)window.EJS_RESET_VARS.push(o);n.r(t),n(162),n(364),n(365);function r(e){return null!=e?e.constructor:null}function i(e,t){return Boolean(e&&t&&e instanceof t)}function a(e){return null==e}function s(e){return r(e)===Object}function c(e){return r(e)===String}function l(e){return Array.isArray(e)}function u(e){return i(e,NodeList)}function d(e){return a(e)||(c(e)||l(e)||u(e))&&!e.length||s(e)&&!Object.keys(e).length}var f={volume:.5,muted:!1,i18n:{restart:"Restart",play:"Play",pause:"Pause",played:"Played",volume:"Volume",mute:"Mute (F9)",unmute:"Unmute (F9)",enterFullscreen:"Enter fullscreen",exitFullscreen:"Exit fullscreen",settings:"Settings",saveState:"Save State (Shift + F2)",loadState:"Load State (Shift + F4)",screenRecord:"Start Screen Recording",netplay:"Netplay",gamepad:"Control Settings",cheat:"Cheats",menuBack:"Go back to previous menu",normal:"Normal",all:"All",reset:"Reset",disabled:"Disabled",enabled:"Enabled",playNow:"Play Now"},listeners:{play:null,pause:null,restart:null,rewind:null,mute:null,volume:null,fullscreen:null},events:["ready"],selectors:{editable:"input, textarea, select, [contenteditable]",container:".ejs",controls:{container:null,wrapper:".jes__controls"},buttons:{play:'[data-btn="play"]',pause:'[data-btn="pause"]',mute:'[data-btn="mute"]',fullscreen:'[data-btn="fullscreen"]',settings:'[data-btn="settings"]',saveState:'[data-btn="save-state"]',loadState:'[data-btn="load-state"]',screenRecord:'[data-btn="screen-record"]',gamepad:'[data-btn="gamepad"]',netplay:'[data-btn="netplay"]',cheat:'[data-btn="cheat"]'},inputs:{volume:'[data-range="volume"]'}},classNames:{type:"ejs--video",video:"ejs__video-wrapper",poster:"ejs__poster",posterEnabled:"ejs__poster-enabled",control:"ejs__control",controlPressed:"ejs__control--pressed",playing:"ejs--playing",paused:"ejs--paused",stopped:"ejs--stopped",loading:"ejs--loading",hover:"ejs--hover",tooltip:"ejs__tooltip",hidden:"ejs__sr-only",hideControls:"ejs--hide-controls",isIos:"ejs--is-ios",isTouch:"ejs--is-touch",uiSupported:"ejs--full-ui",noTransition:"ejs--no-transition",menu:{value:"ejs__menu__value",badge:"ejs__badge",open:"ejs--menu-open"},fullscreen:{enabled:"ejs--fullscreen-enabled",fallback:"ejs--fullscreen-fallback"},tabFocus:"ejs__tab-focus"}},p=(n(56),n(157)),h=n.n(p),F={nullOrUndefined:a,object:s,number:function(e){return r(e)===Number&&!Number.isNaN(e)},string:c,boolean:function(e){return r(e)===Boolean},function:function(e){return r(e)===Function},array:l,weakMap:function(e){return i(e,WeakMap)},nodeList:u,element:function(e){return i(e,Element)},textNode:function(e){return r(e)===Text},event:function(e){return i(e,Event)},keyboardEvent:function(e){return i(e,KeyboardEvent)},cue:function(e){return i(e,window.TextTrackCue)||i(e,window.VTTCue)},track:function(e){return i(e,TextTrack)||!a(e)&&c(e.kind)},url:function(e){if(i(e,window.URL))return!0;var t=e;e.startsWith("http://")&&e.startsWith("https://")||(t="http://".concat(e));try{return!d(new URL(t).hostname)}catch(e){return!1}},empty:d},m=function(){var e=!1;try{var t=Object.defineProperty({},"passive",{get:function(){return e=!0,null}});window.addEventListener("test",null,t),window.removeEventListener("test",null,t)}catch(e){}return e}();function g(t,e,n){var o,r=this,i=3<arguments.length&&void 0!==arguments[3]&&arguments[3],a=!(4<arguments.length&&void 0!==arguments[4])||arguments[4],s=5<arguments.length&&void 0!==arguments[5]&&arguments[5];t&&"addEventListener"in t&&!F.empty(e)&&F.function(n)&&(e=e.split(" "),o=m?{passive:a,capture:s}:s,e.forEach(function(e){r&&r.eventListeners&&i&&r.eventListeners.push({element:t,type:e,callback:n,options:o}),t[i?"addEventListener":"removeEventListener"](e,n,o)}))}function D(e){g.call(this,e,1<arguments.length&&void 0!==arguments[1]?arguments[1]:"",2<arguments.length?arguments[2]:void 0,!0,!(3<arguments.length&&void 0!==arguments[3])||arguments[3],4<arguments.length&&void 0!==arguments[4]&&arguments[4])}function v(e){g.call(this,e,1<arguments.length&&void 0!==arguments[1]?arguments[1]:"",2<arguments.length?arguments[2]:void 0,!1,!(3<arguments.length&&void 0!==arguments[3])||arguments[3],4<arguments.length&&void 0!==arguments[4]&&arguments[4])}function z(r){var i=1<arguments.length&&void 0!==arguments[1]?arguments[1]:"",a=2<arguments.length?arguments[2]:void 0,s=!(3<arguments.length&&void 0!==arguments[3])||arguments[3],c=4<arguments.length&&void 0!==arguments[4]&&arguments[4];g.call(this,r,i,function e(){v(r,i,e,s,c);for(var t=arguments.length,n=new Array(t),o=0;o<t;o++)n[o]=arguments[o];a.apply(this,n)},!0,s,c)}function U(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:"",n=2<arguments.length&&void 0!==arguments[2]&&arguments[2],o=3<arguments.length&&void 0!==arguments[3]?arguments[3]:{};F.element(e)&&!F.empty(t)&&(o=new CustomEvent(t,{bubbles:n,detail:Object.assign({},o,{emulator:this})}),e.dispatchEvent(o))}var b=n(158),y=n.n(b);function w(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=[],o=!0,r=!1,i=void 0;try{for(var a,s=e[Symbol.iterator]();!(o=(a=s.next()).done)&&(n.push(a.value),!t||n.length!==t);o=!0);}catch(e){r=!0,i=e}finally{try{o||null==s.return||s.return()}finally{if(r)throw i}}return n}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function x(e,r){e=e.length?e:[e];Array.from(e).reverse().forEach(function(e,t){var n=0<t?r.cloneNode(!0):r,o=e.parentNode,t=e.nextSibling;n.appendChild(e),t?o.insertBefore(n,t):o.appendChild(n)})}function _(n,e){F.element(n)&&!F.empty(e)&&Object.entries(e).filter(function(e){e=w(e,2)[1];return!F.nullOrUndefined(e)}).forEach(function(e){var t=w(e,2),e=t[0],t=t[1];return n.setAttribute(e,t)})}function B(e,t,n){e=document.createElement(e);return F.object(t)&&_(e,t),F.string(n)&&(e.innerText=n),e}function S(e){F.nodeList(e)||F.array(e)?Array.from(e).forEach(S):F.element(e)&&F.element(e.parentNode)&&e.parentNode.removeChild(e)}function T(e,t){if(!F.string(e)||F.empty(e))return{};var i={},a=t;return e.split(",").forEach(function(e){var t=e.trim(),n=t.replace(".",""),e=t.replace(/[[\]]/g,"").split("="),o=e[0],r=1<e.length?e[1].replace(/["']/g,""):"";switch(t.charAt(0)){case".":F.object(a)&&F.string(a.class)&&(a.class+=" ".concat(n)),i.class=n;break;case"#":i.id=t.replace("#","");break;case"[":i[o]=r}}),i}function G(e,t){F.element(e)&&(t=t,F.boolean(t)||(t=!e.hidden),t?e.setAttribute("hidden",""):e.removeAttribute("hidden"))}function V(e,t,n){if(F.nodeList(e))return Array.from(e).map(function(e){return V(e,t,n)});if(F.element(e)){var o=void 0!==n?n?"add":"remove":"toggle";return e.classList[o](t),e.classList.contains(t)}return!1}function C(e,t){return F.element(e)&&e.classList.contains(t)}function E(e,t){var n={Element:Element};return(n.matches||n.webkitMatchesSelector||n.mozMatchesSelector||n.msMatchesSelector||function(){return Array.from(document.querySelectorAll(t)).includes(this)}).call(e,t)}function A(e){return this.elements.container.querySelectorAll(e)}function q(e){return this.elements.container.querySelector(e)}function k(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:null,t=1<arguments.length&&void 0!==arguments[1]&&arguments[1];F.element(e)&&(e.focus(),t&&V(e,this.config.classNames.tabFocus))}function H(e){return h.a.bind(y.a)(e)}var M,O=(M=document.createElement("span"),p={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"},b=Object.keys(p).find(function(e){return void 0!==M.style[e]}),!!F.string(b)&&p[b]);function R(e){setTimeout(function(){try{G(e,!0),e.offsetHeight,G(e,!1)}catch(e){}},0)}var W={isEdge:"Netscape"===navigator.appName&&-1<navigator.appVersion.indexOf("Edge"),isIE:!!document.documentMode,isWebkit:"WebkitAppearance"in document.documentElement.style&&!/Edge/.test(navigator.userAgent),isIPhone:/(iPhone|iPod)/gi.test(navigator.platform),isIos:/(iPad|iPhone|iPod)/gi.test(navigator.platform),info:function(){var e=/(MSIE|(?!Gecko.+)Firefox|(?!AppleWebKit.+Chrome.+)Safari|(?!AppleWebKit.+)Chrome|AppleWebKit(?!.+Chrome|.+Safari)|Gecko(?!.+Firefox))(?: |\/)([\d\.apre]+)/.exec(navigator.userAgent);return{name:e[1].toLowerCase(),version:e[2]}}},Y={rangeInput:((p=document.createElement("input")).type="range")===p.type,touch:"ontouchstart"in document.documentElement,transitions:!1!==O,reducedMotion:"matchMedia"in window&&window.matchMedia("(prefers-reduced-motion)").matches,webgl:function(){var e={DETECTED:!1};if(!e.DETECTED){var t=document.createElement("canvas");if(t&&t.getContext)for(var n=["webgl2","experimental-webgl2","webgl","experimental-webgl"],o=0,r=n.length;o<r;++o){var i=n[o],a=t.getContext(i);if(a){e.WEBGL_CONTEXT=i,e.WEBGL_VERSION=a.getParameter(a.VERSION),e.WEBGL_VENDOR=a.getParameter(a.VENDOR),e.WEBGL_SL_VERSION=a.getParameter(a.SHADING_LANGUAGE_VERSION),e.MAX_TEXTURE_SIZE=a.getParameter(a.MAX_TEXTURE_SIZE);i=a.getExtension("WEBGL_debug_renderer_info");i&&(e.WEBGL_VENDOR=a.getParameter(i.UNMASKED_VENDOR_WEBGL),e.WEBGL_RENDERER=a.getParameter(i.UNMASKED_RENDERER_WEBGL)),e.DETECTED=!0;break}}}return e}(),wasm:"undefined"!=typeof WebAssembly&&F.object(WebAssembly),audioContext:"undefined"!=typeof AudioContext};function P(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function X(){for(var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length,n=new Array(1<e?e-1:0),o=1;o<e;o++)n[o-1]=arguments[o];if(!n.length)return t;var r=n.shift();return F.object(r)?(Object.keys(r).forEach(function(e){F.object(r[e])?(Object.keys(t).includes(e)||Object.assign(t,P({},e,{})),X(t[e],r[e])):Object.assign(t,P({},e,r[e]))}),X.apply(void 0,[t].concat(n))):t}function j(e,t,n){e=0<arguments.length&&void 0!==e?e:"",t=1<arguments.length&&void 0!==t?t:"",n=2<arguments.length&&void 0!==n?n:"";return e.replace(new RegExp(t.toString().replace(/([.*+?^=!:${}()|[\]\/\\])/g,"\\$1"),"g"),n.toString())}var K=function(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:"",t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{};if(F.empty(e)||F.empty(t))return"";var n,o=(n=t.i18n,e.split(".").reduce(function(e,t){return e&&e[t]},n));if(F.empty(o))return"";t={"{seektime}":t.seekTime,"{title}":t.title};return Object.entries(t).forEach(function(e){var t,e=(t=2,function(e){if(Array.isArray(e))return e}(e=e)||function(e,t){var n=[],o=!0,r=!1,i=void 0;try{for(var a,s=e[Symbol.iterator]();!(o=(a=s.next()).done)&&(n.push(a.value),!t||n.length!==t);o=!0);}catch(e){r=!0,i=e}finally{try{o||null==s.return||s.return()}finally{if(r)throw i}}return n}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()),t=e[0],e=e[1];o=j(o,t,e)}),o};function I(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}var N=(b=[{key:"supported",get:function(){try{return"localStorage"in window&&(window.localStorage.getItem("___test")||window.localStorage.setItem("___test","___test"),!0)}catch(e){return!1}}}],I((p=L).prototype,[{key:"get",value:function(e){if(!L.supported||!this.enabled)return null;var t=window.localStorage.getItem(this.key);if(F.empty(t))return null;t=JSON.parse(t);return F.string(e)&&e.length?t[e]:t}},{key:"set",value:function(e){var t;L.supported&&this.enabled&&F.object(e)&&(t=this.get(),F.empty(t)&&(t={}),X(t,e),window.localStorage.setItem(this.key,JSON.stringify(t)))}}]),I(p,b),L);function L(e,t){!function(e){if(!(e instanceof L))throw new TypeError("Cannot call a class as a function")}(this),this.enabled=!0,this.key=t}var b=n(108),J=n.n(b),$=n(6),b=n(159),Z=n.n(b),Q={"2xScaleHQ.glslp":'shaders = 1\n\nshader0 = "2xScaleHQ.glsl"\nfilter_linear0 = false\nscale_type_0 = source\n',"4xScaleHQ.glslp":'shaders = 1\n\nshader0 = "4xScaleHQ.glsl"\nfilter_linear0 = false\nscale_type_0 = source\n',"crt-easymode.glslp":"shaders = 1\n\nshader0 = crt-easymode.glsl\nfilter_linear0 = false\nscale_type_0 = source\n","crt-aperture.glslp":"shaders = 1\n\nshader0 = crt-aperture.glsl\nfilter_linear0 = false\n","crt-geom.glslp":"shaders = 1\n\nshader0 = crt-geom.glsl\nfilter_linear0 = false\nscale_type_0 = source\n","2xScaleHQ.glsl":"/*\n2xGLSLHqFilter shader\n\nCopyright (C) 2005 guest(r) - guest.r@gmail.com\n\nThis program is free software; you can redistribute it and/or\nmodify it under the terms of the GNU General Public License\nas published by the Free Software Foundation; either version 2\nof the License, or (at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program; if not, write to the Free Software\nFoundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n*/\n\n#if defined(VERTEX)\n\n#if __VERSION__ >= 130\n#define COMPAT_VARYING out\n#define COMPAT_ATTRIBUTE in\n#define COMPAT_TEXTURE texture\n#else\n#define COMPAT_VARYING varying \n#define COMPAT_ATTRIBUTE attribute \n#define COMPAT_TEXTURE texture2D\n#endif\n\n#ifdef GL_ES\n#define COMPAT_PRECISION mediump\n#else\n#define COMPAT_PRECISION\n#endif\n\nCOMPAT_ATTRIBUTE vec4 VertexCoord;\nCOMPAT_ATTRIBUTE vec4 COLOR;\nCOMPAT_ATTRIBUTE vec4 TexCoord;\nCOMPAT_VARYING vec4 COL0;\nCOMPAT_VARYING vec4 TEX0;\nCOMPAT_VARYING vec4 t1;\nCOMPAT_VARYING vec4 t2;\nCOMPAT_VARYING vec4 t3;\nCOMPAT_VARYING vec4 t4;\n\nvec4 _oPosition1; \nuniform mat4 MVPMatrix;\nuniform COMPAT_PRECISION int FrameDirection;\nuniform COMPAT_PRECISION int FrameCount;\nuniform COMPAT_PRECISION vec2 OutputSize;\nuniform COMPAT_PRECISION vec2 TextureSize;\nuniform COMPAT_PRECISION vec2 InputSize;\n\n// compatibility #defines\n#define vTexCoord TEX0.xy\n#define SourceSize vec4(TextureSize, 1.0 / TextureSize) //either TextureSize or InputSize\n#define OutSize vec4(OutputSize, 1.0 / OutputSize)\n\nvoid main()\n{\ngl_Position = MVPMatrix * VertexCoord;\nTEX0.xy = TexCoord.xy;\nfloat x = 0.5 * SourceSize.z;\nfloat y = 0.5 * SourceSize.w;\nvec2 dg1 = vec2( x, y);\nvec2 dg2 = vec2(-x, y);\nvec2 dx = vec2(x, 0.0);\nvec2 dy = vec2(0.0, y);\nt1 = vec4(vTexCoord - dg1, vTexCoord - dy);\nt2 = vec4(vTexCoord - dg2, vTexCoord + dx);\nt3 = vec4(vTexCoord + dg1, vTexCoord + dy);\nt4 = vec4(vTexCoord + dg2, vTexCoord - dx);\n}\n\n#elif defined(FRAGMENT)\n\n#if __VERSION__ >= 130\n#define COMPAT_VARYING in\n#define COMPAT_TEXTURE texture\nout vec4 FragColor;\n#else\n#define COMPAT_VARYING varying\n#define FragColor gl_FragColor\n#define COMPAT_TEXTURE texture2D\n#endif\n\n#ifdef GL_ES\n#ifdef GL_FRAGMENT_PRECISION_HIGH\nprecision highp float;\n#else\nprecision mediump float;\n#endif\n#define COMPAT_PRECISION mediump\n#else\n#define COMPAT_PRECISION\n#endif\n\nuniform COMPAT_PRECISION int FrameDirection;\nuniform COMPAT_PRECISION int FrameCount;\nuniform COMPAT_PRECISION vec2 OutputSize;\nuniform COMPAT_PRECISION vec2 TextureSize;\nuniform COMPAT_PRECISION vec2 InputSize;\nuniform sampler2D Texture;\nCOMPAT_VARYING vec4 TEX0;\nCOMPAT_VARYING vec4 t1;\nCOMPAT_VARYING vec4 t2;\nCOMPAT_VARYING vec4 t3;\nCOMPAT_VARYING vec4 t4;\n\n// compatibility #defines\n#define Source Texture\n#define vTexCoord TEX0.xy\n\n#define SourceSize vec4(TextureSize, 1.0 / TextureSize) //either TextureSize or InputSize\n#define OutSize vec4(OutputSize, 1.0 / OutputSize)\n\nfloat mx = 0.325; // start smoothing wt.\nfloat k = -0.250; // wt. decrease factor\nfloat max_w = 0.25; // max filter weight\nfloat min_w =-0.05; // min filter weight\nfloat lum_add = 0.25; // affects smoothing\nvec3 dt = vec3(1.0);\n\nvoid main()\n{\nvec3 c00 = COMPAT_TEXTURE(Source, t1.xy).xyz; \nvec3 c10 = COMPAT_TEXTURE(Source, t1.zw).xyz; \nvec3 c20 = COMPAT_TEXTURE(Source, t2.xy).xyz; \nvec3 c01 = COMPAT_TEXTURE(Source, t4.zw).xyz; \nvec3 c11 = COMPAT_TEXTURE(Source, vTexCoord).xyz; \nvec3 c21 = COMPAT_TEXTURE(Source, t2.zw).xyz; \nvec3 c02 = COMPAT_TEXTURE(Source, t4.xy).xyz; \nvec3 c12 = COMPAT_TEXTURE(Source, t3.zw).xyz; \nvec3 c22 = COMPAT_TEXTURE(Source, t3.xy).xyz; \n\nfloat md1 = dot(abs(c00 - c22), dt);\nfloat md2 = dot(abs(c02 - c20), dt);\n\nfloat w1 = dot(abs(c22 - c11), dt) * md2;\nfloat w2 = dot(abs(c02 - c11), dt) * md1;\nfloat w3 = dot(abs(c00 - c11), dt) * md2;\nfloat w4 = dot(abs(c20 - c11), dt) * md1;\n\nfloat t1 = w1 + w3;\nfloat t2 = w2 + w4;\nfloat ww = max(t1, t2) + 0.0001;\n\nc11 = (w1 * c00 + w2 * c20 + w3 * c22 + w4 * c02 + ww * c11) / (t1 + t2 + ww);\n\nfloat lc1 = k / (0.12 * dot(c10 + c12 + c11, dt) + lum_add);\nfloat lc2 = k / (0.12 * dot(c01 + c21 + c11, dt) + lum_add);\n\nw1 = clamp(lc1 * dot(abs(c11 - c10), dt) + mx, min_w, max_w);\nw2 = clamp(lc2 * dot(abs(c11 - c21), dt) + mx, min_w, max_w);\nw3 = clamp(lc1 * dot(abs(c11 - c12), dt) + mx, min_w, max_w);\nw4 = clamp(lc2 * dot(abs(c11 - c01), dt) + mx, min_w, max_w);\nFragColor = vec4(w1 * c10 + w2 * c21 + w3 * c12 + w4 * c01 + (1.0 - w1 - w2 - w3 - w4) * c11, 1.0);\n} \n#endif\n","4xScaleHQ.glsl":"/*\n4xGLSLHqFilter shader\n\nCopyright (C) 2005 guest(r) - guest.r@gmail.com\n\nThis program is free software; you can redistribute it and/or\nmodify it under the terms of the GNU General Public License\nas published by the Free Software Foundation; either version 2\nof the License, or (at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program; if not, write to the Free Software\nFoundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n*/\n\n#if defined(VERTEX)\n\n#if __VERSION__ >= 130\n#define COMPAT_VARYING out\n#define COMPAT_ATTRIBUTE in\n#define COMPAT_TEXTURE texture\n#else\n#define COMPAT_VARYING varying \n#define COMPAT_ATTRIBUTE attribute \n#define COMPAT_TEXTURE texture2D\n#endif\n\n#ifdef GL_ES\n#define COMPAT_PRECISION mediump\n#else\n#define COMPAT_PRECISION\n#endif\n\nCOMPAT_ATTRIBUTE vec4 VertexCoord;\nCOMPAT_ATTRIBUTE vec4 COLOR;\nCOMPAT_ATTRIBUTE vec4 TexCoord;\nCOMPAT_VARYING vec4 COL0;\nCOMPAT_VARYING vec4 TEX0;\nCOMPAT_VARYING vec4 t1;\nCOMPAT_VARYING vec4 t2;\nCOMPAT_VARYING vec4 t3;\nCOMPAT_VARYING vec4 t4;\nCOMPAT_VARYING vec4 t5;\nCOMPAT_VARYING vec4 t6;\n\nvec4 _oPosition1; \nuniform mat4 MVPMatrix;\nuniform COMPAT_PRECISION int FrameDirection;\nuniform COMPAT_PRECISION int FrameCount;\nuniform COMPAT_PRECISION vec2 OutputSize;\nuniform COMPAT_PRECISION vec2 TextureSize;\nuniform COMPAT_PRECISION vec2 InputSize;\n\n// compatibility #defines\n#define vTexCoord TEX0.xy\n#define SourceSize vec4(TextureSize, 1.0 / TextureSize) //either TextureSize or InputSize\n#define OutSize vec4(OutputSize, 1.0 / OutputSize)\n\nvoid main()\n{\ngl_Position = MVPMatrix * VertexCoord;\nTEX0.xy = TexCoord.xy;\nfloat x = 0.5 * SourceSize.z;\nfloat y = 0.5 * SourceSize.w;\nvec2 dg1 = vec2( x, y);\nvec2 dg2 = vec2(-x, y);\nvec2 sd1 = dg1 * 0.5;\nvec2 sd2 = dg2 * 0.5;\nvec2 ddx = vec2(x, 0.0);\nvec2 ddy = vec2(0.0, y);\nt1 = vec4(vTexCoord - sd1, vTexCoord - ddy);\nt2 = vec4(vTexCoord - sd2, vTexCoord + ddx);\nt3 = vec4(vTexCoord + sd1, vTexCoord + ddy);\nt4 = vec4(vTexCoord + sd2, vTexCoord - ddx);\nt5 = vec4(vTexCoord - dg1, vTexCoord - dg2);\nt6 = vec4(vTexCoord + dg1, vTexCoord + dg2);\n}\n\n#elif defined(FRAGMENT)\n\n#if __VERSION__ >= 130\n#define COMPAT_VARYING in\n#define COMPAT_TEXTURE texture\nout vec4 FragColor;\n#else\n#define COMPAT_VARYING varying\n#define FragColor gl_FragColor\n#define COMPAT_TEXTURE texture2D\n#endif\n\n#ifdef GL_ES\n#ifdef GL_FRAGMENT_PRECISION_HIGH\nprecision highp float;\n#else\nprecision mediump float;\n#endif\n#define COMPAT_PRECISION mediump\n#else\n#define COMPAT_PRECISION\n#endif\n\nuniform COMPAT_PRECISION int FrameDirection;\nuniform COMPAT_PRECISION int FrameCount;\nuniform COMPAT_PRECISION vec2 OutputSize;\nuniform COMPAT_PRECISION vec2 TextureSize;\nuniform COMPAT_PRECISION vec2 InputSize;\nuniform sampler2D Texture;\nCOMPAT_VARYING vec4 TEX0;\nCOMPAT_VARYING vec4 t1;\nCOMPAT_VARYING vec4 t2;\nCOMPAT_VARYING vec4 t3;\nCOMPAT_VARYING vec4 t4;\nCOMPAT_VARYING vec4 t5;\nCOMPAT_VARYING vec4 t6;\n\n// compatibility #defines\n#define Source Texture\n#define vTexCoord TEX0.xy\n\n#define SourceSize vec4(TextureSize, 1.0 / TextureSize) //either TextureSize or InputSize\n#define OutSize vec4(OutputSize, 1.0 / OutputSize)\n\nfloat mx = 1.0; // start smoothing wt.\nfloat k = -1.10; // wt. decrease factor\nfloat max_w = 0.75; // max filter weight\nfloat min_w = 0.03; // min filter weight\nfloat lum_add = 0.33; // affects smoothing\nvec3 dt = vec3(1.0);\n\nvoid main()\n{\nvec3 c = COMPAT_TEXTURE(Source, vTexCoord).xyz;\nvec3 i1 = COMPAT_TEXTURE(Source, t1.xy).xyz; \nvec3 i2 = COMPAT_TEXTURE(Source, t2.xy).xyz; \nvec3 i3 = COMPAT_TEXTURE(Source, t3.xy).xyz; \nvec3 i4 = COMPAT_TEXTURE(Source, t4.xy).xyz; \nvec3 o1 = COMPAT_TEXTURE(Source, t5.xy).xyz; \nvec3 o3 = COMPAT_TEXTURE(Source, t6.xy).xyz; \nvec3 o2 = COMPAT_TEXTURE(Source, t5.zw).xyz;\nvec3 o4 = COMPAT_TEXTURE(Source, t6.zw).xyz;\nvec3 s1 = COMPAT_TEXTURE(Source, t1.zw).xyz; \nvec3 s2 = COMPAT_TEXTURE(Source, t2.zw).xyz; \nvec3 s3 = COMPAT_TEXTURE(Source, t3.zw).xyz; \nvec3 s4 = COMPAT_TEXTURE(Source, t4.zw).xyz; \n\nfloat ko1=dot(abs(o1-c),dt);\nfloat ko2=dot(abs(o2-c),dt);\nfloat ko3=dot(abs(o3-c),dt);\nfloat ko4=dot(abs(o4-c),dt);\n\nfloat k1=min(dot(abs(i1-i3),dt),max(ko1,ko3));\nfloat k2=min(dot(abs(i2-i4),dt),max(ko2,ko4));\n\nfloat w1 = k2; if(ko3<ko1) w1*=ko3/ko1;\nfloat w2 = k1; if(ko4<ko2) w2*=ko4/ko2;\nfloat w3 = k2; if(ko1<ko3) w3*=ko1/ko3;\nfloat w4 = k1; if(ko2<ko4) w4*=ko2/ko4;\n\nc=(w1*o1+w2*o2+w3*o3+w4*o4+0.001*c)/(w1+w2+w3+w4+0.001);\nw1 = k*dot(abs(i1-c)+abs(i3-c),dt)/(0.125*dot(i1+i3,dt)+lum_add);\nw2 = k*dot(abs(i2-c)+abs(i4-c),dt)/(0.125*dot(i2+i4,dt)+lum_add);\nw3 = k*dot(abs(s1-c)+abs(s3-c),dt)/(0.125*dot(s1+s3,dt)+lum_add);\nw4 = k*dot(abs(s2-c)+abs(s4-c),dt)/(0.125*dot(s2+s4,dt)+lum_add);\n\nw1 = clamp(w1+mx,min_w,max_w); \nw2 = clamp(w2+mx,min_w,max_w);\nw3 = clamp(w3+mx,min_w,max_w); \nw4 = clamp(w4+mx,min_w,max_w);\n\nFragColor = vec4((w1*(i1+i3)+w2*(i2+i4)+w3*(s1+s3)+w4*(s2+s4)+c)/(2.0*(w1+w2+w3+w4)+1.0), 1.0);\n} \n#endif\n","crt-easymode.glsl":"#if defined(VERTEX)\n\n #if __VERSION__ >= 130\n #define COMPAT_VARYING out\n #define COMPAT_ATTRIBUTE in\n #define COMPAT_TEXTURE texture\n #else\n #define COMPAT_VARYING varying\n #define COMPAT_ATTRIBUTE attribute\n #define COMPAT_TEXTURE texture2D\n #endif\n \n #ifdef GL_ES\n #define COMPAT_PRECISION mediump\n #else\n #define COMPAT_PRECISION\n #endif\n COMPAT_VARYING float _frame_rotation;\n struct input_dummy {\n vec2 _video_size;\n vec2 _texture_size;\n vec2 _output_dummy_size;\n float _frame_count;\n float _frame_direction;\n float _frame_rotation;\n };\n vec4 _oPosition1;\n vec4 _r0005;\n COMPAT_ATTRIBUTE vec4 VertexCoord;\n COMPAT_ATTRIBUTE vec4 TexCoord;\n COMPAT_VARYING vec4 TEX0;\n \n uniform mat4 MVPMatrix;\n uniform int FrameDirection;\n uniform int FrameCount;\n uniform COMPAT_PRECISION vec2 OutputSize;\n uniform COMPAT_PRECISION vec2 TextureSize;\n uniform COMPAT_PRECISION vec2 InputSize;\n void main()\n {\n vec2 _oTex;\n _r0005 = VertexCoord.x*MVPMatrix[0];\n _r0005 = _r0005 + VertexCoord.y*MVPMatrix[1];\n _r0005 = _r0005 + VertexCoord.z*MVPMatrix[2];\n _r0005 = _r0005 + VertexCoord.w*MVPMatrix[3];\n _oPosition1 = _r0005;\n _oTex = TexCoord.xy;\n gl_Position = _r0005;\n TEX0.xy = TexCoord.xy;\n }\n #elif defined(FRAGMENT)\n \n #if __VERSION__ >= 130\n #define COMPAT_VARYING in\n #define COMPAT_TEXTURE texture\n out vec4 FragColor;\n #else\n #define COMPAT_VARYING varying\n #define FragColor gl_FragColor\n #define COMPAT_TEXTURE texture2D\n #endif\n \n #ifdef GL_ES\n #ifdef GL_FRAGMENT_PRECISION_HIGH\n precision highp float;\n #else\n precision mediump float;\n #endif\n #define COMPAT_PRECISION mediump\n #else\n #define COMPAT_PRECISION\n #endif\n COMPAT_VARYING float _frame_rotation;\n struct input_dummy {\n vec2 _video_size;\n vec2 _texture_size;\n vec2 _output_dummy_size;\n float _frame_count;\n float _frame_direction;\n float _frame_rotation;\n };\n vec4 _ret_0;\n float _TMP30;\n float _TMP29;\n float _TMP28;\n float _TMP13;\n float _TMP32;\n float _TMP11;\n float _TMP10;\n float _TMP31;\n float _TMP9;\n float _TMP8;\n float _TMP15;\n float _TMP14;\n float _TMP33;\n vec4 _TMP34;\n vec4 _TMP27;\n vec4 _TMP25;\n vec4 _TMP23;\n vec4 _TMP21;\n vec4 _TMP26;\n vec4 _TMP24;\n vec4 _TMP22;\n vec4 _TMP20;\n float _TMP4;\n vec4 _TMP3;\n vec4 _TMP2;\n float _TMP19;\n float _TMP18;\n float _TMP17;\n float _TMP16;\n vec4 _TMP1;\n vec2 _TMP0;\n uniform sampler2D Texture;\n input_dummy _IN1;\n float _TMP43;\n float _x_step0044;\n float _curve0044;\n float _a0048;\n float _val0052;\n float _a0052;\n vec4 _TMP57;\n vec4 _x0072;\n vec2 _c0086;\n vec4 _x0088;\n vec4 _x0094;\n vec2 _c0098;\n vec4 _x0100;\n vec2 _c0104;\n vec4 _x0106;\n vec4 _sample_min0110;\n vec4 _sample_max0110;\n vec4 _r0112;\n vec4 _TMP117;\n vec2 _co0124;\n vec2 _c0126;\n vec4 _x0128;\n vec4 _x0134;\n vec2 _c0138;\n vec4 _x0140;\n vec2 _c0144;\n vec4 _x0146;\n vec4 _sample_min0150;\n vec4 _sample_max0150;\n vec4 _r0152;\n vec4 _TMP157;\n float _TMP163;\n float _x_step0164;\n float _curve0164;\n float _a0168;\n float _val0172;\n float _a0172;\n float _TMP183;\n float _TMP189;\n float _x0190;\n float _a0196;\n float _x0198;\n vec2 _x0200;\n float _x0208;\n COMPAT_VARYING vec4 TEX0;\n \n uniform COMPAT_PRECISION vec2 OutputSize;\n uniform COMPAT_PRECISION vec2 TextureSize;\n uniform COMPAT_PRECISION vec2 InputSize;\n void main()\n {\n vec2 _dx1;\n vec2 _dy;\n vec2 _pix_co;\n vec2 _tex_co;\n vec2 _dist;\n vec3 _col2;\n vec3 _col21;\n vec4 _coeffs1;\n float _luma;\n float _bright;\n float _scan_weight;\n vec2 _mod_fac;\n int _dot_no;\n vec3 _mask_weight;\n vec3 _TMP37;\n _dx1 = vec2(1.00000000E+00/TextureSize.x, 0.00000000E+00);\n _dy = vec2(0.00000000E+00, 1.00000000E+00/TextureSize.y);\n _pix_co = TEX0.xy*TextureSize - vec2( 5.00000000E-01, 5.00000000E-01);\n _TMP0 = floor(_pix_co);\n _tex_co = (_TMP0 + vec2( 5.00000000E-01, 5.00000000E-01))/TextureSize;\n _dist = fract(_pix_co);\n _x_step0044 = float((_dist.x >= 5.00000000E-01));\n _a0048 = 2.50000000E-01 - (_dist.x - _x_step0044)*(_dist.x - _x_step0044);\n _TMP33 = inversesqrt(_a0048);\n _TMP14 = 1.00000000E+00/_TMP33;\n _a0052 = 5.00000000E-01 - _dist.x;\n _val0052 = float((_a0052 > 0.00000000E+00));\n _TMP15 = _val0052 - float((_a0052 < 0.00000000E+00));\n _curve0044 = 5.00000000E-01 - _TMP14*_TMP15;\n _TMP43 = _dist.x + 2.50000000E-01*(_curve0044 - _dist.x);\n _coeffs1 = 3.14159274E+00*vec4(1.00000000E+00 + _TMP43, _TMP43, 1.00000000E+00 - _TMP43, 2.00000000E+00 - _TMP43);\n _TMP1 = abs(_coeffs1);\n _TMP57 = max(_TMP1, vec4( 9.99999975E-06, 9.99999975E-06, 9.99999975E-06, 9.99999975E-06));\n _TMP16 = sin(_TMP57.x);\n _TMP17 = sin(_TMP57.y);\n _TMP18 = sin(_TMP57.z);\n _TMP19 = sin(_TMP57.w);\n _TMP2 = vec4(_TMP16, _TMP17, _TMP18, _TMP19);\n _x0072 = _TMP57/2.00000000E+00;\n _TMP16 = sin(_x0072.x);\n _TMP17 = sin(_x0072.y);\n _TMP18 = sin(_x0072.z);\n _TMP19 = sin(_x0072.w);\n _TMP3 = vec4(_TMP16, _TMP17, _TMP18, _TMP19);\n _coeffs1 = ((2.00000000E+00*_TMP2)*_TMP3)/(_TMP57*_TMP57);\n _TMP4 = dot(_coeffs1, vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));\n _coeffs1 = _coeffs1/_TMP4;\n _c0086 = _tex_co - _dx1;\n _TMP20 = COMPAT_TEXTURE(Texture, _c0086);\n _x0088 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00) + (_TMP20 - vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));\n _TMP21 = _TMP20*_x0088;\n _TMP22 = COMPAT_TEXTURE(Texture, _tex_co);\n _x0094 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00) + (_TMP22 - vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));\n _TMP23 = _TMP22*_x0094;\n _c0098 = _tex_co + _dx1;\n _TMP24 = COMPAT_TEXTURE(Texture, _c0098);\n _x0100 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00) + (_TMP24 - vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));\n _TMP25 = _TMP24*_x0100;\n _c0104 = _tex_co + 2.00000000E+00*_dx1;\n _TMP26 = COMPAT_TEXTURE(Texture, _c0104);\n _x0106 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00) + (_TMP26 - vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));\n _TMP27 = _TMP26*_x0106;\n _r0112 = _coeffs1.x*_TMP21;\n _r0112 = _r0112 + _coeffs1.y*_TMP23;\n _r0112 = _r0112 + _coeffs1.z*_TMP25;\n _r0112 = _r0112 + _coeffs1.w*_TMP27;\n _sample_min0110 = min(_TMP23, _TMP25);\n _sample_max0110 = max(_TMP23, _TMP25);\n _TMP34 = min(_sample_max0110, _r0112);\n _TMP117 = max(_sample_min0110, _TMP34);\n _co0124 = _tex_co + _dy;\n _c0126 = _co0124 - _dx1;\n _TMP20 = COMPAT_TEXTURE(Texture, _c0126);\n _x0128 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00) + (_TMP20 - vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));\n _TMP21 = _TMP20*_x0128;\n _TMP22 = COMPAT_TEXTURE(Texture, _co0124);\n _x0134 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00) + (_TMP22 - vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));\n _TMP23 = _TMP22*_x0134;\n _c0138 = _co0124 + _dx1;\n _TMP24 = COMPAT_TEXTURE(Texture, _c0138);\n _x0140 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00) + (_TMP24 - vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));\n _TMP25 = _TMP24*_x0140;\n _c0144 = _co0124 + 2.00000000E+00*_dx1;\n _TMP26 = COMPAT_TEXTURE(Texture, _c0144);\n _x0146 = vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00) + (_TMP26 - vec4( 1.00000000E+00, 1.00000000E+00, 1.00000000E+00, 1.00000000E+00));\n _TMP27 = _TMP26*_x0146;\n _r0152 = _coeffs1.x*_TMP21;\n _r0152 = _r0152 + _coeffs1.y*_TMP23;\n _r0152 = _r0152 + _coeffs1.z*_TMP25;\n _r0152 = _r0152 + _coeffs1.w*_TMP27;\n _sample_min0150 = min(_TMP23, _TMP25);\n _sample_max0150 = max(_TMP23, _TMP25);\n _TMP34 = min(_sample_max0150, _r0152);\n _TMP157 = max(_sample_min0150, _TMP34);\n _x_step0164 = float((_dist.y >= 5.00000000E-01));\n _a0168 = 2.50000000E-01 - (_dist.y - _x_step0164)*(_dist.y - _x_step0164);\n _TMP33 = inversesqrt(_a0168);\n _TMP14 = 1.00000000E+00/_TMP33;\n _a0172 = 5.00000000E-01 - _dist.y;\n _val0172 = float((_a0172 > 0.00000000E+00));\n _TMP15 = _val0172 - float((_a0172 < 0.00000000E+00));\n _curve0164 = 5.00000000E-01 - _TMP14*_TMP15;\n _TMP163 = _dist.y + (_curve0164 - _dist.y);\n _col2 = _TMP117.xyz + _TMP163*(_TMP157.xyz - _TMP117.xyz);\n _luma = dot(vec3( 2.12599993E-01, 7.15200007E-01, 7.22000003E-02), _col2);\n _TMP8 = max(_col2.y, _col2.z);\n _TMP9 = max(_col2.x, _TMP8);\n _bright = (_TMP9 + _luma)/2.00000000E+00;\n _TMP31 = min(6.49999976E-01, _bright);\n _TMP183 = max(3.49999994E-01, _TMP31);\n _x0190 = _bright*1.50000000E+00;\n _TMP31 = min(1.50000000E+00, _x0190);\n _TMP189 = max(1.50000000E+00, _TMP31);\n _a0196 = TEX0.y*2.00000000E+00*3.14159274E+00*TextureSize.y;\n _TMP10 = cos(_a0196);\n _x0198 = _TMP10*5.00000000E-01 + 5.00000000E-01;\n _TMP11 = pow(_x0198, _TMP189);\n _scan_weight = 1.00000000E+00 - _TMP11;\n _x0200 = (TEX0.xy*OutputSize*TextureSize)/InputSize;\n _mod_fac = floor(_x0200);\n _x0208 = _mod_fac.x/3.00000000E+00;\n _TMP32 = floor(_x0208);\n _TMP13 = _mod_fac.x - 3.00000000E+00*_TMP32;\n _dot_no = int(_TMP13);\n if (_dot_no == 0) {\n _mask_weight = vec3( 1.00000000E+00, 6.99999988E-01, 6.99999988E-01);\n } else {\n if (_dot_no == 1) {\n _mask_weight = vec3( 6.99999988E-01, 1.00000000E+00, 6.99999988E-01);\n } else {\n _mask_weight = vec3( 6.99999988E-01, 6.99999988E-01, 1.00000000E+00);\n }\n }\n if (InputSize.y >= 4.00000000E+02) {\n _scan_weight = 1.00000000E+00;\n }\n _col21 = _col2.xyz;\n _col2 = _col2*vec3(_scan_weight, _scan_weight, _scan_weight);\n _col2 = _col2 + _TMP183*(_col21 - _col2);\n _col2 = _col2*_mask_weight;\n _TMP28 = pow(_col2.x, 5.55555582E-01);\n _TMP29 = pow(_col2.y, 5.55555582E-01);\n _TMP30 = pow(_col2.z, 5.55555582E-01);\n _col2 = vec3(_TMP28, _TMP29, _TMP30);\n _TMP37 = _col2*1.20000005E+00;\n _ret_0 = vec4(_TMP37.x, _TMP37.y, _TMP37.z, 1.00000000E+00);\n FragColor = _ret_0;\n return;\n }\n #endif\n","crt-aperture.glsl":'\n/*\nCRT Shader by EasyMode\nLicense: GPL\n*/\n/*\n#pragma parameter SHARPNESS_IMAGE "Sharpness Image" 1.0 1.0 5.0 1.0\n#pragma parameter SHARPNESS_EDGES "Sharpness Edges" 3.0 1.0 5.0 1.0\n#pragma parameter GLOW_WIDTH "Glow Width" 0.5 0.05 0.65 0.05\n#pragma parameter GLOW_HEIGHT "Glow Height" 0.5 0.05 0.65 0.05\n#pragma parameter GLOW_HALATION "Glow Halation" 0.1 0.0 1.0 0.01\n#pragma parameter GLOW_DIFFUSION "Glow Diffusion" 0.05 0.0 1.0 0.01\n#pragma parameter MASK_COLORS "Mask Colors" 2.0 2.0 3.0 1.0\n#pragma parameter MASK_STRENGTH "Mask Strength" 0.3 0.0 1.0 0.05\n#pragma parameter MASK_SIZE "Mask Size" 1.0 1.0 9.0 1.0\n#pragma parameter SCANLINE_SIZE_MIN "Scanline Size Min." 0.5 0.5 1.5 0.05\n#pragma parameter SCANLINE_SIZE_MAX "Scanline Size Max." 1.5 0.5 1.5 0.05\n#pragma parameter GAMMA_INPUT "Gamma Input" 2.4 1.0 5.0 0.1\n#pragma parameter GAMMA_OUTPUT "Gamma Output" 2.4 1.0 5.0 0.1\n#pragma parameter BRIGHTNESS "Brightness" 1.5 0.0 2.0 0.05\n* */\n\n#define Coord TEX0\n\n#if defined(VERTEX)\n\n#if __VERSION__ >= 130\n#define OUT out\n#define IN in\n#define tex2D texture\n#else\n#define OUT varying \n#define IN attribute \n#define tex2D texture2D\n#endif\n\n#ifdef GL_ES\n#define PRECISION mediump\n#else\n#define PRECISION\n#endif\n\nIN vec4 VertexCoord;\nIN vec4 Color;\nIN vec2 TexCoord;\nOUT vec4 color;\nOUT vec2 Coord;\n\nuniform mat4 MVPMatrix;\nuniform PRECISION int FrameDirection;\nuniform PRECISION int FrameCount;\nuniform PRECISION vec2 OutputSize;\nuniform PRECISION vec2 TextureSize;\nuniform PRECISION vec2 InputSize;\n\nvoid main()\n{\ngl_Position = MVPMatrix * VertexCoord;\ncolor = Color;\nCoord = TexCoord;\n}\n\n#elif defined(FRAGMENT)\n\n#if __VERSION__ >= 130\n#define IN in\n#define tex2D texture\nout vec4 FragColor;\n#else\n#define IN varying\n#define FragColor gl_FragColor\n#define tex2D texture2D\n#endif\n\n#ifdef GL_ES\n#ifdef GL_FRAGMENT_PRECISION_HIGH\nprecision highp float;\n#else\nprecision mediump float;\n#endif\n#define PRECISION mediump\n#else\n#define PRECISION\n#endif\n\nuniform PRECISION int FrameDirection;\nuniform PRECISION int FrameCount;\nuniform PRECISION vec2 OutputSize;\nuniform PRECISION vec2 TextureSize;\nuniform PRECISION vec2 InputSize;\nuniform sampler2D Texture;\nIN vec2 Coord;\n\n#ifdef PARAMETER_UNIFORM\nuniform PRECISION float SHARPNESS_IMAGE;\nuniform PRECISION float SHARPNESS_EDGES;\nuniform PRECISION float GLOW_WIDTH;\nuniform PRECISION float GLOW_HEIGHT;\nuniform PRECISION float GLOW_HALATION;\nuniform PRECISION float GLOW_DIFFUSION;\nuniform PRECISION float MASK_COLORS;\nuniform PRECISION float MASK_STRENGTH;\nuniform PRECISION float MASK_SIZE;\nuniform PRECISION float SCANLINE_SIZE_MIN;\nuniform PRECISION float SCANLINE_SIZE_MAX;\nuniform PRECISION float GAMMA_INPUT;\nuniform PRECISION float GAMMA_OUTPUT;\nuniform PRECISION float BRIGHTNESS;\n#else\n#define SHARPNESS_IMAGE 1.0\n#define SHARPNESS_EDGES 3.0\n#define GLOW_WIDTH 0.5\n#define GLOW_HEIGHT 0.5\n#define GLOW_HALATION 0.1\n#define GLOW_DIFFUSION 0.05\n#define MASK_COLORS 2.0\n#define MASK_STRENGTH 0.3\n#define MASK_SIZE 1.0\n#define SCANLINE_SIZE_MIN 0.5\n#define SCANLINE_SIZE_MAX 1.5\n#define GAMMA_INPUT 2.4\n#define GAMMA_OUTPUT 2.4\n#define BRIGHTNESS 1.5\n#endif\n\n#define FIX(c) max(abs(c), 1e-5)\n#define PI 3.141592653589\n#define saturate(c) clamp(c, 0.0, 1.0)\n#define TEX2D(c) pow(tex2D(tex, c).rgb, vec3(GAMMA_INPUT))\n\nmat3 get_color_matrix(sampler2D tex, vec2 co, vec2 dx)\n{\nreturn mat3(TEX2D(co - dx), TEX2D(co), TEX2D(co + dx));\n}\n\nvec3 blur(mat3 m, float dist, float rad)\n{\nvec3 x = vec3(dist - 1.0, dist, dist + 1.0) / rad;\nvec3 w = exp2(x * x * -1.0);\n\nreturn (m[0] * w.x + m[1] * w.y + m[2] * w.z) / (w.x + w.y + w.z);\n}\n\nvec3 filter_gaussian(sampler2D tex, vec2 co, vec2 tex_size)\n{\nvec2 dx = vec2(1.0 / tex_size.x, 0.0);\nvec2 dy = vec2(0.0, 1.0 / tex_size.y);\nvec2 pix_co = co * tex_size;\nvec2 tex_co = (floor(pix_co) + 0.5) / tex_size;\nvec2 dist = (fract(pix_co) - 0.5) * -1.0;\n\nmat3 line0 = get_color_matrix(tex, tex_co - dy, dx);\nmat3 line1 = get_color_matrix(tex, tex_co, dx);\nmat3 line2 = get_color_matrix(tex, tex_co + dy, dx);\nmat3 column = mat3(blur(line0, dist.x, GLOW_WIDTH),\n blur(line1, dist.x, GLOW_WIDTH),\n blur(line2, dist.x, GLOW_WIDTH));\n\nreturn blur(column, dist.y, GLOW_HEIGHT);\n}\n\nvec3 filter_lanczos(sampler2D tex, vec2 co, vec2 tex_size, float sharp)\n{\ntex_size.x *= sharp;\n\nvec2 dx = vec2(1.0 / tex_size.x, 0.0);\nvec2 pix_co = co * tex_size - vec2(0.5, 0.0);\nvec2 tex_co = (floor(pix_co) + vec2(0.5, 0.0)) / tex_size;\nvec2 dist = fract(pix_co);\nvec4 coef = PI * vec4(dist.x + 1.0, dist.x, dist.x - 1.0, dist.x - 2.0);\n\ncoef = FIX(coef);\ncoef = 2.0 * sin(coef) * sin(coef / 2.0) / (coef * coef);\ncoef /= dot(coef, vec4(1.0));\n\nvec4 col1 = vec4(TEX2D(tex_co), 1.0);\nvec4 col2 = vec4(TEX2D(tex_co + dx), 1.0);\n\nreturn (mat4(col1, col1, col2, col2) * coef).rgb;\n}\n\nvec3 get_scanline_weight(float x, vec3 col)\n{\nvec3 beam = mix(vec3(SCANLINE_SIZE_MIN), vec3(SCANLINE_SIZE_MAX), col);\nvec3 x_mul = 2.0 / beam;\nvec3 x_offset = x_mul * 0.5;\n\nreturn smoothstep(0.0, 1.0, 1.0 - abs(x * x_mul - x_offset)) * x_offset;\n}\n\nvec3 get_mask_weight(float x)\n{\nfloat i = mod(floor(x * OutputSize.x * TextureSize.x / (InputSize.x * MASK_SIZE)), MASK_COLORS);\n\nif (i == 0.0) return mix(vec3(1.0, 0.0, 1.0), vec3(1.0, 0.0, 0.0), MASK_COLORS - 2.0);\nelse if (i == 1.0) return vec3(0.0, 1.0, 0.0);\nelse return vec3(0.0, 0.0, 1.0);\n}\n\nvoid main()\n{\nvec3 col_glow = filter_gaussian(Texture, Coord, TextureSize);\nvec3 col_soft = filter_lanczos(Texture, Coord, TextureSize, SHARPNESS_IMAGE);\nvec3 col_sharp = filter_lanczos(Texture, Coord, TextureSize, SHARPNESS_EDGES);\nvec3 col = sqrt(col_sharp * col_soft);\n\ncol *= get_scanline_weight(fract(Coord.y * TextureSize.y), col_soft);\ncol_glow = saturate(col_glow - col);\ncol += col_glow * col_glow * GLOW_HALATION;\ncol = mix(col, col * get_mask_weight(Coord.x) * MASK_COLORS, MASK_STRENGTH);\ncol += col_glow * GLOW_DIFFUSION;\ncol = pow(col * BRIGHTNESS, vec3(1.0 / GAMMA_OUTPUT));\n\nFragColor = vec4(col, 1.0);\n}\n\n#endif\n',"crt-geom.glsl":'\n/*\nCRT-interlaced\n\nCopyright (C) 2010-2012 cgwg, Themaister and DOLLS\n\nThis program is free software; you can redistribute it and/or modify it\nunder the terms of the GNU General Public License as published by the Free\nSoftware Foundation; either version 2 of the License, or (at your option)\nany later version.\n\n(cgwg gave their consent to have the original version of this shader\ndistributed under the GPL in this message:\n\nhttp://board.byuu.org/viewtopic.php?p=26075#p26075\n\n"Feel free to distribute my shaders under the GPL. After all, the\nbarrel distortion code was taken from the Curvature shader, which is\nunder the GPL."\n)\nThis shader variant is pre-configured with screen curvature\n*/\n/*\n#pragma parameter CRTgamma "CRTGeom Target Gamma" 2.4 0.1 5.0 0.1\n#pragma parameter monitorgamma "CRTGeom Monitor Gamma" 2.2 0.1 5.0 0.1\n#pragma parameter d "CRTGeom Distance" 1.6 0.1 3.0 0.1\n#pragma parameter CURVATURE "CRTGeom Curvature Toggle" 1.0 0.0 1.0 1.0\n#pragma parameter R "CRTGeom Curvature Radius" 2.0 0.1 10.0 0.1\n#pragma parameter cornersize "CRTGeom Corner Size" 0.03 0.001 1.0 0.005\n#pragma parameter cornersmooth "CRTGeom Corner Smoothness" 1000.0 80.0 2000.0 100.0\n#pragma parameter x_tilt "CRTGeom Horizontal Tilt" 0.0 -0.5 0.5 0.05\n#pragma parameter y_tilt "CRTGeom Vertical Tilt" 0.0 -0.5 0.5 0.05\n#pragma parameter overscan_x "CRTGeom Horiz. Overscan %" 100.0 -125.0 125.0 1.0\n#pragma parameter overscan_y "CRTGeom Vert. Overscan %" 100.0 -125.0 125.0 1.0\n#pragma parameter DOTMASK "CRTGeom Dot Mask Toggle" 0.3 0.0 0.3 0.3\n#pragma parameter SHARPER "CRTGeom Sharpness" 1.0 1.0 3.0 1.0\n#pragma parameter scanline_weight "CRTGeom Scanline Weight" 0.3 0.1 0.5 0.05\n*/\n\n#ifndef PARAMETER_UNIFORM\n#define CRTgamma 2.4\n#define monitorgamma 2.2\n#define d 1.6\n#define CURVATURE 1.0\n#define R 2.0\n#define cornersize 0.03\n#define cornersmooth 1000.0\n#define x_tilt 0.0\n#define y_tilt 0.0\n#define overscan_x 100.0\n#define overscan_y 100.0\n#define DOTMASK 0.3\n#define SHARPER 1.0\n#define scanline_weight 0.3\n#endif\n\n#if defined(VERTEX)\n\n#if __VERSION__ >= 130\n#define COMPAT_VARYING out\n#define COMPAT_ATTRIBUTE in\n#define COMPAT_TEXTURE texture\n#else\n#define COMPAT_VARYING varying \n#define COMPAT_ATTRIBUTE attribute \n#define COMPAT_TEXTURE texture2D\n#endif\n\n#ifdef GL_ES\n#define COMPAT_PRECISION mediump\n#else\n#define COMPAT_PRECISION\n#endif\n\nCOMPAT_ATTRIBUTE vec4 VertexCoord;\nCOMPAT_ATTRIBUTE vec4 COLOR;\nCOMPAT_ATTRIBUTE vec4 TexCoord;\nCOMPAT_VARYING vec4 COL0;\nCOMPAT_VARYING vec4 TEX0;\n\nvec4 _oPosition1; \nuniform mat4 MVPMatrix;\nuniform COMPAT_PRECISION int FrameDirection;\nuniform COMPAT_PRECISION int FrameCount;\nuniform COMPAT_PRECISION vec2 OutputSize;\nuniform COMPAT_PRECISION vec2 TextureSize;\nuniform COMPAT_PRECISION vec2 InputSize;\n\nCOMPAT_VARYING vec2 overscan;\nCOMPAT_VARYING vec2 aspect;\nCOMPAT_VARYING vec3 stretch;\nCOMPAT_VARYING vec2 sinangle;\nCOMPAT_VARYING vec2 cosangle;\nCOMPAT_VARYING vec2 one;\nCOMPAT_VARYING float mod_factor;\nCOMPAT_VARYING vec2 ilfac;\n\n#ifdef PARAMETER_UNIFORM\nuniform COMPAT_PRECISION float CRTgamma;\nuniform COMPAT_PRECISION float monitorgamma;\nuniform COMPAT_PRECISION float d;\nuniform COMPAT_PRECISION float CURVATURE;\nuniform COMPAT_PRECISION float R;\nuniform COMPAT_PRECISION float cornersize;\nuniform COMPAT_PRECISION float cornersmooth;\nuniform COMPAT_PRECISION float x_tilt;\nuniform COMPAT_PRECISION float y_tilt;\nuniform COMPAT_PRECISION float overscan_x;\nuniform COMPAT_PRECISION float overscan_y;\nuniform COMPAT_PRECISION float DOTMASK;\nuniform COMPAT_PRECISION float SHARPER;\nuniform COMPAT_PRECISION float scanline_weight;\n#endif\n\n#define FIX(c) max(abs(c), 1e-5);\n\nfloat intersect(vec2 xy)\n{\nfloat A = dot(xy,xy)+d*d;\nfloat B = 2.0*(R*(dot(xy,sinangle)-d*cosangle.x*cosangle.y)-d*d);\nfloat C = d*d + 2.0*R*d*cosangle.x*cosangle.y;\nreturn (-B-sqrt(B*B-4.0*A*C))/(2.0*A);\n}\n\nvec2 bkwtrans(vec2 xy)\n{\nfloat c = intersect(xy);\nvec2 point = vec2(c)*xy;\npoint -= vec2(-R)*sinangle;\npoint /= vec2(R);\nvec2 tang = sinangle/cosangle;\nvec2 poc = point/cosangle;\nfloat A = dot(tang,tang)+1.0;\nfloat B = -2.0*dot(poc,tang);\nfloat C = dot(poc,poc)-1.0;\nfloat a = (-B+sqrt(B*B-4.0*A*C))/(2.0*A);\nvec2 uv = (point-a*sinangle)/cosangle;\nfloat r = R*acos(a);\nreturn uv*r/sin(r/R);\n}\n\nvec2 fwtrans(vec2 uv)\n{\nfloat r = FIX(sqrt(dot(uv,uv)));\nuv *= sin(r/R)/r;\nfloat x = 1.0-cos(r/R);\nfloat D = d/R + x*cosangle.x*cosangle.y+dot(uv,sinangle);\nreturn d*(uv*cosangle-x*sinangle)/D;\n}\n\nvec3 maxscale()\n{\nvec2 c = bkwtrans(-R * sinangle / (1.0 + R/d*cosangle.x*cosangle.y));\nvec2 a = vec2(0.5,0.5)*aspect;\nvec2 lo = vec2(fwtrans(vec2(-a.x,c.y)).x, fwtrans(vec2(c.x,-a.y)).y)/aspect;\nvec2 hi = vec2(fwtrans(vec2(+a.x,c.y)).x, fwtrans(vec2(c.x,+a.y)).y)/aspect;\nreturn vec3((hi+lo)*aspect*0.5,max(hi.x-lo.x,hi.y-lo.y));\n}\n\nvoid main()\n{\n// START of parameters\n\n// gamma of simulated CRT\n//\tCRTgamma = 1.8;\n// gamma of display monitor (typically 2.2 is correct)\n//\tmonitorgamma = 2.2;\n// overscan (e.g. 1.02 for 2% overscan)\noverscan = vec2(1.00,1.00);\n// aspect ratio\naspect = vec2(1.0, 0.75);\n// lengths are measured in units of (approximately) the width\n// of the monitor simulated distance from viewer to monitor\n//\td = 2.0;\n// radius of curvature\n//\tR = 1.5;\n// tilt angle in radians\n// (behavior might be a bit wrong if both components are\n// nonzero)\nconst vec2 angle = vec2(0.0,0.0);\n// size of curved corners\n//\tcornersize = 0.03;\n// border smoothness parameter\n// decrease if borders are too aliased\n//\tcornersmooth = 1000.0;\n\n// END of parameters\n\nvec4 _oColor;\nvec2 _otexCoord;\ngl_Position = VertexCoord.x * MVPMatrix[0] + VertexCoord.y * MVPMatrix[1] + VertexCoord.z * MVPMatrix[2] + VertexCoord.w * MVPMatrix[3];\n_oPosition1 = gl_Position;\n_oColor = COLOR;\n_otexCoord = TexCoord.xy;\nCOL0 = COLOR;\nTEX0.xy = TexCoord.xy;\n\n// Precalculate a bunch of useful values we\'ll need in the fragment\n// shader.\nsinangle = sin(vec2(x_tilt, y_tilt)) + vec2(0.001);//sin(vec2(max(abs(x_tilt), 1e-3), max(abs(y_tilt), 1e-3)));\ncosangle = cos(vec2(x_tilt, y_tilt)) + vec2(0.001);//cos(vec2(max(abs(x_tilt), 1e-3), max(abs(y_tilt), 1e-3)));\nstretch = maxscale();\n\nilfac = vec2(1.0,clamp(floor(InputSize.y/200.0), 1.0, 2.0));\n\n// The size of one texel, in texture-coordinates.\nvec2 sharpTextureSize = vec2(SHARPER * TextureSize.x, TextureSize.y);\none = ilfac / sharpTextureSize;\n\n// Resulting X pixel-coordinate of the pixel we\'re drawing.\nmod_factor = TexCoord.x * TextureSize.x * OutputSize.x / InputSize.x;\n\n}\n\n#elif defined(FRAGMENT)\n\n#if __VERSION__ >= 130\n#define COMPAT_VARYING in\n#define COMPAT_TEXTURE texture\nout vec4 FragColor;\n#else\n#define COMPAT_VARYING varying\n#define FragColor gl_FragColor\n#define COMPAT_TEXTURE texture2D\n#endif\n\n#ifdef GL_ES\n#ifdef GL_FRAGMENT_PRECISION_HIGH\nprecision highp float;\n#else\nprecision mediump float;\n#endif\n#define COMPAT_PRECISION mediump\n#else\n#define COMPAT_PRECISION\n#endif\n\nstruct output_dummy {\nvec4 _color;\n};\n\nuniform COMPAT_PRECISION int FrameDirection;\nuniform COMPAT_PRECISION int FrameCount;\nuniform COMPAT_PRECISION vec2 OutputSize;\nuniform COMPAT_PRECISION vec2 TextureSize;\nuniform COMPAT_PRECISION vec2 InputSize;\nuniform sampler2D Texture;\nCOMPAT_VARYING vec4 TEX0;\n\n// Comment the next line to disable interpolation in linear gamma (and\n// gain speed).\n#define LINEAR_PROCESSING\n\n// Enable screen curvature.\n// #define CURVATURE\n\n// Enable 3x oversampling of the beam profile\n#define OVERSAMPLE\n\n// Use the older, purely gaussian beam profile\n//#define USEGAUSSIAN\n\n// Macros.\n#define FIX(c) max(abs(c), 1e-5);\n#define PI 3.141592653589\n\n#ifdef LINEAR_PROCESSING\n# define TEX2D(c) pow(COMPAT_TEXTURE(Texture, (c)), vec4(CRTgamma))\n#else\n# define TEX2D(c) COMPAT_TEXTURE(Texture, (c))\n#endif\n\nCOMPAT_VARYING vec2 one;\nCOMPAT_VARYING float mod_factor;\nCOMPAT_VARYING vec2 ilfac;\nCOMPAT_VARYING vec2 overscan;\nCOMPAT_VARYING vec2 aspect;\nCOMPAT_VARYING vec3 stretch;\nCOMPAT_VARYING vec2 sinangle;\nCOMPAT_VARYING vec2 cosangle;\n\n#ifdef PARAMETER_UNIFORM\nuniform COMPAT_PRECISION float CRTgamma;\nuniform COMPAT_PRECISION float monitorgamma;\nuniform COMPAT_PRECISION float d;\nuniform COMPAT_PRECISION float CURVATURE;\nuniform COMPAT_PRECISION float R;\nuniform COMPAT_PRECISION float cornersize;\nuniform COMPAT_PRECISION float cornersmooth;\nuniform COMPAT_PRECISION float x_tilt;\nuniform COMPAT_PRECISION float y_tilt;\nuniform COMPAT_PRECISION float overscan_x;\nuniform COMPAT_PRECISION float overscan_y;\nuniform COMPAT_PRECISION float DOTMASK;\nuniform COMPAT_PRECISION float SHARPER;\nuniform COMPAT_PRECISION float scanline_weight;\n#endif\n\nfloat intersect(vec2 xy)\n{\nfloat A = dot(xy,xy)+d*d;\nfloat B = 2.0*(R*(dot(xy,sinangle)-d*cosangle.x*cosangle.y)-d*d);\nfloat C = d*d + 2.0*R*d*cosangle.x*cosangle.y;\nreturn (-B-sqrt(B*B-4.0*A*C))/(2.0*A);\n}\n\nvec2 bkwtrans(vec2 xy)\n{\nfloat c = intersect(xy);\nvec2 point = vec2(c)*xy;\npoint -= vec2(-R)*sinangle;\npoint /= vec2(R);\nvec2 tang = sinangle/cosangle;\nvec2 poc = point/cosangle;\nfloat A = dot(tang,tang)+1.0;\nfloat B = -2.0*dot(poc,tang);\nfloat C = dot(poc,poc)-1.0;\nfloat a = (-B+sqrt(B*B-4.0*A*C))/(2.0*A);\nvec2 uv = (point-a*sinangle)/cosangle;\nfloat r = FIX(R*acos(a));\nreturn uv*r/sin(r/R);\n}\n\nvec2 transform(vec2 coord)\n{\ncoord *= TextureSize / InputSize;\ncoord = (coord-vec2(0.5))*aspect*stretch.z+stretch.xy;\nreturn (bkwtrans(coord)/vec2(overscan_x / 100.0, overscan_y / 100.0)/aspect+vec2(0.5)) * InputSize / TextureSize;\n}\n\nfloat corner(vec2 coord)\n{\ncoord *= TextureSize / InputSize;\ncoord = (coord - vec2(0.5)) * vec2(overscan_x / 100.0, overscan_y / 100.0) + vec2(0.5);\ncoord = min(coord, vec2(1.0)-coord) * aspect;\nvec2 cdist = vec2(cornersize);\ncoord = (cdist - min(coord,cdist));\nfloat dist = sqrt(dot(coord,coord));\nreturn clamp((cdist.x-dist)*cornersmooth,0.0, 1.0);\n}\n\n// Calculate the influence of a scanline on the current pixel.\n//\n// \'distance\' is the distance in texture coordinates from the current\n// pixel to the scanline in question.\n// \'color\' is the colour of the scanline at the horizontal location of\n// the current pixel.\nvec4 scanlineWeights(float distance, vec4 color)\n{\n// "wid" controls the width of the scanline beam, for each RGB\n// channel The "weights" lines basically specify the formula\n// that gives you the profile of the beam, i.e. the intensity as\n// a function of distance from the vertical center of the\n// scanline. In this case, it is gaussian if width=2, and\n// becomes nongaussian for larger widths. Ideally this should\n// be normalized so that the integral across the beam is\n// independent of its width. That is, for a narrower beam\n// "weights" should have a higher peak at the center of the\n// scanline than for a wider beam.\n#ifdef USEGAUSSIAN\nvec4 wid = 0.3 + 0.1 * pow(color, vec4(3.0));\nvec4 weights = vec4(distance / wid);\nreturn 0.4 * exp(-weights * weights) / wid;\n#else\nvec4 wid = 2.0 + 2.0 * pow(color, vec4(4.0));\nvec4 weights = vec4(distance / scanline_weight);\nreturn 1.4 * exp(-pow(weights * inversesqrt(0.5 * wid), wid)) / (0.6 + 0.2 * wid);\n#endif\n}\n\nvoid main()\n{\n// Here\'s a helpful diagram to keep in mind while trying to\n// understand the code:\n//\n// | | | | |\n// -------------------------------\n// | | | | |\n// | 01 | 11 | 21 | 31 | <-- current scanline\n// | | @ | | |\n// -------------------------------\n// | | | | |\n// | 02 | 12 | 22 | 32 | <-- next scanline\n// | | | | |\n// -------------------------------\n// | | | | |\n//\n// Each character-cell represents a pixel on the output\n// surface, "@" represents the current pixel (always somewhere\n// in the bottom half of the current scan-line, or the top-half\n// of the next scanline). The grid of lines represents the\n// edges of the texels of the underlying texture.\n\n// Texture coordinates of the texel containing the active pixel.\nvec2 xy = (CURVATURE > 0.5) ? transform(TEX0.xy) : TEX0.xy;\n\nfloat cval = corner(xy);\n\n// Of all the pixels that are mapped onto the texel we are\n// currently rendering, which pixel are we currently rendering?\nvec2 ilvec = vec2(0.0,ilfac.y > 1.5 ? mod(float(FrameCount),2.0) : 0.0);\nvec2 ratio_scale = (xy * TextureSize - vec2(0.5) + ilvec)/ilfac;\n#ifdef OVERSAMPLE\nfloat filter_ = InputSize.y/OutputSize.y;//fwidth(ratio_scale.y);\n#endif\nvec2 uv_ratio = fract(ratio_scale);\n\n// Snap to the center of the underlying texel.\nxy = (floor(ratio_scale)*ilfac + vec2(0.5) - ilvec) / TextureSize;\n\n// Calculate Lanczos scaling coefficients describing the effect\n// of various neighbour texels in a scanline on the current\n// pixel.\nvec4 coeffs = PI * vec4(1.0 + uv_ratio.x, uv_ratio.x, 1.0 - uv_ratio.x, 2.0 - uv_ratio.x);\n\n// Prevent division by zero.\ncoeffs = FIX(coeffs);\n\n// Lanczos2 kernel.\ncoeffs = 2.0 * sin(coeffs) * sin(coeffs / 2.0) / (coeffs * coeffs);\n\n// Normalize.\ncoeffs /= dot(coeffs, vec4(1.0));\n\n// Calculate the effective colour of the current and next\n// scanlines at the horizontal location of the current pixel,\n// using the Lanczos coefficients above.\nvec4 col = clamp(mat4(\n TEX2D(xy + vec2(-one.x, 0.0)),\n TEX2D(xy),\n TEX2D(xy + vec2(one.x, 0.0)),\n TEX2D(xy + vec2(2.0 * one.x, 0.0))) * coeffs,\n 0.0, 1.0);\nvec4 col2 = clamp(mat4(\n TEX2D(xy + vec2(-one.x, one.y)),\n TEX2D(xy + vec2(0.0, one.y)),\n TEX2D(xy + one),\n TEX2D(xy + vec2(2.0 * one.x, one.y))) * coeffs,\n 0.0, 1.0);\n\n#ifndef LINEAR_PROCESSING\ncol = pow(col , vec4(CRTgamma));\ncol2 = pow(col2, vec4(CRTgamma));\n#endif\n\n// Calculate the influence of the current and next scanlines on\n// the current pixel.\nvec4 weights = scanlineWeights(uv_ratio.y, col);\nvec4 weights2 = scanlineWeights(1.0 - uv_ratio.y, col2);\n#ifdef OVERSAMPLE\nuv_ratio.y =uv_ratio.y+1.0/3.0*filter_;\nweights = (weights+scanlineWeights(uv_ratio.y, col))/3.0;\nweights2=(weights2+scanlineWeights(abs(1.0-uv_ratio.y), col2))/3.0;\nuv_ratio.y =uv_ratio.y-2.0/3.0*filter_;\nweights=weights+scanlineWeights(abs(uv_ratio.y), col)/3.0;\nweights2=weights2+scanlineWeights(abs(1.0-uv_ratio.y), col2)/3.0;\n#endif\n\nvec3 mul_res = (col * weights + col2 * weights2).rgb * vec3(cval);\n\n// dot-mask emulation:\n// Output pixels are alternately tinted green and magenta.\nvec3 dotMaskWeights = mix(\nvec3(1.0, 1.0 - DOTMASK, 1.0),\nvec3(1.0 - DOTMASK, 1.0, 1.0 - DOTMASK),\nfloor(mod(mod_factor, 2.0))\n);\n\nmul_res *= dotMaskWeights;\n\n// Convert the image gamma for display on our output device.\nmul_res = pow(mul_res, vec3(1.0 / monitorgamma));\n\n// Color the texel.\noutput_dummy _OUT;\n_OUT._color = vec4(mul_res, 1.0);\nFragColor = _OUT._color;\nreturn;\n} \n#endif\n\n'},b=n(57),ee=n.n(b),b=n(11),te=n.n(b),ne={addStyleHook:function(){V(this.elements.container,this.config.selectors.container.replace(".",""),!0),V(this.elements.container,this.config.classNames.uiSupported,!0),V(this.elements.container,this.config.classNames.hideControls,!0)},build:function(){this.listeners.media(),F.element(this.elements.controls)||(Fe.inject.call(this),this.listeners.controls()),this.volume=null,this.muted=null,Fe.updateVolume.call(this),V(this.elements.container,this.config.classNames.isTouch,this.touch),this.ready=!0},toggleControls:function(e){var n,t,o=this.elements.controls;o&&(t=A.call(this,".".concat(H({ejs__dialogs:!(n=0)})," > .").concat(H({ejs__dialog:!0}))),Array.from(t).forEach(function(e,t){!0!==e.hidden&&(n+=1)}),0<n?this.toggleControls(!1):this.toggleControls(Boolean(e||this.paused||o.pressed||o.hover)))}};function oe(e){return(oe="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function re(e,t){if("object"===oe(e)&&e.files&&(e=e.files[0]),this.littleEndian=!1,this.offset=0,this._lastRead=null,"object"===oe(e)&&e.name&&e.size){if("function"!=typeof window.FileReader)throw new Error("Incompatible Browser");this.fileName=e.name,this.fileType=e.type,this.fileSize=e.size,this._fileReader=new FileReader,(this._fileReader.marcFile=this)._fileReader.addEventListener("load",function(){this.marcFile._u8array=new Uint8Array(this.result),this.marcFile._dataView=new DataView(this.result),t&&t.call()},!1),this._fileReader.readAsArrayBuffer(e)}else if("object"===oe(e)&&"string"==typeof e.fileName&&"boolean"==typeof e.littleEndian){this.fileName=e.fileName,this.fileType=e.fileType,this.fileSize=e.fileSize;var n=new ArrayBuffer(e);this._u8array=new Uint8Array(this.fileType),this._dataView=new DataView(this.fileType),e.copyToFile(this,0),t&&t.call()}else if("object"===oe(e)&&"number"==typeof e.byteLength)this.fileName="file.bin",this.fileType="application/octet-stream",this.fileSize=e.byteLength,void 0!==e.buffer&&(e=e.buffer),this._u8array=new Uint8Array(e),this._dataView=new DataView(e),t&&t.call();else{if("number"!=typeof e)throw new Error("Invalid source");this.fileName="file.bin",this.fileType="application/octet-stream",this.fileSize=e,n=new ArrayBuffer(e),this._u8array=new Uint8Array(n),this._dataView=new DataView(n),t&&t.call()}}re.IS_MACHINE_LITTLE_ENDIAN=(b=new ArrayBuffer(2),new DataView(b).setInt16(0,256,!0),256===new Int16Array(b)[0]),re.prototype.seek=function(e){this.offset=e},re.prototype.skip=function(e){this.offset+=e},re.prototype.isEOF=function(){return!(this.offset<this.fileSize)},re.prototype.slice=function(e,t){var n;return t=t||this.fileSize-e,void 0!==this._u8array.buffer.slice?((n=new re(0)).fileSize=t,n._u8array=new Uint8Array(this._u8array.buffer.slice(e,e+t))):(n=new re(t),this.copyToFile(n,e,t,0)),n.fileName=this.fileName,n.fileType=this.fileType,n.littleEndian=this.littleEndian,n},re.prototype.copyToFile=function(e,t,n,o){void 0===o&&(o=t),n=n||this.fileSize-t;for(var r=0;r<n;r++)e._u8array[o+r]=this._u8array[t+r]},re.prototype.save=function(){var t;try{t=new Blob([this._u8array],{type:this.fileType})}catch(e){if(window.BlobBuilder=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder||window.MSBlobBuilder,"InvalidStateError"!==e.name||!window.BlobBuilder)throw new Error("Incompatible Browser");var n=new BlobBuilder;n.append(this._u8array.buffer),t=n.getBlob(this.fileType)}saveAs(t,this.fileName)},re.prototype.readU8=function(){return this._lastRead=this._u8array[this.offset],this.offset++,this._lastRead},re.prototype.readU16=function(){return this.littleEndian?this._lastRead=this._u8array[this.offset]+(this._u8array[this.offset+1]<<8):this._lastRead=(this._u8array[this.offset]<<8)+this._u8array[this.offset+1],this.offset+=2,this._lastRead>>>0},re.prototype.readU24=function(){return this.littleEndian?this._lastRead=this._u8array[this.offset]+(this._u8array[this.offset+1]<<8)+(this._u8array[this.offset+2]<<16):this._lastRead=(this._u8array[this.offset]<<16)+(this._u8array[this.offset+1]<<8)+this._u8array[this.offset+2],this.offset+=3,this._lastRead>>>0},re.prototype.readU32=function(){return this.littleEndian?this._lastRead=this._u8array[this.offset]+(this._u8array[this.offset+1]<<8)+(this._u8array[this.offset+2]<<16)+(this._u8array[this.offset+3]<<24):this._lastRead=(this._u8array[this.offset]<<24)+(this._u8array[this.offset+1]<<16)+(this._u8array[this.offset+2]<<8)+this._u8array[this.offset+3],this.offset+=4,this._lastRead>>>0},re.prototype.readBytes=function(e){this._lastRead=new Array(e);for(var t=0;t<e;t++)this._lastRead[t]=this._u8array[this.offset+t];return this.offset+=e,this._lastRead},re.prototype.readString=function(e){this._lastRead="";for(var t=0;t<e&&this.offset+t<this.fileSize&&0<this._u8array[this.offset+t];t++)this._lastRead=this._lastRead+String.fromCharCode(this._u8array[this.offset+t]);return this.offset+=e,this._lastRead},re.prototype.writeU8=function(e){this._u8array[this.offset]=e,this.offset++},re.prototype.writeU16=function(e){this.littleEndian?(this._u8array[this.offset]=255&e,this._u8array[this.offset+1]=e>>8):(this._u8array[this.offset]=e>>8,this._u8array[this.offset+1]=255&e),this.offset+=2},re.prototype.writeU24=function(e){this.littleEndian?(this._u8array[this.offset]=255&e,this._u8array[this.offset+1]=(65280&e)>>8,this._u8array[this.offset+2]=(16711680&e)>>16):(this._u8array[this.offset]=(16711680&e)>>16,this._u8array[this.offset+1]=(65280&e)>>8,this._u8array[this.offset+2]=255&e),this.offset+=3},re.prototype.writeU32=function(e){this.littleEndian?(this._u8array[this.offset]=255&e,this._u8array[this.offset+1]=(65280&e)>>8,this._u8array[this.offset+2]=(16711680&e)>>16,this._u8array[this.offset+3]=(4278190080&e)>>24):(this._u8array[this.offset]=(4278190080&e)>>24,this._u8array[this.offset+1]=(16711680&e)>>16,this._u8array[this.offset+2]=(65280&e)>>8,this._u8array[this.offset+3]=255&e),this.offset+=4},re.prototype.writeBytes=function(e){for(var t=0;t<e.length;t++)this._u8array[this.offset+t]=e[t];this.offset+=e.length},re.prototype.writeString=function(e,t){t=t||e.length;for(var n=0;n<e.length&&n<t;n++)this._u8array[this.offset+n]=e.charCodeAt(n);for(;n<t;n++)this._u8array[this.offset+n]=0;this.offset+=t};var ie=re;function ae(){this.records=[],this.truncate=!1}function se(e){var t=new ae;e.seek(5);for(var n,o;!e.isEOF();){if(4542278===(n=e.readU24())){if(e.isEOF())break;if(e.offset+3===e.fileSize){t.truncate=e.readU24();break}}0===(o=e.readU16())?t.addRLERecord(n,e.readU16(),e.readU8()):t.addSimpleRecord(n,e.readBytes(o))}return t}ae.prototype.addSimpleRecord=function(e,t){this.records.push({offset:e,type:1,length:t.length,data:t})},ae.prototype.addRLERecord=function(e,t,n){this.records.push({offset:e,type:0,length:t,byte:n})},ae.prototype.toString=function(){nSimpleRecords=0;for(var e=nRLERecords=0;e<this.records.length;e++)0===this.records[e].type?nRLERecords++:nSimpleRecords++;var t="Simple records: "+nSimpleRecords;return t+="\nRLE records: "+nRLERecords,t+="\nTotal records: "+this.records.length,this.truncate&&(t+="\nTruncate at: 0x"+this.truncate.toString(16)),t},ae.prototype.export=function(e){for(var t=5,n=0;n<this.records.length;n++)0===this.records[n].type?t+=8:t+=5+this.records[n].data.length;for(t+=3,this.truncate&&(t+=3),tempFile=new ie(t),tempFile.fileName=e+".ips",tempFile.writeString("PATCH"),n=0;n<this.records.length;n++){var o=this.records[n];tempFile.writeU24(o.offset),0===o.type?(tempFile.writeU16(0),tempFile.writeU16(o.length),tempFile.writeU8(o.byte)):(tempFile.writeU16(o.data.length),tempFile.writeBytes(o.data))}return tempFile.writeString("EOF"),o.truncate&&tempFile.writeU24(o.truncate),tempFile},ae.prototype.apply=function(e){var t;if(this.truncate)t=e.slice(0,this.truncate);else{for(var n=e.fileSize,o=0;o<this.records.length;o++){var r=this.records[o];0===r.type?r.offset+r.length>n&&(n=r.offset+r.length):r.offset+r.data.length>n&&(n=r.offset+r.data.length)}n===e.fileSize?t=e.slice(0,e.fileSize):(t=new ie(n),e.copyToFile(t,0))}for(e.seek(0),o=0;o<this.records.length;o++)if(t.seek(this.records[o].offset),0===this.records[o].type)for(var i=0;i<this.records[o].length;i++)t.writeU8(this.records[o].byte);else t.writeBytes(this.records[o].data);return t},"0123456789abcdef".split("");var ce=function(){for(var e,t=[],n=0;n<256;n++){e=n;for(var o=0;o<8;o++)e=1&e?3988292384^e>>>1:e>>>1;t[n]=e}return t}();function le(e,t,n){for(var o=t?new Uint8Array(e._u8array.buffer,t):e._u8array,r=-1,i=n?o.length-4:o.length,a=0;a<i;a++)r=r>>>8^ce[255&(r^o[a])];return(-1^r)>>>0}function ue(){this.sourceSize=0,this.targetSize=0,this.metaData="",this.actions=[],this.sourceChecksum=0,this.targetChecksum=0,this.patchChecksum=0}function de(e){e.readVLV=fe,e.littleEndian=!0;var t=new ue;e.seek(4),t.sourceSize=e.readVLV(),t.targetSize=e.readVLV();var n=e.readVLV();n&&(t.metaData=e.readString(n));for(var o=e.fileSize-12;e.offset<o;){var r=e.readVLV(),i={type:3&r,length:1+(r>>2)};1===i.type?i.bytes=e.readBytes(i.length):2!==i.type&&3!==i.type||(r=e.readVLV(),i.relativeOffset=(1&r?-1:1)*(r>>1)),t.actions.push(i)}if(t.sourceChecksum=e.readU32(),t.targetChecksum=e.readU32(),t.patchChecksum=e.readU32(),t.patchChecksum!==le(e,0,!0))throw new Error("error_crc_patch");return t}function fe(){for(var e=0,t=1;;){var n=this.readU8();if(e+=(127&n)*t,128&n)break;e+=t<<=7}return this._lastRead=e}function pe(e){for(;;){var t=127&e;if(0==(e>>=7)){this.writeU8(128|t);break}this.writeU8(t),e--}}function he(e){for(var t=0;;){if(0==(e>>=7)){t++;break}t++,e--}return t}ue.prototype.toString=function(){var e="Source size: "+this.sourceSize;return e+="\nTarget size: "+this.targetSize,(e+="\nMetadata: "+this.metaData)+("\n#Actions: "+this.actions.length)},ue.prototype.validateSource=function(e,t){return this.sourceChecksum===le(e,t)},ue.prototype.apply=function(e,t){if(t&&!this.validateSource(e))throw new Error("error_crc_input");for(var n=new ie(this.targetSize),o=0,r=0,i=0;i<this.actions.length;i++){var a=this.actions[i];if(0===a.type)e.copyToFile(n,n.offset,a.length),n.skip(a.length);else if(1===a.type)n.writeBytes(a.bytes);else if(2===a.type){o+=a.relativeOffset;for(var s=a.length;s--;)n.writeU8(e._u8array[o]),o++}else if(3===a.type)for(r+=a.relativeOffset,s=a.length;s--;)n.writeU8(n._u8array[r]),r++}if(t&&this.targetChecksum!==le(n))throw new Error("error_crc_output");return n},ue.prototype.export=function(e){var t="BPS1".length;t+=he(this.sourceSize),t+=he(this.targetSize),t+=he(this.metaData.length),t+=this.metaData.length;for(var n=0;n<this.actions.length;n++)t+=he(((r=this.actions[n]).length-1<<2)+r.type),1===r.type?t+=r.length:2!==r.type&&3!==r.type||(t+=he((Math.abs(r.relativeOffset)<<1)+(r.relativeOffset<0?1:0)));var o=new ie(t+=12);for(o.fileName=e+".bps",o.littleEndian=!0,o.writeVLV=pe,o.writeString("BPS1"),o.writeVLV(this.sourceSize),o.writeVLV(this.targetSize),o.writeVLV(this.metaData.length),o.writeString(this.metaData,this.metaData.length),n=0;n<this.actions.length;n++){var r=this.actions[n];o.writeVLV((r.length-1<<2)+r.type),1===r.type?o.writeBytes(r.bytes):2!==r.type&&3!==r.type||o.writeVLV((Math.abs(r.relativeOffset)<<1)+(r.relativeOffset<0?1:0))}return o.writeU32(this.sourceChecksum),o.writeU32(this.targetChecksum),o.writeU32(this.patchChecksum),o};var me="UPS1";function ge(){this.records=[],this.sizeInput=0,this.sizeOutput=0,this.checksumInput=0,this.checksumOutput=0}function ve(e){for(;;){var t=127&e;if(0==(e>>=7)){this.writeU8(128|t);break}this.writeU8(t),--e}}function be(){for(var e=0,t=1;;){var n=this.readU8();if(-1==n)throw new Error("Can't read UPS VLV at 0x"+(this.offset-1).toString(16));if(e+=(127&n)*t,0!=(128&n))break;e+=t<<=7}return e}function ye(e){for(var t=0;t++,0!=(e>>=7);)--e;return t}function we(e){var t=new ge;for(e.readVLV=be,e.seek(me.length),t.sizeInput=e.readVLV(),t.sizeOutput=e.readVLV();e.offset<e.fileSize-12;){for(var n=e.readVLV(),o=[];e.readU8();)o.push(e._lastRead);t.addRecord(n,o)}return e.littleEndian=!0,t.checksumInput=e.readU32(),t.checksumOutput=e.readU32(),e.littleEndian=!1,t}ge.prototype.addRecord=function(e,t){this.records.push({offset:e,XORdata:t})},ge.prototype.toString=function(){var e="Records: "+(void 0).records.length;return e+="\nInput file size: "+(void 0).sizeInput,e+="\nOutput file size: "+(void 0).sizeOutput,(e+="\nInput file checksum: "+padZeroes((void 0).checksumInput,4))+("\nOutput file checksum: "+padZeroes((void 0).checksumOutput,4))},ge.prototype.export=function(e){var t=me.length;t+=ye(this.sizeInput),t+=ye(this.sizeOutput);for(var n=0;n<this.records.length;n++)t+=ye(this.records[n].offset),t+=this.records[n].XORdata.length+1;for(tempFile=new ie(t+=12),tempFile.writeVLV=ve,tempFile.fileName=e+".ups",tempFile.writeString(me),tempFile.writeVLV(this.sizeInput),tempFile.writeVLV(this.sizeOutput),n=0;n<this.records.length;n++)tempFile.writeVLV(this.records[n].offset),tempFile.writeBytes(this.records[n].XORdata),tempFile.writeU8(0);return tempFile.littleEndian=!0,tempFile.writeU32(this.checksumInput),tempFile.writeU32(this.checksumOutput),tempFile.writeU32(le(tempFile,0,!0)),tempFile},ge.prototype.validateSource=function(e,t){return le(e,t)===this.checksumInput},ge.prototype.apply=function(e,t){t&&this.validateSource(e),tempFile=new ie(this.sizeOutput),e.copyToFile(tempFile,0,this.sizeInput),e.seek(0);for(var n=0;n<this.records.length;n++){var o=this.records[n];tempFile.skip(o.offset),e.skip(o.offset);for(var r=0;r<o.XORdata.length;r++)tempFile.writeU8((e.isEOF()?0:e.readU8())^o.XORdata[r]);tempFile.skip(1),e.skip(1)}return t&&(le(tempFile),this.checksumOutput),tempFile};var b=n(160),xe=n.n(b),_e={_FS:{createPath:function(e,t,n,o){_e.FS&&("function"!=typeof _e.FS.createPath?_e.FS.mkdir(t):_e.FS.createPath(e,t,n,o))},createDataFile:function(e,t,n,o,r,i){var a,s;_e.FS&&("function"!=typeof _e.FS.createDataFile?(s=t,s=(a=e).endsWith("/")||s.startsWith("/")?a+s:a+"/"+s,_e.FS.writeFile(s,n)):_e.FS.createDataFile(e,t,n,o,r,i))},createFolder:function(e,t,n,o){var r,i;_e.FS&&("function"!=typeof _e.FS.createFolder?(i=t,i=(r=e).endsWith("/")||i.startsWith("/")?r+i:r+"/"+i,_e.FS.mkdir(i)):_e.FS.createFolder(e,t,n,o))}},romdb:null,supportBatterySave:!1,hash:"2b35cacf70ae",hash2:"f5cbb3f38c0bb20e4",hash3:"88cc8ad0c350400499a0",loading:null,gamePatch:null,saveFilenames:[],FS:null,Module:null,aspectRatio:4/3,memData:null,wasmData:null,coreFileData:{},coreFileName:"",coreFileVersion:"",isMobileDevice:!!/Android|webOS|iPhone|iPad|iPod|BB10|BlackBerry|IEMobile|Opera Mini|Mobile|mobile/i.test(navigator.userAgent||""),create:function(){var h=this;window.URL=window.URL||window.webkitURL;var o=!1,r=!1,i=!1,p=0,m=!1,g={psx:["bin","iso","cue","img","mdf","pbp","toc","cbn","m3u"],nds:["nds","bin"],nes:["fds","nes","unif","unf"],snes:["smc","fig","sfc","gd3","gd7","dx2","bsx","swc"],snes2002:["smc","fig","sfc","gd3","gd7","dx2","bsx","swc"],snes2005:["smc","fig","sfc","gd3","gd7","dx2","bsx","swc"],snes2010:["smc","fig","sfc","gd3","gd7","dx2","bsx","swc"],gb:["gb","gbc","dmg"],gba:["gb","gbc","gba"],vbanext:["gba"],vb:["vb","vboy","bin"],"3do":["iso","bin","cue"],lynx:["lnx"],jaguar:["j64","jag","rom","abs","cof","bin","prg"],a7800:["a78","bin"],a2600:["a26","bin"],ngp:["ngp","ngc"],n64:["n64","v64","z64","bin","u1","ndd"],pce:["pce","bin","iso","cue","ccd","img","chd"],sega:["mdx","md","smd","gen","bin","iso","cue","sms","gg","sg","68k","chd"],segacd:["mdx","md","smd","gen","bin","iso","cue","sms","gg","sg","68k","chd"],"32x":["32x","bin","gen","smd","md","cue","iso","sms"],saturn:["bin","cue","iso"],msx:["rom","mx1","mx2","dsk","cas"],bluemsx:["rom","ri","mx1","mx2","col","dsk","cas","sg","sc","m3u"],ws:["ws","wsc"],arcade:["zip"],"fba0.2.97.29":["zip"],mame2003:["zip"],mame:["zip"]},v={psx:"psx",nds:"nds",nes:"nes",snes:"snes",snes2002:"snes2002",snes2005:"snes2005",snes2010:"snes2010",gb:"gb",gbc:"gb",gba:"gba",vbanext:"vbanext",vb:"vb",n64:"n64","3do":"3do",segaMS:"sega",segaGG:"sega",segaMD:"sega",segaCD:"segacd",sega32x:"32x",segaSaturn:"saturn",ngp:"ngp",pce:"pce",msx:"bluemsx",atari2600:"a2600",atari7800:"a7800",lynx:"lynx",ws:"ws",arcade:"arcade","fba0.2.97.29":"fba0.2.97.29",jaguar:"jaguar",mame2003:"mame2003"},b=this,y=b.system,w=b.customPaths&&"string"==typeof b.customPaths["extract7z.js"]?b.customPaths["extract7z.js"]:b.dataPath+"extract7z.js",x=b.customPaths&&"string"==typeof b.customPaths["extractzip.js"]?b.customPaths["extractzip.js"]:b.dataPath+"extractzip.js?v=1",_=b.customPaths&&"string"==typeof b.customPaths["libunrar.js"]?b.customPaths["libunrar.js"]:b.dataPath+"libunrar.js",S=B("canvas",{});this.game.appendChild(S),_e.loading=B("div",{class:this.config.classNames.loading}),this.elements.container.appendChild(_e.loading);var T={"loading-info":H({"loading-info":!0}),ad:H({ad:!0}),"close-ad":H({"close-ad":!0}),"start-game":H({"start-game":!0}),on:H({on:!0}),p1:H({p1:!0}),p2:H({p2:!0}),p3:H({p3:!0}),p4:H({p4:!0})};"string"==typeof b.adUrl?(_e.loading.innerHTML='\n <div>\n <div class="'+T.ad+'" style="display:block !important;width:300px !important">\n <div class="'+T["close-ad"]+'" hidden><a href="#" onclick="return false"></a></div>\n <iframe scrolling="no" frameborder="no" style="width:300px !important;height:250px !important;display: block !important;" src="'+b.adUrl+'"></iframe>\n </div>\n <div class="'+T["loading-info"]+'" style="position: absolute;bottom: 20px;left: 50%;transform: translateX(-50%);">\n <div class="'+T.p1+'"></div>\n <div class="'+T.p2+'"></div>\n <div class="'+T.p3+'"></div>\n </div>\n <div style="position: absolute;bottom: 20px;left: 50%;transform: translateX(-50%);">\n <a href="#" onclick="return false" class="'+T["start-game"]+'">'+K("playNow",b.config)+"</a>\n </div>\n </div>",e=B("iframe",{src:b.adUrl,scrolling:"no",frameborder:"no",style:"width:300px !important;height:250px !important;display: block !important;"}),_e.loading.querySelector(".".concat(T.ad)).removeChild(_e.loading.querySelector(".".concat(T.ad," iframe"))),_e.loading.querySelector(".".concat(T.ad)).appendChild(e),Y.webgl.DETECTED||(G(_e.loading.querySelector(".".concat(T["start-game"])),!0),_e.loading.querySelector(".".concat(T.p3)).innerHTML='<strong style="color:#f00;text-shadow: 0px 0px 3px;">Failed to initialize WebGL.</strong>'),_e.loading.querySelector(".".concat(T.ad," iframe")).style.setProperty("display","block","important"),_e.loading.querySelector(".".concat(T.ad," iframe")).style.setProperty("visibility","visible","important"),_e.loading.querySelector(".".concat(T.ad)).style.setProperty("display","block","important"),_e.loading.querySelector(".".concat(T.ad)).style.setProperty("visibility","visible","important")):(_e.loading.innerHTML='\n <div>\n <div class="'.concat(T["loading-info"],'" style="position: absolute;bottom: 20px;left: 50%;transform: translateX(-50%);">\n <div class="').concat(T.p1,'"></div>\n <div class="').concat(T.p2,'"></div>\n <div class="').concat(T.p3,'"></div>\n </div>\n <div style="position: absolute;bottom: 20px;left: 50%;transform: translateX(-50%);">\n <a href="#" onclick="return false" class="').concat(T["start-game"],'">').concat(K("playNow",b.config),"</a>\n </div>\n </div>"),Y.webgl.DETECTED||(G(_e.loading.querySelector(".".concat(T["start-game"])),!0),_e.loading.querySelector(".".concat(T.p3)).innerHTML='<strong style="color:#f00;text-shadow: 0px 0px 3px;">Failed to initialize WebGL.</strong>'));var a=window.URL||window.webkitURL;te.a.interceptors.request.use(function(e){return e.headers["Content-Type"]="application/x-www-form-urlencoded","options"===e.method.toLowerCase()&&(e.method="get"),e},function(e){return Promise.reject(e)});function C(e){var t;return 80===e[0]&&75===e[1]&&3===e[2]&&4===e[3]||80===e[0]&&75===e[1]&&5===e[2]&&6===e[3]||80===e[0]&&75===e[1]&&7===e[2]&&8===e[3]?t="zip":55===e[0]&&122===e[1]&&188===e[2]&&175===e[3]&&39===e[4]&&28===e[5]?t="7z":82===e[0]&&97===e[1]&&114===e[2]&&33===e[3]&&26===e[4]&&7===e[5]&&0==e[6]&&(t="rar"),t}function E(e){var e=new Blob(['importScripts("'+e+'");'],{type:"application/javascript"}),n=window.URL.createObjectURL(e);return new Promise(function(e,t){e(new Worker(n))})}function A(e,t){var n="";"rar"==t&&(n="\nvar dataToPass = [];\nModule = {\n monitorRunDependencies: function(left) {\n if (left == 0) {\n setTimeout(function() {\n unrar(dataToPass, null);\n }, 100);\n }\n },\n onRuntimeInitialized: function() {\n },\n locateFile: function(file) {\n return '".concat(e+".mem","';\n }\n};\nimportScripts(\"").concat(e,'");\nvar unrar = function(data, password) {\n var cb = function(fileName, fileSize, progress) {\n postMessage({"t":4,"current":progress,"total":fileSize, "name": fileName});\n };\n\n var rarContent = readRARContent(data.map(function(d) {\n return {\n name: d.name,\n content: new Uint8Array(d.content)\n }\n }), password, cb)\n var rec = function(entry) {\n if (entry.type === \'file\') {\n postMessage({"t":2,"file":entry.fullFileName,"size":entry.fileSize,"data":entry.fileContent});\n } else if (entry.type === \'dir\') {\n Object.keys(entry.ls).forEach(function(k) {\n rec(entry.ls[k]);\n })\n } else {\n throw "Unknown type";\n }\n }\n rec(rarContent);\n postMessage({"t":1});\n return rarContent;\n};\nonmessage = function(data) {\n dataToPass.push({name: \'test.rar\', content: data.data});\n};\n '));var n=new Blob([n],{type:"application/javascript"}),o=window.URL.createObjectURL(n);return new Promise(function(e,t){e(new Worker(o))})}var k=null,u=null,c=null,d=null;try{k=new ee.a({dbVersion:1,storePrefix:"ejs-",storeName:"system",keyPath:null,autoIncrement:!1,onStoreReady:function(){o=!0},onError:function(){o=!0}}),u=new ee.a({dbVersion:1,storePrefix:"ejs-",storeName:"roms",keyPath:null,autoIncrement:!1,onStoreReady:function(){r=!0},onError:function(){r=!0}}),c=new ee.a({dbVersion:1,storePrefix:"ejs-",storeName:"bios",keyPath:null,autoIncrement:!1,onStoreReady:function(){i=!0},onError:function(){i=!0}}),d=new ee.a({dbVersion:1,storePrefix:"ejs-",storeName:"romsdata",keyPath:null,autoIncrement:!1,onStoreReady:function(){},onError:function(){}})}catch(e){i=r=o=!0,console.log(e)}D.call(b,b.elements.container,"start-game",function(e){b.started=!0,b.playing=!0,G(_e.loading.querySelector(".".concat(T["loading-info"])),!0),!Ie||"undefined"!=Ie.virtualGamepadContainer&&null!==Ie.virtualGamepadContainer||ne.toggleControls.call(b,!0);var t=H({"ejs__tooltip--visible":!0}),n=b.elements.buttons.gamepad.querySelector(".".concat(H({ejs__tooltip:!0})));V(n,t,!0),setTimeout(function(){V(n,t,!1)},5e3),"string"==typeof b.adUrl&&(G(_e.loading.querySelector(".".concat(T["close-ad"])),!1),setTimeout(function(){b.started&&_e.loading.querySelector(".".concat(T.ad))&&_e.loading.querySelector(".".concat(T.ad)).parentNode.removeChild(_e.loading.querySelector(".".concat(T.ad)))},1e4)),G(_e.loading.querySelector(".".concat(T["start-game"])),!0);var o,r=X(Fe.defaultCoreOptionsValues.call(h),Fe.storage.get("core-options")||{});"n64"===b.system&&r&&Object.keys(r).forEach(function(e){"glupen64-aspect"===e&&"16:9"===r[e]&&(S.height=S.width/16*9,_e.aspectRatio=16/9)}),"arcade"!==h.system&&"fba0.2.97.29"!==h.system||r&&Object.keys(r).forEach(function(e){"fba-aspect"===e&&"PAR"===r[e]&&(S.height=S.width/16*9,_e.aspectRatio=16/9)}),"gba"===b.system&&(S.height=S.width/1.5,_e.aspectRatio=1.5),window.setTimeout(function(){},150),o=h,"undefined"!=typeof RI?(document.removeEventListener("mousemove",RI.eventHandler,!1),S.removeEventListener("mousedown",RI.canvasEventHandler,!1),S.removeEventListener("mouseup",RI.canvasEventHandler,!1),o.elements.container.addEventListener("mousemove",function(e){var t=0,n=0,o=e.offsetX-_e.Module.canvas.offsetLeft,r=e.offsetY-_e.Module.canvas.offsetTop;if("mousemove"===e.type){t=o<0?(o=0,-_e.Module.canvas.offsetWidth):o>_e.Module.canvas.offsetWidth?(o=_e.Module.canvas.offsetWidth,_e.Module.canvas.offsetWidth):o-RI.currentX,n=r<0?(r=0,-_e.Module.canvas.offsetHeight):r>_e.Module.canvas.offsetHeight?(r=_e.Module.canvas.offsetHeight,_e.Module.canvas.offsetHeight):r-RI.currentY,RI.currentX=o,RI.currentY=r;for(var i=0;i<RI.contexts.length;i+=1)HEAP32[RI.contexts[i].state+32>>2]=t,HEAP32[RI.contexts[i].state+36>>2]=n}},!1),o.elements.container.addEventListener("mousedown",RI.canvasEventHandler,!1),o.elements.container.addEventListener("mouseup",RI.canvasEventHandler,!1),f=function(e){if(e.targetTouches[0]){var t,n,o=0,r=0,i=e.target.getBoundingClientRect(),a=e.targetTouches[0].clientX-i.left,i=e.targetTouches[0].clientY-i.top,o=a<0?(a=0,-_e.Module.canvas.offsetWidth):a>_e.Module.canvas.offsetWidth?(a=_e.Module.canvas.offsetWidth,_e.Module.canvas.offsetWidth):a-RI.currentX,r=i<0?(i=0,-_e.Module.canvas.offsetHeight):i>_e.Module.canvas.offsetHeight?(i=_e.Module.canvas.offsetHeight,_e.Module.canvas.offsetHeight):i-RI.currentY;RI.currentX=a,RI.currentY=i;for(var s=0;s<RI.contexts.length;s+=1)HEAP32[RI.contexts[s].state+32>>2]=o,HEAP32[RI.contexts[s].state+36>>2]=r;switch(e.type){case"touchend":case"touchstart":if(0===e.button)n=40;else{if(2!==e.button)break;n=41}t="touchend"===e.type?0:1;for(var c=0;c<RI.contexts.length;c+=1)HEAP8[RI.contexts[c].state+n>>0]=t}}},o.elements.container.addEventListener("touchstart",f,!1),o.elements.container.addEventListener("touchend",f,!1)):(f=function(e){e=new MouseEvent(e.type,e);_e.Module.canvas.dispatchEvent(e)},q.call(h,".".concat(H({ejs__dialogs:!0}))).addEventListener("mousemove",f,!1),q.call(h,".".concat(H({ejs__dialogs:!0}))).addEventListener("mousedown",f,!1),q.call(h,".".concat(H({ejs__dialogs:!0}))).addEventListener("mouseup",f,!1)),"msx"!==b.system||"undefined"!=typeof RI&&(document.removeEventListener("keydown",RI.eventHandler,!1),document.removeEventListener("keyup",RI.eventHandler,!1),i=function(e){var t=e.keyCode,n=t>>3,o=1<<(7&t);switch(e.type){case"keyup":case"keydown":if(32<=n)throw"key code error! bad code: "+t;for(var r=0;r<RI.contexts.length;r++){var i=HEAP8[RI.contexts[r].state+n>>0];"keyup"===e.type?i&=~o:i|=o,HEAP8[RI.contexts[r].state+n>>0]=i}}},document.addEventListener("keydown",i,!1),document.addEventListener("keyup",i,!1)),setTimeout(function(){var r=W.info();null===Ie.setVolume&&"undefined"!=typeof RA?(RA.queueAudio=function(){var e=b.volume,t=RA.bufIndex,n=RA.bufIndex?RA.buffers[RA.bufIndex-1].endTime:RA.context.currentTime;RA.buffers[t].endTime=n+RA.buffers[t].duration;var o=RA.context.createBufferSource();o.buffer=RA.buffers[t],b.muted&&(e=0),1===e?o.connect(RA.context.destination):(t=RA.context.createGain(),o.connect(t),t.connect(RA.context.destination),W.isEdge||"chrome"===r.name&&parseInt(r.version,10)<=60||"firefox"===r.name&&parseInt(r.version,10)<=56||"opera"===r.name&&parseInt(r.version,10)<=44?t.gain.value=e:"firefox"===r.name?t.gain.setValueAtTime(e,RA.context.currentTime):t.gain.setValueAtTime(e,RA.context.currentTime,0)),o.start(n),RA.bufIndex+=1,RA.bufOffset=0},W.isIos&&window.addEventListener("touchstart",function(){var e;RA.context&&(RA.context.resume(),(e=RA.context.createBufferSource()).connect(RA.context.destination),e.start())},!1)):Ie.setVolume()},500),setTimeout(function(){b.elements.container.focus()},30),void 0===window.addRunDependency&&(window.Module=void 0);var i,a,s,c,l,u,d,f=_e.FS.readFile(b.startName);f.length<=33554432&&".cue"!=b.startName.substr(-4)&&(a="snes"===b.system||["snes2002","snes2005","snes2010"].includes(b.system)?(i=f.length%1024,new ie(i?f.slice?f.slice(i):f.subarray(i):f)):new ie(f),s=xe.a.create(),c=new FileReader,l=0,u=a._u8array.length,d=function(){var e;l<u?(e=Math.min(l+2097152,u),c.readAsArrayBuffer(new Blob([a._u8array.slice(l,e)])),l=e):(console.log(s.hex()),b.hash=s.hex(),"function"==typeof window.ejsromshash&&window.ejsromshash(b.hash))},c.onload=function(e){try{s.update(e.target.result),d()}catch(e){console.log(e)}},d())}),"string"==typeof b.adUrl&&D.call(b,_e.loading.querySelector(".".concat(T["close-ad"])),"click",function(e){e instanceof MouseEvent&&b.started&&_e.loading.querySelector(".".concat(T.ad))&&_e.loading.querySelector(".".concat(T.ad)).parentNode.removeChild(_e.loading.querySelector(".".concat(T.ad))),b.elements.container.focus()});function M(){u.db&&u.getAll(function(e){Array.isArray(e)&&10<e.length&&e.sort(function(e,t){return(t.lastaccess||0)-(e.lastaccess||0)}).forEach(function(e,t){10<t&&!_e.saveFilenames.includes(e.key)?(u.remove(e.key),d.db&&d.remove(e.key)):(delete e.data,u.put(e.key,e))})},function(){u.clear(),d.db&&d.clear()})}function O(e){if(_e.gamePatch){var t=e.startName.split("/"),n=t.pop().split(".").pop(),o=(_e.gamePatch.split(".").pop(),_e.gamePatch.split("/").pop().split(".").shift()),o=(o="".concat(t.join("/"),"/").concat(o,".").concat(n)).replace(/\#/g,""),r=_e.gamePatch;if(_e.FS.rename(e.startName,o),e.startName=o,"snes"===e.system||["snes2002","snes2005","snes2010"].includes(e.system)){var i,a,s,c,l=new ie(_e.FS.readFile(e.startName)),u=le(l),n=new ie(_e.FS.readFile(r)),o=n.readString(6),d=l._u8array.length%1024;o.startsWith("PATCH")?(i=se(n),0==d&&"B19ED489"===u.toString(16).toUpperCase()&&((a=new Uint8Array(l._u8array.length+512)).set(new Uint8Array(512),0),a.set(l._u8array,512),l=new ie(a))):o.startsWith(me)?i=we(n):o.startsWith("BPS1")&&(i=de(n),0<d&&"A31BEAD4"===u.toString(16).toUpperCase()&&(a=l._u8array.slice?l._u8array.slice(d):l._u8array.subarray(d),l=new ie(a)));try{(s=i.apply(l,!1))&&(0<(c=s._u8array.length%1024)&&(a=s._u8array.slice?s._u8array.slice(c):s._u8array.subarray(c),s=new ie(a)),_e.FS.unlink(r),_e.FS.unlink(e.startName),_e.FS.writeFile(e.startName,s._u8array))}catch(e){}}else{var f,p,h=new ie(_e.FS.readFile(e.startName)),u=new ie(_e.FS.readFile(r)),d=u.readString(6);d.startsWith("PATCH")?f=se(u):d.startsWith(me)?f=we(u):d.startsWith("BPS1")&&(f=de(u));try{(p=f.apply(h,!1))&&(_e.FS.unlink(r),_e.FS.unlink(e.startName),_e.FS.writeFile(e.startName,p._u8array))}catch(e){}}}}function R(){m?(window.Module.TOTAL_MEMORY=268435456,["jaguar"].includes(h.system)&&(window.Module.TOTAL_MEMORY=268435456),["nds","nes","snes","arcade","mame"].includes(h.system)&&(window.Module.TOTAL_MEMORY=0),["snes2002","snes2005","snes2010"].includes(h.system)&&(window.Module.TOTAL_MEMORY=0),"gba"==h.system&&(window.Module.TOTAL_MEMORY=0),"3do"==h.system&&(window.Module.TOTAL_MEMORY=0),"n64"==h.system&&(window.Module.TOTAL_MEMORY=0)):("nes"===h.system&&(window.Module.TOTAL_MEMORY=134217728),window.Module.TOTAL_MEMORY=p+67108864,["arcade","mame","mame2003","fba0.2.97.29"].includes(h.system)&&(window.Module.TOTAL_MEMORY=p+268435456,_e.isMobileDevice&&(window.Module.TOTAL_MEMORY=314572800)),["n64","nds","jaguar"].includes(h.system)&&(window.Module.TOTAL_MEMORY=p+268435456,_e.isMobileDevice&&(window.Module.TOTAL_MEMORY=314572800)),"gba"==h.system&&(window.Module.TOTAL_MEMORY=268435456)),"undefined"!=typeof EJS_MEMORY&&(window.Module.TOTAL_MEMORY=EJS_MEMORY)}function f(e,t){function s(){"string"==typeof c.loadStateOnStart&&fetch(c.loadStateOnStart).then(function(e){e.arrayBuffer().then(function(e){e=new Uint8Array(e);EJS_loadState(e)})})}var c=h,l=_e.loading.querySelector(".".concat(T.p3)),u=(e.split(".").pop(),v[y]),d=-1,f="";function n(e){if(e.data){if(1===e.data.t){l.innerHTML="Game Data ready",e.target.terminate();try{R(),O(c),M(),!c.startName&&f&&(c.startName=f);var t=[c.startName,[_e.hash,_e.hash2,_e.hash3].join("")];"undefined"!=typeof EJS_DEBUG_XX&&!0===EJS_DEBUG_XX&&t.unshift("-v"),_e.Module.callMain(t),2===b.coreVer&&(_e.Module.resumeMainLoop(),_e.Module.setCanvasSize(800,600)),U.call(c,c.elements.container,"start-game")}catch(e){console.log(e),l.innerHTML='<strong style="color:#f00;text-shadow: 0px 0px 3px;">Failed to start game</strong>'}try{s()}catch(e){}}if(2===e.data.t){var n=e.data.file.split("/"),o=(r=n.pop()).split(".").pop(),r=r.replace(/\#/g,"");_e._FS.createPath("/",n.join("/"),!0,!0);for(var i=g[u].length-1;0<=i;--i)g[u][i]===o.toLowerCase()&&d<i&&(d=i,c.startName=["",n.join("/"),r].join("/"),c.startName=c.startName.replace(/\/+/,"/"));r&&(_e._FS.createDataFile("/".concat(n.join("/")),r,e.data.data,!0,!1),p+=e.data.data.length),f="/".concat(n.join("/"),"/").concat(r)}var a;4===e.data.t&&0<e.data.total&&(a=Math.floor(e.data.current/e.data.total*100),e=e.data.name||"",a<=100&&0<a&&(l.innerHTML=h.localization("Decompress Game Data")+" ".concat(e," ").concat(a,"%")))}}var o,r=!(window.EJS_terminate=function(){if(_e.Module.pauseMainLoop(),c&&c.eventListeners)for(var e in c)for(var t=0;t<c.eventListeners.length;t++)(n=c.eventListeners[t]).element.removeEventListener(n.type,n.callback,n.capture);if(window.EJS_RESET_VARS){var n=[],o=[];for(e in window)n.push(e);for(t=0;t<n.length;t++)window.EJS_RESET_VARS.includes(n[t])||o.push(n[t]);for(t=0;t<o.length;t++)window[o[t]]&&delete window[o[t]]}});if(["arcade","mame","mame2003","fba0.2.97.29"].includes(c.system)||(o=t.slice?t.slice(0,10):t.subarray(0,10),"7z"===(o=C(o))?(E(w).then(function(e){e.onmessage=n,e.postMessage(t)}),r=!0):"zip"===o?(E(x).then(function(e){e.onmessage=n,e.postMessage(t)}),r=!0):"rar"==o&&(A(_,"rar").then(function(e){e.onmessage=n,e.postMessage(t)}),r=!0)),!r){var i=e.replace(/\#/g,"");try{p+=t.length,_e._FS.createDataFile("/",i,t,!0,!1)}catch(e){console.log(e)}R(),c.startName=i,O(c),M();try{var a=[c.startName,[_e.hash,_e.hash2,_e.hash3].join("")];"undefined"!=typeof EJS_DEBUG_XX&&!0===EJS_DEBUG_XX&&a.unshift("-v"),_e.Module.callMain(a),2===b.coreVer&&(_e.Module.resumeMainLoop(),_e.Module.setCanvasSize(800,600)),U.call(c,c.elements.container,"start-game")}catch(e){console.log(e),l.innerHTML='<strong style="color:#f00;text-shadow: 0px 0px 3px;">Failed to start game</strong>'}try{s()}catch(e){}}}function s(){var t=h,n=_e.loading.querySelector(".".concat(T.p3)),e=h.config,o=(e.gameId,e.gameUrl),r=e.system;"vbanext"==r&&(r="gba");var l=(e=o.split("/"))[e.length-1];-1<l.indexOf("?")&&(l=l.substr(0,l.indexOf("?"))),l.split(".").pop(),n.innerHTML=h.localization("Download Game Data"),["arcade","mame","mame2003","fba0.2.97.29"].includes(t.system)&&t.config.gameParentUrl&&(n.innerHTML+=" (2/2)"),t.config.gamePatchUrl&&(n.innerHTML+=" (2/2)"),new Promise(async function(e,t){o.startsWith("blob:")?e({headers:{"content-length":(await(await fetch(o)).blob()).size,"content-type":"text/plain"}}):e(await te.a.head(o,{}))}).then(function(e){function i(){te.a.get(o,{onDownloadProgress:function(e){e=e.total?"".concat(Math.floor(e.loaded/e.total*100),"%"):"";["arcade","mame","mame2003","fba0.2.97.29"].includes(t.system)&&t.config.gameParentUrl||t.config.gamePatchUrl?n.innerHTML=h.localization("Download Game Data")+" (2/2) ".concat(e):n.innerHTML=h.localization("Download Game Data")+" ".concat(e)},responseType:"arraybuffer"}).then(function(e){var t=new Uint8Array(e.data);if(h.config.gameUrl.startsWith("blob:")||h.config.gameUrl.startsWith("file:")||h.config.gameUrl.startsWith("chrome-extension:")||("file:"==window.location.protocol||"chrome-extension:"==window.location.protocol)&&1==h.config.gameUrl.split(":").length)f(l,t);else{if(c&&u.db)if(104857600<t.length)for(var n=Math.ceil(t.length/104857600),o=0;o<n;o+=1){var r=t.slice?t.slice(104857600*o,104857600*(o+1)):t.subarray(104857600*o,104857600*(o+1)),i="".concat(c);0<o&&(i="".concat(c,"-part-").concat(o)),_e.saveFilenames.push(i),u.put(i,{filename:l,filesize:t.length,filetype:s,key:i,lastaccess:(new Date).valueOf(),next:"".concat(c,"-part-").concat(o+1)}),d.db&&d.put(i,{filename:l,filesize:t.length,filetype:s,key:i,data:r})}else _e.saveFilenames.push(c),u.put(c,{filename:l,filesize:t.length,filetype:s,key:c,lastaccess:(new Date).valueOf()}),d.db&&d.put(c,{filename:l,filesize:t.length,filetype:s,key:c,data:t});f(l,t)}}).catch(function(e){console.log(e),n.innerHTML='<strong style="color:#f00;text-shadow: 0px 0px 3px;">'+h.localization("Network Error")+"</strong>"})}var a=e.headers["content-length"],s=e.headers["content-type"],c=(e.headers["last-modified"],"".concat(r,"-").concat(l));d.db?d.get(c,function(t){if(t&&t.filename===l&&t.filesize-a==0&&t.filetype===s&&t.key)if(u.get(c,function(e){e.lastaccess=(new Date).valueOf(),u.put(e.key,e)}),104857600<t.filesize){var n=new Uint8Array(t.filesize);n.set(t.data);for(var e=Math.ceil(t.filesize/104857600),o=[],r=1;r<e;r+=1)o.push("".concat(c,"-part-").concat(r)),u.get("".concat(c,"-part-").concat(r),function(e){e.lastaccess=(new Date).valueOf(),u.put(e.key,e)});d.getBatch(o,function(e){e.filter(function(e){return e}).length!==o.length?i():(e.forEach(function(e,t){n.set(e.data,104857600*(t+1))}),f(t.filename,n))},function(){},"sparse")}else f(t.filename,t.data);else i()}):i()}).catch(function(e){n.innerHTML='<strong style="color:#f00;text-shadow: 0px 0px 3px;">'+h.localization("Network Error")+"</strong>"})}function P(){var e,a,t=_e.loading.querySelector(".".concat(T.p3)),n=h.config.gamePatchUrl;n?(e=n.split("/"),-1<(a=e[e.length-1]).indexOf("?")&&(a=a.substr(0,a.indexOf("?"))),a.split(".").pop(),t.innerHTML=h.localization("Download Game Data")+" (1/2)",te.a.get(n,{onDownloadProgress:function(e){t.innerHTML=h.localization("Download Game Data")+" (1/2) ";e=e.total?"".concat(Math.floor(e.loaded/e.total*100),"%"):"";t.innerHTML+=e},responseType:"arraybuffer"}).then(function(e){var t,n,r,o,i=new Uint8Array(e.data);t=a,n=i,r=_e.loading.querySelector(".".concat(T.p3)),t.split(".").pop(),e=!(o=function(e){var t,n,o;e.data&&(1===e.data.t&&(e.target.terminate(),s()),2===e.data.t&&(n=(o=(t=e.data.file.split("/")).pop()).split(".").pop(),_e._FS.createPath("/",t.join("/"),!0,!0),_e._FS.createDataFile("/"+t.join("/"),o,e.data.data,!0,!1),p+=e.data.data.length,["ips","bps","ups"].includes(n)&&!_e.gamePatch&&(_e.gamePatch="/"+t.join("/")+"/"+o)),4===e.data.t&&0<e.data.total&&(o=Math.floor(e.data.current/e.data.total*100),e=e.data.name||"",o<=100&&0<o&&(r.innerHTML=h.localization("Decompress Game Patch")+" ".concat(e," ").concat(o,"%"))))}),i=n.slice?n.slice(0,10):n.subarray(0,10),"7z"===(i=C(i))?(E(w).then(function(e){e.onmessage=o,e.postMessage(n)}),e=!0):"zip"===i?(E(x).then(function(e){e.onmessage=o,e.postMessage(n)}),e=!0):"rar"==i&&(A(_,"rar").then(function(e){e.onmessage=messageCallBack,e.postMessage(n)}),e=!0),e||(p+=n.length,_e.gamePatch="/".concat(t),_e._FS.createDataFile("/",t,n,!0,!1),s())}).catch(function(e){console.log(e),t.innerHTML='<strong style="color:#f00;text-shadow: 0px 0px 3px;">'+h.localization("Network Error")+"</strong>"})):s()}function l(){var e,l,t=h,n=_e.loading.querySelector(".".concat(T.p3)),o=h.config.gameParentUrl;o&&["arcade","mame","mame2003","fba0.2.97.29"].includes(t.system)?(e=o.split("/"),-1<(l=e[e.length-1]).indexOf("?")&&(l=l.substr(0,l.indexOf("?"))),l.split(".").pop(),n.innerHTML=h.localization("Download Game Data")+" (1/2)",t.config.gamePatchUrl&&(n.innerHTML=h.localization("Download Game Data")+" (1/3)"),te.a.head(o,{}).then(function(e){function i(){te.a.get(o,{onDownloadProgress:function(e){e=e.total?"".concat(Math.floor(e.loaded/e.total*100),"%"):"";n.innerHTML=h.localization("Download Game Data")+" (1/2) ".concat(e)},responseType:"arraybuffer"}).then(function(e){var t=new Uint8Array(e.data);if(c&&u.db)if(104857600<t.length)for(var n=Math.ceil(t.length/104857600),o=0;o<n;o+=1){var r=t.slice?t.slice(104857600*o,104857600*(o+1)):t.subarray(104857600*o,104857600*(o+1)),i="".concat(c);0<o&&(i="".concat(c,"-part-").concat(o)),_e.saveFilenames.push(i),u.put(i,{filename:l,filesize:t.length,filetype:s,key:i,lastaccess:(new Date).valueOf(),next:"".concat(c,"-part-").concat(o+1)}),d.db&&d.put(i,{filename:l,filesize:t.length,filetype:s,key:i,data:r})}else _e.saveFilenames.push(c),u.put(c,{filename:l,filesize:t.length,filetype:s,key:c,lastaccess:(new Date).valueOf()}),d.db&&d.put(c,{filename:l,filesize:t.length,filetype:s,key:c,data:t});var a=l.replace(/\#/g,"");try{p+=t.length,_e._FS.createDataFile("/",a,t,!0,!1),P()}catch(e){console.log(e)}}).catch(function(e){console.log(e),n.innerHTML='<strong style="color:#f00;text-shadow: 0px 0px 3px;">'+h.localization("Network Error")+"</strong>"})}var a=e.headers["content-length"],s=e.headers["content-type"],c=(e.headers["last-modified"],"".concat(y,"-").concat(l));d.db?d.get(c,function(t){if(t&&t.filename===l&&t.filesize-a==0&&t.filetype===s&&t.key)if(104857600<t.filesize){var n=new Uint8Array(t.filesize);n.set(t.data);for(var e=Math.ceil(t.filesize/104857600),o=[],r=1;r<e;r+=1)o.push("".concat(c,"-part-").concat(r));d.getBatch(o,function(e){e.filter(function(e){return e}).length!==o?i():(e.forEach(function(e,t){n.set(e.data,104857600*(t+1))}),_e._FS.createDataFile("/",t.filename,n,!0,!1),P())},function(){},"sparse")}else _e._FS.createDataFile("/",t.filename,t.data,!0,!1),P();else i()}):i()}).catch(function(e){n.innerHTML='<strong style="color:#f00;text-shadow: 0px 0px 3px;">'+h.localization("Network Error")+"</strong>"})):P()}function j(e,t){var n=h,o=_e.loading.querySelector(".".concat(T.p2)),r=(e.split(".").pop(),function(e){var t,n;e.data&&(1===e.data.t&&(o.innerHTML="BIOS ready",e.target.terminate(),l()),2===e.data.t&&((n=(t=e.data.file.split("/")).pop()).split(".").pop(),_e._FS.createPath("/",t.join("/"),!0,!0),_e._FS.createDataFile("/"+t.join("/"),n,e.data.data,!0,!1),p+=e.data.data.length),4===e.data.t&&0<e.data.total&&(n=Math.floor(e.data.current/e.data.total*100),e=e.data.name||"",n<=100&&0<n&&(o.innerHTML="Decompress BIOS ".concat(e," ").concat(n,"%"))))}),i=!1,a=t.slice?t.slice(0,10):t.subarray(0,10);"7z"===(a=C(a))?(E(w).then(function(e){e.onmessage=r,e.postMessage(t)}),i=!0):"zip"!==a||["arcade","mame","mame2003","fba0.2.97.29"].includes(n.system)?"rar"===a&&(A(_,"rar").then(function(e){e.onmessage=messageCallBack,e.postMessage(t)}),i=!0):(E(x).then(function(e){e.onmessage=r,e.postMessage(t)}),i=!0),i||(p+=t.length,o.innerHTML="BIOS ready",_e._FS.createDataFile("/",e,t,!0,!1),l())}function I(){_e.loading.querySelector(".".concat(T.p1)).innerHTML="Game Core ready";var r=h.config.biosUrl,i=h;Ie.bindFunction.call(h),Ie.setGamepadDialog.call(h),Ie.setCacheDialog.call(h),Ie.setLoadingDialog.call(h),Ie.setNetplayDialog.call(h),Ie.setCheatDialog.call(h),Ie.initGamepad.call(h),Ie.initKeyboard.call(h),Ie.listeners.call(h),_e._FS.createFolder("/","etc",!0,!0),_e.FS.mkdir("/data"),_e.FS.mkdir("/data/saves"),"undefined"!=typeof IDBFS?_e.FS.mount(IDBFS,{},"/data/saves"):_e.FS.mount(_e.FS.filesystems.IDBFS,{},"/data/saves"),_e.FS.mkdir("/shader"),_e.FS.syncfs(!0,function(e){}),Ie.initShaders();var e="";e+="savefile_directory = /data/saves\n",e+="video_vsync = true\n",e+="screenshot_directory = /\n",e+="video_shader = /shader/shader.glslp\n",e+="video_shader_enable = true\n",e+="video_font_enable = false\n",e+="video_scale = 1.0\n",e+="video_gpu_screenshot = false\n",e+="audio_latency = 96\n";var t=Fe.defaultCoreOptionsValues.call(h);i.lightgun&&("nes"===h.system&&(e+='input_libretro_device_p2 = "258"\n'),"segaMS"!==h.system&&"segaMD"!==h.system&&"segaCD"!==h.system||(t.genesis_plus_gx_gun_cursor="yes",t.genesis_plus_gx_invert_mouse="yes",t.genesis_plus_gx_bram="per game",e+='input_libretro_device_p2 = "260"\n'),"snes"===h.system&&(e+='input_libretro_device_p2 = "260"\n'),["snes2002","snes2005","snes2010","snesnext"].includes(h.system)&&(e+='input_libretro_device_p2 = "260"\n')),i.mouse&&("snes"===h.system&&(e+="input_libretro_device_p1 = 2\n"),["snes2002","snes2005","snes2010","snesnext"].includes(h.system)&&(e+="input_libretro_device_p1 = 2\n")),i.multitap&&("snes"===h.system&&(e+="input_libretro_device_p2 = 257\n"),["snes2002","snes2005","snes2010","snesnext"].includes(h.system)&&(e+="input_libretro_device_p2 = 257\n")),"n64"===h.system&&(e+="input_libretro_device_p1 = 5\n"),i.system,e+="fastforward_ratio = 1.0\n",e+="video_smooth = false\n";var a,s,n=X(t,Fe.storage.get("core-options")||{}),o="";2===i.coreVer?(_e._FS.createDataFile("/etc","retroarch.cfg",e,!0,!0),_e._FS.createFolder("/home/web_user","retroarch",!0,!0),_e._FS.createFolder("/home/web_user/retroarch","userdata",!0,!0),_e._FS.createDataFile("/home/web_user/retroarch/userdata","retroarch.cfg",o,!0,!0)):(_e._FS.createDataFile("/etc","retroarch.cfg",e,!0,!0),_e._FS.createFolder("/home/web_user",".config",!0,!0),_e._FS.createFolder("/home/web_user/.config","retroarch",!0,!0),_e._FS.createDataFile("/home/web_user/.config/retroarch","retroarch-core-options.cfg",o,!0,!0)),n&&Object.keys(n).forEach(function(t){return(!i.lightgun||"nes"!==i.system||"system_type"!==t)&&(o+="".concat(t,' = "').concat(n[t],'"\n'),void D.call(i,i.elements.container,"start-game",function(e){Ie.setVariable(t,n[t])}))}),r?(e=r.split("/"),-1<(a=e[e.length-1]).indexOf("?")&&(a=a.substr(0,a.indexOf("?"))),a.split(".").pop(),s=_e.loading.querySelector(".".concat(T.p2)),te.a.head(r,{}).then(function(e){function t(){te.a.get(r,{onDownloadProgress:function(e){e=e.total?"".concat(Math.floor(e.loaded/e.total*100),"%"):"";s.innerHTML="Download BIOS ".concat(e)},responseType:"arraybuffer"}).then(function(e){e=new Uint8Array(e.data);c.db&&c.put(y,{filename:a,filesize:e.length,filetype:o,data:e}),j(a,e)}).catch(function(e){s.innerHTML='<strong style="color:#f00;text-shadow: 0px 0px 3px;">'+h.localization("Network Error")+"</strong>"})}var n=e.headers["content-length"],o=e.headers["content-type"],e=(e.headers["last-modified"],i.system);c.db?c.get(e,function(e){e&&e.filename===a&&e.filesize-n==0&&e.filetype===o?j(e.filename,e.data):t()}):t()}).catch(function(e){s.innerHTML='<strong style="color:#f00;text-shadow: 0px 0px 3px;">'+h.localization("Network Error")+"</strong>"})):l()}function N(e){e=e.byteLength?new Uint8Array(e):e,"undefined"!=typeof GLOBAL_BASE?_e.Module.HEAPU8.set(e,GLOBAL_BASE):"undefined"!=typeof Runtime&&Runtime.GLOBAL_BASE?_e.Module.HEAPU8.set(e,Runtime.GLOBAL_BASE):_e.Module.HEAPU8.set(e,8)}function L(t){var o=_e.loading.querySelector(".".concat(T.p1)),r="";function n(e){var t,n;e.data&&(1===e.data.t&&(U.call(b,b.elements.container,"script-loaded"),e.target.terminate()),2===e.data.t&&(n=(t=e.data.file.split("/").pop()).split(".").pop(),_e.coreFileData[t]=e.data.data,"js"!==n||t.includes(".worker.js")||(r=e.data.data),"mem"===n&&(_e.memData=e.data.data),"wasm"===n&&(_e.wasmData=e.data.data)),4===e.data.t&&0<e.data.total&&(o.innerHTML=h.localization("Decompress Game Core")+" ".concat(Math.floor(e.data.current/e.data.total*100),"%")))}D.call(b,b.elements.container,"script-loaded",function(e){!function(){null!==_e.wasmData?(window.Module.wasmBinary=_e.wasmData,R(),window.Module.monitorRunDependencies=function(e){0===e&&I()},window.Module.onRuntimeInitialized=function(){}):(R(),window.Module.monitorRunDependencies=function(e){console.log("monitorRunDependencies, ",e)},window.Module.onRuntimeInitialized=function(){_e.Module||(_e.Module=window.Module),_e.Module&&_e.Module.FS?_e.FS=_e.Module.FS:_e.FS=window.FS,console.log("onRuntimeInitialized"),I()});var e,t=window.Module;null!==_e.wasmData&&(t.wasmBinary=_e.wasmData),W.isIos&&null!==_e.wasmData?(e=new Blob([r],{type:"text/javascript"}),e=B("script",{src:a.createObjectURL(e)}),document.body.appendChild(e),e.onload=function(){void 0===window.addRunDependency&&"undefined"!=typeof EmulatorJS&&(_e.Module=EmulatorJS(t),EmulatorJS=void 0),null!==_e.memData&&N(_e.memData),_e.Module||(_e.Module=window.Module),_e.Module&&_e.Module.FS?_e.FS=_e.Module.FS:_e.FS=window.FS}):(r=function(e){for(var t=[],n=0;n<e.length;n+=1){var o=e[n];255<o&&(o&=255),t.push(String.fromCharCode(o))}return t.join("")}(r),window.eval(r),void 0===window.addRunDependency&&"undefined"!=typeof EmulatorJS&&(_e.Module=EmulatorJS(t),EmulatorJS=void 0),null!==_e.memData&&N(_e.memData),_e.Module||(_e.Module=window.Module),_e.Module&&_e.Module.FS?_e.FS=_e.Module.FS:_e.FS=window.FS,window.EJS_MODULE=_e.Module,window.ejs_loader=_e,window.ejs_media=Ie),r=null}()}),E(w).then(function(e){e.onmessage=n,e.postMessage(t)})}var e=function(e){return G(_e.loading.querySelector(".".concat(T["start-game"])),!0),function(){var t=_e.loading.querySelector(".".concat(T.p1)),p=h;t.innerHTML=p.localization("Loading")+"...";var n=setInterval(function(){var e,f;!0===o&&!0===r&&!0===i&&(window.Module={TOTAL_MEMORY:268435456,noInitialRun:!0,arguments:[],preRun:[],postRun:[],canvas:S,print:function(e){!0===window.EJS_DEBUG_XX&&console.log(e)},printErr:function(e){!0===window.EJS_DEBUG_XX&&console.log(e)},totalDependencies:0,monitorRunDependencies:function(e){},locateFile:function(e){var t=null;if(e.includes(".worker.js")){Object.keys(_e.coreFileData).includes(e)&&(t=_e.coreFileData[e]);var n=new Blob([""],{type:"application/javascript"});return window.URL.createObjectURL(n)}return e.includes(".js.mem")&&(Object.keys(_e.coreFileData).includes(e)&&(t=_e.coreFileData[e]),t)?(_e.memData=null,t.buffer):e},readAsync:function(e,t,n){var o;e instanceof ArrayBuffer?setTimeout(function(){t(e)},500):((o=new XMLHttpRequest).open("GET",e,!0),o.responseType="arraybuffer",o.onload=function(){200==o.status||0==o.status&&o.response?t(o.response):n()},o.onerror=n,o.send(null))}},e=Math.ceil((new Date).valueOf()/1e3),e=b.customPaths&&"string"==typeof b.customPaths["v.json"]?b.customPaths["v.json"]:b.dataPath+"v.json?t="+e,f=function(n,o){var e=b.customPaths&&"string"==typeof b.customPaths[n]?b.customPaths[n]:2===b.coreVer?b.dataPath+n+"?v="+o:b.dataPath+"old/"+n+"?v="+o;te.a.get(e,{onDownloadProgress:function(e){e=e.total?"".concat(Math.floor(e.loaded/e.total*100),"%"):"";t.innerHTML=p.localization("Download Game Core")+" ".concat(e)},responseType:"arraybuffer"}).then(function(e){var t=new Uint8Array(e.data);k.db&&k.put(n,{version:o,data:t}),2===b.coreVer?L(t):((e=t.slice?t.slice(12):t.subarray(12)).set([55,122,188,175,39,28,0,3],0),t=null,L(e))}).catch(function(e){t.innerHTML='<strong style="color:#f00;text-shadow: 0px 0px 3px;">'+p.localization("Network Error")+"</strong>"})},te.a.get(e,{}).then(function(e){var t=v[p.system],n=e.data[p.system],o=n.version||1,r=Boolean(n.netplay),i=Boolean(n.state),a=Boolean(n.asmjs),s=Boolean(n.wasm);2!==b.coreVer&&n.old&&(a=Boolean(n.old.asmjs),s=Boolean(n.old.wasm)),"nds"!=p.system||Y.wasm||(i=!1),!1===b.statesSupported&&(i=!1),_e.coreFileVersion=o,_e.coreFileName=t;e=!1;if(["webgl2","experimental-webgl2"].includes(Y.webgl.WEBGL_CONTEXT)&&(e=!0),"undefined"!=typeof EJS_N64_LEGACY&&1==EJS_N64_LEGACY&&(e=!1),"mame"==p.system){n=p.mameCore;if(!n||null===n||2!==n.split("|").length)return void(c.innerHTML='<strong style="color:#f00;text-shadow: 0px 0px 3px;">'+p.localization("Missing mame config")+"</strong>");var c=n.split("|");_e.coreFileName="".concat(p.system,"-").concat(c[0]),i="1"===c[1],F.element(p.elements.buttons.saveState)&&G(p.elements.buttons.saveState,!i),F.element(p.elements.buttons.loadState)&&G(p.elements.buttons.loadState,!i),G(Fe.contextMenu.querySelectorAll("ul li").item(2),!i),G(Fe.contextMenu.querySelectorAll("ul li").item(3),!i),u=2===p.coreVer?"":p.system.concat("-old-").concat(c[0],"-wasm.data"),c[0]?(Y.wasm&&s?m=!0:(c.innerHTML='<strong style="color:#f00;text-shadow: 0px 0px 3px;">'+p.localization("Webassembly support is not detected in this browser")+"</strong>",u=""),u&&(k.db?k.get(u,function(e){e&&e.version===o?2===b.coreVer?L(e.data):((e=e.data.slice?e.data.slice(12):e.data.subarray(12)).set([55,122,188,175,39,28,0,3],0),L(e)):f(u,o)}):f(u,o))):c.innerHTML='<strong style="color:#f00;text-shadow: 0px 0px 3px;">'+p.localization("Unsupported Game")+"</strong>"}else{var l,u=!1;if(Y.wasm&&s?(l="wasm",u=!0,"n64"!==p.system||e||(l="legacy-wasm"),m=!0):a&&(u=!0,l="asmjs","n64"!==p.system||e||(l="legacy-asmjs")),"undefined"!=typeof EJS_CUSTOM_COREFILE&&(u=EJS_CUSTOM_COREFILE),!0!==u)return void(c.innerHTML='<strong style="color:#f00;text-shadow: 0px 0px 3px;">'+p.localization("Please upgrade your browser to the latest version")+"</strong>");u=2===p.coreVer?t+"-"+l+".data":t+"-old-"+l+".data","undefined"!=typeof EJS_CUSTOM_COREFILE&&(u=EJS_CUSTOM_COREFILE),k.db?k.get(u,function(e){!e||e.version!==o||"undefined"!=typeof EJS_DEBUG_XX&&!0===EJS_DEBUG_XX?f(u,o):2===b.coreVer?L(e.data):((e=e.data.slice?e.data.slice(12):e.data.subarray(12)).set([55,122,188,175,39,28,0,3],0),L(e))}):f(u,o)}if(2===p.coreVer)if(F.element(p.elements.buttons.cheat)&&G(p.elements.buttons.cheat,!0),F.element(p.elements.buttons.gamepad)&&G(p.elements.buttons.gamepad,!0),F.element(p.elements.buttons.mute)&&G(p.elements.buttons.mute,!0),F.element(p.elements.inputs.volume)&&G(p.elements.inputs.volume,!0),Array.isArray(p.elements.buttons.play))for(var d=0;d<p.elements.buttons.play.length;d++)F.element(p.elements.buttons.play[d])&&G(p.elements.buttons.play[d],!0);else F.element(p.elements.buttons.play)&&G(p.elements.buttons.play,!0);r||F.element(p.elements.buttons.netplay)&&G(p.elements.buttons.netplay,!0),F.element(p.elements.buttons.saveState)&&G(p.elements.buttons.saveState,!i),F.element(p.elements.buttons.loadState)&&G(p.elements.buttons.loadState,!i),G(Fe.contextMenu.querySelectorAll("ul li").item(2),!i),G(Fe.contextMenu.querySelectorAll("ul li").item(3),!i),b.setStatesSupported(i)}).catch(function(e){t.innerHTML='<strong style="color:#f00;text-shadow: 0px 0px 3px;">'+p.localization("Network Error")+"</strong>"}),clearInterval(n),_e.romdb=u)},500)}(),!1};z(_e.loading.querySelector(".".concat(T["start-game"])),"click touchstart",e),!0===b.startOnLoad&&e()}},Se=_e,Te=n(161);function Ce(e){return function(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t<e.length;t++)n[t]=e[t];return n}}(e)||function(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}function Ee(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}var Ae,ke,Me,Oe,Re,Pe=(Ae=["a[href]","area[href]",'input:not([disabled]):not([type="hidden"]):not([aria-hidden])',"select:not([disabled]):not([aria-hidden])","textarea:not([disabled]):not([aria-hidden])","button:not([disabled]):not([aria-hidden])","iframe","object","embed","[contenteditable]",'[tabindex]:not([tabindex^="-"])'],Ee(Ne.prototype,[{key:"registerTriggers",value:function(){for(var t=this,e=arguments.length,n=new Array(e),o=0;o<e;o++)n[o]=arguments[o];n.forEach(function(e){e.addEventListener("click",function(){return t.showModal()})})}},{key:"showModal",value:function(){this.activeElement=document.activeElement,this.modal.setAttribute("aria-hidden","false"),this.modal.classList.add(H({"is-open":!0})),this.setFocusToFirstNode(),this.addEventListeners(),this.config.onShow(this.modal)}},{key:"closeModal",value:function(){var t=this.modal;this.modal.setAttribute("aria-hidden","true"),this.removeEventListeners(),this.config.onClose(this.modal),this.config.awaitCloseAnimation?this.modal.addEventListener("animationend",function e(){t.classList.remove(H({"is-open":!0})),t.removeEventListener("animationend",e,!1)},!1):t.classList.remove(H({"is-open":!0}))}},{key:"addEventListeners",value:function(){this.modal.addEventListener("touchstart",this.onClick),this.modal.addEventListener("click",this.onClick),document.addEventListener("keydown",this.onKeydown)}},{key:"removeEventListeners",value:function(){this.modal.removeEventListener("touchstart",this.onClick),this.modal.removeEventListener("click",this.onClick),document.removeEventListener("keydown",this.onKeydown)}},{key:"onClick",value:function(e){e.target.hasAttribute(this.config.closeTrigger)&&(this.closeModal(),e.preventDefault())}},{key:"onKeydown",value:function(e){this.config.closeByEsckey&&27===e.keyCode&&this.closeModal(e),9===e.keyCode&&this.maintainFocus(e)}},{key:"getFocusableNodes",value:function(){var t=this.modal.querySelectorAll(Ae);return Object.keys(t).map(function(e){return t[e]})}},{key:"setFocusToFirstNode",value:function(){var e;this.config.disableFocus||(e=this.getFocusableNodes()).length&&e[0].focus()}},{key:"maintainFocus",value:function(e){var t,n=this.getFocusableNodes();this.modal.contains(document.activeElement)?(t=n.indexOf(document.activeElement),e.shiftKey&&0===t&&(n[n.length-1].focus(),e.preventDefault()),e.shiftKey||t!==n.length-1||(n[0].focus(),e.preventDefault())):n[0].focus()}}]),ke=Ne,{init:function(e){var n,o,t=Object.assign({},{openTrigger:"data-micromodal-trigger"},e),e=Ce(document.querySelectorAll("[".concat(t.openTrigger,"]"))),r=(n=t.openTrigger,o=[],e.forEach(function(e){var t=e.attributes[n].value;void 0===o[t]&&(o[t]=[]),o[t].push(e)}),o);if(!0!==t.debugMode||!1!==Re(e,r))for(var i in r){var a=r[i];t.targetModal=i,t.triggers=Ce(a),new ke(t)}},show:function(e,t){t=t||{};return t.targetModal=e,!0===t.debugMode&&!1===Oe(e)?Me=null:(Me=new ke(t)).showModal(),Me},close:function(){Me.closeModal()}}),je={defaultControllers:{0:{0:{value:"88",value2:"1"},1:{value:"83",value2:"3"},2:{value:"16",value2:"8"},3:{value:"13",value2:"9"},4:{value:"38",value2:"12"},5:{value:"40",value2:"13"},6:{value:"37",value2:"14"},7:{value:"39",value2:"15"},8:{value:"90",value2:"0"},9:{value:"65",value2:"2"},10:{value:"81",value2:"4"},11:{value:"69",value2:"5"},12:{value:"82",value2:"6"},13:{value:"87",value2:"7"},14:{},15:{},16:{value:"72"},17:{value:"70"},18:{value:"71"},19:{value:"84"},20:{value:"76"},21:{value:"74"},22:{value:"75"},23:{value:"73"},24:{},25:{},26:{}},1:{},2:{},3:{}},controllers:{},virtualGamepadContainer:Me=null,keyMap:{8:"backspace",9:"tab",13:"enter",16:"shift",17:"ctrl",18:"alt",19:"pause/break",20:"caps lock",27:"escape",32:"space",33:"page up",34:"page down",35:"end",36:"home",37:"left arrow",38:"up arrow",39:"right arrow",40:"down arrow",45:"insert",46:"delete",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",65:"a",66:"b",67:"c",68:"d",69:"e",70:"f",71:"g",72:"h",73:"i",74:"j",75:"k",76:"l",77:"m",78:"n",79:"o",80:"p",81:"q",82:"r",83:"s",84:"t",85:"u",86:"v",87:"w",88:"x",89:"y",90:"z",91:"left window key",92:"right window key",93:"select key",96:"numpad 0",97:"numpad 1",98:"numpad 2",99:"numpad 3",100:"numpad 4",101:"numpad 5",102:"numpad 6",103:"numpad 7",104:"numpad 8",105:"numpad 9",106:"multiply",107:"add",109:"subtract",110:"decimal point",111:"divide",112:"f1",113:"f2",114:"f3",115:"f4",116:"f5",117:"f6",118:"f7",119:"f8",120:"f9",121:"f10",122:"f11",123:"f12",144:"num lock",145:"scroll lock",186:"semi-colon",187:"equal sign",188:"comma",189:"dash",190:"period",191:"forward slash",192:"grave accent",219:"open bracket",220:"back slash",221:"close braket",222:"single quote"},saveLoaddbDB:{put:function(t,n){var o=indexedDB.open("ejs-states",1);o.onerror=function(){},o.onsuccess=function(){var e=o.result.transaction(["states"],"readwrite").objectStore("states").put(n,t);e.onerror=function(){},e.onsuccess=function(){}},o.onupgradeneeded=function(){var e=o.result;e.objectStoreNames.contains("states")||e.createObjectStore("states")}},get:function(o){return new Promise(function(t,e){var n=indexedDB.open("ejs-states",1);n.onerror=function(){},n.onsuccess=function(){var e=n.result.transaction(["states"],"readwrite").objectStore("states").get(o);e.onsuccess=async function(e){e=e.target.result;e&&t(e)},e.onerror=function(){}},n.onupgradeneeded=function(){var e=n.result;e.objectStoreNames.contains("states")||e.createObjectStore("states")}})}},saveLoadDB:function(e){try{if(Fe&&"function"==typeof Fe.getCoreOptionsValues){var t=Fe.getCoreOptionsValues()["save-state-location"],n=Fe.getCoreOptionsValues()["save-state-slot"],o=this.config.gameUrl.split("/").pop();if(this.gameName&&(o=this.gameName),!this.gameName&&this.config.gameUrl.startsWith("blob:")||!window.indexedDB)return!1;var r=o+"-"+n;if(!t||"download"===t)return!1;if("save"===e)try{var i=je.saveState();je.saveLoaddbDB.put(r,i)}catch(e){return!1}else je.saveLoaddbDB.get(r).then(function(e){EJS_loadState(e)});return!0}return!1}catch(e){return!1}},gamepad:null,allowCheat:!0,connection:null,connected:!(Re=function(e,t){if(e.length<=0&&(console.warn("MicroModal v".concat(version,": ❗Please specify at least one %c'micromodal-trigger'"),"background-color: #f8f9fa;color: #50596c;font-weight: bold;","data attribute."),console.warn("%cExample:","background-color: #f8f9fa;color: #50596c;font-weight: bold;",'<a href="#" data-micromodal-trigger="my-modal"></a>')),!t)return!0;for(var n in t)Oe(n);return!0}),playerName:"",players:[],waitingList:{},roomMaster:null,inputsData:{},coreOptionData:{},currentFrame:0,wait:!(Oe=function(e){if(!document.getElementById(e))return!1}),progressHelper:{},icons:{lock:'<svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="lock" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" class="svg-inline--fa fa-lock fa-w-14 fa-3x"><path fill="currentColor" d="M400 224h-24v-72C376 68.2 307.8 0 224 0S72 68.2 72 152v72H48c-26.5 0-48 21.5-48 48v192c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V272c0-26.5-21.5-48-48-48zm-104 0H152v-72c0-39.7 32.3-72 72-72s72 32.3 72 72v72z" class=""></path></svg>'},disableInput:!1,disableControl:function(e){if(e){for(var t=0;t<24;t+=1)je.simulateInputFn(0,t,0),je.simulateInputFn(1,t,0),je.simulateInputFn(2,t,0),je.simulateInputFn(3,t,0);je.disableInput=!0}else je.disableInput=!1},loadRoomsListTimer:null,loadRoomsList:function(){},stopLoadRooms:function(){je.loadRoomsListTimer&&clearTimeout(je.loadRoomsListTimer)},openRoom:function(){},isPaused:null,setVolume:null,setVariable:null,simulateInput:null,simulateInputFn:null,toggleShader:null,saveState:null,screenRecord:null,loadState:null,quickSaveState:null,quickLoadState:null,changeStateSlot:null,getScreenData:null,getStateInfo:null,setCheat:null,resetCheat:null,getGameCoreOptions:null,classNames:{"dialog-container":H({"dialog-container":!0}),tabs:H({tabs:!0}),"dialog-title":H({"dialog-title":!0}),"dialog-content":H({"dialog-content":!0}),"dialog-buttons":H({"dialog-buttons":!0}),overlay:H({overlay:!0}),"key-setting-popup":H({"key-setting-popup":!0}),"tabs-panel":H({"tabs-panel":!0}),"tabs-content":H({"tabs-content":!0}),"button-container":H({"button-container":!0}),set:H({set:!0}),active:H({active:!0}),"btn-cancel":H({"btn-cancel":!0}),"btn-reset":H({"btn-reset":!0}),"btn-clear":H({"btn-clear":!0}),"btn-create":H({"btn-create":!0}),"btn-submit":H({"btn-submit":!0}),"btn-join-room":H({"btn-join-room":!0}),"btn-quit":H({"btn-quit":!0}),"btn-create-room":H({"btn-create-room":!0}),"netplay-player-name":H({"netplay-player-name":!0}),"netplay-roomlist":H({"netplay-roomlist":!0}),"netplay-room-name-input":H({"netplay-room-name-input":!0}),"netplay-room-password-input":H({"netplay-room-password-input":!0}),"netplay-create-room-set":H({"netplay-create-room-set":!0}),"netplay-room":H({"netplay-room":!0}),modal:H({modal:!0}),modal__overlay:H({modal__overlay:!0}),modal__container:H({modal__container:!0}),modal__header:H({modal__header:!0}),modal__title:H({modal__title:!0}),modal__close:H({modal__close:!0}),modal__content:H({modal__content:!0}),modal__btn:H({modal__btn:!0}),"modal__btn-primary":H({"modal__btn-primary":!0}),"micromodal-slide":H({"micromodal-slide":!0}),modal__errmsg:H({modal__errmsg:!0}),modal__footer:H({modal__footer:!0}),"cheats-add":H({"cheats-add":!0}),"cheats-list":H({"cheats-list":!0}),"cheat-code-input":H({"cheat-code-input":!0}),"cheat-name-input":H({"cheat-name-input":!0}),"ejs-switch":H({"ejs-switch":!0}),"ejs-delete-cheat":H({"ejs-delete-cheat":!0})},initShaders:function(){for(var e,t=Q,n=Object.keys(t),o=0;o<n.length;o+=1)e=t[n[o]],Se.FS.writeFile("/shader/".concat(n[o]),e),Fe.storage.get("shader")===n[o]&&Se.FS.writeFile("/shader/shader.glslp",e)},setGamepadDialog:function(){var s=this;s.elements.dialogs.gamepad.innerHTML='\n <div class="'+je.classNames["dialog-container"]+'">\n <div class="'+je.classNames["dialog-title"]+'">\n <h4>'+s.localization("Control Settings")+'</h4>\n </div>\n \n <ul class="'+je.classNames.tabs+'" id="controls-tabs">\n <li class="tabs-title" role="presentation"><a href="#" onclick="return false" role="tab" aria-controls="controls-0" aria-selected="false" id="controls-0-label">'+s.localization("Player 1")+'</a></li>\n <li class="tabs-title" role="presentation"><a href="#" onclick="return false" role="tab" aria-controls="controls-1" aria-selected="false" id="controls-1-label">'+s.localization("Player 2")+'</a></li>\n <li class="tabs-title" role="presentation"><a href="#" onclick="return false" role="tab" aria-controls="controls-2" aria-selected="false" id="controls-2-label">'+s.localization("Player 3")+'</a></li>\n <li class="tabs-title" role="presentation"><a href="#" onclick="return false" role="tab" aria-controls="controls-3" aria-selected="false" id="controls-3-label">'+s.localization("Player 4")+'</a></li>\n </ul>\n <div class="'+je.classNames["dialog-content"]+'">\n <div class="'+je.classNames["tabs-content"]+' controls">\n \n </div>\n </div>\n <div class="'+je.classNames["dialog-buttons"]+'">\n <a href="#" onclick="return false" class="'+je.classNames["btn-submit"]+'">'+s.localization("Update")+'</a>\n <a href="#" onclick="return false" class="'+je.classNames["btn-reset"]+'">'+s.localization("Reset")+'</a>\n <a href="#" onclick="return false" class="'+je.classNames["btn-clear"]+'">'+s.localization("Clear")+'</a>\n <a href="#" onclick="return false" class="'+je.classNames["btn-cancel"]+'">'+s.localization("Cancel")+'</a>\n </div>\n <div class="'+je.classNames.overlay+'" hidden>\n <div class="'+je.classNames["key-setting-popup"]+'">\n <span>[Select]</span><br />\n <div style="color:#fff !important">'+s.localization("Press keyboard or gamepad")+"</div>\n </div>\n </div>\n </div>\n ";var i,e='\n <div class="'.concat(je.classNames["tabs-panel"],'" id="controls-{index}" hidden>\n <div>\n <div style="">\n <div class="gamepad" style="font-size:12px">Connected gamepad: <span class="gamepad-name">n/a</span></div>\n </div>\n <div style="width:25%;float:left">&nbsp;</div>\n <div style="font-size:12px;width:50%;float:left">\n <div class="row">\n <div style="text-align:center;width:50%;float:left">'+s.localization("Gamepad")+'</div>\n <div style="text-align:center;width:50%;float:left">'+s.localization("Keyboard")+'</div>\n </div>\n </div>\n <div style="clear:both"></div>\n </div>\n </div>'),n='\n <div class="'.concat(je.classNames["button-container"],'" data-id="{id}" data-index="{index}" data-label="{label}" style="margin-bottom:10px">\n <div style="width:25%;float:left;font-size:12px">\n <label>{label}:</label>\n </div>\n <div style="width:50%;float:left">\n <div>\n <div style="width:50%;float:left;padding: 0 5px;">\n <input style="text-align:center;height:25px;width: 100%;" type="text" data-id="{id}" data-value="" data-type="2" data-index="{index}" readonly="" placeholder="">\n </div>\n <div style="width:50%;float:left;padding: 0 5px;">\n <input style="text-align:center;height:25px;width: 100%;" type="text" data-id="{id}" data-value="" data-type="1" data-index="{index}" readonly="" placeholder="">\n </div>\n <div style="clear:both"></div>\n </div>\n </div>\n <div style="width:25%;float:left">\n <a class="').concat(je.classNames.set,'" href="#" onclick="return false">'+s.localization("Set")+'</a>\n </div>\n <div style="clear:both"></div>\n </div>');i="nes"===s.system?{0:"B",2:"SELECT",3:"START",4:"UP",5:"DOWN",6:"LEFT",7:"RIGHT",8:"A",24:s.localization("QUICK SAVE STATE"),25:s.localization("QUICK LOAD STATE"),26:s.localization("CHANGE STATE SLOT")}:"snes"===s.system?{0:"B",1:"Y",2:"SELECT",3:"START",4:"UP",5:"DOWN",6:"LEFT",7:"RIGHT",8:"A",9:"X",10:"L",11:"R",24:s.localization("QUICK SAVE STATE"),25:s.localization("QUICK LOAD STATE"),26:s.localization("CHANGE STATE SLOT")}:"n64"===s.system?{0:"B",3:"START",4:"UP",5:"DOWN",6:"LEFT",7:"RIGHT",8:"A",10:"L",11:"R",12:"Z",19:"L STICK UP",18:"L STICK DOWN",17:"L STICK LEFT",16:"L STICK RIGHT",23:"R STICK UP",22:"R STICK DOWN",21:"R STICK LEFT",20:"R STICK RIGHT",24:s.localization("QUICK SAVE STATE"),25:s.localization("QUICK LOAD STATE"),26:s.localization("CHANGE STATE SLOT")}:"nds"===s.system?{0:"B",1:"Y",2:"SELECT",3:"START",4:"UP",5:"DOWN",6:"LEFT",7:"RIGHT",8:"A",9:"X",10:"L",11:"R",14:"Microphone",24:s.localization("QUICK SAVE STATE"),25:s.localization("QUICK LOAD STATE"),26:s.localization("CHANGE STATE SLOT")}:{0:"B",1:"Y",2:"SELECT",3:"START",4:"UP",5:"DOWN",6:"LEFT",7:"RIGHT",8:"A",9:"X",10:"L",11:"R",12:"L2",13:"R2",14:"L3",15:"R3",19:"L STICK UP",18:"L STICK DOWN",17:"L STICK LEFT",16:"L STICK RIGHT",23:"R STICK UP",22:"R STICK DOWN",21:"R STICK LEFT",20:"R STICK RIGHT",24:s.localization("QUICK SAVE STATE"),25:s.localization("QUICK LOAD STATE"),26:s.localization("CHANGE STATE SLOT")},["arcade","mame"].includes(s.system)&&(i[2]=s.localization("INSERT COIN")),!1===s.statesSupported&&(delete i[24],delete i[25],delete i[26]);for(var o=[2,3,4,5,6,7,8,0,9,1,10,11,12,13,14,15,19,18,17,16,23,22,21,20,24,25,26],t=0;t<=3;t+=1)!function(t){s.elements.dialogs.gamepad.querySelector(".".concat(je.classNames["tabs-content"])).innerHTML+=e.replace(/{index}/g,t),o.forEach(function(e){i[e]&&(s.elements.dialogs.gamepad.querySelector("#controls-".concat(t)).innerHTML+=n.replace(/{index}/g,t).replace(/{id}/g,e).replace(/{label}/g,i[e]))}),s.elements.dialogs.gamepad.querySelector('[data-id="16"][data-index="'.concat(t,'"][data-type="2"]'))&&(s.elements.dialogs.gamepad.querySelector('[data-id="16"][data-index="'.concat(t,'"][data-type="2"]')).style.backgroundColor="#ccc"),s.elements.dialogs.gamepad.querySelector('[data-id="17"][data-index="'.concat(t,'"][data-type="2"]'))&&(s.elements.dialogs.gamepad.querySelector('[data-id="17"][data-index="'.concat(t,'"][data-type="2"]')).style.backgroundColor="#ccc"),s.elements.dialogs.gamepad.querySelector('[data-id="18"][data-index="'.concat(t,'"][data-type="2"]'))&&(s.elements.dialogs.gamepad.querySelector('[data-id="18"][data-index="'.concat(t,'"][data-type="2"]')).style.backgroundColor="#ccc"),s.elements.dialogs.gamepad.querySelector('[data-id="19"][data-index="'.concat(t,'"][data-type="2"]'))&&(s.elements.dialogs.gamepad.querySelector('[data-id="19"][data-index="'.concat(t,'"][data-type="2"]')).style.backgroundColor="#ccc"),s.elements.dialogs.gamepad.querySelector('[data-id="20"][data-index="'.concat(t,'"][data-type="2"]'))&&(s.elements.dialogs.gamepad.querySelector('[data-id="20"][data-index="'.concat(t,'"][data-type="2"]')).style.backgroundColor="#ccc"),s.elements.dialogs.gamepad.querySelector('[data-id="21"][data-index="'.concat(t,'"][data-type="2"]'))&&(s.elements.dialogs.gamepad.querySelector('[data-id="21"][data-index="'.concat(t,'"][data-type="2"]')).style.backgroundColor="#ccc"),s.elements.dialogs.gamepad.querySelector('[data-id="22"][data-index="'.concat(t,'"][data-type="2"]'))&&(s.elements.dialogs.gamepad.querySelector('[data-id="22"][data-index="'.concat(t,'"][data-type="2"]')).style.backgroundColor="#ccc"),s.elements.dialogs.gamepad.querySelector('[data-id="23"][data-index="'.concat(t,'"][data-type="2"]'))&&(s.elements.dialogs.gamepad.querySelector('[data-id="23"][data-index="'.concat(t,'"][data-type="2"]')).style.backgroundColor="#ccc")}(t);Object.keys(je.controllers).forEach(function(o){je.controllers[o]&&Object.keys(je.controllers[o]).forEach(function(e){var t=s.elements.dialogs.gamepad.querySelector('[data-id="'.concat(e,'"][data-index="').concat(o,'"][data-type="1"]')),n=s.elements.dialogs.gamepad.querySelector('[data-id="'.concat(e,'"][data-index="').concat(o,'"][data-type="2"]'));if(!t||!n)return!1;e=je.controllers[o][e];e&&(e.type&&1!==parseInt(e.type,10)?n.value="":e.value&&(t.value=je.keyMap[e.value]||"",t.setAttribute("data-value",e.value)),e.value2&&(n.value=isNaN(e.value2)?e.value2:"button ".concat(parseInt(e.value2,10)+1),n.setAttribute("data-value",e.value2)))})}),D.call(this,s.elements.dialogs.gamepad.querySelector(".".concat(je.classNames["btn-submit"])),"click",function(e){var t=s.elements.dialogs.gamepad.querySelectorAll("input"),r={};return Array.from(t).forEach(function(e){var t,n=e.getAttribute("data-index"),o=e.getAttribute("data-value");2===parseInt(e.getAttribute("data-type"),10)&&(t=e.getAttribute("data-value"));e=e.getAttribute("data-id");r[n]||(r[n]={}),r[n][e]||(r[n][e]={}),o&&(r[n][e].value=o),t&&(r[n][e].value2=t)}),Fe.storage.set({controllers:r}),je.controllers=r,G(s.elements.dialogs.gamepad,!0),s.elements.container.focus(),e.stopPropagation(),!1}),D.call(this,s.elements.dialogs.gamepad.querySelector(".".concat(je.classNames["btn-reset"])),"click",function(e){je.controllers=JSON.parse(JSON.stringify(je.defaultControllers)),localStorage.removeItem(Fe.storage.key);for(var t=s.elements.dialogs.gamepad.querySelectorAll("input"),n=0;n<t.length;n++){var o=t[n].getAttribute("data-index"),r=t[n].getAttribute("data-type"),i=t[n].getAttribute("data-id"),a=1==r?"value":"value2";je.defaultControllers[o]&&je.defaultControllers[o][i]&&je.defaultControllers[o][i][a]?(t[n].value=1==r?je.keyMap[je.defaultControllers[o][i][a]]:"button "+(parseInt(je.defaultControllers[o][i][a])+1),t[n].setAttribute("data-value",je.defaultControllers[o][i][a])):(t[n].value="",t[n].setAttribute("data-value",""))}}),D.call(this,s.elements.dialogs.gamepad.querySelector(".".concat(je.classNames["btn-clear"])),"click",function(e){var t,n={0:{},1:{},2:{},3:{}};for(t in i)n[0][t]={},n[1][t]={},n[2][t]={},n[3][t]={};je.controllers=n,localStorage.setItem(Fe.storage.key,JSON.stringify({controllers:je.controllers}));for(var o=s.elements.dialogs.gamepad.querySelectorAll("input"),r=0;r<o.length;r++)o[r].value="",o[r].setAttribute("data-value","")}),D.call(this,s.elements.dialogs.gamepad.querySelector(".".concat(je.classNames["btn-cancel"])),"click",function(e){return G(s.elements.dialogs.gamepad,!0),s.elements.container.focus(),e.stopPropagation(),!1}),Array.from(s.elements.dialogs.gamepad.querySelectorAll(".".concat(je.classNames.tabs," li"))).forEach(function(n){D.call(s,n,"mousedown",function(e){V(s.elements.dialogs.gamepad.querySelectorAll(".".concat(je.classNames.tabs," li")),je.classNames.active,!1),V(n,je.classNames.active,!0);var t=n.querySelector("a").getAttribute("aria-controls");return Array.from(s.elements.dialogs.gamepad.querySelectorAll(".".concat(je.classNames["tabs-content"]," .").concat(je.classNames["tabs-panel"]))).forEach(function(e){G(e,!0)}),G(s.elements.dialogs.gamepad.querySelector(".".concat(je.classNames["tabs-content"]," #").concat(t)),!1),e.stopPropagation(),!1})}),U.call(s,s.elements.dialogs.gamepad.querySelector('[aria-controls="controls-0"]').parentNode,"mousedown");var a=s.elements.dialogs.gamepad.querySelector(".".concat(je.classNames.overlay));D.call(s,a,"mousedown",function(e){G(a,!0),e.stopPropagation()}),Array.from(s.elements.dialogs.gamepad.querySelectorAll(".".concat(je.classNames["button-container"]))).forEach(function(t){D.call(s,t,"mousedown",function(e){U.call(s,t.querySelector("a.".concat(je.classNames.set)),e.type,!0,{})})}),Array.from(s.elements.dialogs.gamepad.querySelectorAll(".".concat(je.classNames["tabs-panel"]," a.").concat(je.classNames.set))).forEach(function(r){D.call(s,r,"mousedown",function(e){var t=r.parentNode.parentNode,n=t.getAttribute("data-id"),o=t.getAttribute("data-index"),t=t.getAttribute("data-label");G(a,!1),a.setAttribute("data-id",n),a.setAttribute("data-index",o);t="[ ".concat(t," ]");je.gamepad.gamepads[o]&&n<16?t+='<br /><span style="font-size:12px">Gamepad:'.concat(je.gamepad.gamepads[o].id,"</span><br />"+s.localization("Press keyboard or gamepad")+"<br/>"+s.localization("Press escape (esc) to clear")):t+="<br />Press keyboard<br/>"+s.localization("Press escape (esc) to clear"),a.querySelector(".".concat(je.classNames["key-setting-popup"])).innerHTML=t,e.stopPropagation()})})},setCacheDialog:function(){var t=this;t.elements.dialogs.cache.innerHTML='\n <div class="'.concat(je.classNames["dialog-container"],'">\n <div class="').concat(je.classNames["dialog-title"],'">\n <h4>'+t.localization("Cache Manager")+'</h4>\n </div>\n <div class="').concat(je.classNames["dialog-content"],'">\n\n </div>\n <div class="').concat(je.classNames["dialog-buttons"],'">\n <a href="#" onclick="return false" class="').concat(je.classNames["btn-cancel"],'">'+t.localization("Close")+"</a>\n </div>\n </div>\n "),D.call(this,t.elements.dialogs.cache.querySelector(".".concat(je.classNames["btn-cancel"])),"click",function(e){return G(t.elements.dialogs.cache,!0),t.elements.container.focus(),e.stopPropagation(),!1}),D.call(this,t.elements.dialogs.cache.querySelector(".".concat(je.classNames["dialog-title"]," a")),"click",function(e){return Se.romdb&&(Se.romdb.clear(),t.elements.dialogs.cache.querySelector(".".concat(je.classNames["dialog-content"])).innerHTML='<div style="text-align:center">'+t.localization("Empty")+"</div>"),e.stopPropagation(),!1})},showLoading:function(e){Pe.show("modal-6ed698f3d04061f5",{closeByEsckey:!1}),e&&console.log(""),G(this.elements.dialogs.loading,!1)},hideLoading:function(){Pe.close(),G(this.elements.dialogs.loading,!0)},setLoadingDialog:function(){this.elements.dialogs.loading&&(this.elements.dialogs.loading.innerHTML='\n <div class="'.concat(je.classNames.modal," ").concat(je.classNames["micromodal-slide"],'" id="modal-6ed698f3d04061f5" aria-hidden="true">\n <div class="').concat(je.classNames.modal__overlay,'" tabindex="-1">\n <div class="').concat(je.classNames.modal__container,'" role="dialog" aria-modal="true" aria-labelledby="modal-6ed698f3d04061f5-title">\n '+this.localization("Loading")+"...\n </div>\n </div>\n </div>"))},setCheatDialog:function(){var i,a,o,s=this;s.elements.dialogs.cheat&&(s.elements.dialogs.cheat.innerHTML='\n <div class="'.concat(je.classNames["dialog-container"],'">\n <div class="').concat(je.classNames["dialog-title"],'">\n <h4>Cheats</h4>\n </div>\n <div class="').concat(je.classNames["dialog-content"],'">\n <div class="').concat(je.classNames["cheats-list"],'">\n \n </div>\n </div>\n <div class="').concat(je.classNames["dialog-buttons"],'">\n <a href="#" onclick="return false" class="').concat(je.classNames["cheats-add"],'">'+s.localization("Add Cheat")+'</a>\n <a href="#" onclick="return false" class="').concat(je.classNames["btn-submit"],'">'+s.localization("OK")+'</a>\n <a href="#" onclick="return false" class="').concat(je.classNames["btn-cancel"],'">Close</a>\n </div>\n </div>\n\n \n\n <div class="').concat(je.classNames.modal," ").concat(je.classNames["micromodal-slide"],'" id="modal-85cd7a1c543a484b" aria-hidden="true">\n <div class="').concat(je.classNames.modal__overlay,'" tabindex="-1" data-modal-close>\n <div class="').concat(je.classNames.modal__container,'" style="width:100%" role="dialog" aria-modal="true" aria-labelledby="modal-85cd7a1c543a484b-title">\n <div class="').concat(je.classNames.modal__header,'">\n <h2 class="').concat(je.classNames.modal__title,'" id="modal-85cd7a1c543a484b-title">\n '+s.localization("Add Cheat Code")+'\n </h2>\n <button class="').concat(je.classNames.modal__close,'" aria-label="Close modal" data-modal-close></button>\n </div>\n <main class="').concat(je.classNames.modal__content,'" id="modal-85cd7a1c543a484b-content">\n\n <div class="').concat(je.classNames.modal__errmsg,'"></div>\n <strong>'+s.localization("Code")+'</strong><br />\n <textarea style="width:100%;height:80px;" class="').concat(je.classNames["cheat-code-input"],'"></textarea><br />\n <strong>'+s.localization("Description")+'</strong><br />\n <input type="text" class="').concat(je.classNames["cheat-name-input"],'" /><br />\n\n </main>\n <footer class="').concat(je.classNames.modal__footer,'">\n <button class="').concat(je.classNames.modal__btn," ").concat(je.classNames["modal__btn-primary"],'">'+s.localization("Submit")+'</button>\n <button class="').concat(je.classNames.modal__btn,'" data-modal-close aria-label="Close">'+s.localization("Close")+"</button>\n </footer>\n </div>\n </div>\n </div>\n "),i=s.elements.dialogs.cheat.querySelector("#modal-85cd7a1c543a484b"),D.call(this,s.elements.dialogs.cheat.querySelector(".".concat(je.classNames["cheats-add"])),"click",function(e){return Pe.show("modal-85cd7a1c543a484b",{closeTrigger:"data-modal-close"}),!1}),a=s.elements.dialogs.cheat.querySelector(".".concat(je.classNames["cheats-list"])),D.call(this,i.querySelector(".".concat(je.classNames["modal__btn-primary"])),"click",function(e){var t,n,o=i.querySelector(".".concat(je.classNames["cheat-name-input"])).value,r=i.querySelector(".".concat(je.classNames["cheat-code-input"])).value;return o&&r&&(t=a.querySelectorAll("input:checked"),i.querySelector(".".concat(je.classNames["cheat-name-input"])).value="",i.querySelector(".".concat(je.classNames["cheat-code-input"])).value="",Pe.close(),n=s.cheats.length,s.cheats.push([o,r]),a.innerHTML+='<div class="'.concat(je.classNames["ejs-switch"],'">\n <input type="checkbox" value="').concat(n,'" id="ejs-cheat-switch-').concat(n,'">\n <label for="ejs-cheat-switch-').concat(n,'">').concat(o,'</label>\n <a href="#" data-idx="').concat(n,'" onclick="return false" class="').concat(je.classNames["ejs-delete-cheat"],'">&times;</a>\n </div>'),t.forEach(function(e,t){a.querySelector("#ejs-cheat-switch-".concat(t)).setAttribute("checked","checked")})),"localStorage"in window&&localStorage.setItem("".concat(s.system,"-").concat(s.startName,"-cheats"),JSON.stringify(s.cheats)),e.stopPropagation(),!1}),o=function(){if("localStorage"in window){var e=localStorage.getItem("".concat(s.system,"-").concat(s.startName,"-cheats"));try{e=JSON.parse(e)}catch(e){}e&&(s.cheats=e)}a.innerHTML="",s.cheats&&Array.isArray(s.cheats)&&s.cheats.forEach(function(e,t){var n=e[0];e[1],a.innerHTML+='<div class="'.concat(je.classNames["ejs-switch"],'">\n <input type="checkbox" value="').concat(t,'" id="ejs-cheat-switch-').concat(t,'">\n <label for="ejs-cheat-switch-').concat(t,'">').concat(n,'</label>\n <a href="#" data-idx="').concat(t,'" onclick="return false" class="').concat(je.classNames["ejs-delete-cheat"],'">&times;</a>\n </div>')})},D.call(s,a,"click",function(e){var t,n;return e.target&&e.target.classList.contains(je.classNames["ejs-delete-cheat"])&&e.target.getAttribute("data-idx")&&(t=e.target.getAttribute("data-idx"),s.cheats.splice(t,1),"localStorage"in window&&localStorage.setItem("".concat(s.system,"-").concat(s.startName,"-cheats"),JSON.stringify(s.cheats)),n=[],a.querySelectorAll("input").forEach(function(e,t){n[t]=!!a.querySelector("#ejs-cheat-switch-".concat(t,":checked"))}),n.splice(t,1),o(),n.forEach(function(e,t){e&&a.querySelector("#ejs-cheat-switch-".concat(t)).setAttribute("checked","checked")})),e.stopPropagation(),!1}),D.call(s,s.elements.container,"start-game",function(e){o()}),D.call(this,s.elements.dialogs.cheat.querySelector(".".concat(je.classNames["btn-cancel"])),"click",function(e){return G(s.elements.dialogs.cheat,!0),e.stopPropagation(),s.elements.container.focus(),!1}),D.call(this,s.elements.dialogs.cheat.querySelector(".".concat(je.classNames["btn-submit"])),"click",function(e){return je.resetCheat(),a.querySelectorAll("input:checked").forEach(function(e,t){e=s.cheats[e.value];e&&je.setCheat(t,1,e[1])}),G(s.elements.dialogs.cheat,!0),s.elements.container.focus(),!1}),"arcade"!==s.system&&"mame"!==s.system&&"mame2003"!==s.system&&"mame2010"!==s.system||(F.element(s.elements.buttons.cheat)&&G(s.elements.buttons.cheat,!0),je.allowCheat=!1),je.setCheat||(G(s.elements.buttons.cheat,!0),je.allowCheat=!1))},setNetplayDialog:function(){var n,i,o,r,u,a,s,d,e,c,l,f,p=this,h=this;h.elements.dialogs.netplay&&(h.elements.dialogs.netplay.innerHTML='\n <div class="'.concat(je.classNames["dialog-container"],'">\n <div class="').concat(je.classNames["dialog-title"],'">\n <h4>'+h.localization("Netplay")+'</h4>\n </div>\n <div class="').concat(je.classNames["dialog-content"],'">\n <div class="').concat(je.classNames["netplay-roomlist"],'" hidden>\n <strong>'+h.localization("Rooms")+'</strong>\n <table style="width:100%" cellspacing=0>\n <thead>\n <tr>\n <td>'+h.localization("Room Name")+"</td>\n <td>"+h.localization("Players")+'</td>\n <td></td>\n </tr>\n </thead>\n <tbody>\n <tr>\n <td></td>\n <td></td>\n <td></td>\n </tr>\n </tbody>\n </table>\n </div>\n\n <div class="').concat(je.classNames["netplay-room"],'" hidden>\n <strong>'+h.localization("Room Name")+"</strong>\n <div data-room-password>"+h.localization("Password")+': <span></span></div>\n <table style="width:100%" cellspacing="0">\n <thead>\n <tr>\n <td>'+h.localization("Player")+"</td>\n <td>"+h.localization("Name")+"</td>\n <td></td>\n </tr>\n </thead>\n <tbody>\n <tr>\n <td>1</td>\n <td>"+h.localization("Name")+" 1</td>\n <td></td>\n </tr>\n <tr>\n <td>2</td>\n <td>"+h.localization("Name")+" 2</td>\n <td></td>\n </tr>\n <tr>\n <td>3</td>\n <td>"+h.localization("Name")+" 3</td>\n <td></td>\n </tr>\n <tr>\n <td>4</td>\n <td>"+h.localization("Name")+' 4</td>\n <td></td>\n </tr>\n </tbody>\n </table>\n </div>\n </div>\n <div class="').concat(je.classNames["dialog-buttons"],'">\n <a href="#" onclick="return false" class="').concat(je.classNames["btn-quit"],'">'+h.localization("Quit Room")+'</a>\n <a href="#" onclick="return false" class="').concat(je.classNames["btn-create-room"],'">'+h.localization("Create a Room")+'</a>\n <a href="#" onclick="return false" class="').concat(je.classNames["btn-cancel"],'">'+h.localization("Close")+'</a>\n </div>\n </div>\n\n \n <div class="').concat(je.classNames.modal," ").concat(je.classNames["micromodal-slide"],'" id="modal-9de6c4e9ce2b9361" aria-hidden="true">\n <div class="').concat(je.classNames.modal__overlay,'" tabindex="-1">\n <div class="').concat(je.classNames.modal__container,'" role="dialog" aria-modal="true" aria-labelledby="modal-9de6c4e9ce2b9361-title">\n <div class="').concat(je.classNames.modal__header,'">\n <h2 class="').concat(je.classNames.modal__title,'" id="modal-9de6c4e9ce2b9361-title">\n '+h.localization("Set Player Name")+'\n </h2>\n </div>\n <main class="').concat(je.classNames.modal__content,'" id="modal-9de6c4e9ce2b9361-content">\n\n <div class="').concat(je.classNames.modal__errmsg,'"></div>\n <strong>'+h.localization("Player Name")+'</strong><br />\n <input type="text" maxlength="10" class="').concat(je.classNames["netplay-player-name"],'" /><br />\n\n </main>\n <footer class="').concat(je.classNames.modal__footer,'">\n <button class="').concat(je.classNames.modal__btn," ").concat(je.classNames["modal__btn-primary"],'">'+h.localization("Submit")+'</button>\n </footer>\n </div>\n </div>\n </div>\n \n <div class="').concat(je.classNames.modal," ").concat(je.classNames["micromodal-slide"],'" id="modal-85cd7a1c543a484a" aria-hidden="true">\n <div class="').concat(je.classNames.modal__overlay,'" tabindex="-1" data-modal-close>\n <div class="').concat(je.classNames.modal__container,'" role="dialog" aria-modal="true" aria-labelledby="modal-85cd7a1c543a484a-title">\n <div class="').concat(je.classNames.modal__header,'">\n <h2 class="').concat(je.classNames.modal__title,'" id="modal-85cd7a1c543a484a-title">\n '+h.localization("Create a Room")+'\n </h2>\n <button class="').concat(je.classNames.modal__close,'" aria-label="Close modal" data-modal-close></button>\n </div>\n <main class="').concat(je.classNames.modal__content,'" id="modal-85cd7a1c543a484a-content">\n\n <div class="').concat(je.classNames.modal__errmsg,'"></div>\n <strong>'+h.localization("Room Name")+'</strong><br />\n <input type="text" maxlength="10" class="').concat(je.classNames["netplay-room-name-input"],'" /><br />\n <strong>Max Players</strong><br />\n <select data-max-players>\n <option value="2">2</option>\n <option value="3">3</option>\n <option value="4">4</option>\n </select>\n <br />\n <strong>'+h.localization("Password (optional)")+'</strong><br />\n <input type="text" maxlength="10" class="').concat(je.classNames["netplay-room-password-input"],'" /><br />\n\n </main>\n <footer class="').concat(je.classNames.modal__footer,'">\n <button class="').concat(je.classNames.modal__btn," ").concat(je.classNames["modal__btn-primary"],'">'+h.localization("Submit")+'</button>\n <button class="').concat(je.classNames.modal__btn,'" data-modal-close aria-label="Close">'+h.localization("Close")+'</button>\n </footer>\n </div>\n </div>\n </div>\n \n <div class="').concat(je.classNames.modal," ").concat(je.classNames["micromodal-slide"],'" id="modal-5aa765d61d8327de" aria-hidden="true">\n <div class="').concat(je.classNames.modal__overlay,'" tabindex="-1" data-modal-close>\n <div class="').concat(je.classNames.modal__container,'" role="dialog" aria-modal="true" aria-labelledby="modal-5aa765d61d8327de-title">\n <div class="').concat(je.classNames.modal__header,'">\n <h2 class="').concat(je.classNames.modal__title,'" id="modal-5aa765d61d8327de-title">\n '+h.localization("Password")+'\n </h2>\n <button class="').concat(je.classNames.modal__close,'" aria-label="Close modal" data-modal-close></button>\n </div>\n <main class="').concat(je.classNames.modal__content,'" id="modal-5aa765d61d8327de-content">\n\n <div class="').concat(je.classNames.modal__errmsg,'"></div>\n <input type="text" maxlength="10" class="').concat(je.classNames["netplay-room-password-input"],'" /><br />\n\n </main>\n <footer class="').concat(je.classNames.modal__footer,'">\n <button class="').concat(je.classNames.modal__btn," ").concat(je.classNames["modal__btn-primary"],'">'+h.localization("Submit")+'</button>\n <button class="').concat(je.classNames.modal__btn,'" data-modal-close aria-label="Close">'+h.localization("Close")+'</button>\n </footer>\n </div>\n </div>\n </div>\n \n \n <div class="').concat(je.classNames.modal," ").concat(je.classNames["micromodal-slide"],'" id="modal-7d8fd50ed642340b" aria-hidden="true">\n <div class="').concat(je.classNames.modal__overlay,'" tabindex="-1" data-modal-close>\n <div class="').concat(je.classNames.modal__container,'" role="dialog" aria-modal="true" aria-labelledby="modal-7d8fd50ed642340b-title">\n <div class="').concat(je.classNames.modal__header,'">\n <h2 class="').concat(je.classNames.modal__title,'" id="modal-7d8fd50ed642340b-title"></h2>\n <button class="').concat(je.classNames.modal__close,'" aria-label="Close modal" data-modal-close></button>\n </div>\n <main class="').concat(je.classNames.modal__content,'" id="modal-7d8fd50ed642340b-content">\n \n </main>\n <footer class="').concat(je.classNames.modal__footer,'">\n <button class="').concat(je.classNames.modal__btn," ").concat(je.classNames["modal__btn-primary"],'" data-modal-close>OK</button>\n </footer>\n </div>\n </div>\n </div>\n \n '),D.call(this,h.elements.dialogs.netplay.querySelector(".".concat(je.classNames["btn-cancel"])),"click",function(e){return G(h.elements.dialogs.netplay,!0),je.disableControl(!1),je.stopLoadRooms(),e.stopPropagation(),h.elements.container.focus(),!1}),window.setInterval(function(){var o="<ul>";je.players.forEach(function(e,t){var n=null;e?(je.connection.peers[e]?n=je.connection.peers[e].extra:je.connection.userid===e&&(n=je.connection.extra),o+="<li>".concat(t+1,". ").concat(n.name,"</li>")):o+="<li>".concat(t+1,". </li>")}),o+="</ul>",h.elements.widgets.netplay.innerHTML=o},500),n=h.elements.dialogs.netplay.querySelector("#modal-9de6c4e9ce2b9361"),i=h.elements.dialogs.netplay.querySelector("#modal-85cd7a1c543a484a"),o=h.elements.dialogs.netplay.querySelector("#modal-7d8fd50ed642340b"),r=h.elements.dialogs.netplay.querySelector("#modal-5aa765d61d8327de"),u={},je.connection=new Te.a,(e=p.socketUrl).endsWith("/")||(e+="/"),je.connection.socketURL="/",je.connection.socketURL=e,je.connection.socketMessageEvent="emulatorjs-message",je.connection.socketCustomEvent="emulatorjs-custom-message",e=W.info(),je.connection.extra={name:je.playerName,game_id:h.config.gameId,browser_name:e.name,room_name:" ",domain:document.domain},je.connection.socketMessageEvent="netplay",je.connection.enableFileSharing=!0,je.connection.enableLogs=!1,je.connection.session={data:!0},je.connection.sdpConstraints.mandatory={OfferToReceiveAudio:!1,OfferToReceiveVideo:!1},je.connection.onclose=function(e){},je.connection.iceServers=[{urls:"turn:turn.emulatorjs.com:3478",credential:"dSnmrtehverella",username:"ejs"},{urls:["stun:stun.l.google.com:19302","stun:stun1.l.google.com:19302","stun:stun2.l.google.com:19302","stun:stun.l.google.com:19302?transport=udp"]}],je.connection.maxParticipantsAllowed=4,a=je.netPlayInitFrame=0,s=!1,Module.postMainLoop=function(){var e,t;if(je.currentFrame=parseInt(je.currentFrameNum(),10),je.connected)if(a+=1,je.connection.isInitiator)1<=a&&function(){for(var n=[],e=je.currentFrame-1;e<je.currentFrame;e+=1)je.inputsData[e]?je.inputsData[e].forEach(function(e,t){n.push("".concat(e.index,"|").concat(e.key,"|").concat(e.status,"|").concat(e.frame))}):n.push("-1|||".concat(e));je.connection.send(JSON.stringify({act:"sync-control",value:n})),a=0,je.currentFrame%100==0&&Object.keys(je.inputsData).forEach(function(e,t){e<je.currentFrame-50&&(je.inputsData[e]=null,delete je.inputsData[e])})}();else{if(je.coreOptionData[je.currentFrame]&&(e=je.coreOptionData[je.currentFrame].key,t=je.coreOptionData[je.currentFrame].value,Fe.updateCoreOptions.call(h,e,t),delete je.coreOptionData[je.currentFrame]),je.currentFrame<=0||je.inputsData[je.currentFrame])je.wait=!1,je.systemPause(0),Se.Module.resumeMainLoop(),t=je.inputsData[je.currentFrame],je.inputsData[je.currentFrame]=null,delete je.inputsData[je.currentFrame],(t=t||[]).forEach(function(e,t){0<=e.index&&je.simulateInputFn(e.index,e.key,e.status)});else{je.wait=!0,je.systemPause(1),Se.Module.pauseMainLoop();var n=!1,o=Object.keys(je.inputsData);0==o.length&&(n=!0);for(var r=0;r<o.length;r+=1)if(o[r]>je.currentFrame){console.log("lost",je.currentFrame),n=!0;break}n?je.wait||(!s||s<(new Date).valueOf()-3e3)&&(je.inputsData={},s=(new Date).valueOf(),je.connection.send(JSON.stringify({act:"sync-mem",value:je.connection.userid}),je.roomMaster)):(je.wait=!0,je.systemPause(1),Se.Module.pauseMainLoop())}je.currentFrame%100==0&&Object.keys(je.inputsData).forEach(function(e,t){e<je.currentFrame-50&&(je.inputsData[e]=null,delete je.inputsData[e])})}},je.connection.onopen=function(n){je.connected=!0,je.connection.isInitiator&&(-1===je.players.indexOf(n.userid)&&(0<je.players.filter(function(e,t){return null==e}).length?je.players.forEach(function(e,t){null!=e||je.players.includes(n.userid)||(je.players[t]=n.userid)}):je.players.push(n.userid)),je.connection.send(JSON.stringify({act:"get-players-result",value:je.players,coreOptions:Fe.coreOptionsValues,newuser:n.userid,master:je.connection.userid}))),Fe.updateCoreOptionMenuItems.call(h)},je.connection.onFileStart=function(e){var t=e.name.split("-");"reset"!==t[0]&&0!=t[0]||(je.inputsData={},je.disableControl(!0)),je.progressHelper[e.remoteUserId]={},je.progressHelper[e.remoteUserId].max=e.maxChunks,je.showLoading.call(h),je.connection.isInitiator?(je.wait=!0,je.systemPause(1),Se.Module.pauseMainLoop()):je.inputsData={}},je.connection.onFileProgress=function(e){var t=je.progressHelper[e.remoteUserId];t.current=e.currentPosition||e.maxChunks||t.max},d=!(je.connection.onFileEnd=function(e){je.hideLoading.call(h);var t=e.name.split("-"),n=t[0]>>0;"reset"===t[0]?(n=0,je.connection.isInitiator?(je.systemPause(0),je.disableControl(!1),h.playing=!0,Se.Module.resumeMainLoop()):te.a.get(e.url,{responseType:"arraybuffer"}).then(function(e){je.inputsData={};e=new Uint8Array(e.data);je.loadState(e,n),je.wait=!1,je.systemPause(0),je.disableInput=!1,h.playing=!0,Se.Module.resumeMainLoop()})):"game.state"===t[1]&&(je.connection.isInitiator?(je.openRoom(h),je.wait=!1,je.systemPause(0),Se.Module.resumeMainLoop()):(je.netPlayInitFrame=n,te.a.get(e.url,{responseType:"arraybuffer"}).then(function(e){e=new Uint8Array(e.data);je.loadState(e,n),je.wait=!1,je.disableInput=!1,je.connection.send(JSON.stringify({act:"wait-end",value:je.connection.userid})),je.hideLoading.call(h),h.playing=!0,Se.Module.resumeMainLoop()}))),je.connection.isInitiator||console.log("recv mem end",je.currentFrame,e.name)}),je.connection.onmessage=function(e){var t,a,n,o=e.data||e;try{t=JSON.parse(o)}catch(e){t=null}if(t){if("room-master"===t.act&&(je.roomMaster=t.value),t.act,"short-pause"===t.act&&(d||(je.systemPause(1),Se.Module.pauseMainLoop(),d=!0,je.wait=!0,setTimeout(function(){je.systemPause(0),Se.Module.resumeMainLoop(),je.wait=!1,d=!1},48))),"sync-control"===t.act&&(r=t.value,h.playing||je.wait,a=je.connection.userid,je.players.indexOf(a),je.connection.isInitiator,r.forEach(function(e,t){var n=e.split("|"),o=n[0]>>0,r=n[1]>>0,i=n[2]>>0,e=n[3]>>0,n=je.currentFrame;je.inputsData[e]||(je.inputsData[e]=[]),-1!=o&&e===n&&je.simulateInputFn(o,r,i),je.connection.isInitiator?0<=o&&(je.inputsData[n]||(je.inputsData[n]=[]),-2!=r&&(je.inputsData[n].push({index:o,key:r,status:i,frame:n}),je.simulateInputFn(o,r,i)),d||e<=n-10&&(je.systemPause(1),Se.Module.pauseMainLoop(),d=!0,je.wait=!0,setTimeout(function(){je.systemPause(0),Se.Module.resumeMainLoop(),je.wait=!1,d=!1},48))):(""!==o&&je.inputsData[e].push({index:o,key:r,status:i,frame:e}),je.inputsData[je.currentFrame]&&Se.Module.resumeMainLoop(),n+10<=e&&e>je.netPlayInitFrame+100&&je.connection.send(JSON.stringify({act:"short-pause",value:a}),je.roomMaster))})),t.act,t.act,"update-core-option"===t.act&&(je.connection.isInitiator||(je.coreOptionData[t.frame]={key:t.key,value:t.value})),"restart-game"===t.act&&(je.inputsData={},je.connection.send(JSON.stringify({act:"sync-mem",value:je.connection.userid}),je.roomMaster)),"pause"===t.act&&Se.Module.pauseMainLoop(),"resume"===t.act&&Se.Module.resumeMainLoop(),"wait"===t.act&&(je.wait=!0,je.systemPause(1),t.value!==je.connection.userid&&(je.waitingList[t.value]=1),je.disableControl(!0)),"wait-end"===t.act&&(je.waitingList[t.value]&&delete je.waitingList[t.value],0===Object.keys(je.waitingList).length&&(je.wait=!1,je.systemPause(0),je.disableInput=!1)),"sync-mem"===t.act){je.wait=!0,je.systemPause(1);e=t.value;je.disableControl(!0),je.connection.send(JSON.stringify({act:"wait",value:e}));for(var r=je.getStateInfo().split("|"),i=r[0]>>0,s=new Uint8Array(i),c=r[1]>>0,l=0;l<i;l+=1)s[l]=Se.Module.getValue(c+l);Se._FS.createDataFile("/","game.state",s,!0,!0),Se.Module.cwrap("load_state","number",["string","number"])("game.state",0),Se.FS.unlink("game.state"),je.inputsData={};r=new File([s],"".concat(0,"-game.state"),{type:"",lastModified:new Date});je.connection.shareFile(r,e)}t.act,"get-players-result"===t.act&&(je.players=t.value,je.roomMaster=t.master,t.newuser===je.connection.userid)&&(n=Fe.coreOptionsValues,t.coreOptions&&Object.keys(t.coreOptions).forEach(function(e){n[e]!==t.coreOptions[e]&&Fe.updateCoreOptions.call(h,e,t.coreOptions[e])}),je.showLoading.call(h),je.disableControl(!0),setTimeout(function(){je.connection.send(JSON.stringify({act:"sync-mem",value:je.connection.userid}),je.roomMaster)},1),je.roomMaster&&je.connection.peers[je.roomMaster]&&(je.connection.extra.room_name=je.connection.peers[je.roomMaster].extra.room_name,je.connection.updateExtraData()),je.connection.peers[je.roomMaster]&&(u=je.connection.peers[je.roomMaster].extra),je.openRoom(h))}},je.connection.onUserStatusChanged=function(e){var t;"offline"!==e.status||0<=(t=je.players.indexOf(e.userid))&&(je.players[t]=null),e.status},je.connection.onExtraDataUpdated=function(e){e.userid===je.connection.userid&&(je.connection.extra=e.extra)},je.connection.onleave=function(e){var t;!e.userid||0<=(t=je.players.indexOf(e.userid))&&(je.players[t]=null),je.waitingList[e.userid]&&delete je.waitingList[e.userid],je.connection.isInitiator&&0===Object.keys(je.waitingList).length&&je.wait&&(je.wait=!1,je.systemPause(0),je.disableInput=!1,je.connection.send(JSON.stringify({act:"wait-end",value:je.connection.userid}))),je.openRoom(h),je.inputsData={},je.hideLoading.call(h)},e=function(){try{je.connection.onbeforeunload()}catch(e){}je.connected=!1,je.connection.password=null,je.players=[],je.connection.peersBackup=[],je.waitingList={},je.inputsData={},je.hideLoading.call(h),G(h.elements.buttons.restart,!1),G(h.elements.buttons.loadState,!1),G(h.elements.buttons.saveState,!1),je.allowCheat&&G(h.elements.buttons.cheat,!1),G(Fe.contextMenu.querySelectorAll("ul li").item(2),!1),G(Fe.contextMenu.querySelectorAll("ul li").item(3),!1),Array.from(h.elements.buttons.play).forEach(function(e){G(e,!1)}),Fe.updateCoreOptionMenuItems.call(h)},je.connection.close=e,je.connection.disconnect=e,je.connection.leave=e,l=function(e,t,n){je.hideLoading.call(h),e?(je.stopLoadRooms(),G(h.elements.buttons.restart,!0),G(h.elements.buttons.loadState,!0),G(h.elements.buttons.saveState,!0),je.resetCheat(),G(h.elements.buttons.cheat,!0),G(Fe.contextMenu.querySelectorAll("ul li").item(2),!0),G(Fe.contextMenu.querySelectorAll("ul li").item(3),!0),Array.from(h.elements.buttons.play).forEach(function(e){G(e,!0)}),je.connection.socket&&je.connection.socket.on("set-isInitiator-true",function(e){e===je.connection.sessionid&&(je.connection.socket.emit("extra-data-updated",je.connection.extra),je.connection.send(JSON.stringify({act:"room-master",value:je.connection.userid})),je.roomMaster=je.connection.userid,je.systemPause(0),Se.Module.resumeMainLoop(),Fe.updateCoreOptionMenuItems.call(h),G(h.elements.buttons.restart,!1),G(h.elements.buttons.loadState,!1),G(h.elements.buttons.saveState,!1),Array.from(h.elements.buttons.play).forEach(function(e){G(e,!1)}))})):(Pe.close(),o.querySelector("#modal-7d8fd50ed642340b-content").innerHTML=n,Pe.show("modal-7d8fd50ed642340b",{closeTrigger:"data-modal-close"}))},f=function(e){var t=e.target.getAttribute("data-id");if("Y"===e.target.getAttribute("data-password"))Pe.show("modal-5aa765d61d8327de",{closeTrigger:"data-modal-close"}),r.setAttribute("data-id",t);else{je.showLoading.call(h),je.connection.userid=je.connection.token();try{je.connection.join(t,l)}catch(e){je.hideLoading.call(h),o.querySelector("#modal-7d8fd50ed642340b-content").innerHTML="Error",Pe.show("modal-7d8fd50ed642340b",{closeTrigger:"data-modal-close"})}}return e.stopPropagation(),!1},je.loadRoomsList=function(){G(h.elements.dialogs.netplay.querySelector(".".concat(je.classNames["netplay-roomlist"])),!1),G(h.elements.dialogs.netplay.querySelector(".".concat(je.classNames["netplay-room"])),!0),G(h.elements.dialogs.netplay.querySelector(".".concat(je.classNames["btn-create-room"])),!1),G(h.elements.dialogs.netplay.querySelector(".".concat(je.classNames["btn-quit"])),!0);var e=h.listUrl;e.endsWith("/")||(e+="/");var c=h.elements.dialogs.netplay.querySelector(".".concat(je.classNames["netplay-roomlist"])).querySelector("tbody"),e=[e,"list?game_id=",h.config.gameId,"&domain=",document.domain].join("");te.a.get(e,{}).then(function(i){var a,s;i.data&&(a=[],s=[],c.querySelectorAll("tr").forEach(function(e){s.push(e.getAttribute("id"))}),Object.keys(i.data).forEach(function(e){var t=i.data[e];a.push(e),s.includes(e)&&(r=c.querySelector('tr[id="'.concat(e,'"]')),c.removeChild(r));var n=document.createElement("tr");n.setAttribute("id",e);var o=t.password?je.icons.lock:"",r=t.password?"Y":"N",e=t.current<t.max?'<span data-id="'.concat(e,'" data-password="').concat(r,'" class="').concat(je.classNames["btn-join-room"],'">Join</span>'):"",r=t.country||"?";n.innerHTML="<td>[".concat(r,"] ").concat(o," ").concat(t.room_name,"</td><td>").concat(t.current,"/").concat(t.max,"</td><td>").concat(e,"</td>"),D.call(p,n.querySelector(".".concat(je.classNames["btn-join-room"])),"click",f),c.appendChild(n)}),c.querySelectorAll("tr").forEach(function(e){a.includes(e.id)||c.removeChild(e)})),je.loadRoomsListTimer=setTimeout(je.loadRoomsList,2e3)}).catch(function(e){console.log("Network Error",e),je.loadRoomsListTimer=setTimeout(je.loadRoomsList,2e3)})},je.openRoom=function(e){je.stopLoadRooms(),G(e.elements.dialogs.netplay.querySelector(".".concat(je.classNames["netplay-roomlist"])),!0),G(e.elements.dialogs.netplay.querySelector(".".concat(je.classNames["netplay-room"])),!1),G(e.elements.dialogs.netplay.querySelector(".".concat(je.classNames["btn-create-room"])),!0),G(e.elements.dialogs.netplay.querySelector(".".concat(je.classNames["btn-quit"])),!1),je.resetCheat(),G(e.elements.buttons.cheat,!0);var t=e.elements.dialogs.netplay.querySelector(".".concat(je.classNames["netplay-room"])),e=t.querySelector("[data-room-password]");null===je.connection.password?G(e,!0):(G(e,!1),e.querySelector("span").innerText=je.connection.password);var o=t.querySelector("tbody");o.innerHTML="",t.querySelector("strong").innerText=u.room_name,je.players.forEach(function(e,t){var n=null;e&&(je.connection.peers[e]?n=je.connection.peers[e].extra:je.connection.userid===e&&(n=je.connection.extra),n&&n.name)&&((e=document.createElement("tr")).innerHTML="<td>".concat(t+1,"</td><td>").concat(n.name,"</td><td></td>"),o.appendChild(e))})},D.call(this,r.querySelector(".".concat(je.classNames["modal__btn-primary"])),"click",function(e){var t=r.querySelector(".".concat(je.classNames["netplay-room-password-input"])).value;je.showLoading.call(h),je.connection.password=t;t=r.getAttribute("data-id");je.connection.join(t,function(e,t,n){l(e,0,n),e&&r.classList.remove(H({"is-open":!0}))}),e.stopPropagation()}),D.call(this,n.querySelector(".".concat(je.classNames["modal__btn-primary"])),"click",function(e){var t=(t=n.querySelector(".".concat(je.classNames["netplay-player-name"])).value).replace(/<|>/g,"");n.querySelector(".".concat(je.classNames.modal__errmsg)).innerHTML="",t.trim()&&(je.playerName=t.trim(),je.connection.extra.name=t.trim(),Pe.close()),e.stopPropagation()}),D.call(this,i.querySelector(".".concat(je.classNames["modal__btn-primary"])),"click",function(e){var t=(t=i.querySelector(".".concat(je.classNames["netplay-room-name-input"])).value).replace(/<|>/g,""),n=i.querySelector("select[data-max-players] option:checked").value;n<2&&(n=2),4<n&&(n=4);for(var o=0;o<n;o++)je.players[o]=null;je.connection.maxParticipantsAllowed=n;var r=i.querySelector(".".concat(je.classNames["netplay-room-password-input"])).value;i.querySelector(".".concat(je.classNames.modal__errmsg)).innerHTML="",t.trim()?(je.connection.extra.room_name=t.trim(),""!==r.trim()&&(je.connection.password=r.trim()),je.showLoading.call(h),je.connection.open(je.connection.token(),function(e,t,n){je.hideLoading.call(h),e?(je.players[0]=je.connection.userid,je.roomMaster=je.connection.userid,c.closeModal(),je.stopLoadRooms(),u=je.connection.extra,je.openRoom(h),G(Fe.contextMenu.querySelectorAll("ul li").item(2),!0),G(Fe.contextMenu.querySelectorAll("ul li").item(3),!0)):i.querySelector(".".concat(je.classNames.modal__errmsg)).innerHTML=n})):c.closeModal(),e.stopPropagation()}),D.call(this,h.elements.dialogs.netplay.querySelector(".".concat(je.classNames["btn-create-room"])),"click",function(e){return c=Pe.show("modal-85cd7a1c543a484a",{closeTrigger:"data-modal-close",onClose:function(){h.elements.container.focus()}}),e.stopPropagation(),!1}),D.call(this,h.elements.dialogs.netplay.querySelector(".".concat(je.classNames["btn-quit"])),"click",function(e){return je.connection.close(),je.stopLoadRooms(),je.loadRoomsList(),je.inputsData={},e.stopPropagation(),!1})),window._0x378b5c=je},initKeyboard:function(){var i=this,a=this,s=this.elements.dialogs.gamepad.querySelector(".".concat(je.classNames.overlay));D.call(this,document.body,"keydown keyup",function(n){if(!(112<=n.which&&n.which<=123)){var e=!i.elements.dialogs.gamepad.hidden&&!s.hidden,o="keydown"===n.type;if(o&&e){var t=s.getAttribute("data-index"),r=s.getAttribute("data-id"),e=null;if(n.key&&"escape"===je.keyMap[n.keyCode])return(e=a.elements.dialogs.gamepad.querySelector('[data-id="'.concat(r,'"][data-index="').concat(t,'"][data-type="1"]'))).setAttribute("data-value",""),e.value=""(e=a.elements.dialogs.gamepad.querySelector('[data-id="'.concat(r,'"][data-index="').concat(t,'"][data-type="2"]'))).setAttribute("data-value",""),e.value="",void G(s,!0);t=s.getAttribute("data-index"),r=s.getAttribute("data-id"),e=null;n.key&&((e=a.elements.dialogs.gamepad.querySelector('[data-id="'.concat(r,'"][data-index="').concat(t,'"][data-type="1"]'))).setAttribute("data-value",n.keyCode),e.value=je.keyMap[n.keyCode]),G(s,!0)}else Object.keys(je.controllers).forEach(function(t){Object.keys(je.controllers[t]).forEach(function(e){parseInt(je.controllers[t][e].value,10)===n.keyCode&&["24","25","26"].includes(e)&&"keydown"==n.type&&!n.repeat&&("24"==e?je.quickSaveState():"25"==e?je.quickLoadState():"26"==e&&je.changeStateSlot()),parseInt(je.controllers[t][e].value,10)===n.keyCode&&(o?16<=e&&e<=23?je.simulateInput(t,e,32767):je.simulateInput(t,e,1):je.simulateInput(t,e,0))})})}}),document.body.addEventListener("keydown",function(e){var t=e.keyCode||e.which;[32,37,38,39,40,112,113,114,115,116,117,118,119,120,121,122,123].includes(t)&&e.srcElement===a.elements.container&&e.preventDefault(),e.srcElement.className.split(/ +/).includes(je.classNames.set)&&e.preventDefault()})},initGamepad:function(){var c=this,a=this,l=this.elements.dialogs.gamepad.querySelector(".".concat(je.classNames.overlay)),n=new $.Gamepad;(je.gamepad=n).init()&&(n.bind($.Gamepad.Event.TICK,function(e){e.forEach(function(e){var t;e&&e.axes&&e.axes[9]&&((t=e.axes[9])<3.28571?1==t?(e.extra_buttons[12].pressed||(e.extra_buttons[12]={pressed:!0,value:1},n._fire($.Gamepad.Event.BUTTON_DOWN,{index:12,gamepad:e,gamepadIndex:e.index})),e.extra_buttons[14].pressed||(e.extra_buttons[14]={pressed:!0,value:1},n._fire($.Gamepad.Event.BUTTON_DOWN,{index:14,gamepad:e,gamepadIndex:e.index}))):t<=-.7142857&&-.714291<=t?(e.extra_buttons[12].pressed||(e.extra_buttons[12]={pressed:!0,value:1},n._fire($.Gamepad.Event.BUTTON_DOWN,{index:12,gamepad:e,gamepadIndex:e.index})),e.extra_buttons[15].pressed||(e.extra_buttons[15]={pressed:!0,value:1},n._fire($.Gamepad.Event.BUTTON_DOWN,{index:15,gamepad:e,gamepadIndex:e.index}))):.42856<=t&&t<=.42858?(e.extra_buttons[13].pressed||(e.extra_buttons[13]={pressed:!0,value:1},n._fire($.Gamepad.Event.BUTTON_DOWN,{index:13,gamepad:e,gamepadIndex:e.index})),e.extra_buttons[14].pressed||(e.extra_buttons[14]={pressed:!0,value:1},n._fire($.Gamepad.Event.BUTTON_DOWN,{index:14,gamepad:e,gamepadIndex:e.index}))):-.14287<=t&&t<=-.14285?(e.extra_buttons[13].pressed||(e.extra_buttons[13]={pressed:!0,value:1},n._fire($.Gamepad.Event.BUTTON_DOWN,{index:13,gamepad:e,gamepadIndex:e.index})),e.extra_buttons[15].pressed||(e.extra_buttons[15]={pressed:!0,value:1},n._fire($.Gamepad.Event.BUTTON_DOWN,{index:15,gamepad:e,gamepadIndex:e.index}))):t<=-1&&-1.01<=t?e.extra_buttons[12].pressed||(e.extra_buttons[12]={pressed:!0,value:1},n._fire($.Gamepad.Event.BUTTON_DOWN,{index:12,gamepad:e,gamepadIndex:e.index})):.142857<=t&&t<=.142858?e.extra_buttons[13].pressed||(e.extra_buttons[13]={pressed:!0,value:1},n._fire($.Gamepad.Event.BUTTON_DOWN,{index:13,gamepad:e,gamepadIndex:e.index})):.7142857<=t&&t<=.7142858?e.extra_buttons[14].pressed||(e.extra_buttons[14]={pressed:!0,value:1},n._fire($.Gamepad.Event.BUTTON_DOWN,{index:14,gamepad:e,gamepadIndex:e.index})):t<=-.42857&&-.42858<=t&&(e.extra_buttons[15].pressed||(e.extra_buttons[15]={pressed:!0,value:1},n._fire($.Gamepad.Event.BUTTON_DOWN,{index:15,gamepad:e,gamepadIndex:e.index}))):(e.extra_buttons[12].pressed&&(e.extra_buttons[12]={pressed:!1,value:0},n._fire($.Gamepad.Event.BUTTON_UP,{index:12,gamepad:e,gamepadIndex:e.index})),e.extra_buttons[13].pressed&&(e.extra_buttons[13]={pressed:!1,value:0},n._fire($.Gamepad.Event.BUTTON_UP,{index:13,gamepad:e,gamepadIndex:e.index})),e.extra_buttons[14].pressed&&(e.extra_buttons[14]={pressed:!1,value:0},n._fire($.Gamepad.Event.BUTTON_UP,{index:14,gamepad:e,gamepadIndex:e.index})),e.extra_buttons[15].pressed&&(e.extra_buttons[15]={pressed:!1,value:0},n._fire($.Gamepad.Event.BUTTON_UP,{index:15,gamepad:e,gamepadIndex:e.index}))))})}),n.bind($.Gamepad.Event.BUTTON_DOWN,function(n){if(c.elements.dialogs.gamepad.hidden||l.hidden)Object.keys(je.controllers[n.gamepad.index.toString()]).forEach(function(e){var t=n.gamepad.index.toString();parseInt(je.controllers[t][e].value2,10)===parseInt(n.index,10)&&["24","25","26"].includes(e)&&("24"==e?je.quickSaveState():"25"==e?je.quickLoadState():"26"==e&&je.changeStateSlot()),parseInt(je.controllers[t][e].value2,10)===parseInt(n.index,10)&&parseInt(t,10)===parseInt(n.gamepad.index,10)&&je.simulateInput(t,e,1)});else{var e,t=parseInt(l.getAttribute("data-index"),10),o=l.getAttribute("data-id");if(n.gamepad.index===parseInt(t,10)){for(var r=0;r<32&&((e=n.gamepad.buttons[r])||(e=n.gamepad.extra_buttons[r]),!e||!("number"==typeof e&&1===e||"number"==typeof e.value&&1===e.value));r+=1);var i=null;(i=a.elements.dialogs.gamepad.querySelector('[data-id="'.concat(o,'"][data-index="').concat(t,'"][data-type="2"]'))).setAttribute("data-value",n.index),i.value="button ".concat(n.index+1),G(l,!0)}}}),n.bind($.Gamepad.Event.BUTTON_UP,function(n){Object.keys(je.controllers).forEach(function(t){Object.keys(je.controllers[t]).forEach(function(e){parseInt(je.controllers[t][e].value2,10)===parseInt(n.index,10)&&parseInt(t,10)===parseInt(n.gamepad.index,10)&&je.simulateInput(t,e,0)})})}),n.bind($.Gamepad.Event.AXIS_CHANGED,function(e){var t,n=.5<(t=parseFloat(e.value))||t<.5?0<t?1:-1:0;if(c.elements.dialogs.gamepad.hidden||l.hidden){je.prevButtons||(je.prevButtons={});var o=!1,r=e.gamepad.index.toString();je.prevButtons[r]||(je.prevButtons[r]={}),je.prevButtons[r][e.axis]||(je.prevButtons[r][e.axis]=0),je.prevButtons[r].buttonID||(je.prevButtons[r].buttonID=0);for(var i=0;i<Object.keys(je.controllers[r]).length;i++){var a=Object.keys(je.controllers[r])[i];je.controllers[r][a].value2&&(je.controllers[r][a].value2.split(":")[0]===e.axis&&parseInt(je.controllers[r][a].value2.split(":")[1])===n&&["24","25","26"].includes(a)&&("24"==a?(o=!0,je.quickSaveState()):"25"==a?(o=!0,je.quickLoadState()):"26"==a&&je.changeStateSlot()),0==n?je.controllers[r][a].value2.split(":")[0]===e.axis&&(je.prevButtons[r][e.axis]=n,je.prevButtons[r].buttonID=a,je.simulateInput(r,a,0)):((1===je.prevButtons[r][e.axis]&&-1==n||-1===je.prevButtons[r][e.axis]&&1==n)&&je.simulateInput(r,je.prevButtons[r].buttonID,0),je.controllers[r][a].value2.split(":")[0]===e.axis&&parseInt(je.controllers[r][a].value2.split(":")[1])===n&&(je.prevButtons[r][e.axis]=n,je.prevButtons[r].buttonID=a,o=!0,je.simulateInput(r,a,1))))}if(o)return;if(!c.elements.dialogs.gamepad.hidden&&!l.hidden)return}else 0!=n&&(t=l.getAttribute("data-id"),s=parseInt(l.getAttribute("data-index"),10),(s=c.elements.dialogs.gamepad.querySelector('[data-id="'.concat(t,'"][data-index="').concat(s,'"][data-type="2"]'))).setAttribute("data-value",e.axis+":"+n),s.value=e.axis+":"+n,G(l,!0));Math.abs(e.value)<=.1&&(e.value=0);var s=e.gamepad.index;"LEFT_STICK_X"===e.axis&&(0<e.value?(je.simulateInput(s,16,32767*e.value),je.simulateInput(s,17,0)):(je.simulateInput(s,17,32767*e.value),je.simulateInput(s,16,0))),"LEFT_STICK_Y"===e.axis&&(0<e.value?(je.simulateInput(s,18,32767*e.value),je.simulateInput(s,19,0)):(je.simulateInput(s,19,32767*e.value),je.simulateInput(s,18,0))),"RIGHT_STICK_X"===e.axis&&(0<e.value?(je.simulateInput(s,20,32767*e.value),je.simulateInput(s,21,0)):(je.simulateInput(s,21,32767*e.value),je.simulateInput(s,20,0))),"RIGHT_STICK_Y"===e.axis&&(0<e.value?(je.simulateInput(s,22,32767*e.value),je.simulateInput(s,23,0)):(je.simulateInput(s,23,32767*e.value),je.simulateInput(s,22,0)))}),n.bind($.Gamepad.Event.DISCONNECTED,function(e){[0,1,2,3].forEach(function(e){var t=n.gamepads[e];a.elements.dialogs.gamepad.querySelector("#controls-".concat(e," .gamepad-name")).innerHTML=t?t.id:"n/a"})}),n.bind($.Gamepad.Event.CONNECTED,function(e){Object.keys(n.gamepads).forEach(function(e){var t=n.gamepads[e];a.elements.dialogs.gamepad.querySelector("#controls-".concat(e," .gamepad-name")).innerHTML=t?t.id:"n/a"})}))},setShader:function(e){"disabled"===e?(Se.FS.unlink("/shader/shader.glslp",""),je.toggleShader&&je.toggleShader(0)):(je.toggleShader&&je.toggleShader(0),e="/shader/".concat(e),Se.FS.writeFile("/shader/shader.glslp",function(e){if(!(e instanceof Int32Array))throw new Error("uintArrayToString: Only accepts Int32Array parameter");for(var t="",n=0,o=e.length;n<o;n+=1){var r=e[n];if(65535<r)throw new Error("Invalid value attempted to be serialised");t+=String.fromCharCode(r)}return t}(new Int32Array(Se.FS.readFile(e)))),je.toggleShader&&je.toggleShader(1))},toggleVirtualGamepad:function(e){var t=this;if(null===je.virtualGamepadContainer){je.virtualGamepadContainer=B("div",{class:H({"ejs-virtual-gamepad":!0}),hidden:""}),this.elements.container.appendChild(je.virtualGamepadContainer);var n,o="height:31px;text-align:center;border:1px solid #ccc;border-radius:5px;line-height:31px;",r="";n=["snes","nds"].includes(t.system)?{order:["X","Y","A","B"],orderCSS:["left:40px;","top:40px;","left:81px;top:40px;","left:40px;top:80px;"],LandR:!0}:["gba","gb","vb","nes"].includes(t.system)?{order:["B","A"],orderCSS:["left:-10px;top:70px;","left:60px;top:70px;"],LandR:"gba"===t.system}:["n64"].includes(t.system)?{order:["B","A"],orderCSS:["left:-10px;top:95px;","left:40px;top:150px;"],LandR:!0}:{order:["Y","X","B","A"],orderCSS:["left:40px;","top:40px;","left:81px;top:40px;","left:40px;top:80px;"],LandR:!0},r+='<div class="'+H({"virtual-gamepad":!0})+'" style="display: block;">',r+='<div class="'+H({top:!0})+'">',!0===n.LandR&&("n64"===t.system?(r+='<div class="'+H({buttons:!0,b_l:!0})+'" style="left:10px;top:-40px;'+o+'">L</div>',r+='<div class="'+H({buttons:!0,b_z:!0})+'" style="left:10px;'+o+'">Z</div>',r+='<div class="'+H({buttons:!0,b_r:!0})+'" style="right:10px;top:-40px;'+o+'">R</div>'):(r+='<div class="'+H({buttons:!0,b_l:!0})+'" style="left:10px;'+o+'">L</div>',r+='<div class="'+H({buttons:!0,b_r:!0})+'" style="right:10px;'+o+'">R</div>')),r+="</div>",r+='<div class="'+H({left:!0})+'"></div>',r+='<div class="'+H({center:!0})+'">',"n64"===t.system?(r+='<div class="'+H({buttons:!0,b_c:!0})+'" style="left:65px;">'+t.localization("Menu")+"</div>",r+='<div class="'+H({buttons:!0,b_start:!0})+'" style="left:0px;">'+t.localization("Start")+"</div>"):(r+='<div class="'+H({buttons:!0,b_start:!0})+'" style="left:30px;">'+t.localization("Start")+"</div>",r+='<div class="'+H({buttons:!0,b_c:!0})+'" style="left:95px;">'+t.localization("Menu")+"</div>",r+='<div class="'+H({buttons:!0,b_select:!0})+'" style="left:-35px;">'+t.localization("Select")+"</div>"),r+="</div>",r+='<div class="'+H({right:!0})+'">',"n64"===t.system&&(r+='<div class="'+H({buttons:!0,b_cu:!0})+'" style="left:25px;top:-65px;"></div>',r+='<div class="'+H({buttons:!0,b_cd:!0})+'" style="left:25px;top:15px;"></div>',r+='<div class="'+H({buttons:!0,b_cl:!0})+'" style="left:-15px;top:-25px;"></div>',r+='<div class="'+H({buttons:!0,b_cr:!0})+'" style="left:65px;top:-25px;"></div>');for(var i=0;i<n.order.length;i++){var a={buttons:!0};a["b_"+n.order[i].toLowerCase()]=!0,r+='<div class="'+H(a)+'" style="'+n.orderCSS[i]+'">'+n.order[i]+"</div>"}r+="</div></div>",je.virtualGamepadContainer.innerHTML=r,G(je.virtualGamepadContainer,!e);o=Z.a.create({zone:q.call(this,".".concat(H({"ejs-virtual-gamepad":!0})," .").concat(H({left:!0}))),mode:"static",position:{left:"50%",top:"50%"},color:"red"});function s(){return"n64"!==t.system?{downVal:1,4:4,5:5,6:6,7:7}:(Fe&&"function"==typeof Fe.getCoreOptionsValues&&(e=Fe.getCoreOptionsValues()["joystick-input"]),"d-pad"===e?{downVal:1,4:4,5:5,6:6,7:7}:{downVal:32767,4:19,5:18,6:17,7:16});var e}o.on("end",function(e,t){je.syncInput(0,s()[4],0),je.syncInput(0,s()[5],0),je.syncInput(0,s()[6],0),je.syncInput(0,s()[7],0)}),o.on("move",function(e,t){t=t.angle.degree;30<=t&&t<150?je.syncInput(0,s()[4],s().downVal):window.setTimeout(function(){je.syncInput(0,s()[4],0)},30),210<=t&&t<330?je.syncInput(0,s()[5],s().downVal):window.setTimeout(function(){je.syncInput(0,s()[5],0)},30),120<=t&&t<240?je.syncInput(0,s()[6],s().downVal):window.setTimeout(function(){je.syncInput(0,s()[6],0)},30),300<=t||0<=t&&t<60?je.syncInput(0,s()[7],s().downVal):window.setTimeout(function(){je.syncInput(0,s()[7],0)},30)});var c,o=H({"virtual-gamepad":!0}),l=H({touch:!0});W.isIos||D.call(this,q.call(this,".".concat(o)),"touchmove",function(e){e.stopPropagation()}),D.call(this,q.call(this,".".concat(o," .").concat(H({b_a:!0}))),"touchstart touchend mousedown mouseup mouseout",function(e){["touchend","mouseup","mouseout"].includes(e.type)?(V(e.target,l,!1),window.setTimeout(function(){je.syncInput(0,8,0)},30)):(V(e.target,l,!0),je.syncInput(0,8,1)),e.stopPropagation()}),D.call(this,q.call(this,".".concat(o," .").concat(H({b_b:!0}))),"touchstart touchend mousedown mouseup mouseout",function(e){["touchend","mouseup","mouseout"].includes(e.type)?(V(e.target,l,!1),window.setTimeout(function(){je.syncInput(0,0,0)},30)):(V(e.target,l,!0),je.syncInput(0,0,1)),e.stopPropagation()}),D.call(this,q.call(this,".".concat(o," .").concat(H({b_x:!0}))),"touchstart touchend mousedown mouseup mouseout",function(e){["touchend","mouseup","mouseout"].includes(e.type)?(V(e.target,l,!1),window.setTimeout(function(){je.syncInput(0,9,0)},30)):(V(e.target,l,!0),je.syncInput(0,9,1)),e.stopPropagation()}),D.call(this,q.call(this,".".concat(o," .").concat(H({b_y:!0}))),"touchstart touchend mousedown mouseup mouseout",function(e){["touchend","mouseup","mouseout"].includes(e.type)?(V(e.target,l,!1),window.setTimeout(function(){je.syncInput(0,1,0)},30)):(V(e.target,l,!0),je.syncInput(0,1,1)),e.stopPropagation()}),D.call(this,q.call(this,".".concat(o," .").concat(H({b_l:!0}))),"touchstart touchend mousedown mouseup mouseout",function(e){["touchend","mouseup","mouseout"].includes(e.type)?(V(e.target,l,!1),window.setTimeout(function(){je.syncInput(0,10,0)},30)):(V(e.target,l,!0),je.syncInput(0,10,1)),e.stopPropagation()}),D.call(this,q.call(this,".".concat(o," .").concat(H({b_z:!0}))),"touchstart touchend mousedown mouseup mouseout",function(e){["touchend","mouseup","mouseout"].includes(e.type)?(V(e.target,l,!1),window.setTimeout(function(){je.syncInput(0,12,0)},30)):(V(e.target,l,!0),je.syncInput(0,12,1)),e.stopPropagation()}),D.call(this,q.call(this,".".concat(o," .").concat(H({b_r:!0}))),"touchstart touchend mousedown mouseup mouseout",function(e){["touchend","mouseup","mouseout"].includes(e.type)?(V(e.target,l,!1),window.setTimeout(function(){je.syncInput(0,11,0)},30)):(V(e.target,l,!0),je.syncInput(0,11,1)),e.stopPropagation()}),D.call(this,q.call(this,".".concat(o," .").concat(H({b_start:!0}))),"touchstart touchend mousedown mouseup mouseout",function(e){["touchend","mouseup","mouseout"].includes(e.type)?(V(e.target,l,!1),window.setTimeout(function(){je.syncInput(0,3,0)},30)):(V(e.target,l,!0),je.syncInput(0,3,1)),e.stopPropagation()}),D.call(this,q.call(this,".".concat(o," .").concat(H({b_cu:!0}))),"touchstart touchend mousedown mouseup mouseout",function(e){["touchend","mouseup","mouseout"].includes(e.type)?(V(e.target,l,!1),window.setTimeout(function(){je.syncInput(0,23,0)},30)):(V(e.target,l,!0),je.syncInput(0,23,32767)),e.stopPropagation()}),D.call(this,q.call(this,".".concat(o," .").concat(H({b_cd:!0}))),"touchstart touchend mousedown mouseup mouseout",function(e){["touchend","mouseup","mouseout"].includes(e.type)?(V(e.target,l,!1),window.setTimeout(function(){je.syncInput(0,22,0)},30)):(V(e.target,l,!0),je.syncInput(0,22,32767)),e.stopPropagation()}),D.call(this,q.call(this,".".concat(o," .").concat(H({b_cl:!0}))),"touchstart touchend mousedown mouseup mouseout",function(e){["touchend","mouseup","mouseout"].includes(e.type)?(V(e.target,l,!1),window.setTimeout(function(){je.syncInput(0,21,0)},30)):(V(e.target,l,!0),je.syncInput(0,21,32767)),e.stopPropagation()}),D.call(this,q.call(this,".".concat(o," .").concat(H({b_cr:!0}))),"touchstart touchend mousedown mouseup mouseout",function(e){["touchend","mouseup","mouseout"].includes(e.type)?(V(e.target,l,!1),window.setTimeout(function(){je.syncInput(0,20,0)},30)):(V(e.target,l,!0),je.syncInput(0,20,32767)),e.stopPropagation()}),D.call(this,q.call(this,".".concat(o," .").concat(H({b_c:!0}))),"touchstart touchend mousedown mouseup mouseout",function(e){["touchend","mouseup","mouseout"].includes(e.type)?V(e.target,l,!1):(V(e.target,l,!0),clearTimeout(c),ne.toggleControls.call(t,!0),c=setTimeout(function(){ne.toggleControls.call(t,!1)},5e3))}),D.call(this,q.call(this,".".concat(o," .").concat(H({b_select:!0}))),"touchstart touchend mousedown mouseup mouseout",function(e){["touchend","mouseup","mouseout"].includes(e.type)?(V(e.target,l,!1),window.setTimeout(function(){je.syncInput(0,2,0)},30)):(V(e.target,l,!0),je.syncInput(0,2,1)),e.stopPropagation()})}else G(je.virtualGamepadContainer,!e)},setup:function(){var e,t,n,r=this;this.game?(je.playerName=r.config.playerName,V(this.elements.container,this.config.classNames.type,!0),this.elements.container.setAttribute("tabindex","0"),this.color&&(e=function(e){var t=e.toLowerCase();if(t&&/^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/.test(t)){if(4===t.length){for(var n="#",o=1;o<4;o+=1)n+=t.slice(o,o+1).concat(t.slice(o,o+1));t=n}for(var r=[],i=1;i<7;i+=2)r.push(parseInt("0x".concat(t.slice(i,i+2)),16));return r}return null}(this.color))&&this.elements.container.setAttribute("style","--ejs-primary-color: ".concat(e[0],", ").concat(e[1],", ").concat(e[2])),this.elements.wrapper=B("div",{class:this.config.classNames.video}),x(this.game,this.elements.wrapper),"video"!==r.game.tagName.toLocaleLowerCase()&&(t=this.config.volume,Object.defineProperty(r.game,"volume",{get:function(){return t},set:function(e){t=e,U.call(r,r.game,"volumechange")}}),n=r.storage.get("muted"),Object.defineProperty(r.game,"muted",{get:function(){return n},set:function(e){e=!!F.boolean(e)&&e;n=e,U.call(r,r.game,"volumechange")}})),window.addEventListener("beforeunload",function(e){if(r.started){var t=r.startName.split("/").pop().split("."),n=t.slice(0,t.length-1).join(".");Se.FS.syncfs(function(e){});try{var o="srm";"nds"===r.system&&(o="dsv"),Se.FS.unlink("/data/saves/".concat(n,".").concat(o))}catch(e){console.log("fail to save")}je.saveSavFiles(),Se.FS.syncfs(function(e){})}},!0)):console.warn("No game element found!")},listeners:function(){var o=this;o.elements.buttons.restart&&D.call(o,o.elements.buttons.restart,"click",function(e){if(je.restartGame(),je.inputsData={},je.connected&&je.connection.isInitiator){for(var t=je.getStateInfo().split("|"),n=t[0]>>0,o=(t[2],new Uint8Array(n)),r=t[1]>>0,i=0;i<n;i+=1)o[i]=Se.Module.getValue(r+i);t=new File([o],"0-game.state",{type:"",lastModified:new Date});je.connection.shareFile(t),je.inputsData={},je.wait=!0,je.systemPause(1),Se.Module.pauseMainLoop(),je.disableControl(!0)}}),o.elements.buttons.screenRecord&&D.call(o,o.elements.buttons.screenRecord,"click",function(e){var t;o.recordData||(o.recordData={started:!1,data:[],stopped:!1}),o.recordData.started?o.recordData.started&&(o.recordData.recorder.stop(),o.recordData.stopped=!0):(o.elements.buttons.screenRecord.getElementsByClassName("ejs--74c6d4176d27e37a19d2e9e61de8f4")[0].innerHTML=o.localization("Stop Screen Recording"),t=MediaRecorder.isTypeSupported("video/webm; codecs=h264")?{mimeType:"video/webm; codecs=h264"}:MediaRecorder.isTypeSupported("video/webm; codecs=H264")?{mimeType:"video/webm; codecs=H264"}:MediaRecorder.isTypeSupported("video/webm; codecs=vp9")?{mimeType:"video/webm; codecs=vp9"}:MediaRecorder.isTypeSupported("video/webm; codecs=vp8")?{mimeType:"video/webm; codecs=vp8"}:MediaRecorder.isTypeSupported("video/webm; codecs=avc1")?{mimeType:"video/webm; codecs=avc1"}:MediaRecorder.isTypeSupported("video/webm; codecs=vp9.0")?{mimeType:"video/webm; codecs=vp9.0"}:MediaRecorder.isTypeSupported("video/webm; codecs=vp8.0")?{mimeType:"video/webm; codecs=vp8.0"}:{},o.recordData.stream=Se.Module.canvas.captureStream(30),o.recordData.recorder=new MediaRecorder(o.recordData.stream,t),o.recordData.recorder.ondataavailable=function(e){var t;0<e.data.size&&o.recordData.data.push(e.data),o.recordData.stopped&&((e=document.createElement("a")).href=window.URL.createObjectURL(new Blob(o.recordData.data,{type:"video/webm"})),"string"==typeof o.gameName&&(t=o.gameName),e.download=t?"".concat(t,"-recording.webm"):"record.webm",e.click(),window.URL.revokeObjectURL(e.href),delete o.recordData,o.elements.buttons.screenRecord.getElementsByClassName("ejs--74c6d4176d27e37a19d2e9e61de8f4")[0].innerHTML=o.localization("Start Screen Recording"))},o.recordData.recorder.start(),o.recordData.started=!0)}),o.elements.buttons.play&&Array.from(o.elements.buttons.play).forEach(function(e){D.call(o,e,"click",function(e){o.playing?(o.playing=!1,Se.Module.pauseMainLoop(),je.connected&&je.connection.isInitiator&&je.connection.send(JSON.stringify({act:"pause"})),U.call(o,o.elements.container,"pause",!1,{pause:!0})):(o.playing=!0,Se.Module.resumeMainLoop(),je.connected&&je.connection.isInitiator&&je.connection.send(JSON.stringify({act:"resume"})),U.call(o,o.elements.container,"pause",!1,{pause:!1}))})}),o.elements.buttons.netplay&&D.call(o,o.elements.buttons.netplay,"click",function(e){je.disableControl(!0),G(o.elements.dialogs.netplay,!1),0<je.players.length?je.openRoom(o):(je.stopLoadRooms(),je.loadRoomsList()),je.playerName||Pe.show("modal-9de6c4e9ce2b9361",{closeByEsckey:!1})}),o.elements.buttons.cheat&&D.call(o,o.elements.buttons.cheat,"click",function(e){G(o.elements.dialogs.cheat,!1)}),D.call(o,o.elements.container,"savestate",function(e){var t;je.saveLoadDB.call(o,"save")||(t=e.detail.state,F.function(o.config.onsavestate)?o.config.onsavestate.call(null,{screenshot:e.detail.screenshot,state:t}):(e=new Blob([t]),t=(t=o.startName.split("/").pop().split(".")).slice(0,t.length-1).join("."),"string"==typeof o.gameName&&(t=o.gameName),t=t?"".concat(t,".state"):"game.state",J()(e,t)),o.elements.container.focus())}),o.game.stateloadField=B("input"),o.game.stateloadField.type="file",o.game.stateloadField.onchange=function e(t){var n,t=t.target.files;0<t.length&&((n=new FileReader).file_name=t[0].name,n.onload=function(){var e=new Uint8Array(n.result);EJS_loadState(e)},n.readAsArrayBuffer(t[0])),o.game.stateloadField=B("input"),o.game.stateloadField.type="file",o.game.stateloadField.onchange=e},D.call(o,o.elements.container,"loadstate",function(e){je.saveLoadDB.call(o,"load")||(F.function(o.config.onloadstate)?o.config.onloadstate.call(null,o.loadState):o.game.stateloadField.click(),o.elements.container.focus())}),document.addEventListener("visibilitychange",function(){"hidden"===document.visibilityState?console.log("hidden"):console.log("active")})},bindFunction:function(){var t,a=this,s=a.system;Se.Module&&Se.Module._set_volume&&(t=Se.Module.cwrap("set_volume","null",["number"]),je.setVolume=function(){var e=0;a.volume<1&&(e=0===a.volume?-80:30*a.volume-30,t(e)),a.muted&&(e=-80),t(e)}),je.setVariable=Se.Module.cwrap("set_variable","null",["string","string"]),je.simulateInputFn=Se.Module.cwrap("simulate_input","null",["number","number","number"]);var c={0:null,1:null,2:null,3:null,4:null,5:null,6:null,7:null,8:null,9:null,10:null,11:null,12:null,13:null,14:null,15:null,16:null,17:null,18:null,19:null,20:null,21:null,22:null,23:null,24:null,25:null,26:null,27:null,28:null,29:null,30:null,31:null};je.simulateInput=function(e,t,n){var o,r,i;je.connected?a.playing&&!je.disableInput&&(i=je.connection.userid,o=je.roomMaster===i,r=je.players.indexOf(i),i=je.currentFrameNum(),e>>0==0&&(c[t]!==n&&(o?(je.inputsData[i]||(je.inputsData[i]=[]),je.inputsData[i].push({index:r,key:t,status:n,frame:i}),je.simulateInputFn(r,t,n)):je.connection.send(JSON.stringify({act:"sync-control",value:["".concat(r,"|").concat(t,"|").concat(n,"|").concat(i)]}),je.roomMaster)),c[t]=n)):je.disableInput||je.simulateInputFn(e,t,n)},je.syncInput=je.simulateInput,window.simulateInput=je.simulateInput;var n=Se.Module.cwrap("shader_enable","null",["number"]);je.toggleShader=function(e){return n(e)},je.getStateInfo=Se.Module.cwrap("get_state_info","string",[]),je.saveState=function(){var e,t=je.getStateInfo().split("|"),n=t[0]>>0;if(0<n){e=new Uint8Array(n);for(var o=t[1]>>0,r=0;r<n;r++)e[r]=Se.Module.getValue(o+r)}return e};var l=Se.Module.cwrap("load_state","number",["string","number"]);je.loadState=function(e,t){try{Se.FS.unlink("game.state")}catch(e){}if(Se._FS.createDataFile("/","game.state",e,!0,!0),null===t&&(t=0),"arcade"===s?setTimeout(function(){je.getStateInfo(),l("game.state",t),Se.FS.unlink("game.state")},10):(l("game.state",t),setTimeout(function(){Se.FS.unlink("game.state")},100)),je.connected&&je.connection.isInitiator){for(var e=je.getStateInfo().split("|"),n=e[0]>>0,o=(e[2],new Uint8Array(n)),r=e[1]>>0,i=0;i<n;i+=1)o[i]=Se.Module.getValue(r+i);e=new File([o],"0-game.state",{type:"",lastModified:new Date});je.connection.shareFile(e),je.inputsData={},je.wait=!0,je.systemPause(1),Se.Module.pauseMainLoop(),je.disableControl(!0)}a.elements.container.focus()},Se.Module._set_cheat&&(je.setCheat=Se.Module.cwrap("set_cheat","number",["number","number","string"])),Se.Module._reset_cheat&&(je.resetCheat=Se.Module._reset_cheat),je.quickSaveState=function(){if(a.started&&!je.connected){if(!1===a.statesSupported)return a.elements.widgets.stateInfoDiv.innerHTML="CANNOT CURRENTLY SAVE STATE",clearTimeout(je.saveMsgTransitions),void(je.saveMsgTransitions=setTimeout(function(){a.elements.widgets.stateInfoDiv.innerHTML=""},1500));var t,e=(t=Fe&&"function"==typeof Fe.getCoreOptionsValues&&(t=Fe.getCoreOptionsValues()["save-state-slot"])||1)+"-quick.state";try{Se.FS.unlink(e)}catch(e){}try{var n=je.saveState();Se._FS.createDataFile("/",e,n,!0,!0),a.elements.widgets.stateInfoDiv.innerHTML="STATE SAVED TO SLOT "+t,clearTimeout(je.saveMsgTransitions),je.saveMsgTransitions=setTimeout(function(){a.elements.widgets.stateInfoDiv.innerHTML=""},1500)}catch(e){a.elements.widgets.stateInfoDiv.innerHTML="FAILED TO SAVE STATE TO SLOT "+t,clearTimeout(je.saveMsgTransitions),je.saveMsgTransitions=setTimeout(function(){a.elements.widgets.stateInfoDiv.innerHTML=""},1500)}}},je.saveMsgTransitions=null,je.quickLoadState=function(){if(a.started&&!je.connected){if(!1===a.statesSupported)return a.elements.widgets.stateInfoDiv.innerHTML="CANNOT CURRENTLY LOAD STATE",clearTimeout(je.saveMsgTransitions),void(je.saveMsgTransitions=setTimeout(function(){a.elements.widgets.stateInfoDiv.innerHTML=""},1500));var e,t=(e=Fe&&"function"==typeof Fe.getCoreOptionsValues&&(e=Fe.getCoreOptionsValues()["save-state-slot"])||1)+"-quick.state",n=!0;try{l(t,0),"arcade"===s&&setTimeout(function(){je.getStateInfo(),l(t,0)},10)}catch(e){n=!1}a.elements.widgets.stateInfoDiv.innerHTML=n?"LOADED STATE FROM SLOT "+e:"FAILED TO LOAD STATE FROM SLOT "+e,clearTimeout(je.saveMsgTransitions),je.saveMsgTransitions=setTimeout(function(){a.elements.widgets.stateInfoDiv.innerHTML=""},1500)}},je.changeStateSlot=function(e){var t;t=Fe&&"function"==typeof Fe.getCoreOptionsValues&&(t=Fe.getCoreOptionsValues()["save-state-slot"])||1,9<(e="number"!=typeof e?t+1:e)&&(e=1),Le.updateCoreOptions.call(a,"save-state-slot",e),a.elements.widgets.stateInfoDiv.innerHTML="SET SAVE STATE SLOT TO "+e,clearTimeout(je.saveMsgTransitions),je.saveMsgTransitions=setTimeout(function(){a.elements.widgets.stateInfoDiv.innerHTML=""},1500)},window.EJS_loadState=function(t){je.loadState(t,0),setTimeout(function(){var e;je.connected&&(e=new File([t],"0-game.state",{type:"",lastModified:new Date}),je.connection.shareFile(e),je.inputsData={},je.wait=!0,je.systemPause(1),Se.Module.pauseMainLoop(),je.disableControl(!0))},30)};var e=Se.Module.cwrap("cmd_take_screenshot","",[]);je.getScreenData=function(){return je.toggleShader(0),e(),je.toggleShader(1),Se.FS.readFile("screenshot.png")},je.restartGame=Se.Module.cwrap("system_restart","",[]),je.currentFrameNum=Se.Module.cwrap("get_current_frame_count","",[]),je.saveSavFiles=Se.Module.cwrap("cmd_savefiles","",[]),Se.Module._get_core_options&&(je.getGameCoreOptions=Se.Module.cwrap("get_core_options","string",[])),je.systemPause=function(e){return!1},je.controllers=Fe.storage.get("controllers"),je.controllers||(je.controllers=JSON.parse(JSON.stringify(je.defaultControllers)))}},Ie=je;function Ne(e){var t=e.targetModal,n=e.triggers,o=void 0===n?[]:n,r=e.onShow,i=void 0===r?function(){}:r,a=e.onClose,s=void 0===a?function(){}:a,c=e.openTrigger,l=void 0===c?"data-micromodal-trigger":c,u=e.closeTrigger,n=void 0===u?"data-micromodal-close":u,r=e.disableScroll,a=void 0!==r&&r,c=e.disableFocus,u=void 0!==c&&c,r=e.awaitCloseAnimation,c=void 0!==r&&r,r=e.debugMode,r=void 0!==r&&r,e=e.closeByEsckey,e=void 0===e||e;!function(e){if(!(e instanceof Ne))throw new TypeError("Cannot call a class as a function")}(this),this.modal=document.getElementById(t),this.config={debugMode:r,disableScroll:a,openTrigger:l,closeTrigger:n,onShow:i,onClose:s,awaitCloseAnimation:c,disableFocus:u,closeByEsckey:e},0<o.length&&this.registerTriggers.apply(this,Ce(o)),this.onClick=this.onClick.bind(this),this.onKeydown=this.onKeydown.bind(this)}var Le={storage:null,coreOptionsValues:{},contextMenu:null,normalOptions:{shader:{label:"Shader",options:{disabled:"Disabled","2xScaleHQ.glslp":"2xScaleHQ","4xScaleHQ.glslp":"4xScaleHQ","crt-easymode.glslp":"CRT easymode","crt-aperture.glslp":"CRT aperture","crt-geom.glslp":"CRT geom"},default:"disabled"},"virtual-gamepad":{label:"Virtual Gamepad",options:{disabled:"Disabled",enabled:"Enabled"},default:"enabled"}},defaultCoreOptionsValues:function(){var e={};switch(this.system){case"pce":e={pce_nospritelimit:"enabled"};break;case"jaguar":e={virtualjaguar_doom_res_hack:"enabled"};break;case"psx":e={pcsx_rearmed_memcard2:"enabled"};break;case"nds":e={}}return e},getCoreOptionsValues:function(){var e=Le.storage.get("core-options");return F.empty(e)&&(e={}),e},getCoreOptions:function(){var r={};switch(this.system){case"nes":r.fceumm_palette={label:this.localization("Color Palette"),options:{default:this.localization("Default"),asqrealc:"asqrealc","nintendo-vc":"nintendo-vc",rgb:"rgb","yuv-v3":"yuv-v3","unsaturated-final":"unsaturated-final","sony-cxa2025as-us":"sony-cxa2025as-us",pal:"pal","bmf-final2":"bmf-final2","bmf-final3":"bmf-final3","smooth-fbx":"smooth-fbx","composite-direct-fbx":"composite-direct-fbx","pvm-style-d93-fbx":"pvm-style-d93-fbx",nescap:"nescap","ntsc-hardware-fbx":"ntsc-hardware-fbx","nes-classic-fbx-fs":"nes-classic-fbx-fs",wavebeam:"wavebeam"},default:"default"},r.fceumm_nospritelimit={label:this.localization("No Sprite Limit"),options:{enabled:this.localization("Enabled"),disabled:this.localization("Disabled")},default:"disabled"},r.fceumm_sndquality={label:this.localization("Sound Quality"),options:{Low:this.localization("Low"),High:this.localization("High"),"Very High":this.localization("Very High")},default:"Low"},this.lightgun||(r.system_type={label:this.localization("4 Players Support"),options:{nes:"NES",famicom:"Famicom"},default:"nes",netplay:!0}),r.fceumm_turbo_enable={label:this.localization("Turbo Enable"),options:{None:this.localization("None"),"Player 1":this.localization("Player 1"),"Player 2":this.localization("Player 2"),Both:this.localization("Both")},default:"None",netplay:!0},r.fceumm_region={label:this.localization("Region"),options:{Auto:this.localization("Auto"),NTSC:"NTSC",PAL:"PAL",Dendy:"Dendy"},default:"Auto",netplay:!0};break;case"snes":r={snes9x_next_overclock:{label:this.localization("SuperFX Overclock"),options:{disabled:this.localization("Disabled")+"(10MHz)","40MHz":"40MHz","60MHz":"60MHz","80MHz":"80MHz","100MHz":"100MHz"},default:"disabled",netplay:!0}};break;case"snes2002":case"snes2005":case"snes2010":r={};break;case"gb":r={gambatte_gb_colorization:{label:this.localization("GB Colorization"),options:{disabled:this.localization("Disabled"),auto:this.localization("auto"),internal:this.localization("internal")},default:"disabled"},gambatte_gb_internal_palette:{label:this.localization("Internal Palette"),options:{"GBC - Blue":this.localization("GBC - Blue"),"GBC - Brown":this.localization("GBC - Brown"),"GBC - Dark Blue":this.localization("GBC - Dark Blue"),"GBC - Dark Brown":this.localization("GBC - Dark Brown"),"GBC - Dark Green":this.localization("GBC - Dark Green"),"GBC - Grayscale":this.localization("GBC - Grayscale"),"GBC - Green":this.localization("GBC - Green"),"GBC - Inverted":this.localization("GBC - Inverted"),"GBC - Orange":this.localization("GBC - Orange"),"GBC - Pastel Mix":this.localization("GBC - Pastel Mix"),"GBC - Red":this.localization("GBC - Red"),"GBC - Yellow":this.localization("GBC - Yellow")},default:"GBC - Blue"}};break;case"gba":r={mgba_solar_sensor_level:{label:this.localization("Solar sensor level"),options:["0","1","2","3","4","5","6","7","8","9","10"],default:"0"},mgba_frameskip:{label:this.localization("Frameskip"),options:["0","1","2","3","4","5","6","7","8","9","10"],default:"0"}};break;case"vbanext":r={vbanext_turboenable:{label:this.localization("Enable Turbo Buttons"),options:{disabled:this.localization("disabled"),enabled:this.localization("enabled")},default:"disabled"},vbanext_turbodelay:{label:this.localization("Turbo Delay in frames"),options:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15"],default:"2"}};break;case"n64":r={"glupen64-aspect":{label:this.localization("Aspect Ratio (Need to refresh page)"),options:["4:3","16:9"],default:"4:3"},"glupen64-43screensize":{label:this.localization("4:3 Resolution"),options:["320x240","640x480","960x720","1280x960"],default:"320x240"},"glupen64-169screensize":{label:this.localization("16:9 Resolution"),options:["640x360","960x540","1280x720"],default:"640x360"},"glupen64-pak1":{label:this.localization("Player 1 Pak"),options:{none:this.localization("none"),memory:this.localization("memory"),rumble:this.localization("rumble")},default:"none",netplay:!0},"glupen64-pak2":{label:this.localization("Player 2 Pak"),options:{none:this.localization("none"),memory:this.localization("memory"),rumble:this.localization("rumble")},default:"none",netplay:!0},"glupen64-pak3":{label:this.localization("Player 3 Pak"),options:{none:this.localization("none"),memory:this.localization("memory"),rumble:this.localization("rumble")},default:"none",netplay:!0},"glupen64-pak4":{label:this.localization("Player 4 Pak"),options:{none:this.localization("none"),memory:this.localization("memory"),rumble:this.localization("rumble")},default:"none",netplay:!0}},!Ie||"undefined"==Ie.virtualGamepadContainer&&null===Ie.virtualGamepadContainer||(r["joystick-input"]={label:this.localization("Joystick input keys"),options:{"d-pad":this.localization("d-pad"),"analog-stick":this.localization("Analog Stick")},default:"analog-stick",netplay:!0});break;case"nds":r={desmume_screens_layout:{label:this.localization("Screen layout"),options:{"top/bottom":this.localization("top/bottom"),"bottom/top":this.localization("bottom/top"),"left/right":this.localization("left/right"),"right/left":this.localization("right/left"),"top only":this.localization("top only"),"bottom only":this.localization("bottom only"),"quick switch":this.localization("quick switch"),"hybrid/top":this.localization("hybrid/top"),"hybrid/bottom":this.localization("hybrid/bottom")},default:"top/bottom"},screen_rotation:{label:this.localization("Screen Rotation"),options:{0:"0°",90:"90°",180:"180°",270:"270°"},default:0},desmume_frameskip:{label:this.localization("Frameskip"),options:["0","1","2","3","4","5","6","7","8","9"],default:"0"}},Y.wasm||delete r.screen_rotation;break;case"vb":case"pce":r={};break;case"segaMS":case"segaGG":case"segaMD":case"segaCD":r={genesis_plus_gx_no_sprite_limit:{label:this.localization("No Sprite Limit"),options:{disabled:this.localization("disabled"),enabled:this.localization("enabled")},default:"disabled"},genesis_plus_gx_overclock:{label:this.localization("CPU speed"),options:["100%","125%","150%","175%","200%"],default:"100%",netplay:!0},genesis_plus_gx_sound_output:{label:this.localization("Sound output"),options:{stereo:this.localization("stereo"),mono:this.localization("mono")},default:"stereo"}};break;case"sega32x":r={picodrive_sprlim:{label:this.localization("No sprite limit"),options:{disabled:this.localization("disabled"),enabled:this.localization("enabled")},default:"disabled"}};break;case"segaSaturn":r={yabause_frameskip:{label:this.localization("Frameskip"),options:{disabled:this.localization("disabled"),enabled:this.localization("enabled")},default:"disabled"}};break;case"msx":r={bluemsx_nospritelimits:{label:this.localization("No Sprite Limit"),options:{OFF:this.localization("OFF"),ON:this.localization("ON")},default:"OFF"}};break;case"ws":case"ngp":r={};break;case"jaguar":r={virtualjaguar_usefastblitter:{label:this.localization("Fast Blitter"),options:{disabled:this.localization("disabled"),enabled:this.localization("enabled")},default:"disabled"},virtualjaguar_bios:{label:this.localization("Bios"),options:{disabled:this.localization("disabled"),enabled:this.localization("enabled")},default:"disabled"}};break;case"psx":r={pcsx_rearmed_frameskip:{label:this.localization("Frameskip"),options:[0,1,2,3],default:0,netplay:!0},pcsx_rearmed_memcard2:{label:this.localization("Enable second memory card"),options:{disabled:this.localization("disabled"),enabled:this.localization("enabled")},default:"enabled",netplay:!0},pcsx_rearmed_pad1type:{label:this.localization("Pad 1 Type"),options:{default:this.localization("default"),none:this.localization("none"),standard:this.localization("standard"),analog:this.localization("analog"),negcon:this.localization("negcon")},default:"default",netplay:!0},pcsx_rearmed_pad2type:{label:this.localization("Pad 2 Type"),options:{default:this.localization("default"),none:this.localization("none"),standard:this.localization("standard"),analog:this.localization("analog"),negcon:this.localization("negcon")},default:"default",netplay:!0},pcsx_rearmed_pad3type:{label:this.localization("Pad 3 Type"),options:{default:this.localization("default"),none:this.localization("none"),standard:this.localization("standard"),analog:this.localization("analog"),negcon:this.localization("negcon")},default:"default",netplay:!0},pcsx_rearmed_pad4type:{label:this.localization("Pad 4 Type"),options:{default:this.localization("default"),none:this.localization("none"),standard:this.localization("standard"),analog:this.localization("analog"),negcon:this.localization("negcon")},default:"default",netplay:!0},pcsx_rearmed_vibration:{label:this.localization("Enable Vibration"),options:{disabled:this.localization("disabled"),enabled:this.localization("enabled")},default:"enabled",netplay:!0},pcsx_rearmed_neon_interlace_enable:{label:this.localization("Enable interlacing mode(s)"),options:{disabled:this.localization("disabled"),enabled:this.localization("enabled")},default:"disabled",netplay:!0},pcsx_rearmed_neon_enhancement_enable:{label:this.localization("Enhanced resolution (slow)"),options:{disabled:this.localization("disabled"),enabled:this.localization("enabled")},default:"disabled",netplay:!0},pcsx_rearmed_neon_enhancement_no_main:{label:this.localization("Enhanced resolution speed hack"),options:{disabled:this.localization("disabled"),enabled:this.localization("enabled")},default:"disabled",netplay:!0}};break;case"arcade":case"fba0.2.97.29":r={"fba-aspect":{label:this.localization("Aspect ratio"),options:["DAR","PAR"],default:"DAR"},"fba-frameskip":{label:this.localization("Frameskip"),options:["0","1","2","3","4","5"],default:"0",netplay:!0},"fba-cpu-speed-adjust":{label:this.localization("CPU overclock"),options:["100","110","120","130","140","150","160","170","180","190","200"],default:"100",netplay:!0},"fba-diagnostic-input":{label:this.localization("Diagnostic Input"),options:["None","Hold Start","Start + A + B","Hold Start + A + B","Start + L + R","Hold Start + L + R","Hold Select","Select + A + B","Hold Select + A + B","Select + L + R","Hold Select + L + R"],default:"None",netplay:!0},"fba-neogeo-mode":{label:this.localization("Force Neo Geo mode"),options:["MVS","AES","UNIBIOS","DIPSWITCH"],default:"MVS",netplay:!0}};break;case"mame2003":case"mame2010":case"mame":r={};break;default:r={},console.warn("Unsupported emulator")}return 2===this.coreVer&&(r={}),!0===this.statesSupported&&(r["save-state-slot"]={label:this.localization("Save State Slot"),options:[1,2,3,4,5,6,7,8,9],default:1}),!0!==this.statesSupported||!window.indexedDB||"string"!=typeof this.gameName&&this.config.gameUrl.startsWith("blob:")||(r["save-state-location"]={label:this.localization("Save State Location"),options:{download:this.localization("download"),"keep in browser":this.localization("keep in browser")},default:"download"}),Ie.getGameCoreOptions&&Ie.getGameCoreOptions().split("\n").forEach(function(e,t){var n=e.split("; "),o=n[0];0===o.indexOf("fba-dipswitch-")&&(e=n[1].split("|"),n=o.replace(/_/g," ").replace(/.+\-(.+)/,"$1"),r[o]={label:n,options:e.slice(1,-1),default:e[0].replace("(Default) ",""),netplay:!0})}),r},supportNetPlay:function(){if(this.lightgun||this.mouse)return!1;var e=window.RTCPeerConnection||window.webkitPeerConnection00||window.webkitRTCPeerConnection||window.mozRTCPeerConnection,t=window.mozRTCIceCandidate||window.RTCIceCandidate,n=window.mozRTCSessionDescription||window.RTCSessionDescription;return!!(e&&t&&n)&&!!(e&&"createDataChannel"in e.prototype)},isNetPlay:function(){},findElements:function(){try{return this.elements.controls=q.call(this,this.config.selectors.controls.wrapper),this.elements.buttons={play:A.call(this,this.config.selectors.buttons.play),pause:q.call(this,this.config.selectors.buttons.pause),restart:q.call(this,this.config.selectors.buttons.restart),mute:q.call(this,this.config.selectors.buttons.mute),settings:q.call(this,this.config.selectors.buttons.settings),fullscreen:q.call(this,this.config.selectors.buttons.fullscreen),saveState:q.call(this,this.config.selectors.buttons.saveState),screenRecord:q.call(this,this.config.selectors.buttons.screenRecord),loadState:q.call(this,this.config.selectors.buttons.loadState),gamepad:q.call(this,this.config.selectors.buttons.gamepad),netplay:q.call(this,this.config.selectors.buttons.netplay),cheat:q.call(this,this.config.selectors.buttons.cheat)},this.elements.inputs={volume:q.call(this,this.config.selectors.inputs.volume)},!0}catch(e){return this.debug.warn("It looks like there is a problem with your custom controls HTML",e),!1}},createIcon:function(e,t){var n=document.createElementNS("http://www.w3.org/2000/svg","svg");_(n,X(t,{role:"presentation",focusable:"false"}));t=document.createElement("div");t.innerHTML="<svg>".concat(this.icons[e],"</svg>");for(var o=t.childNodes[0].childNodes,r=0;r<o.length;r+=1)n.appendChild(o[r]);return n},createLabel:function(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},n=K(e,this.config),e={};return e[t.class]=!0,e[this.config.classNames.hidden]=!0,B("span",Object.assign({},t,{class:[t.class,this.config.classNames.tooltip].filter(Boolean).join(" ")}),n)},createBadge:function(e){if(F.empty(e))return null;var t=B("span",{class:this.config.classNames.menu.value});return t.appendChild(B("span",{class:this.config.classNames.menu.badge},e)),t},createButton:function(e,t){var n,o,r,i,a=B("button"),s=Object.assign({},t),c=function(e){return(e=function(e){e=j(e=(0<arguments.length&&void 0!==e?e:"").toString(),"-"," ");return e=j(e,"_"," "),j(e=function(e){return(0<arguments.length&&void 0!==e?e:"").toString().replace(/\w\S*/g,function(e){return e.charAt(0).toUpperCase()+e.substr(1).toLowerCase()})}(e)," ","")}(e=(0<arguments.length&&void 0!==e?e:"").toString())).charAt(0).toLowerCase()+e.slice(1)}(e),l=!1;"type"in s||(s.type="button");t=H({ejs__control:!0});switch("class"in s?s.class.includes(t)||(s.class+=" ".concat(t)):s.class=t,e){case"play":l=!0,o=n="play",i=r="pause";break;case"mute":l=!0,n="mute",r="unmute",o="volume",i="muted";break;case"fullscreen":l=!0,n="enterFullscreen",r="exitFullscreen",o="enter-fullscreen",i="exit-fullscreen";break;default:n=c,o=e}return l?(a.appendChild(Le.createIcon.call(this,i,{class:H({"icon--pressed":!0})})),a.appendChild(Le.createIcon.call(this,o,{class:H({"icon--not-pressed":!0})})),a.appendChild(Le.createLabel.call(this,r,{class:H({"icon--pressed":!0})})),a.appendChild(Le.createLabel.call(this,n,{class:H({"icon--not-pressed":!0})}))):(a.appendChild(Le.createIcon.call(this,o)),a.appendChild(Le.createLabel.call(this,n))),X(s,T(this.config.selectors.buttons[c],s)),_(a,s),"play"===c?(F.array(this.elements.buttons[c])||(this.elements.buttons[c]=[]),this.elements.buttons[c].push(a)):this.elements.buttons[c]=a,a},createRange:function(e,t){t=B("input",X(T(this.config.selectors.inputs[e]),{type:"range",min:0,max:100,step:.1,value:0,autocomplete:"off",role:"slider","aria-label":K(e,this.config),"aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":0},t));return this.elements.inputs[e]=t,Le.updateRangeFill.call(this,t),t},bindMenuItemShortcuts:function(o,r){var i=this;D(o,"keydown keyup",function(e){var t,n;[32,38,39,40].includes(e.which)&&(e.preventDefault(),e.stopPropagation(),"keydown"!==e.type)&&(!(n=E(o,'[role="menuitemradio"]'))&&[32,39].includes(e.which)?Le.showMenuPanel.call(i,r,!0):32!==e.which&&(40===e.which||n&&39===e.which?(t=o.nextElementSibling,F.element(t)||(t=o.parentNode.firstElementChild)):(t=o.previousElementSibling,F.element(t)||(t=o.parentNode.lastElementChild)),k.call(i,t,!0)))},!1),D(o,"keyup",function(e){13===e.which&&Le.focusFirstMenuItem.call(i,null,!0)})},createMenuItem:function(e){var t=this,n=e.value,o=e.list,r=e.type,i=e.title,a=e.badge,s=void 0===a?null:a,a=e.checked,e=void 0!==a&&a,a=T(this.config.selectors.inputs[r]),c=B("button",X(a,{type:"button",role:"menuitemradio",class:"".concat(this.config.classNames.control," ").concat(a.class||"").trim(),"aria-checked":e,value:n})),e=B("span");e.innerHTML=i,F.element(s)&&e.appendChild(s),c.appendChild(e),Object.defineProperty(c,"checked",{enumerable:!0,get:function(){return"true"===c.getAttribute("aria-checked")},set:function(e){e&&Array.from(c.parentNode.children).filter(function(e){return E(e,'[role="menuitemradio"]')}).forEach(function(e){return e.setAttribute("aria-checked","false")}),c.setAttribute("aria-checked",e?"true":"false")}});var l=Le.getCoreOptions.call(this);this.listeners.bind(c,"click keyup",function(e){F.keyboardEvent(e)&&32!==e.which||(e.preventDefault(),e.stopPropagation(),c.checked=!0,Object.keys(Le.normalOptions).includes(r)&&Le.updateNormalOptions.call(t,r,n),Object.keys(l).includes(r)&&(l[r].netplay&&Ie.connected?Ie.connection.isInitiator&&(Le.updateCoreOptions.call(t,r,n),Ie.connection.send(JSON.stringify({act:"update-core-option",key:r,value:n,frame:Ie.currentFrame}))):Le.updateCoreOptions.call(t,r,n)),Le.showMenuPanel.call(t,"home",F.keyboardEvent(e)))},r,!1),Le.bindMenuItemShortcuts.call(this,c,r),o.appendChild(c)},updateVolume:function(){F.element(this.elements.inputs.volume)&&Le.setRange.call(this,this.elements.inputs.volume,this.muted?0:this.volume),F.element(this.elements.buttons.mute)&&(this.elements.buttons.mute.pressed=this.muted||0===this.volume)},setRange:function(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:0;F.element(e)&&(e.value=t,Le.updateRangeFill.call(this,e))},updateRangeFill:function(e){var t=F.event(e)?e.target:e;F.element(t)&&"range"===t.getAttribute("type")&&(E(t,this.config.selectors.inputs.volume)?(e=100*t.value,t.setAttribute("aria-valuenow",e),t.setAttribute("aria-valuetext","".concat(e.toFixed(1),"%"))):t.setAttribute("aria-valuenow",t.value),W.isWebkit&&t.style.setProperty("--value","".concat(t.value/t.max*100,"%")))},toggleMenuButton:function(e,t){G(this.elements.settings.buttons[e],!t)},updateNormalOptions:function(e,t){this.elements.settings.buttons[e].querySelector(".".concat(this.config.classNames.menu.value)).innerHTML=Le.normalOptions[e].options[t];var n={};n[e]=t,Le.storage.set(n),"shader"===e&&Ie.setShader(t),"virtual-gamepad"===e&&Ie.toggleVirtualGamepad.call(this,"enabled"===t)},updateCoreOptions:function(e,t){if("nds"==this.system&&!Y.wasm)return!0;if(Le.coreOptionsValues[e]=t,"psx"===this.system&&Se.Module.pauseMainLoop(),Ie.setVariable(e,t),"psx"===this.system&&(setTimeout(function(){Se.Module.resumeMainLoop()},100),setTimeout(function(){Se.Module.resumeMainLoop()},200)),"nds"===this.system&&Y.wasm){var n=this.elements.wrapper.querySelector("canvas");if("screen_rotation"===e)switch(n.style.transform="rotate("+t+"deg)",t){case"0":Ie.setVariable("desmume_input_rotation","0");break;case"90":Ie.setVariable("desmume_input_rotation","270");break;case"180":Ie.setVariable("desmume_input_rotation","180");break;case"270":Ie.setVariable("desmume_input_rotation","90")}}"arcade"!==this.system&&"fba0.2.97.29"!==this.system||((o=this.elements.wrapper.querySelector("canvas")).height="fba-aspect"===e&&"PAR"===t?o.width/16*9:o.width/4*3);var n=Le.getCoreOptions.call(this),o=Le.storage.get("core-options");F.empty(o)&&(o={}),o[e]=t,Le.storage.set({"core-options":o}),this.elements.settings.buttons[e]&&(o=this.elements.settings.buttons[e].querySelector(".".concat(this.config.classNames.menu.value)),F.object(n[e].options)?o.innerHTML=n[e].options[t]:o.innerHTML=t)},setOptionMenuItem:function(s,c){var l=this,u=this.elements.settings.panels.home.querySelector('[role="menu"]'),d=this.elements.settings.popup.children[0];Object.keys(s).forEach(function(t){var n=t,e=B("button",X(T(l.config.selectors.buttons.settings),{type:"button",class:H({ejs__control:!0,"ejs__control--forward":!0}),role:"menuitem",item:t,"aria-haspopup":!0}));D(e,"click",function(){Le.showMenuPanel.call(l,n,!1)});var o,r=B("span",null,s[t].label),i=B("span",{class:l.config.classNames.menu.value});F.object(c)&&(o=c[n]),F.empty(o)&&(o=s[n].default),F.object(s[n].options)?i.innerHTML=s[n].options[o]:i.innerHTML=o,r.appendChild(i),e.appendChild(r),u.appendChild(e);i=B("div",{"data-pane":escape(n),hidden:""}),r=B("button",{type:"button",class:H({ejs__control:!0,"ejs__control--back":!0})});r.appendChild(B("span",{"aria-hidden":!0},s[t].label)),r.appendChild(B("span",{class:H({"ejs__sr-only":!0})},K("menuBack",l.config))),D(i,"keydown",function(e){37===e.which&&(e.preventDefault(),e.stopPropagation(),Le.showMenuPanel.call(l,"home",!0))},!1),D(r,"click",function(){Le.showMenuPanel.call(l,"home",!1)}),i.appendChild(r),i.appendChild(B("div",{role:"menu"})),d.appendChild(i),l.elements.settings.buttons[n]=e;var a=(l.elements.settings.panels[n]=i).querySelector('[role="menu"]');!function(e){if(F.element(e))for(var t=e.childNodes.length;0<t;)e.removeChild(e.lastChild),--t}(a),F.object(s[t].options)?Object.keys(s[t].options).forEach(function(e){Le.createMenuItem.call(l,{value:e,list:a,type:n,title:s[t].options[e],badge:null,checked:Boolean(o===e)})}):F.array(s[t].options)&&s[t].options.forEach(function(e){Le.createMenuItem.call(l,{value:e,list:a,type:n,title:e,badge:null,checked:Boolean(o===e)})})})},setNormalOptionsMenu:function(){var t=this,o=this,e={};e.orientation=Le.storage.get("orientation"),e.shader=Le.storage.get("shader"),o.touch?(e["virtual-gamepad"]=Le.storage.get("virtual-gamepad"),D.call(o,o.elements.container,"start-game",function(){"enabled"!==e["virtual-gamepad"]&&!F.empty(e["virtual-gamepad"])||Ie.toggleVirtualGamepad.call(o,!0)})):delete Le.normalOptions["virtual-gamepad"],Le.setOptionMenuItem.call(this,Le.normalOptions,e),D.call(o,o.elements.container,"start-game",function(){var n=t,r={};Ie.getGameCoreOptions&&Ie.getGameCoreOptions().split("\n").forEach(function(e,t){var n=e.split("; "),o=n[0];0===o.indexOf("fba-dipswitch-")&&(e=n[1].split("|"),n=o.replace(/_/g," ").replace(/.+\-(.+)/,"$1"),r[o]={label:n,options:e.slice(1,-1),default:e[0].replace("(Default) ",""),netplay:!0})});var e=Le.storage.get("core-options");Le.coreOptionsValues=e||{},Le.setOptionMenuItem.call(o,r,Le.coreOptionsValues),Object.keys(Le.coreOptionsValues).forEach(function(e,t){Le.updateCoreOptions.call(n,e,Le.coreOptionsValues[e])}),"nds"==o.system&&(Se.Module._fast_forward_2?Se.Module._fast_forward_2(1):Se.Module._fast_forward&&Se.Module._fast_forward(1))})},updateCoreOptionMenuItems:function(){var t=this.elements.settings.panels.home.querySelector('[role="menu"]'),n=Le.getCoreOptions.call(this);Ie.connected&&!Ie.connection.isInitiator?Object.keys(n).forEach(function(e){n[e].netplay&&t.querySelector('[item="'.concat(e,'"]')).setAttribute("disabled","")}):Object.keys(n).forEach(function(e){t.querySelector('[item="'.concat(e,'"]')).removeAttribute("disabled")})},setCoreOptionsMenu:function(){this.elements.settings.panels.home.querySelector('[role="menu"]'),this.elements.settings.popup.children[0];var e=Le.getCoreOptions.call(this),t=Le.storage.get("core-options");Le.coreOptionsValues=t||{},Le.setOptionMenuItem.call(this,e,t)},checkMenu:function(){var e=this.elements.settings.buttons;F.empty(e)||Object.values(e).some(function(e){return!e.hidden}),G(this.elements.settings.menu,!1)},focusFirstMenuItem:function(e){var t=1<arguments.length&&void 0!==arguments[1]&&arguments[1];this.elements.settings.popup.hidden||(e=e,F.element(e)||(e=Object.values(this.elements.settings.panels).find(function(e){return!e.hidden})),e=e.querySelector('[role^="menuitem"]'),k.call(this,e,t))},toggleMenu:function(e){var t=this.elements.settings.popup,n=this.elements.buttons.settings;if(F.element(t)&&F.element(n)){var o=t.hidden,r=o;if(F.boolean(e))r=e;else if(F.keyboardEvent(e)&&27===e.which)r=!1;else if(F.event(e)){var i=t.contains(e.target);if(i||!i&&e.target!==n&&r)return}n.setAttribute("aria-expanded",r),G(t,!r),V(this.elements.container,this.config.classNames.menu.open,r),r&&F.keyboardEvent(e)?Le.focusFirstMenuItem.call(this,null,!0):r||o||k.call(this,n,F.keyboardEvent(e))}},getMenuSize:function(e){var t=e.cloneNode(!0);t.style.position="absolute",t.style.opacity=0,t.removeAttribute("hidden"),e.parentNode.appendChild(t);var n=t.scrollWidth,e=t.scrollHeight;return S(t),{width:n,height:e}},showLoadStatePanel:function(){},showMenuPanel:function(){var n,e,t,o=this,r=0<arguments.length&&void 0!==arguments[0]?arguments[0]:"",i=1<arguments.length&&void 0!==arguments[1]&&arguments[1],a=q.call(this,'[data-pane="'.concat(escape(r),'"]'));F.element(a)&&(n=a.parentNode,e=Array.from(n.children).find(function(e){return!e.hidden}),Y.transitions&&!Y.reducedMotion&&(n.style.width="".concat(e.scrollWidth,"px"),n.style.height="".concat(e.scrollHeight,"px"),t=Le.getMenuSize.call(this,a),r=function e(t){t.target===n&&["width","height"].includes(t.propertyName)&&(n.style.width="",n.style.height="",v.call(o,n,O,e))},D.call(this,n,O,r),n.style.width="".concat(t.width,"px"),n.style.height="".concat(t.height,"px")),G(e,!0),G(a,!1),Le.focusFirstMenuItem.call(this,a,i))},setLoadState:function(e,t){e.appendChild(Le.createButton.call(this,"load-state",{"aria-haspopup":!0,"aria-expanded":!1}));var n=B("div",{class:H({ejs__dialog:!0,"ejs__load-state__container":!0}),hidden:""}),e=B("div");n.appendChild(e),q.call(this,".".concat(H({ejs__dialogs:!0}))).appendChild(n),this.elements.dialogs.loadState=n},setScreenRecord:function(e,t){var n;window.MediaRecorder&&(n=Le.createButton.call(this,"screen-record",{"aria-haspopup":!0,"aria-expanded":!1,style:"margin-right:auto;"}),e.appendChild(n),e=B("div",{class:H({ejs__dialog:!0,ejs__screenRecord__container:!0}),hidden:""}),n=B("div"),e.appendChild(n),q.call(this,".".concat(H({ejs__dialogs:!0}))).appendChild(e),this.elements.dialogs.screenRecord=e)},setGamepad:function(e,t){var n=Le.createButton.call(this,"gamepad",{"aria-haspopup":!0,"aria-expanded":!1,style:"margin-right:auto;"});e.appendChild(n);e=B("div",{class:H({ejs__dialog:!0,ejs__gamepad__container:!0}),hidden:""}),n=B("div");e.appendChild(n),q.call(this,".".concat(H({ejs__dialogs:!0}))).appendChild(e),this.elements.dialogs.gamepad=e},setCheat:function(e,t){var n=Le.createButton.call(this,"cheat",{"aria-haspopup":!0,"aria-expanded":!1,style:"margin-right:auto;"});e.appendChild(n);e=B("div",{class:H({ejs__dialog:!0,ejs__cheat__container:!0}),hidden:""}),n=B("div");e.appendChild(n),q.call(this,".".concat(H({ejs__dialogs:!0}))).appendChild(e),this.elements.dialogs.cheat=e},setStateInfoBarWidget:function(){var e=B("div",{class:H({ejs__widget:!0})}),t=B("div");t.style="color: red;font-size: 17px;padding:10px;text-align:left;text-shadow:1px 1px 1px #000",e.appendChild(t),q.call(this,".".concat(H({ejs__widgets:!0}))).appendChild(e),this.elements.widgets.stateInfo=e,this.elements.widgets.stateInfoDiv=t},setNetplayWidgets:function(){var e=B("div",{class:H({ejs__widget:!0,ejs__widget_netplay:!0})}),t=B("div");e.appendChild(t),q.call(this,".".concat(H({ejs__widgets:!0}))).appendChild(e),this.elements.widgets.netplay=e},setNetplay:function(e,t){e.appendChild(Le.createButton.call(this,"netplay",{"aria-haspopup":!0,"aria-expanded":!1}));var n=B("div",{class:H({ejs__dialog:!0,ejs__netplay__container:!0}),hidden:""}),e=B("div");n.appendChild(e),q.call(this,".".concat(H({ejs__dialogs:!0}))).appendChild(n),this.elements.dialogs.netplay=n,Le.setNetplayWidgets.call(this)},toggleContextMenu:function(e,t){var n,o;C(e.target,H({ejs__dialogs:!0}))&&(n=Le.contextMenu.timer,this.started&&(o=q.call(this,".".concat(H({ejs__contextmenu:!0})," ul")),t?(Le.contextMenu.style.display="block",Le.contextMenu.style.left="".concat(e.layerX,"px"),Le.contextMenu.style.top="".concat(e.layerY,"px"),e=A.call(this,".".concat(H({ejs__contextmenu:!0})," ul li")),Array.from(e).forEach(function(e,t){}),null===o.getAttribute("menu")&&((e=B("li",{})).appendChild(B("a",{target:"_blank",href:"https://github.com/ethanaobrien/emulatorjs"},"EmulatorJS v".concat(this.version))),o.appendChild(e),o.setAttribute("menu","")),n&&clearTimeout(n),n=setTimeout(function(){},4e3),Le.contextMenu.timer=n):Le.contextMenu.style.display="none"))},create:function(e){var o=this;Le.storage=new N(this,"ejs_".concat(this.system,"_settings"));var t=B("div",T(this.config.selectors.controls.wrapper));Le.contextMenu=B("div",{class:H({ejs__contextmenu:!0}),style:"position: absolute; display:none;z-index:9"});var r=["<ul>","</ul>"],i=[];function n(e,t,n){"function"==typeof n?i.push(n):i.push(function(){});n=r.length-1;t?r.splice(n,0,'<li hidden><a href="#" onclick="return false">'+e+"</a></li>"):r.splice(n,0,'<li><a href="#" onclick="return false">'+e+"</a></li>")}n(o.localization("Take Screenshot"),!1,function(e){var t=je.getScreenData();"string"==typeof o.gameName&&(n=o.gameName);var n=n?"".concat(n,"-screenshot.png"):"game.png";return J()(new Blob([t]),n),!1}),n(o.localization("Cache Manage"),!0,function(e){var n;return Se.romdb&&(G(o.elements.dialogs.cache,!1),(n=o.elements.dialogs.cache.querySelector(".".concat(je.classNames["dialog-content"]))).innerHTML="<div>"+o.localization("Loading")+"</div>",Se.romdb.getAll(function(e){var t,l;e?(t=B("table",{style:"width:100%;padding-left:10px;text-align:left"}),l=B("tbody"),0<e.length?(n.innerHTML="",e.forEach(function(e,t){if(e.key&&!/-part-\d+$/.test(e.key)){for(var n=Math.ceil(e.filesize/104857600),o=[e.key],r=1;r<n;r+=1)o.push("".concat(e.key,"-part-").concat(r));var i=B("tr"),a=B("td"),s=B("td"),c=B("td");a.innerHTML=e.filename,s.innerHTML=function(e){for(var t=-1;e/=1024,t++,1024<e;);return Math.max(e,.1).toFixed(1)+[" kB"," MB"," GB"," TB","PB","EB","ZB","YB"][t]}(e.filesize),c.innerHTML='<a href="#" onclick="return false">Remove</a>',i.appendChild(a),i.appendChild(s),i.appendChild(c),l.appendChild(i),c.querySelector("a").onclick=function(e){Se.romdb.removeBatch(o);try{l.removeChild(i)}catch(e){}return e.stopPropagation(),!1}}}),t.appendChild(l),n.appendChild(t)):n.innerHTML='<div style="text-align:center">'+o.localization("Empty")+"</div>"):n.innerHTML='<div style="text-align:center">'+o.localization("Empty")+"</div>"},function(){})),!1}),n(o.localization("Quick Save")+" (F2)",!1,function(e){je.quickSaveState(),Fe.contextMenu.style.display="none"}),n(o.localization("Quick Load")+" (F4)",!1,function(e){je.quickLoadState(),Fe.contextMenu.style.display="none"}),Le.contextMenu.innerHTML=r.join("");for(var a=Le.contextMenu.getElementsByTagName("li"),s=0;s<a.length;s++)D.call(o,a[s],"click",i[s]);this.elements.container.appendChild(Le.contextMenu);var c=B("div",{class:H({ejs__dialog:!0,ejs__cache__container:!0}),hidden:""});q.call(this,".".concat(H({ejs__dialogs:!0}))).appendChild(c),this.elements.dialogs.cache=c;var l=B("div",{class:H({ejs__dialog:!0,ejs__loading__container:!0}),hidden:""});q.call(this,".".concat(H({ejs__dialogs:!0}))).appendChild(l),this.elements.dialogs.loading=l,t.appendChild(Le.createButton.call(this,"restart")),t.appendChild(Le.createButton.call(this,"play")),t.appendChild(Le.createButton.call(this,"save-state",{"aria-expanded":!1})),Le.setLoadState.call(this,t,e),Le.setScreenRecord.call(this,t,e),Le.supportNetPlay.call(this,t)&&0<parseInt(this.config.gameId,10)&&Le.setNetplay.call(this,t,e),Le.setGamepad.call(this,t,e),Le.setStateInfoBarWidget.call(this,t,e),Le.setCheat.call(this,t,e),t.appendChild(B("span",{style:"flex:1"}));var u=B("div",{class:H({ejs__volume:!0})});u.appendChild(Le.createButton.call(this,"mute"));var d={max:1,step:.01,value:this.config.volume};u.appendChild(Le.createRange.call(this,"volume",X(d,{}))),this.elements.volume=u,t.appendChild(u);c=B("div",{class:H({ejs__menu:!0})});c.appendChild(Le.createButton.call(this,"settings",{"aria-haspopup":!0,"aria-expanded":!1}));l=B("div",{class:H({ejs__menu__container:!0}),hidden:""}),e=B("div"),d=B("div",{"data-pane":"home"}),u=B("div",{role:"menu"});d.appendChild(u),e.appendChild(d),this.elements.settings.panels.home=d,l.appendChild(e),c.appendChild(l),t.appendChild(c),this.elements.settings.popup=l,this.elements.settings.menu=c,t.appendChild(Le.createButton.call(this,"fullscreen"));var f=this;return t.addEventListener("mousedown",function(){f.onButtonDiv=!0}),this.elements.controls=t,Le.setNormalOptionsMenu.call(this),Le.setCoreOptionsMenu.call(this),t},inject:function(){var n=this;this.icons={"enter-fullscreen":'<path d="M10 3h3.6l-4 4L11 8.4l4-4V8h2V1h-7zM7 9.6l-4 4V10H1v7h7v-2H4.4l4-4z"/>',"exit-fullscreen":'<path d="M1 12h3.6l-4 4L2 17.4l4-4V17h2v-7H1zM16 .6l-4 4V1h-2v7h7V6h-3.6l4-4z"/>',gamepad:'<svg viewBox="0 0 640 512"><path fill="currentColor" d="M480 96H160C71.6 96 0 167.6 0 256s71.6 160 160 160c44.8 0 85.2-18.4 114.2-48h91.5c29 29.6 69.5 48 114.2 48 88.4 0 160-71.6 160-160S568.4 96 480 96zM256 276c0 6.6-5.4 12-12 12h-52v52c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-52H76c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h52v-52c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h52c6.6 0 12 5.4 12 12v40zm184 68c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm80-80c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48z"/></svg>',"load-state":'<svg viewBox="0 0 576 512"><path fill="currentColor" d="M572.694 292.093L500.27 416.248A63.997 63.997 0 0 1 444.989 448H45.025c-18.523 0-30.064-20.093-20.731-36.093l72.424-124.155A64 64 0 0 1 152 256h399.964c18.523 0 30.064 20.093 20.73 36.093zM152 224h328v-48c0-26.51-21.49-48-48-48H272l-64-64H48C21.49 64 0 85.49 0 112v278.046l69.077-118.418C86.214 242.25 117.989 224 152 224z"/></svg>',muted:'<path d="M12.4 12.5l2.1-2.1 2.1 2.1 1.4-1.4L15.9 9 18 6.9l-1.4-1.4-2.1 2.1-2.1-2.1L11 6.9 13.1 9 11 11.1zM3.786 6.008H.714C.286 6.008 0 6.31 0 6.76v4.512c0 .452.286.752.714.752h3.072l4.071 3.858c.5.3 1.143 0 1.143-.602V2.752c0-.601-.643-.977-1.143-.601L3.786 6.008z"/>',netplay:'<svg viewBox="0 0 512 512"><path fill="currentColor" d="M364.215 192h131.43c5.439 20.419 8.354 41.868 8.354 64s-2.915 43.581-8.354 64h-131.43c5.154-43.049 4.939-86.746 0-128zM185.214 352c10.678 53.68 33.173 112.514 70.125 151.992.221.001.44.008.661.008s.44-.008.661-.008c37.012-39.543 59.467-98.414 70.125-151.992H185.214zm174.13-192h125.385C452.802 84.024 384.128 27.305 300.95 12.075c30.238 43.12 48.821 96.332 58.394 147.925zm-27.35 32H180.006c-5.339 41.914-5.345 86.037 0 128h151.989c5.339-41.915 5.345-86.037-.001-128zM152.656 352H27.271c31.926 75.976 100.6 132.695 183.778 147.925-30.246-43.136-48.823-96.35-58.393-147.925zm206.688 0c-9.575 51.605-28.163 104.814-58.394 147.925 83.178-15.23 151.852-71.949 183.778-147.925H359.344zm-32.558-192c-10.678-53.68-33.174-112.514-70.125-151.992-.221 0-.44-.008-.661-.008s-.44.008-.661.008C218.327 47.551 195.872 106.422 185.214 160h141.572zM16.355 192C10.915 212.419 8 233.868 8 256s2.915 43.581 8.355 64h131.43c-4.939-41.254-5.154-84.951 0-128H16.355zm136.301-32c9.575-51.602 28.161-104.81 58.394-147.925C127.872 27.305 59.198 84.024 27.271 160h125.385z"/></svg>',pause:'<path d="M6 1H3c-.6 0-1 .4-1 1v14c0 .6.4 1 1 1h3c.6 0 1-.4 1-1V2c0-.6-.4-1-1-1zM12 1c-.6 0-1 .4-1 1v14c0 .6.4 1 1 1h3c.6 0 1-.4 1-1V2c0-.6-.4-1-1-1h-3z"/>',play:'<path d="M15.562 8.1L3.87.225C3.052-.337 2 .225 2 1.125v15.75c0 .9 1.052 1.462 1.87.9L15.563 9.9c.584-.45.584-1.35 0-1.8z"/>',restart:'<path d="M9.7 1.2l.7 6.4 2.1-2.1c1.9 1.9 1.9 5.1 0 7-.9 1-2.2 1.5-3.5 1.5-1.3 0-2.6-.5-3.5-1.5-1.9-1.9-1.9-5.1 0-7 .6-.6 1.4-1.1 2.3-1.3l-.6-1.9C6 2.6 4.9 3.2 4 4.1 1.3 6.8 1.3 11.2 4 14c1.3 1.3 3.1 2 4.9 2 1.9 0 3.6-.7 4.9-2 2.7-2.7 2.7-7.1 0-9.9L16 1.9l-6.3-.7z"/>',"save-state":'<svg viewBox="0 0 448 512"><path fill="currentColor" d="M433.941 129.941l-83.882-83.882A48 48 0 0 0 316.118 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48V163.882a48 48 0 0 0-14.059-33.941zM224 416c-35.346 0-64-28.654-64-64 0-35.346 28.654-64 64-64s64 28.654 64 64c0 35.346-28.654 64-64 64zm96-304.52V212c0 6.627-5.373 12-12 12H76c-6.627 0-12-5.373-12-12V108c0-6.627 5.373-12 12-12h228.52c3.183 0 6.235 1.264 8.485 3.515l3.48 3.48A11.996 11.996 0 0 1 320 111.48z"/></svg>',"screen-record":'<svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px",viewBox="0 0 39.989 39.989" style="enable-background:new 0 0 39.989 39.989;" xml:space="preserve"><path id="XMLID_155_" d="M19.994,0C8.952,0,0,8.952,0,19.995c0,11.043,8.952,19.994,19.994,19.994s19.995-8.952,19.995-19.994,C39.989,8.952,31.037,0,19.994,0z M19.994,27.745c-4.28,0-7.75-3.47-7.75-7.75s3.47-7.75,7.75-7.75s7.75,3.47,7.75,7.75,S24.275,27.745,19.994,27.745z"/></svg>',settings:'<path d="M16.135 7.784a2 2 0 0 1-1.23-2.969c.322-.536.225-.998-.094-1.316l-.31-.31c-.318-.318-.78-.415-1.316-.094a2 2 0 0 1-2.969-1.23C10.065 1.258 9.669 1 9.219 1h-.438c-.45 0-.845.258-.997.865a2 2 0 0 1-2.969 1.23c-.536-.322-.999-.225-1.317.093l-.31.31c-.318.318-.415.781-.093 1.317a2 2 0 0 1-1.23 2.969C1.26 7.935 1 8.33 1 8.781v.438c0 .45.258.845.865.997a2 2 0 0 1 1.23 2.969c-.322.536-.225.998.094 1.316l.31.31c.319.319.782.415 1.316.094a2 2 0 0 1 2.969 1.23c.151.607.547.865.997.865h.438c.45 0 .845-.258.997-.865a2 2 0 0 1 2.969-1.23c.535.321.997.225 1.316-.094l.31-.31c.318-.318.415-.781.094-1.316a2 2 0 0 1 1.23-2.969c.607-.151.865-.547.865-.997v-.438c0-.451-.26-.846-.865-.997zM9 12a3 3 0 1 1 0-6 3 3 0 0 1 0 6z"/>',volume:'<path d="M15.5999996,3.3 C15.1999996,2.9 14.5999996,2.9 14.1999996,3.3 C13.7999996,3.7 13.7999996,4.3 14.1999996,4.7 C15.3999996,5.9 15.9999996,7.4 15.9999996,9 C15.9999996,10.6 15.3999996,12.1 14.1999996,13.3 C13.7999996,13.7 13.7999996,14.3 14.1999996,14.7 C14.3999996,14.9 14.6999996,15 14.8999996,15 C15.1999996,15 15.3999996,14.9 15.5999996,14.7 C17.0999996,13.2 17.9999996,11.2 17.9999996,9 C17.9999996,6.8 17.0999996,4.8 15.5999996,3.3 L15.5999996,3.3 Z"></path>\n <path d="M11.2819745,5.28197449 C10.9060085,5.65794047 10.9060085,6.22188944 11.2819745,6.59785542 C12.0171538,7.33303477 12.2772954,8.05605449 12.2772954,9.00000021 C12.2772954,9.93588462 11.851678,10.9172014 11.2819745,11.4869049 C10.9060085,11.8628709 10.9060085,12.4268199 11.2819745,12.8027859 C11.4271642,12.9479755 11.9176724,13.0649528 12.2998149,12.9592565 C12.4124479,12.9281035 12.5156669,12.8776063 12.5978555,12.8027859 C13.773371,11.732654 14.1311161,10.1597914 14.1312523,9.00000021 C14.1312723,8.8299555 14.1286311,8.66015647 14.119665,8.4897429 C14.0674781,7.49784946 13.8010171,6.48513613 12.5978554,5.28197449 C12.2218894,4.9060085 11.6579405,4.9060085 11.2819745,5.28197449 Z"></path>\n <path d="M3.78571429,6.00820648 L0.714285714,6.00820648 C0.285714286,6.00820648 0,6.30901277 0,6.76022222 L0,11.2723167 C0,11.7235261 0.285714286,12.0243324 0.714285714,12.0243324 L3.78571429,12.0243324 L7.85714286,15.8819922 C8.35714286,16.1827985 9,15.8819922 9,15.2803796 L9,2.75215925 C9,2.15054666 8.35714286,1.77453879 7.85714286,2.15054666 L3.78571429,6.00820648 Z"></path>',cheat:'<svg viewBox="0 0 496 512"><path fill="currentColor" d="M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm-80-216c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm160 0c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm4 72.6c-20.8 25-51.5 39.4-84 39.4s-63.2-14.3-84-39.4c-8.5-10.2-23.7-11.5-33.8-3.1-10.2 8.5-11.5 23.6-3.1 33.8 30 36 74.1 56.6 120.9 56.6s90.9-20.6 120.9-56.6c8.5-10.2 7.1-25.3-3.1-33.8-10.1-8.4-25.3-7.1-33.8 3.1z" class=""></path></svg>'},this.id=Math.floor(1e4*Math.random());var e=null;this.elements.controls=null;var t={id:this.id},o=!0;F.function(this.config.controls)&&(this.config.controls=this.config.controls.call(this.props)),this.config.controls||(this.config.controls=[]),F.element(this.config.controls)||F.string(this.config.controls)?e=this.config.controls:(e=Le.create.call(this,{id:this.id,seektime:this.config.seekTime,speed:this.speed,quality:this.quality}),o=!1);function r(e){var n=e;return Object.entries(t).forEach(function(e){var t,e=(t=2,function(e){if(Array.isArray(e))return e}(e=e)||function(e,t){var n=[],o=!0,r=!1,i=void 0;try{for(var a,s=e[Symbol.iterator]();!(o=(a=s.next()).done)&&(n.push(a.value),!t||n.length!==t);o=!0);}catch(e){r=!0,i=e}finally{try{o||null==s.return||s.return()}finally{if(r)throw i}}return n}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()),t=e[0],e=e[1];n=j(n,"{".concat(t,"}"),e)}),n}var i,a;o&&(F.string(this.config.controls)?e=r(e):F.element(e)&&(e.innerHTML=r(e.innerHTML))),F.string(this.config.selectors.controls.container)&&(i=document.querySelector(this.config.selectors.controls.container)),F.element(i)||(i=this.elements.container),i[F.element(e)?"insertAdjacentElement":"insertAdjacentHTML"]("afterbegin",e),F.element(this.elements.controls)||Le.findElements.call(this),F.empty(this.elements.buttons)||(a=function(e){var t=n.config.classNames.controlPressed;Object.defineProperty(e,"pressed",{enumerable:!0,get:function(){return C(e,t)},set:function(){V(e,t,0<arguments.length&&void 0!==arguments[0]&&arguments[0])}})},Object.values(this.elements.buttons).filter(Boolean).forEach(function(e){F.array(e)||F.nodeList(e)?Array.from(e).filter(Boolean).forEach(a):a(e)})),window.navigator.userAgent.includes("Edge")&&R(i)}},Fe=Le;function De(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}function ze(){var e;this.enabled&&(e=this.player.elements.buttons.fullscreen,F.element(e)&&(e.pressed=this.active),U.call(this.player,this.target,this.active?"enterfullscreen":"exitfullscreen",!0),W.isIos||function(){var n,o,e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:null,t=1<arguments.length&&void 0!==arguments[1]&&arguments[1];F.element(e)&&(e=A.call(this,"button:not(:disabled), input:not(:disabled), [tabindex]"),n=e[0],o=e[e.length-1],g.call(this,this.elements.container,"keydown",function(e){var t;"Tab"===e.key&&9===e.keyCode&&((t=document.activeElement)!==o||e.shiftKey?t===n&&e.shiftKey&&(o.focus(),e.preventDefault()):(n.focus(),e.preventDefault()))},t,!1))}.call(this.player,this.target,this.active))}function Ue(){var e=0<arguments.length&&void 0!==arguments[0]&&arguments[0];e?this.scrollPosition={x:window.scrollX||0,y:window.scrollY||0}:window.scrollTo(this.scrollPosition.x,this.scrollPosition.y),document.body.style.overflow=e?"hidden":"",V(this.target,this.player.config.classNames.fullscreen.fallback,e),ze.call(this)}var Be=(b=[{key:"native",get:function(){return!!(document.fullscreenEnabled||document.webkitFullscreenEnabled||document.mozFullScreenEnabled||document.msFullscreenEnabled)}},{key:"prefix",get:function(){if(F.function(document.exitFullscreen))return"";var t="";return["webkit","moz","ms"].some(function(e){return!(!F.function(document["".concat(e,"ExitFullscreen")])&&!F.function(document["".concat(e,"CancelFullScreen")])||(t=e,0))}),t}},{key:"property",get:function(){return"moz"===this.prefix?"FullScreen":"Fullscreen"}}],De((n=Ge).prototype,[{key:"update",value:function(){this.enabled,V(this.player.elements.container,this.player.config.classNames.fullscreen.enabled,this.enabled)}},{key:"enter",value:function(){this.enabled&&(Ge.native?this.prefix?F.empty(this.prefix)||this.target["".concat(this.prefix,"Request").concat(this.property)]():this.target.requestFullscreen():Ue.call(this,!0))}},{key:"exit",value:function(){var e;this.enabled&&(Ge.native?this.prefix?F.empty(this.prefix)||(e="moz"===this.prefix?"Cancel":"Exit",document["".concat(this.prefix).concat(e).concat(this.property)]()):(document.cancelFullScreen||document.exitFullscreen).call(document):Ue.call(this,!1))}},{key:"toggle",value:function(){this.active?this.exit():this.enter()}},{key:"enabled",get:function(){return Ge.native}},{key:"active",get:function(){return!!this.enabled&&(Ge.native?(this.prefix?document["".concat(this.prefix).concat(this.property,"Element")]:document.fullscreenElement)===this.target:C(this.target,this.player.config.classNames.fullscreen.fallback))}},{key:"target",get:function(){return W.isEdge?this.player.game:this.player.elements.container}}]),De(n,b),Ge);function Ge(e){var t=this;!function(e){if(!(e instanceof Ge))throw new TypeError("Cannot call a class as a function")}(this),this.player=e,this.prefix=Ge.prefix,this.property=Ge.property,this.scrollPosition={x:0,y:0},D.call(this.player,document,"ms"===this.prefix?"MSFullscreenChange":"".concat(this.prefix,"fullscreenchange"),function(){ze.call(t)}),this.update()}var Ve=(qe.prototype={toggleMenu:function(e){Fe.toggleMenu.call(this.emulator,e)},firstTouch:function(){var e=this.emulator,t=e.elements;e.touch=!0,V(t.container,e.config.classNames.isTouch,!0)},setTabFocus:function(e){var t=this.emulator,n=t.elements,o=t;clearTimeout(this.focusTimer),"keydown"===e.type&&9!==e.which||("keydown"===e.type&&(this.lastKeyDown=e.timeStamp),t=e.timeStamp-this.lastKeyDown<=20,"focus"===e.type&&!t||(t=o.config.classNames.tabFocus,V(A.call(o,".".concat(t)),t,!1),this.focusTimer=setTimeout(function(){var e=document.activeElement;n.container.contains(e)&&V(document.activeElement,o.config.classNames.tabFocus,!0)},10)))},global:function(){var e=!(0<arguments.length&&void 0!==arguments[0])||arguments[0],t=this.emulator;g.call(t,document.body,"click",this.toggleMenu,e),z.call(t,document.body,"touchstart",this.firstTouch),g.call(t,document.body,"keydown focus blur",this.setTabFocus,e,!1,!0),D.call(t,document.body,"keyup",function(e){t.started&&(113===e.which&&(e.shiftKey?null===t.elements.buttons.saveState.getAttribute("hidden")&&U.call(t,t.elements.buttons.saveState,"click"):Ie.quickSaveState()),115===e.which&&(e.shiftKey?null===t.elements.buttons.loadState.getAttribute("hidden")&&U.call(t,t.elements.buttons.loadState,"click"):Ie.quickLoadState()),120===e.which&&U.call(t,t.elements.buttons.mute,"click"))})},container:function(){var n,o=this.emulator,r=o.elements,i=o,a=null;D.call(i,r.container,"mousemove mouseleave touchstart touchmove enterfullscreen exitfullscreen start-game",function(e){var t=r.controls;t&&"enterfullscreen"===e.type&&(t.pressed=!1,t.hover=!1);t=0;if(["touchstart","touchmove","mousemove","start-game"].includes(e.type)){if("nds"==o.system&&"mousemove"==e.type&&Se&&Se.Module&&Se.Module.canvas&&(document.pointerLockElement===Se.Module.canvas||document.mozPointerLockElement===Se.Module.canvas))return void ne.toggleControls.call(i,!1);!Ie||"undefined"!=Ie.virtualGamepadContainer&&null!==Ie.virtualGamepadContainer||(ne.toggleControls.call(i,!0),t=i.touch?3e3:2e3,clearTimeout(n),n=setTimeout(function(){return ne.toggleControls.call(i,!1)},t),r.controls.setAttribute("data-timer",n))}}),D.call(i,window,"resize",function(e){var t=i.elements.container.clientHeight,n=A.call(i,".".concat(H({ejs__menu__container:!0}),' [role="menu"]'));Array.from(n).forEach(function(e){e.style.maxHeight="".concat(t-95,"px"),e.style.overflow="auto"}),Se.Module&&Se.Module.canvas,i.elements.container.clientWidth/i.elements.container.clientHeight<1.3?V(i.elements.container,H({portrait:!0}),!0):V(i.elements.container,H({portrait:!0}),!1)}),U.call(i,window,"resize"),D.call(i,i.elements.container,"enterfullscreen",function(e){var t;2===i.coreVer&&Se.Module&&(t=50,clearInterval(a),a=setInterval(function(){Se.Module.setCanvasSize(window.innerWidth,window.innerHeight),t<0&&clearInterval(a),t--},100)),setTimeout(function(){U.call(i,window,"resize")},300)}),D.call(i,i.elements.container,"exitfullscreen",function(e){2===i.coreVer&&Se.Module&&(clearInterval(a),Se.Module.setCanvasSize(800,600)),setTimeout(function(){U.call(i,window,"resize")},300)}),D.call(i,i.elements.container,"start-game",function(e){var t=window.document.createEvent("UIEvents");t.initUIEvent("resize",!0,!1,window,0),window.dispatchEvent(t),V(i.elements.container,H({"game-started":!0}),!0)}),D.call(i,i.elements.container,"blur",function(e){var t=e.currentTarget;setTimeout(function(){t.contains(document.activeElement)||U.call(i,i.elements,"blurgame")},0)}),D.call(i,i.elements.container,"focus",function(e){var t=e.currentTarget;setTimeout(function(){t.contains(document.activeElement)&&U.call(i,i.elements,"focusgame")},0)})},media:function(){var t=this.emulator,n=t.elements,o=t;D.call(o,o.game,"volumechange",function(e){return Fe.updateVolume.call(o,e)}),D.call(o,n.container,"contextmenu",function(e){o.touch||o.lightgun||Fe.toggleContextMenu.call(o,e,!0),e.preventDefault()},!1),D.call(o,n.container,"mousewheel",function(e){e.stopPropagation()},!1),D.call(o,n.container,"mousedown",function(e){"nds"==t.system&&Se&&Se.Module&&Se.Module.canvas&&!Se.isMobileDevice&&document.pointerLockElement!==Se.Module.canvas&&document.mozPointerLockElement!==Se.Module.canvas&&t.started&&!t.connected&&setTimeout(function(){!0!==t.onButtonDiv&&(Se.Module.canvas.requestPointerLock=Se.Module.canvas.requestPointerLock||Se.Module.canvas.mozRequestPointerLock,Se.Module.canvas.requestPointerLock()),t.onButtonDiv=!1},100),o.touch||Fe.toggleContextMenu.call(o,e,!1)},!1),D.call(o,o.game,"volumechange",function(){o.storage.set({volume:o.volume,muted:o.muted}),Ie.setVolume&&Ie.setVolume()});var e=o.config.events.concat(["keyup","keydown"]).join(" ");D.call(o,o.game,e,function(e){var t=e.detail,t=void 0===t?{}:t;"error"===e.type&&(t=o.game.error),U.call(o,n.container,e.type,!0,t)})},proxy:function(e,t,n){var o=this.emulator,r=o.config.listeners[n],n=!0;F.function(r)&&(n=r.call(o,e)),n&&F.function(t)&&t.call(o,e)},bind:function(e,t,n,o){var r=this,i=!(4<arguments.length&&void 0!==arguments[4])||arguments[4],a=this.emulator,s=a.config.listeners[o],s=F.function(s);D.call(a,e,t,function(e){return r.proxy(e,n,o)},i&&!s)},controls:function(){var e,r=this,i=this.emulator,n=i.elements,t=W.isIE?"change":"input";this.bind(n.buttons.mute,"click",function(){i.muted=!i.muted},"mute"),this.bind(n.buttons.fullscreen,"click",function(){i.fullscreen.toggle()},"fullscreen"),this.bind(n.buttons.gamepad,"click",function(){ne.toggleControls.call(i,!1),G(n.dialogs.gamepad,!1)},"mute"),this.bind(n.buttons.saveState,"click",function(){U.call(i,i.elements.container,"savestate-start",!1,{});var e=Ie.saveState(),t=Ie.getScreenData();U.call(i,i.elements.container,"savestate",!1,{state:e,screenshot:t})},"mute"),this.bind(n.buttons.loadState,"click",function(){U.call(i,i.elements.container,"loadstate",!1,{})},"mute"),this.bind(n.buttons.settings,"click",function(e){e.stopPropagation(),Fe.toggleMenu.call(i,e)}),this.bind(n.buttons.settings,"keyup",function(e){var t=e.which;[13,32].includes(t)&&(13!==t?(e.preventDefault(),e.stopPropagation(),Fe.toggleMenu.call(i,e)):Fe.focusFirstMenuItem.call(i,null,!0))},null,!1),this.bind(n.settings.menu,"keydown",function(e){27===e.which&&Fe.toggleMenu.call(i,e)}),W.isIos&&(e=A.call(i,'input[type="range"]'),Array.from(e).forEach(function(e){return r.bind(e,t,function(e){return R(e.target)})})),W.isWebkit&&Array.from(A.call(i,'input[type="range"]')).forEach(function(e){r.bind(e,"input",function(e){return Fe.updateRangeFill.call(i,e.target)})}),this.bind(n.inputs.volume,t,function(e){i.volume=e.target.value},"volume"),this.bind(n.controls,"mouseenter mouseleave",function(e){"mouseleave"===e.type&&null===e.toElement?n.controls.hover=!0:n.controls.hover=!i.touch&&"mouseenter"===e.type}),this.bind(n.controls,"mousedown mouseup touchstart touchend touchcancel",function(e){var t;["mousedown","touchstart"].includes(e.type)?(n.controls.pressed=!0,t=n.controls.getAttribute("data-timer2"),clearTimeout(t)):(t=setTimeout(function(){n.controls.pressed=!1},4e3),n.controls.setAttribute("data-timer2",t))}),this.bind(n.controls,"focusin focusout",function(e){var t=i.config,n=i.elements,o="focusin"===e.type,e=n.controls.getAttribute("data-timer");V(n.controls,t.classNames.noTransition,o),ne.toggleControls.call(i,o),o&&(setTimeout(function(){V(n.controls,t.classNames.noTransition,!1)},0),o=r.touch?3e3:4e3,clearTimeout(e),e=setTimeout(function(){return ne.toggleControls.call(i,!1)},o),n.controls.setAttribute("data-timer",e))}),this.bind(n.inputs.volume,"wheel",function(e){var t=e.webkitDirectionInvertedFromDevice,n=function(e,t){if(Array.isArray(e))return e;var n=[],o=!0,r=!1,i=void 0;try{for(var a,s=e[Symbol.iterator]();!(o=(a=s.next()).done)&&(n.push(a.value),!t||n.length!==t);o=!0);}catch(e){r=!0,i=e}finally{try{o||null==s.return||s.return()}finally{if(r)throw i}}return n}([e.deltaX,-e.deltaY].map(function(e){return t?-e:e}),2),o=n[0],n=n[1],o=Math.sign(Math.abs(o)>Math.abs(n)?o:n);i.increaseVolume(o/50);n=i.game.volume;(1===o&&n<1||-1===o&&0<n)&&e.preventDefault()},"volume",!1),this.bind(n.controls,"contextmenu",function(e){e.stopPropagation()}),this.bind(n.contextMenu,"contextmenu",function(e){e.stopPropagation()})}},qe);function qe(e){!function(e){if(!(e instanceof qe))throw new TypeError("Cannot call a class as a function")}(this),this.emulator=e,this.lastKey=null,this.focusTimer=null,this.lastKeyDown=null,this.toggleMenu=this.toggleMenu.bind(this),this.setTabFocus=this.setTabFocus.bind(this),this.firstTouch=this.firstTouch.bind(this)}function He(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}n=[{key:"setup",value:function(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},n=null;return F.string(e)?n=Array.from(document.querySelectorAll(e)):F.nodeList(e)?n=Array.from(e):F.array(e)&&(n=e.filter(F.element)),F.empty(n)?null:n.map(function(e){return new We(e,t)})}}],He((b=We).prototype,[{key:"restart",value:function(){this.currentTime=0}},{key:"increaseVolume",value:function(e){var t=this.game.muted?0:this.volume;this.volume=t+(F.number(e)?e:0)}},{key:"decreaseVolume",value:function(e){this.increaseVolume(-e)}},{key:"toggleControls",value:function(e){if(this.started){e=void 0===e?void 0:!e,e=V(this.elements.container,this.config.classNames.hideControls,e);return e&&Fe.toggleMenu.call(this,!1),!e}return!1}},{key:"setStatesSupported",value:function(e){this.statesSupported=e}},{key:"loadState",value:function(e){Ie.loadState(e,0)}},{key:"on",value:function(e,t){D.call(this,this.elements.container,e,t)}},{key:"once",value:function(e,t){z.call(this,this.elements.container,e,t)}},{key:"off",value:function(e,t){v(this.elements.container,e,t)}},{key:"playing",set:function(){var t=!(0<arguments.length&&void 0!==arguments[0])||arguments[0];Array.from(this.elements.buttons.play||[]).forEach(function(e){e.pressed=t}),this.paused=!t},get:function(){return Boolean(this.ready&&!this.paused)}},{key:"volume",set:function(e){var t=e;F.string(t)&&(t=Number(t)),F.number(t)||(t=this.storage.get("volume")),F.number(t)||(t=this.config.volume),1<t&&(t=1),t<0&&(t=0),this.config.volume=t,this.game.volume=t,!F.empty(e)&&this.muted&&0<t&&(this.muted=!1)},get:function(){return Number(this.game.volume)}},{key:"muted",set:function(e){F.boolean(e)||(e=this.storage.get("muted")),F.boolean(e)||(e=this.config.muted),this.config.muted=e,this.game.muted=e},get:function(){return Boolean(this.game.muted)}}]),He(b,n),n=We;function We(e,t){function o(e,t){for(var n,o,r,i=window.location.pathname.split("/").pop(),a=window.location.pathname.substring(0,window.location.pathname.length-i.length).split("/"),s=e.split("/"),c=[],l=0;l<a.length;l++)""!=a[l]&&c.push(a[l]);if(!e.startsWith("/")&&1==e.split("://").length&&1==e.split("http:").length&&1==e.split("https:").length&&1==e.split("file:").length&&1==e.split("blob:").length){for(var u=0;u<s.length;u++)""==s[u]||"."==s[u]||(".."==s[u]?0<c.length&&(n=c.join("/"),r=r=o=void 0,r=(o=n).split("/").pop(),r=o.substring(0,o.length-r.length),c=("/"==n?"/":r).split("/")):c.push(s[u]));(e=c.join("/")).startsWith("/")||(e="/"+e),e=window.location.protocol+"//"+window.location.host+e}return e.startsWith("/")&&(e=window.location.protocol+"//"+window.location.host+e),!e.endsWith("/")&&t&&(e+="/"),e}var r=this;!function(e){if(!(e instanceof We))throw new TypeError("Cannot call a class as a function")}(this);this.version="1.1.0",this.system="",this.adUrl=null,this.gameName=null,this.loadStateOnStart=!1,this.statesSupported=!0,this.mameCore=null,this.startOnLoad=!1,this.dataPath="",this.customPaths=null,this.hash="",this.lightgun=!1,this.mouse=!1,this.multitap=!1,this.ready=!1,this.paused=!0,this.started=!1,this.touch=Y.touch,this.game=e,F.string(this.game)&&(this.game=document.querySelectorAll(this.game)),(window.jQuery&&this.game instanceof jQuery||F.nodeList(this.game)||F.array(this.game))&&(this.game=this.game[0]),this.game=this.game,this.game.innerHTML="",this.config=X({},f,We.defaults,t||{}),this.coreVer=function(e,t){if(!0===t&&window.WebAssembly)return["nes","snes","gb","nds"].includes(e)?2:1;return 1}(this.config.system,this.config.useBeta),this.lightgun=this.config.lightgun,this.loadStateOnStart=this.config.loadStateOnStart||!1,this.adUrl=this.config.adUrl||null,this.gameName=this.config.gameName||null,this.mouse=this.config.mouse,this.multitap=this.config.multitap,this.cheats=this.config.cheats,this.cheats||(this.cheats=[]);var n,i,a=(i=this.config.oldNetplayServer,"string"==typeof(n=this.config.netplayUrl)?n:!0===i?"https://ws.emulatorjs.com/":"https://emuserver.emulatorjs.ga/");this.listUrl=a,this.socketUrl=a,this.mameCore=this.config.mameCore||null,this.color=this.config.color,this.startOnLoad=this.config.startOnLoad||!1,this.statesSupported=this.config.statesSupported||!0,this.customPaths=function(e){if(!e)return{};var t,n={};for(t in e)"string"==typeof e[t]&&(n[t]=o(e[t]));return n}(this.config.paths),this.dataPath="string"!=typeof(e=this.config.dataPath)?(n=window.location.href,a=(i=n).split("/").pop(),a=i.substring(0,i.length-a.length),"/"==n?window.location.protocol+"//"+window.location.host+"/":(a.startsWith("/")&&(a=window.location.protocol+"//"+window.location.host+a),a.endsWith("/")||(a+="/"),a)):o(e,!0),async function(e,t,n){var o={};if(n&&"string"==typeof n&&"en-US"!==n){var r=t&&"string"==typeof t[n+".json"]?t[n+".json"]:e+"localization/"+n+".json";try{var i=await(await fetch(r)).text(),o=JSON.parse(i);f.i18n=o.i18n,Le.normalOptions=o.normalOptions}catch(e){console.warn("error setting localization",e)}}return function(e){return"string"==typeof o[e]?o[e]:e}}(this.dataPath,this.customPaths,this.config.lang).then(function(e){this.localization=e,this.config=X({},f,We.defaults,t||{}),Object.keys(this.config.classNames).forEach(function(n){var e=r;F.object(e.config.classNames[n])?Object.keys(e.config.classNames[n]).forEach(function(e){var t={};t[r.config.classNames[n][e]]=!0,r.config.classNames[n][e]=H(t)}):((e={})[r.config.classNames[n]]=!0,r.config.classNames[n]=H(e))}),this.config.selectors.controls.wrapper=".".concat(H({ejs__controls:!0})),this.config.selectors.container=".".concat(H({ejs:!0})),this.system=this.config.system,this.elements={container:null,buttons:{},display:{},inputs:{},settings:{popup:null,menu:null,panels:{},buttons:{}},dialogs:{gamepad:null,loading:null,netplay:null},widgets:{}},this.fullscreen={active:!1},this.game.emulator?console.warn("Target already setup"):(this.config.mute=!0,this.eventListeners=[],this.listeners=new Ve(this),this.storage=new N(this,"ejs_settings"),this.game.emulator=this,F.element(this.elements.container)||(this.elements.container=B("div"),x(this.game,this.elements.container)),e=B("div",{class:H({ejs__widgets:!0})}),this.elements.container.appendChild(e),e=B("div",{class:H({ejs__dialogs:!0})}),this.elements.container.appendChild(e),ne.addStyleHook.call(this),Ie.setup.call(this),ne.build.call(this),this.listeners.container(),this.listeners.global(),this.fullscreen=new Be(this),Se.create.call(this),(e=document.createElement("script")).src=this.customPaths&&"string"==typeof this.customPaths["webrtc-adapter.js"]?this.customPaths["webrtc-adapter.js"]:this.dataPath+"webrtc-adapter.js",document.body.appendChild(e))}.bind(this))}n.defaults={},t.default=n}]).default;